{"version":3,"sources":["components/ControlComponents/ComponentLabel.tsx","Helper/ReplaceSpecialChar.tsx","Services/RequestControlService.tsx","components/TextHeaderComponents/TextHeaderComponents.tsx","Services/UploadFileService.tsx","hooks/useMasterSetting.tsx","Services/AttachFileService.tsx","Helper/formatKeyLogicData.ts","Services/LineApprovalsService.tsx","constants/logic-type.ts","Helper/FormatDateTime.tsx","components/AntdControlComponent/InputControlComponent/InputControlComponent.tsx","Context/UserContext.tsx","Context/AlertContext.tsx","Context/MasterSettingContext.tsx","Helper/formatColumn.tsx","components/AntdControlComponent/DatePickerControlComponent/DatePickerControlComponent.tsx","components/AntdControlComponent/InputNumberControlComponent/InputNumberControlComponent.tsx","components/AntdControlComponent/RadioControlComponent/RadioControlComponent.tsx","components/AntdControlComponent/SelectDropdownContronComponent/SelectDropdownContronComponent.tsx","components/AntdControlComponent/MainCheckboxControl/CheckboxComponent.tsx","components/AntdControlComponent/MainCheckboxControl/SelectCheckboxComponent.tsx","components/AntdControlComponent/TextAreaControlComponent/InputTextAreaControlComponent.tsx","components/AntdControlComponent/AttachmentUploadControlComponent/AttachmentModal.tsx","components/AntdControlComponent/AttachmentUploadControlComponent/AttachmentComponent.tsx","hooks/useAlert.tsx","Helper/RequestRefFunctions.tsx","Services/DynamicService.tsx","components/RequestComponents/CoreControllerComponent/CoreControllerComponent.tsx","components/ControlComponents/SummaryComponent/SummaryComponent.tsx","Helper/RequestScreenHelper.tsx","components/RequestComponents/CoreControllerComponent/CoreControllerComponentTest.tsx","components/AntdControlComponent/TableComponent/TableComponent.tsx","components/AntdControlComponent/TableComponent/MoveToDialog.tsx","components/AntdControlComponent/TableComponent/TableFooter.tsx","components/AntdControlComponent/TableComponent/ExcelTablePreview.tsx","components/AntdControlComponent/AutoNumberFix/AutoNumberFix.tsx","components/ControlComponents/ButtonComponent/ButtonComponent.tsx","components/ControlComponents/EditorComponent/EditorComponent.tsx","components/ControlComponents/EmptyComponent/EmptyComponent.tsx","components/ControlComponents/ImageComponent/ImageComponent.tsx","components/ControlComponents/MainCheckboxComponents/MainCheckboxComponents.tsx","components/ControlComponents/MainTextComponents/HeadingComponent/HeadingComponent.tsx","components/ControlComponents/MainTextComponents/TextComponent/TextComponent.tsx","components/ControlComponents/MainTextComponents/MainTextComponents.tsx","components/ControlComponents/ButtonComponent/ButtonSpecialComponent.tsx","components/RequestComponents/CoreControllerComponent/Controls.tsx","components/InputTextComponents/InputTextComponents.tsx","Helper/GenerateGuid.tsx","Services/MemoService.tsx","Services/MasterDataService.tsx","Helper/LogicHelper.ts","components/Select/SelectionDataDialog/SelectDataDialog.tsx","Context/MemoPageContext.tsx","hooks/useMemoPage.tsx","components/NotificationComponent/NotiPopOverContent.tsx","components/ButtonNav/ButtonNavigation.tsx","IRequestModel/IAuthModel.tsx","Context/AuthContext.tsx","Services/EmployeeService.tsx","Services/PositionService.tsx","Services/DepartmentService.tsx","components/SettingDialogComponents/EmployeeDialog/EmplyeeDialog.tsx","Helper/localStoreFunction.ts","components/ButtonNav/ButtonNavigationDropdown.tsx","Services/NavBarMenuService.tsx","Services/ConfigurationService.tsx","components/NavigationBar/ChangePasswordModal.tsx","Services/AppSettingService.tsx","components/SettingDialogComponents/EmployeeDialog/EmployeeDialogFixed.tsx","Services/LoginService.tsx","components/NavigationBar/NavigationBar.tsx","Context/LoadContext.tsx","hooks/useLoading.tsx","Services/RoleServices.tsx","Services/AuthorizedService.tsx","screens/LoginScreen/LoginScreen.tsx","Helper/DeleteAllCookie.ts","azure/zure-authentication-config.ts","azure/azure-authentication-context.ts","screens/LoginScreen/LoginScreenAzure.tsx","components/FooterComponents/FooterComponents.tsx","components/ButtonComponents/ButtonComponents.tsx","assets/bin-icon.png","assets/edit-icon.png","Services/ApprovalMatrixService.tsx","components/SettingDialogComponents/ApprovalMatrixDIalog/ApprovalMatrixDialog.tsx","Services/CompanyService.tsx","components/SettingDialogComponents/CompanyDialog/CompanyDialog.tsx","components/SettingDialogComponents/Department/DepartmentDialog.tsx","components/SettingDialogComponents/DivisionDialog/DivisionDialog.tsx","components/SettingDialogComponents/MasterDataDialog/MasterDataDialog.tsx","components/SettingDialogComponents/MenuDialog/MenuDialog.tsx","components/SettingDialogComponents/PositionDialog/PositionDialog.tsx","components/SettingDialogComponents/RoleDialog/RoleDialog.tsx","components/DropdownComponents/DropdownComponents.tsx","components/TableComponents/Dynamic/DynamicDialog.tsx","components/TableComponents/Dynamic/DialogList.tsx","components/TableComponents/Dynamic/DynamicTable.tsx","Services/TemplateService.tsx","components/TreeSelectNewRequest/TreeSelectNewRequest.tsx","assets/LoadingWOLFmini.gif","screens/Report/DynamicReport.tsx","Services/ReportService.tsx","components/AutoCompleteComponents/AutoCompleteComponents.tsx","components/RadioButtonComponents/RadioButtonComponents.tsx","components/SettingDialogComponents/ReportDialog/ReportDialog.tsx","screens/UnAuthorizePage/UnAurthorization.tsx","components/HOC/withPermission.tsx","Helper/ExportExcel.tsx","components/TableComponents/DynamicTableFix/SearchTextInTable.tsx","Helper/TableHelper.tsx","components/TableComponents/DynamicTableFix/DynamicTable.tsx","components/ReportScreenComponent/SelectedFieldComponent.tsx","screens/Report/DynamicReportFix.tsx","screens/Report/ReportScreen.tsx","screens/WorkList/ShowContentScreen.tsx","components/WorklistScreenComponent/FlowCardComponent.tsx","screens/WorkList/FlowScreen.tsx","components/RequestComponents/HistoryComponent/HistoryComponent.tsx","screens/WorkList/HistoryScreen.tsx","components/WorklistScreenComponent/AttachmentCardComponent.tsx","screens/WorkList/AttachmentScreen.tsx","components/Input/CommentComponent.tsx","components/MemoButton/MemoButtonComponent.tsx","Services/ReviewPdfService.tsx","assets/ic_history.svg","assets/ic_attachment_file.svg","components/AntdControlComponent/BadgeNotificateComponent/BadgeNotificate.tsx","screens/WorkList/DetailContentScreen.tsx","components/Select/SelectDate.tsx","components/Select/MultiSelectDropdown.tsx","components/SearchFilterComponent/SearchFilterComponent.tsx","components/Select/SelectDropdown.tsx","screens/WorkList/WorkListSideBarElementUse.tsx","components/WorklistScreenComponent/WorklistCardComponent.tsx","Services/ApprovalService.tsx","screens/WorkList/WorkListScreen.tsx","Services/WorklistService.tsx","Services/HistoryService.tsx","screens/LoginScreen/LoginScreenOpenId.tsx","routes/PrivateRoute.tsx","components/ErrorPageComponent/ErrorPageComponent.tsx","components/CreateControlComponents/ButtonComponent/AddQueryComponent.tsx","components/CreateControlComponents/ButtonComponent/ButtonComponent.tsx","components/CreateControlComponents/AttachmentComponent/AttachmentComponent.tsx","components/CreateControlComponents/AutoNumberComponent/AddConditionComponent.tsx","components/Button/Button.tsx","components/CreateControlComponents/AutoNumberComponent/AddPreFixComponent.tsx","components/CreateControlComponents/AutoNumberComponent/AutoNumberComponent.tsx","components/CreateControlComponents/CalendarComponent/CalendarDefaultValueGroup.tsx","components/CreateControlComponents/CalendarComponent/CalendarComponent.tsx","components/CreateControlComponents/ChoiceComponent/ChoiceComponent.tsx","components/CreateControlComponents/MultiChoiceComponent/MultiChoiceComponent.tsx","components/CreateControlComponents/DropdownComponent/DropdownComponent.tsx","components/CreateControlComponents/EditorComponent/TemplateModal.tsx","components/CreateControlComponents/EditorComponent/EditorComponent.tsx","components/CreateControlComponents/HeadingComponent/HeadingComponent.tsx","components/CreateControlComponents/NumberComponent/NumberComponent.tsx","components/CreateControlComponents/RevisionComponent/AddConditionModal.tsx","components/CreateControlComponents/RevisionComponent/RevisionComponent.tsx","components/CreateControlComponents/ShortTextComponent/ShortTextComponent.tsx","components/CreateControlComponents/ModalCreateComponents/CreateControlSideBarElement.tsx","components/CreateControlComponents/TextAreaComponent/TextAreaComponent.tsx","components/CreateControlComponents/TableComponent/ColumnComponent.tsx","components/CreateControlComponents/TableComponent/ReferenceDocument.tsx","components/CreateControlComponents/TableComponent/FooterTableComponents.tsx","components/CreateControlComponents/TableComponent/TableComponent.tsx","components/CreateControlComponents/ImageComponents/ImageComponents.tsx","components/CreateControlComponents/ModalCreateComponents/ModalCreateComponents.tsx","components/TinyMceComponent/TinyMceComponent.tsx","components/TemplateDetailComponents/FormSettingComponent/FormSettingComponent.tsx","components/TemplateDetailComponents/ApproveMatrixComponent/SelectCondition.tsx","components/TemplateDetailComponents/ApproveMatrixComponent/SelectDataFormTable.tsx","components/TemplateDetailComponents/ApproveMatrixComponent/ReadOnlyTable.tsx","components/TemplateDetailComponents/ApproveMatrixComponent/AddMatrixCondition.tsx","components/TemplateDetailComponents/ApproveMatrixComponent/ApproveMatrix.tsx","components/CheckboxCpmponents/CheckboxCpmponents.tsx","components/TemplateDetailComponents/InformationComponents/InformationComponents.tsx","screens/TemplateDetailScreen/TemplateDetailSideBarElement.tsx","components/DataFechDialogComponents/EmployeeDialog/EmployeeDialog.tsx","components/TemplateDetailComponents/AuthorizationComponent/AuthorizationTable/AuthorizationTable.tsx","components/TemplateDetailComponents/AuthorizationComponent/AuthorizationModel/AuthorizationModel.tsx","components/TemplateDetailComponents/AuthorizationComponent/AuthorizationComponent.tsx","Helper/SortingFunction.tsx","components/TemplateDetailComponents/VersionAndHistoryComponents/VersionAndHistoryTable/VersionAndHistoryTable.tsx","components/TemplateDetailComponents/VersionAndHistoryComponents/VersionAndHistoryComponents.tsx","components/DataFechDialogComponents/ReferenceDocumentDialog/TableTemplateDialogComponents/TableTemplateDialogComponentsFixed.tsx","components/TemplateDetailComponents/ReferenceDocumentComponents/ReferenceDocumentDialogFix.tsx","components/TemplateDetailComponents/ReferenceDocumentComponents/ReferenceDocumentComponentsFix.tsx","components/TemplateDetailComponents/ReferenceInformation/ReferenceInformationDialog.tsx","components/TemplateDetailComponents/ReferenceInformation/ReferenceInformation.tsx","Context/PDFEditorContext.tsx","hooks/usePDFEditor.tsx","components/TemplateDetailComponents/PDFTemplateComponent/PDFCompontButton.tsx","components/TemplateDetailComponents/PDFTemplateComponent/PDFToolBar.tsx","components/TemplateDetailComponents/PDFTemplateComponent/TabsButton.tsx","components/TemplateDetailComponents/PDFTemplateComponent/ColorPicker.tsx","components/TemplateDetailComponents/PDFTemplateComponent/PDFEditorToolBar.tsx","components/TemplateDetailComponents/PDFTemplateComponent/StaticInput.tsx","components/TemplateDetailComponents/PDFTemplateComponent/StaticImage.tsx","components/TemplateDetailComponents/PDFTemplateComponent/DropableComponent.tsx","components/TemplateDetailComponents/PDFTemplateComponent/PaperLayout.tsx","components/TemplateDetailComponents/PDFTemplateComponent/PDFTemplateComponent.tsx","Helper/ScreenHelper.ts","components/TemplateDetailComponents/TeplateLogicComponent/LogicFormByType/ShowHideControlModal.tsx","components/TemplateDetailComponents/TeplateLogicComponent/LogicFormByType/ShowHideControlForm.tsx","components/TemplateDetailComponents/TeplateLogicComponent/LogicFormByType/DataSourceConditionRow.tsx","components/TemplateDetailComponents/TeplateLogicComponent/LogicFormByType/DataSourceLoadForm.tsx","components/TemplateDetailComponents/TeplateLogicComponent/LogicFormByType/DataSourceRelateConditionRow.tsx","components/TemplateDetailComponents/TeplateLogicComponent/LogicFormByType/DataSourceRelatedForm.tsx","components/TemplateDetailComponents/TeplateLogicComponent/LogicFormByType/DataSourceRelatedToLoadData.tsx","components/TemplateDetailComponents/TeplateLogicComponent/LogicFormByType/ShowHideByRoles.tsx","components/TemplateDetailComponents/TeplateLogicComponent/LogicFormByType/SpecialActionServiceForm.tsx","components/TemplateDetailComponents/TeplateLogicComponent/LogicFormByType/SetValueControlModal.tsx","components/TemplateDetailComponents/TeplateLogicComponent/LogicFormByType/SetValueControlForm.tsx","components/TemplateDetailComponents/TeplateLogicComponent/JsonLogicForm.tsx","components/TemplateDetailComponents/TeplateLogicComponent/FormLogicComponent.tsx","components/TemplateDetailComponents/ActionServiceLogicComponent/TabsFormComponent/InformationTab.tsx","components/TemplateDetailComponents/ActionServiceLogicComponent/TabsFormComponent/MatchFieldsDataModal.tsx","components/TemplateDetailComponents/ActionServiceLogicComponent/TabsFormComponent/MatchFieldsTab.tsx","components/TemplateDetailComponents/ActionServiceLogicComponent/TabsFormComponent/EventTab.tsx","components/TemplateDetailComponents/ActionServiceLogicComponent/TabsFormComponent/ConditionTab.tsx","components/TemplateDetailComponents/ActionServiceLogicComponent/TabsFormComponent/APITab.tsx","components/TemplateDetailComponents/ActionServiceLogicComponent/TabsFormComponent/ReturnDataModal.tsx","components/TemplateDetailComponents/ActionServiceLogicComponent/TabsFormComponent/ReturnTab.tsx","components/TemplateDetailComponents/ActionServiceLogicComponent/TabsFormComponent/ReturnMessageTab.tsx","components/TemplateDetailComponents/ActionServiceLogicComponent/ActionserviceForm.tsx","components/TemplateDetailComponents/ActionServiceLogicComponent/ActionserviceTemplate.tsx","screens/TemplateDetailScreen/TemplateDetailScreen.tsx","screens/ForgotPasswordScreen/ForgotPasswordScreen.tsx","screens/DelegateScreen/DelegateApplyTo.tsx","components/RequestComponents/AttachmentComponent/DescriptionConfigComponent.tsx","screens/DelegateScreen/DelegateInformation.tsx","screens/DelegateScreen/DelegateSideBar.tsx","screens/DelegateScreen/DelegateScreen.tsx","Services/EmailTemplateService.tsx","components/SettingsSpecComponents/EmailTemplateDetail/EmailTemplateDetail.tsx","screens/SettingsSpecScreen/EmailTemplateDetailScreen.tsx","screens/SettingScreen/SimLineApproveScreen/SimLineSideBar.tsx","screens/SettingScreen/SimLineApproveScreen/InitialComponent/InitialComponent.tsx","screens/SettingScreen/SimLineApproveScreen/ResultComponent/ResultComponent.tsx","screens/SettingScreen/SimLineApproveScreen/SimLineApproveScreen.tsx","screens/DashboardScreen/DashboardCard/DashboardCard.tsx","screens/DashboardScreen/DashboardCalendar/DashboardCalendar.tsx","screens/DashboardScreen/DashboardTimeline/DashboardTimeline.tsx","Services/ProjectService.tsx","screens/DashboardScreen/DashboardScreen.tsx","Services/LogApiService.tsx","screens/LogApi/LogApi.tsx","components/SettingsSpecComponents/EmailTemplateList/EmailTemplateList.tsx","screens/SettingsSpecScreen/EmailTemplateListScreen/EmailTemplateListScreen.tsx","components/RequestComponents/InformationComponent/LeaveTypeComponents/LeaveTypeComponents.tsx","components/RequestComponents/InformationComponent/InformationComponent.tsx","components/RequestComponents/LineApprovalsComponent/LineApprovalsComponent.tsx","components/RequestComponents/RequestorComponent/RequestorComponent.tsx","components/RequestComponents/AttachmentComponent/AttachmentComponent.tsx","screens/Request/RequestSideBarElement.tsx","components/MemoButton/MemoSingleButton.tsx","screens/Request/RequestScreen.tsx","screens/TemplateDetailScreen/PreviewTemplateScreen.tsx","screens/LoginScreen/LoginGoogle.tsx","screens/RegisterWolfScreen/RegisterWolfScreen.tsx","components/RequestComponents/InformationComponent/RefTemplateComponent/TableRefTemplateComponent.tsx","components/RequestComponents/InformationComponent/RefTemplateComponent/DialogRefTemplateComponent.tsx","components/RequestComponents/InformationComponent/TemplateVersionComponent/TemplateVersionComponent.tsx","components/RequestComponents/InformationComponent/InformationComponentFix.tsx","components/RequestComponents/LineApprovalsComponent/LineApprovalsComponentFix.tsx","components/MemoButton/MemoButtonetcComponent.tsx","Context/AdminEditCompletedMemoPermissionContext.tsx","hooks/useAdminEditCompletedMemo.tsx","screens/Request/RequestScreenFix.tsx","Helper/Validation.tsx","Services/AcountService.tsx","components/SettingDialogComponents/AccountDialog/AccountDialog.tsx","components/TableComponents/DynamicTableFix/DynamicDialog.tsx","components/SettingDialogComponents/UserManualDialog/UserManualDialog.tsx","Services/UserManualService.tsx","components/TableComponents/DynamicTableFix/DialogListFix.tsx","screens/DelegateListScreen/DelegateListScreen.tsx","screens/LogSendEmailScreen/LogSendEmailScreen.tsx","Services/LogSendEmailService.tsx","screens/SettingScreen/MasterDataScreen/MasterDatascreenFixed.tsx","Helper/matrixItemToString.tsx","screens/Report/ReportScreenFix.tsx","Services/TimeStampService.tsx","screens/TimeStamp/TimeStampScreen.tsx","utils/plugins/msdoc/index.tsx","components/PDFPreviewComponent/PDFPreviewComponent.tsx","screens/PreviewAttachmentScreen/PreviewAttachmentScreen.tsx","assets/correct.png","screens/RequestActionMemo/RequestActionMemo.tsx","screens/RejectBrowerScreen/RejectBrowser.tsx","screens/LoginScreen/LoginSSUP.tsx","screens/BudgetScreen/BudgetTrackingScreen.tsx","screens/Procurement/ProcurementTrackingScreen.tsx","module/frasers/screens/BudgetReportScreen/ReportTable.tsx","module/frasers/screens/BudgetReportScreen/PaymentReport.tsx","routes/Routes.tsx","components/LoadComponent/LoadComponent.tsx","components/LoadComponent/LoadPackageComponent.tsx","assets/wolfLogo.png","components/Button/FloatingButton.tsx","components/NotificationComponent/NotificationComponent.tsx","App.tsx","registerServiceWorker.js","i18n.tsx","index.tsx"],"names":["ComponentLabel","props","_props$errors","_props$errors2","_props$errors3","_props$template","_props$template2","_props$template2$alte","_jsx","_Fragment","children","renderInTable","_jsxs","Col","sm","undefined","col","md","colText","xs","xl","style","paddingTop","rowIdx","className","concat","isSubmitted","errors","items","layout","colIdx","template","label","type","attribute","require","alter","replaceAll","rightComponent","replaceSpecialChar","str","replace","GetAutoNumber","async","email","window","localStorage","getItem","requestBody","UserPrincipalName","fetch","method","headers","body","JSON","stringify","then","response","json","data","catch","err","GetSaveRunningNumber","GetRvsRunning","CanAssignMoreThanOne","result","console","error","CanRequestCommentMoreThanOne","onDatareladToLoadData","dataJson","TextHeaderComponents","useEffect","isRequir","display","alignItems","fontSize","lineHeight","marginBottom","color","fontWeight","textHeaderProps","colorProps","textSubProps","UploadTinyMce","axios","url","log","UploadFileRenderControl","useMasterSetting","context","useContext","MasterSettingContext","Error","GetAllAttachFiles","UploadFileAttachFiles","errUploadAttach","GetPort","respone","errUpload","formatKeyLogicData","logicData","_logicData","some","item","unshift","map","labelactionfield","Array","from","Map","values","GetApprovalsByMemoIDs","memoIds","onLoadDataLiveApprove","errerrerr","LogicType","LogicOperatorType","formatDateTime","value","defFormat","someDateString","moment","format","getDateFormat","dateFormat","date","symbol","time","use","useSecond","getTimeFormat","InputControlComponent","_ref","control","name","colAction","canEditDoc","checkActionPage","buttonType","onControlChange","Controller","rules","required","render","_ref2","field","formState","inpId","Input","onBlur","e","onChange","target","id","readOnly","readonly","size","placeholder","description","maxLength","parseInt","length","disabled","status","onKeyDown","_e$code","code","toLocaleLowerCase","setTimeout","_document$getElementB","curIndex","document","getElementById","getAttribute","nxtIdx","$","focus","click","InputTableComponent","_ref3","saveFunc","inputRef","isEditing","onEdit","toggleEdit","nId","nextTab","_document$getElementB2","Tooltip","title","placement","Form","Item","margin","message","onClick","autoFocus","ref","defaultValue","onPressEnter","preventDefault","_e$code3","onFocus","select","width","_e$code2","initialSession","parse","_localStorage","employeeData","UserContext","createContext","useUserContext","UserContextProvider","userData","setUserData","useState","defaultUserContext","Provider","AlertContext","alertColors","AlertContextProvider","api","contextHolder","notification","useNotification","toggleAlert","params","icon","BsFillInfoCircleFill","RiCloseCircleFill","FaCheckCircle","TiWarning","key","onClose","duration","borderRadius","zIndex","MasterSettingContextProvider","masterSetting","setMaterSetting","fecthData","settingDict","getMasterSetting","masterData","GetAllMasterData","filter","includes","MasterType","IsActive","forEach","updateMasterData","_masterData","formatToColumns","columns","rowData","i","formatColumn","newData","_data$row","row","j","_columns$j","_row","_item","idx","toString","push","column","align","_","record","index","cal","_column","tableWidth","widthInTable","Number","dataIndex","editable","isShow","DateInputComponent","_masterSetting$Format","_masterSetting$Format2","actionAlert","action","setAction","checkStatus","Data","ErrorType","Label","Value","formatDate","arrDate","split","mm","join","DatePicker","dateValue","newDate","Date","toDate","toLowerCase","toLocaleString","year","month","day","getDateValue","displayFormat","Value2","showTime","inputReadOnly","DatePickerControlComponent","checkRequireFromTemplate","controlTemplate","controlValue","controlUpdate","DatePickerTableComponent","_ref4","onMouseOver","InputNumberComponent","InputNumber","symbolPosition","addonAfter","addonBefore","controls","formatter","_value","isNaN","useComma","minimumFractionDigits","decimal","String","toFixed","default","maximumFractionDigits","blur","InputNumberControlComponent","_template$attribute$m","_template$attribute$m2","validate","min","max","_errors$items$rowIdx","_errors$items$rowIdx$","_errors$items$rowIdx$2","_errors$items$rowIdx$3","_errors$items$rowIdx2","_errors$items$rowIdx3","_errors$items$rowIdx4","_errors$items$rowIdx5","_errors$items$rowIdx6","_errors$items$rowIdx7","_errors$items$rowIdx8","_errors$items$rowIdx9","intValue","InputNumberTableComponent","useAlert","validator","correct","msg","formatValue","formatMaxValue","formatMinValue","Promise","resolve","reject","border","RadioComponent","Radio","Group","multipleLine","Space","direction","choice","RadioControlComponent","RadioTableComponent","normalize","Option","Select","SelectWithTableDropdownComponent","_template$attribute","_template$attribute$i","tableOptions","onDropdownVisibleChange","loading","showSearch","optionFilterProp","filterOption","input","option","textAlign","height","SelectDropdownComponent","_template$attribute2","_template$attribute2$","_children","_children$toLowerCase","SelectDropdownControlComponent","allLogicInTable","getValues","customOptions","setCustomOptions","labelActionLogic","setLabelActionLogic","setLoading","open","_value$template","des","conditions","actionlabel","allVal","dataReleteToDD","con","Key","_layout","_layout$template","_layout$template2","_layout$template3","val","res","logicRequest","SelectDropdownTableComponent","_ref5","_e$actionlabel","startsWith","_layout$template4","_layout$template5","_layout$template6","CheckboxInTableComponent","Checkbox","options","checkValue","onSelectChange","checkedValues","_onChange","test","check","_values","CheckboxComponent","_res","CheckboxControlComponent","_value$item","_value$item2","_value$item3","every","CheckboxTableComponent","paddingRight","SelectCheckboxInTableComponent","splitData","mode","SelectCheckboxComponent","SelectCheckboxControlComponent","SelectCheckboxTableComponent","InputTextAreaControlComponent","TextArea","tId","autoSize","minRows","rows","InputTextAreaTableComponent","_document$getElementB3","_e$code4","AttachmentModal","visibleDialog","setVisibleDialog","setCheckHasValue","toast","nameFile","setNameFile","link","setLink","SharepointSiteURL","TinyURL","visibleConfirmDialog","setVisibleConfirmDialog","selected","setSelected","setValue","fileType","setFileType","onFileSelected","mapData","hasInvalidFiles","file","dataTransfer","files","currentTarget","filefilefile","myArray","endsWith","filesize","uploadFile","_response$data","formData","FormData","append","generateQuickGuid","EmployeeId","_response$data$pathUr","pathUrl","confirm1","confirmDialog","header","rejectClassName","Dialog","blockScroll","visible","breakpoints","modal","position","onHide","draggable","footer","Button","footerDialog","SelectButton","controlId","Control","accept","alignSelf","marginTop","htmlFor","InputText","_e$target$value","_e$target$value2","AttachmentComponent","useRef","isModalVisible","setIsModalVisible","checkHasValue","_userData","uploadType","setUploadType","_sharepointSiteURL","deFaultValue","def","linkFile","acceptUpload","Toast","ConfirmDialog","acceptClassName","Popover","content","substring","_link","charAt","protocol","location","host","_port","port","openWindow","borderTopLeftRadius","borderBottomLeftRadius","borderTopRightRadius","borderBottomRightRadius","backgroundColor","boxShadow","AiOutlineClose","AttachmentControlComponent","AttachmentTableComponent","AntForm","onMouseEnter","onChanceRef","refTempSelected","memoDetail","listFormNames","refAttribute","currentTemp","listRefDocsDetail","listFileAttachDetails","refTemp","template_desc","_listRefDocsDetail","docsCode","refColumn","RefDocColumn","RefTemplate","temp","DocumentCode","refTems","refDocDetail","memoRefdoc_id","MemoId","doc_no","DocumentNo","template_ID","template_id","template_Name","template_name","memoSubject","subject","MAdvancveForm","selectedColumn","valibCol","ControlValue","Amount","RNameEn","RPositionTh","RPositionEn","DepartmentTh","DepartmentEn","TemplateName","RequestDate","CompanyName","selColLabel","indexOf","colLabel","pop","TypeControl","sourceRow","sourceCols","targetPositions","selCol","_col$objTable","objTable","tarColIdx","refTable","_selectedColumn$items","_selectedColumn$items2","_selectedColumn$items3","tableRows","newRow","originCol","_colIdx","refCol","_refCol$_colIdx","getDefValueInTemplate","rowstateCol","find","_layout$data","_col$ControlValue","RefDocDisplay","getMemoForAttch","errorMessage","memoid","memoId","GetAttachmentFilesByMemoId","GetAllDynamic","apiName","queryString","UserPrincipal","ConnectionString","URLSearchParams","Scopes","IsActiveOnly","ex","updateDynamic","formBody","model","CoreControllerComponent","advanceForm","setAdvanceForm","tableSummary","setTableSummary","summary","setSummary","isShowSummary","setIsShowSummary","formLoading","setFormLoading","formComponent","setFormComponent","autoNumFormat","setAutoNumFormat","autoNumDigit","setAutoNumDigit","numFormulas","setNumFormulas","allLogic","setAllLogic","valueTable","setValueTable","runningNumber","setRunningNumber","rvsPosition","setRvsPosition","currentLogic","setCurrentLogic","sumValue","isFirstLoad","setIsFirstLoad","getRevision","_advanceForm","detail","requestDetail","rvsTemp","TemplateId","RefId","Digit","digit","Labelrevision","Alter","Itemlabel","revision","formTemplate","setSumTable","Object","keys","renderControl","_advanceForm$items","logic","isInitialLogic","checkLogic","_props$listLogicData","_props$listLogicData2","_props$listLogicData3","listLogicData","relateGroup","onDataSourceLoadRelated","onChangeAttributeForm","onDataAjaxLoadTable","onDataRefLoadTable","onLoadLineApproveWithLogic","onClickLogic","mstTable","mstType","mColumn","columnAll","requestLogic","lineLogic","_logic","jsonvalue","jsonObject","logictype","relatedvalue","relateValue","k","l","group","logicid","labelactions","labelaction","labelintablestatus","autoloadvaluelabel","m","loadTo","refFilter","loadToField","Column","Mastertable","Type","MColumn","ColumnAll","Filter","controlFilter","TBColumn","mstColumn","MSTColumn","tbColumn","setListLogicData","setIsInitialLogic","empId","dataSourceLoadGroup","dataSourceRelatedToLoadGroup","current_approval_level","z","element","roles","fieldaction","lable","n","roleids","RoleId","approvals","approvetypeids","typeid","approver","sequence","emp_id","ApproveType","logicGroupData","onDataSourceLoad","onChangeLogicForm","logicGroup","keyValues","setInformationMethodProp","tableArray","tableLabel","total","onLoadLogic","templateID","query","onChangeRefValueTableForm","DT","onChangeAttributeTableForm","empData","_dataJson","requestData","employee","ComCode","company_id","JsonCondition","templateForm","TemplateApproveId","lstTRNLineApprove","lineApproval","listApprovalDetails","_data","isHas","lineNew","line","setRequestDetail","prevState","responseGroup","dataGroup","dataSource","onChangeValueForm","onTableDatareladToLoadData","advanceRow","advanceCol","tableRow","tableCol","tableActionCol","onChangeValueTableForm","dataRequest","_dataRequest","rowTable","_colData","entries","relate","permittedValues","resRow","perValue","colData","fill","onChangeEditForm","statusMemoDetail","genAutoNum","onChangeEditFormTable","tableRowIdx","tableColIdx","table","onTableFooterChange","footerVal","footerRow","footerTable","formats","isCheck","fm","choiceFormat","condition","ft","Prefix","dd","Message","sum","updateTableSum","tableName","tableSum","ss","sumTable","calNumberWithFormula","formu","formula","match","_layout$data$row","regExp","eval","NaN","controlComponent","ProgressSpinner","padding","SummaryComponent","headtext","subtext","summaryProps","inputId","inputClassName","minFractionDigits","inputStyle","background","_control","isCopy","arguments","autoNumberAttibute","tempLabels","tempValues","_layout$template$attr","_layout$template$attr2","formattedYear","newPosition","newFormat","RegExp","rowIndex","colIndex","showSymbol","prefix","fisrtPreix","Status","callGenAutoNumber","callAutoNumber","getValueControl","controlID","strValue","requestor","EmployeeCode","NameEn","Email","PositionNameEn","DepartmentNameEn","templateType","returnValue","selectedItem","checked","defaultType","defaultDate","now","add","getRefInforValue","_memoDetail$requestor","_memoDetail$requestor2","_memoDetail$requestor3","_memoDetail$requestor4","_memoDetail$requestor5","_memoDetail$requestor6","_memoDetail$requestor7","_memoDetail$requestor8","_memoDetail$requestor9","_memoDetail$requestor10","_memoDetail$requestor11","_memoDetail$requestor12","_memoDetail$company_i","_memoDetail$company_i2","NameTh","PositionNameTh","DivisionNameEn","DivisionNameTh","DepartmentNameTh","balanceParentheses","expression","stack","char","finalResult","reverse","calculateAdvanceForm","form","tableSums","layouts","calCulateFunc","calCulateInTableFunc","formulas","rowDatas","_result","resulstField","resultColIdx","resultDecimal","operator","fields","lastIndexOf","_rowData$col$label","_rowData$col$label$to","firstDate","lastDate","diff","resCol","hours","Math","trunc","remainingMinutes","formattedTime","abs","allField","_rowData$colIdx$value","_rowData$colIdx$value2","colSum","variables","datepicker1","_tableSum$selCol$0$se","CoreControllerComponentTest","setDfCurr","dfCurr","onProcessLogicReference","templateDesc","trigger","setMemoDetail","isFirstRun","previousRefTempSelected","register","handleSubmit","onSubmit","onSubmitInterface","documentNo","reset","jsonConditions","setJsonConditions","setLineApproval","isControlLoading","setIsControlLoading","getLineApproveForAmount","setListFileAttachDetails","tableSummaries","setTableSummaries","previousView","setListRefDocDetails","prepareInitialLogic","setTableOptions","checkInterFace","returnMessage","listReturn","interfaceButton","setButtonType","edFont","defaultFont","update","useFieldArray","controlRef","setAllLogicInTable","tableLogics","DataRelatedToLoadData","DataAjaxLoadTable","jsonValue","DataSourceLoad","_jsonValue$conditions","cons","objectkey","RefInfomation","HideControl","ReadOnlyControl","jsonLabel","comparewith","SetValueControl","actionControl","isInTable","valuetoset","returnToValure","gogo","processRef","refIdOnQuery","refResult","current","onRefSelect","isDifferent","refRpreviousRefTempSelectedesult","_refTempSelected$","_refRpreviousRefTempS","refSelected","_listLineApprove","listMemoIds","isDefaultLineApprove","resApprovals","detechRevisionControl","newControl","_onControlChangeRef","onProcessSummary","jsonCondition","_amount","isSum","isControlHasSum","selTable","tableTemp","AllCol","_row$colIdx","sumControl","sumRes","onCheckInterface","setLoadingInterface","request","inputComment","waitingFor","waitingForId","calCulateCorecontrol","currentControl","datepicker","_match","selValue","_item$layout","callLogics","checkCallLogic","_response","onProcessLogic","updateTableSummaries","_tableSummaries","_sumTable","isEqual","_onControlChange","logics","callLogic","DataSourceRelated","labelAction","Reference","DataLineApprove","_controlTemplate$attr","_controlTemplate$attr2","_controlTemplate$attr3","allLabel","tempColumns","_jsonConditions","oldRefControl","refControl","table_dd_to_dd_Result","Set","isRef","_controlString","newControlString","Value1","sort","a","b","_templateId","onProcessLogicDataSourceRelated","_controlTemplate$attr4","responseDataSourceLoadRelated","controlDescription","jsonRelated","keyRelate","valueRelate","_responseDataSourceLo","_layout$template2$att","_label","_des","_jsonValue$relatedval","_item$layout2","_layout$template4$att","onProcessLogicAjax","actionFrom","_templateDesc$items","_item$layout3","onProcessLogicLineApprove","conditionsValue","onFilterCondotionsValue","onProcessLogicDataRelatedToLoadData","onFindDataJson","checkIfLogicsHaveValue","rawData","_bool","checkIfGetData","controlString","responseData","ee","newColumn","rowTemplate","colTemplate","relateData","resVals","processData","processHideControlLogic","valueToSet","consGroup","isConditionsSatisfied","conditionSatisfied","dataValue","checkIsCorrect","hasDatalineapprove","actionTemplate","newLogic","_layout$data$row2","_controlValue","exit","_column$control$templ","_column$control$templ2","Conditions","Spin","tip","spinning","labelCol","span","wrapperCol","initialValues","remember","onFinish","Row","Controls","nestIndex","confirm","Modal","Text","Typography","EditableContext","React","EditableRow","useForm","component","EditableCell","handleSave","isError","refDocOptions","refTableColumn","restProps","editing","setEditing","memoByOption","setMemoByOption","haveLink","setHaveLink","_inputRef$current","cursor","prev","setFieldsValue","save","getFieldsValue","responseControlChange","errInfo","process","findRefMemoId","ff","mergecolumnrefdoc","RefDocLabel","ColumnLabel","gg","HaveLink","Memo_MemoId","childNode","logicsOfTable","_col","logicInCol","isShowOnLogic","isConditionSatisfied","isConditionSatisfiedFunc","isReadOnly","isEditable","getUrl","baseUrl","href","rel","flexDirection","justifyContent","TableComponent","_columns","moveToDialogVisible","setMoveToDialogVisible","moveFormIndex","setMoveFormIndex","tableLoad","setTableLoad","refTableDialogVisible","setRefTableDialogVisible","refTableLoading","setRefTableLoading","setRefDocOptions","setRefTableColumn","tableFooter","setTableFooter","exportFile","setExportFile","loadFile","setLoadFile","enabledpopupdefdoc","fetchRefDocFormTable","handleDelete","summaryFunc","returnToValue","menu","createRowCopy","cols","tableLogic","colLogic","x","fmt","defValue","subtract","keyData","handleAdd","eiei","handleAddMultiRow","newRows","newJa","_eiei","_row$col$label","_row$col$label$toStri","labels","_getValues","_row$col$label2","_row$col$label2$toStr","_tableSummary","_sum","_e$col$control$templa","_e$col$control$templa2","_e$col$control$templa3","_e$col$control$templa4","debouncedCalCulateTableFooter","debounce","calCulateTableFooter","debouncedUpdateTableSummaries","findIndex","originTemplatedesc","actionIndex","splice","defColumns","fixed","actionBodyTemplate","onCell","_menu$current$record$","toggle","addRowTo","duplicate","moveTo","updateRow","command","Fragment","TieredMenu","popup","el","IoEllipsisVertical","changeObj","_formu","_summary$col$label","_summary$col$label2","_footer$value","_eval","_eval2","tempAtt","refdoc","PageIndex","PageSize","CUserID","creator","RUserID","ConditionRefdoc","conditionrefdoc","Search","docDataSource","docReport","docCancelDoc","docEditDoc","docNewDoc","doccontrol","docref","refDetails","GetRefDocFormTable","refOptions","_option","CreatorId","report_lang","CNameEn","CNameTh","CPositionEn","CDivisionEn","CDepartmentEn","RequesterId","RNameTh","RDivisionEn","RDivisionTh","RDepartmentEn","RDepartmentTh","StatusName","MemoSubject","headerEn","_refReportDetail$dt_R","refReportDetail","dt_Report","onImportExcel","onExportExcel","fileName","mAdvance","blob","URL","createObjectURL","Blob","createElement","download","appendChild","remove","handleFileUpload","putExcelToTable","resultData","slice","ExcelTablePreview","onCheckedHeader","okButtonProps","CheckCircleOutlined","rev","onOk","cancelButtonProps","CloseSquareOutlined","menuClickHandler","onchange","_e$target","menuItem","Menu","info","FileTextOutlined","canImport","Dropdown","overlay","Table","components","cell","rowClassName","bordered","scroll","y","haveInput","useValue","TableFooter","footerAtt","_layout$template$attr3","isShowSum","isSummary","Summary","Cell","MoveToDialog","dataLength","isVisible","setIsVisible","moveFunc","SelectDataDialog","dialogKey","dataList","dialogVisible","setDialogVisible","selectionMode","mutiable","onSelectFunc","_selectedData","memo","moveValue","setMoveValue","renderFooter","closable","resizable","onValueChange","inputValue","setInputValue","parser","dup","sourceData","setsourceData","displayData","setDisplayData","pageSize","setPageSize","setCurrent","pagination","onShowSizeChange","AutoNumber","ButtonComponent","setUrl","useHistory","newUrl","param","paramiter","EditorComponent","contentEditor","setContentEditor","_tinyURL","applyStylesToEditor","editor","editorBody","getBody","wordBreak","overflowWrap","querySelectorAll","styledValue","div","innerHTML","applyStylesToContent","tableLayout","wordWrap","dangerouslySetInnerHTML","__html","Editor","tinymceScriptSrc","init","statusbar","paste_data_images","menubar","content_css","object_resizing","default_link_target","fullscreen_native","remove_script_host","relative_urls","image_title","automatic_uploads","image_sourcetab","image_advtab","plugins","toolbar","toolbar1","fontsize_formats","font_formats","content_style","images_upload_handler","blobInfo","success","failure","File","filename","lastModified","setup","on","onEditorChange","handleEditorChange","EmptyComponent","ImageComponent","valueState","setValueState","_props$template$attri","_props$template$attri2","_props$template3","isValidUrl","pointerEvents","Image","src","alt","CgCloseR","guid","onFileSelect","MainCheckboxComponents","HeadingComponent","istext","whiteSpace","textvalue","MainTextComponents","TextComponent","ButtonSpecialComponent","loadingInterface","htmlType","layoutIdx","layoutLength","_colText","_colAction","_isCanEdit","_createElement","isHideAllColumn","o","reduce","pre","cur","hidden","_value$data","pass","errorCols","checkedRequire","_errors$items$nestInd","_errors$items$nestInd2","_tableSummaries$find","_errors$items$nestInd3","_errors$items$nestInd4","each","setAttribute","InputTextComponents","_props$valueProps","setStyleDivProps","setClassNameSpanProps","setIconProps","setClassNameProps","setStyleProps","onChangeProps","keyProps","valueProps","disabledProps","placeholderProps","onClickProps","readOnlyProps","autoFocusProps","typeProps","acceptProps","onBlurProps","onFocusProps","fieldProps","random","GetButtonMemoByMemoId","ActionMemoPage","GetMemoDetailById","GetMemoDetail","GetMemoDetailOnlyById","GetRefDocTemp","GetAllMemo","GetMemoHistoryDetail","SetCheckAcces","SpecialActions","MAdvanceFormByMemoIds","getStatusQueueByActorId","UpdateDismissById","LoadState","GetAllMasterDataService","this","state","COMPLETE","queue","FAIL","IDLE","LOADING","r","responseToQueue","retrieve","GetSignature","isActive","GetReportSetting","GetIsDocControl","getAuthorization","getVersion","getVersionTempVC","GetLeaveTemplate","GetLeaveTemplateByEmpId","GetMasterDataFieldInfo","GetMasterDataReportTem","GetFontList","GetMasterDataBrowserAgent","browsers","value1","trim","messages","value2","enumToObject","emun","fromEntries","getTranFormAdvanceForm","aValue","bValue","Equal","MoreThan","LessThan","GreaterThanAndEqual","LessThanAndEqual","NotEqual","Contain","StartWith","EndWith","updateTo","isTable","fieldsToCheck1","maincondition","_con","subCondition","compareWith","isConditionSatisfiedFunc2","objLabel","resetonaction","controlLabel","cond","conditionGroup","areSubConditionsSatisfied","globalFilterValue","setGlobalFilterValue","searchData","setSearchData","searchKey","setSearchKey","tooltipRef","multiSwitch","setMultiSwitch","selectedDatas","setSelectedData","dynamicColumns","headerTh","newField","_col$field","_col$field2","Lang","updateTargetEvents","onGlobalFilterChange","findData","mouseTrack","mouseTrackLeft","mouseTrackTop","autoHide","renderHeader","gutter","alignContent","columnGap","Switch","onShow","customFooter","DataTable","paginator","tableStyle","borderColor","responsiveLayout","dataKey","selection","onRowSelect","onSelectionChange","sortField","sortOrder","headerStyle","selectedData","minWidth","MemoPageContext","MemoPageContextProvider","processQue","setProcessQue","FailQue","setFailQue","setIsCheck","user","intervalId","setInterval","getMyMemoStatus","clearInterval","fail","onDismiss","checkSyncMemo","useMemoPage","NotiPopOverContent","rowGap","que","right","top","handleDismissNoti","CloseCircleOutlined","Link","to","ButtonNavigation","setActive","menuButton","setMenuButton","sortableMenu","setSortableMenu","toggleState","setToggleState","t","useTranslation","useLocation","alert","listNotify","setListNotity","useMemo","GroupMenu","create","Request","newResult","uniqueArray","SubMenu","obj","OrderGroup","toggleArray","_idx","pathname","_toggleState","Url","res_every","mapIcon","RiTodoLine","AiOutlineReconciliation","AiOutlineSetting","AiOutlineUnorderedList","jobId","_menu$","_menu$2","_menu$1$","_menu$1$2","_menu$1$3","_menu$3","menuUrls","currentUrl","isUrlMatch","urlObj","gap","OrderSub","InternalUrl","_url","AiFillBell","redirectPath","isAuthenticated","Cookies","get","SessionContext","useSessionContext","SessionContextProvider","sessionState","setSessionState","defaultSessionContext","GetAllEmployee","qs","opts","UpdateEmployee","GetAllPosition","GetDepartment","EmployeeDialog","_props$formData18","_props$formData19","_props$formData20","_props$formData21","_props$formData22","_props$formData23","_props$formData24","reValidateMode","shouldUnregister","messageConfirmDialog","setMessageConfirmDialog","formSelectedPosition","setFormSelectedPosition","formSelectedDepartment","setFormSelectedDepartment","formSelectedDivision","setFormSelectedDivision","positionList","setPositionList","deptList","setDeptList","divList","setDivtList","dataEmployeeList","setDataEmployeeList","report_To","setReport_To","setUploadFile","subDialogVisible","setSubDialogVisible","fetchDataEmployee","_dataEmployee","selectedEmp","Report_ToNameEn","_props$formData13","ReportToEmpCode","fetchPosition","_dataPosition","newList","_props$formData14","PositionId","fetchDepartment","_dataOrgranize","_props$formData15","DepartmentId","fetchDivision","_dataDivision","_props$formData16","divtList","DivisionId","isEmptyObject","dialogHeader","_props$formData","_props$formData2","_props$formData3","_props$formData4","_props$formData5","_props$formData6","rowDataPosition","rowDataDept","mainDialogVisible","_props$formData7","_props$formData8","_props$formData9","_props$formData10","_props$formData11","_props$formData12","getFormErrorMessage","acceptSave","empDup","isCodeDup","isEmailDup","_props$formData17","setMainLoading","_report_To$EmployeeId","_report_To$EmployeeId2","Username","Position","Department","Division","ModifiedDate","hour","minute","second","ModifiedBy","CreatedDate","CreatedBy","SignPicPath","newUser","setTableData","setMainDialogVisible","reader","FileReader","readAsDataURL","onload","onerror","getBase64","maxWidth","baseZIndex","pattern","fieldState","classNames","invalid","_ref6","_ref7","InputSwitch","_ref8","optionLabel","showClear","filterBy","_ref9","_ref10","_ref11","_ref12","FiX","FiSave","ignore","clearLocalStorageOnLogout","removeItem","ButtonNavigationDropdown","nameUser","setNameUser","shortNameUser","setShortNameUser","emailUser","setEmailUser","setEmpData","cookies","fullName","firstName","lastName","toUpperCase","Panel","Collapse","history","mapButton","IoPersonOutline","IoMailOutline","BsFillPersonFill","handleOpenChangePasswordModal","viewBox","xmlns","d","stroke","IoLogOutSharp","closeDropdown","defaultActiveKey","GetNavbarMenu","mail","navBarData","GetDashboardKeyEndpoint","keyConfig","GetDashboardStatusCard","LoginConfiguration","ADTitleConfiguration","ChangePasswordModal","handleCancel","onSubmitPassword","isPasswordCompared","closeIcon","IoMdClose","onCancel","current_password","new_password","comfirm_password","CheckCanEditProfile","CheckAutoReport","EmployeeDialogFix","toggleMainDialog","tableData","canEditOnlySignature","isEditProfile","departmentList","setDepartmentList","editProfileSetting","setEditProfileSetting","i18n","watch","setError","CompanyCode","DivisionCode","GetUserData","getSetting","canEditProfile","getReportTo","currentCode","emp","_e$target$files$","_e$target2","_e$target2$files$","validTypes","limitFileSize","errs","_formState","_errs$name$message","_errs$name$message2","ProgressBar","changeLanguage","setItem","selectedPosition","pos","selectedDept","dept","selectedDiv","_selectedEmp$Employee","_selectedEmp$Employee2","onError","lg","EmployeeCodeSize","_getWatch","_ref13","limitFileInfo","loginWolfBD","username","password","TmpUrl","oidc","searchParams","logoutRequest","postLogoutRedirectUri","querystring","NavigationBar","_props$responeConfig10","navigationMenu","setNavigationMenu","toggleDropdown","setToggleDropdown","popOverClick","setPopOverClick","popOverHover","setPopOverHover","showNav","setShowNav","setIsActive","instance","accounts","useMsal","setVisible","confirmLoading","setConfirmLoading","setIsPasswordCompared","isFetching","setIsFetching","useRouteMatch","isWolf","setIsWolf","setCanEditProfile","setCanEditOnlySignature","defaultValues","addEventListener","handleScroll","initialNameUser","fetchNav","checkState","_navigationMenu","_isWolf","_canEditProfile","handleClickChange","signOutClickHandler","baseurl","origin","_accounts$","account","getAccountByHomeId","homeAccountId","logoutRedirect","endSessionEndpoint","redirect","handleOpenEditProfileModal","userPopupContent","_baseUrl","hostname","newPassword","oldPassword","webUrl","_data$Remark","updatedRemark","Remark","responeConfig","pathNavbarColor","BsList","NavbarDesktop","_props$responeConfig","_props$responeConfig$","_props$responeConfig2","_props$responeConfig3","_props$responeConfig4","cssConfig","pathLogoNav","onVisibleChange","overlayInnerStyle","NavbarMobile","_props$responeConfig5","_props$responeConfig6","_props$responeConfig7","_props$responeConfig8","_props$responeConfig9","LoadContext","LoadProvider","isLoad","setLoad","useLoading","GetRolePermissionByUser","GetPermissionByEmpId","GetMemoAuthorized","CheckRolePermission","isAdmin","permissions","thispermiss","permiss","role","permis","IsDelete","LoginScreen","_errors$username2","_errors$password2","webVersion","setWebVersion","apiVersion","setAPIVersion","onLoading","setOnLoading","remarkValid","setRemarkValid","carouselItem","PathCarousel","fetchVersion","hash","Carousel","autoplay","_carousel","_loginBody","_loginWolfAccount","_loginWolfAccount$emp","fav_storage","set","GuidVerify","path","expires","loginWolfAccount","_loginWolfAccount$emp2","PathLogo","AiOutlineMail","_errors$username","AiOutlineLock","_errors$password","HidePassAndRegister","paddingBottom","IsMulti","deleteAllCookies","cookie","c","toUTCString","MSAL_CONFIG","auth","clientId","cache","cacheLocation","storeAuthStateInCookie","system","loggerOptions","loggerCallback","level","containsPii","LogLevel","Info","Verbose","debug","Warning","warn","AzureAuthenticationContext","constructor","_MSAL_CONFIG$auth","myMSALObj","PublicClientApplication","loginRedirectRequest","loginRequest","isAuthenticationConfigured","setRequestObjects","scopes","prompt","redirectStartPage","login","signInType","setUser","loginPopup","resp","handleResponse","loginRedirect","logout","logOutRequest","incomingFunction","getAccount","currentAccounts","getAllAccounts","LoginScreenAzure","currentUser","setCurrentUser","dialogBD","setDialogBD","errorMassage","setErrorMassage","inProgress","useIsAuthenticated","authenticationModule","useMsalAuthentication","InteractionType","Silent","search","InteractionStatus","None","submitAzure","_accounts","idTokenClaims","aud","exp","ActionPassLogin","pathCarousel","pathLogo","MdOutlineLock","FooterComponents","ButtonComponents","_props$setLabelProps","setLabelProps","GetAllApprovalMatrixItem","ApprovalMatrixDialog","itemsList","setItemsList","itemsListShow","setItemsListShow","subDialogVisible2","setSubDialogVisible2","setMode","approvers","setApprovers","amountFrom","setAmountFrom","amountTo","setAmountTo","positionLevelList","setPositionLevelList","formSelectedPositionLevel","setFormSelectedPositionLevel","itemAction","setItemAction","setSelectedItem","positionLevel","fecthPositionLevel","matrixItems","ApproveMatrixId","ApproverId","ApproveMatrixItemId","AmountFrom","AmountTo","PositionLevelId","PositionLevelName","ApproverName","Seq","IsTypePosition","positionLv","posi","approvalMatrix","approveMatrixItems","UpdateApprovalMatrix","resetSubDialog","onRowReorder","outlineColor","rowReorder","bodyClassName","_approver","_pos","_approvers","editIcon","seq","onDeleteRow","binIcon","maxFractionDigits","RadioButton","replaceIndex","AddItem","AiOutlinePlus","dataCompany","CompanyDialog","setFormData","CompanyId","companyData","fetchCompany","fetchData","Tel","Fax","UrlWeb","AddressTh","AddressEn","UrlLogo","InputTextarea","DepartmentDialog","masterCompany","setMasterCompany","comCode","setSelectComCode","fecthCompany","company","_formValues","_data$CompanyCode","_data$CompanyCode2","DepartmentCode","UpdateDepartment","DivisionDialog","formSelectedRole","setFormSelectedRole","rolesList","setRolesList","RolesId","fecthRoles","MasterDataDialog","MasterId","Value3","Value4","Value5","_props$toast","show","severity","life","_props$toast2","MenuDialog","allRoles","defaultVal","_rolesId","AuMenuId","MultiSelect","PositionDialog","selectComCode","_fields","PositionLevel","_f","PositionLevelNameEn","PositionLevelNameTh","AccountId","RoleDialog","roleid","UserPermissionsByRoleID","object","NameThRole","NameEnRole","NameThEmployee","NameEnEmployee","fetchRoleItem","RoleDescription","formRoleEmployee","UpdateRole","setData","itemsShow","DropdownComponents","selectValue","setSelectValue","obtions","setObtions","setstyle","_dataDynamic","optionsProps","styleProps","disable","optionLabelProps","validationProps","filterProps","panelClassName","DynamicDiaLog","dynamicColumnsGrid","setDynamicColumnsGrid","obtionList","setObtionList","copyFormdata","setCopyFormdata","GetColumns","grids","dropdownList","dataType","_dataArray","_dataArrayCheck","_dataArraygrid","inx","_grid","textTH","text","translateFunc","setControllerId","manageObjectDatas","_dynamicColumnsGrid","getColumns","fieldName","objectKey","DialogList","pop_up","setPop_up","dialogs","formDataProp","dataListProp","setDataListProp","tableComfirmDialog","visibleConfirmProp","setTableComfirmDialog","setVisibleConfirmProp","visibleDialogProp","setVisibleDialogProp","setMatrixItems","dialogName","tableColumn","DynamicTable","today","getMonth","getFullYear","prevMonth","prevYear","nextMonth","nextYear","minDate","setMonth","setFullYear","maxDate","dataDynamicTable","setDataDynamicTable","showdataDynamicTable","setShowDataDynamicTable","exportData","setExportData","toggleSelect","setToggleSelect","clearFilter","setClearFilter","filters2","setFilters2","showClearDate","setshowClearDatel","titleHead","setTitleHead","dataEdit","setDataEdit","checkAction","setCheckAction","messageButtonDialog","setMessageButtonDialog","visibleConfirm","setVisibleConfirm","canReoderColumn","setCanReoderColumn","reportFileName","setReportFileName","colletionField","setColletionField","canTableAction","setCanTableAction","canAction","setColumns","selectData","setSelectData","filteredData","setFilteredData","dt","selectedColumns","setSelectedColumns","toggleLoading","isload","arrayDataColumn","collection","isChecked","dispalyLebelAndAlter","fieldTypeFilterDynamic","FieldTypeFilterDynamic","setDefSelected","visibleDialogAddProps","isEditProps","isDeleteProps","displayFormDialog","items_label","getElementsByClassName","setItemsCount","canReorderColumn","matrixItem","myData","FieldCollection","matchMode","FilterMatchMode","EQUALS","DATE_AFTER","DATE_BEFORE","BETWEEN","DATE_IS","CONTAINS","ReportName","statusItemTemplate","monthNavigatorTemplate","event","originalEvent","normalFilterTemplate","filterApplyCallback","filterModel","AutoComplete","suggestions","completeMethod","datas","_c$option$field","array","property","has","getUnique","onSelect","_filters2$col$field","_filters2$col$field2","_filters2$col$field3","_filters2$col$field4","_filters2$col$field5","_filters2$col$field6","_filters2$col$field7","_filters2$col$field8","_filters2$col$field9","_filters2$col$field10","_filters2$col$field11","_filters2$col$field12","_filters2$col$field13","_filters2$col$field14","_filters2$col$field15","_filters2$col$field16","_filters2$col$field17","_filters2$col$field18","_filters2$col$field19","_filters2$col$field20","flexGrow","flexBasis","sortable","filterMatchMode","filterElement","statusRowFilterTemplate","itemTemplate","filterHeaderClassName","showClearButton","onFilterClear","dateFilterTemplate","Calendar","monthNavigator","yearNavigator","yearRange","yearNavigatorTemplate","readOnlyInput","_rowData$col$field","mainStr","subStr","AmountFrom_AmountTo","image","textDecoration","Memo_DocumentNo","actionLinkIReport","toastShowSuccess","toastShowError","selData","SplitButton","setDisplayFormDialog","dropdownIcon","onColumnToggle","orderedSelectedColumns","sCol","exportExcel","excelData","dataExport","dataField","_data$col$field","reconStructionForExport","xlsx","workbook","Sheets","utils","json_to_sheet","SheetNames","excelBuffer","write","bookType","saveAsExcelFile","buffer","FileSaver","saveAs","getTime","importExcel","wb","read","wsname","ws","sheet_to_json","shift","_importedData","_props$apiName","apiNamereplace","readAsArrayBuffer","header1","renderHeader1","showSelCol","showCol","showSelectAll","recon","dataShow","reconStructionForShowData","canExport","stripedRows","reorderableColumns","onRowClick","rowClickFunc","onColReorder","colOrder","rowPointer","globalFilterFields","rowsPerPageOptions","rowHover","filters","filterDisplay","paginatorTemplate","currentPageReportTemplate","actionBody","exportable","frozen","alignFrozen","renderActionColumn","checkActionProp","titleHeaderProp","toastShowSuccessProp","toastShowErrorProp","messageButtonDialogProp","GetTemplateFromDDL","GetTemplateTemplateListVersion","GetTemplateeBindFormNameDDL","SearchTemplateListEditing","GetTemplateListVersionHistory","GetTemplateByDocTypeCode","GetTemplateById","GetAllByCreateTemplate","ReportTemplateList","GetTemplateControlById","AddTemplate","LoadLogic","ValidateRefTemplate","TreeSelectNewRequest","groupDataTemplate","setGroupDataTemplate","searchTemplate","setSearchTemplate","isOpen","setIsOpen","checkActionFavorite","setCheckActionFavorite","checkActionPanel","setCheckActionPanel","checkFilter","setCheckFilter","selectAll","DefultMode","OnlyActive","_dataTemplate","_groupDataTemplate","fav_cookie","groupTemplate","GroupTemplateName","keyDataTemplate","localeCompare","_fav_cookie","_fav_cookie$k","_value$i","TemplateNameWithCode","favorite","fetchDataTemplate","removeEventListener","onClickStar","groupIdx","templateIdx","checkUnClickStar","element2","checkHasFavorite","_groupDataTemplate2","onUnFavorite","_groupTemplateName","_templateNameWithCode","onFilterChange","_searchTemplate","_data$data$i","_data$data$i$Template","_data$data$i2","_data$data$i2$Templat","_data$header","filteredList","filteredGroup","filtered","_data$TemplateName","_data$TemplateNameWit","_data$GroupTemplateNa","mapContent","_groupTemplate","activeDefault","_searchTemplate$i$dat","_group","setDataTemplateTreeProps","listFormName","AiFillStar","AiOutlineStar","_searchTemplate$i$dat2","paddingLeft","BsSearch","expandIcon","IoChevronDownSharp","IoChevronForward","expandIconPosition","BsPlusCircle","DynamicReport","reportId","useParams","reportName","itemsCount","reportDetailBody","ReportTemplateId","imgLoading","setImgLoading","LogoLoading","minHeight","flex","MapDataEndpoint","configuration","_endpoint","GetDashboardEndpoint","_configuration$j2","typeConfig","formatConfig","_priorities","displayConfig","priority","statusName","displayStatusName","_priority","MapGroupData","_name","headData","aa","bb","ReportTemplateSelectByReportID","DeleteReport","ReportListTemplateSelect","FilterAdvanceSearch","AutoCompleteComponents","suggestionsProps","completeMethodProps","onKeyPress","notButton","multiple","readOnlyprops","onMouseDown","RadioButtonComponents","inputIdProps","nameProps","checkedProps","labelProps","reportModelIReportModel","Selectedfieldlist","ReportDescription","IsPrivate","CreatedByname","ModifiedByname","Selectedfieldlistfilter","Columns","Rows","TemplateNewVersion","CanDelete","RoleEmp","Mode","ReportDialog","selectedField","setSelectedField","templateKey","setTemplateKey","templateField","setTemplateField","templateMulti","setTemplateMulti","templateFieldMulti","setTemplateFieldMulti","isDialogVisible","keyAutoComplete","setKeyAutoComplete","employeeRequest","setEmployeeRequest","setEmployee","roleData","setRoleData","radioButtonCheck","setRadioButtonCheck","radioButtonCheckToday","setRadioButtonCheckToday","radioButtonCheckFrom","setRadioButtonCheckFrom","filterValue","setFilterValue","reportModel","setReportModel","filterValueSelected","setFilterValueSelected","dropdownfilterValue","setDropdownfilterValue","setGroup","groupData","setGroupData","indexOrderBy","setIndexOrderBy","indexHideColumn","setIndexHideColumn","indexSortingBy","setIndexSortingBy","textHeader","setTextHeader","tableLoading","setTableLoading","templateMode","setTemplateMode","validationForm","setValidationForm","TemplateIdValidation","FieldCollectionValidation","ReportNameValidation","ReportDescriptionValidation","RoleEmpValidation","RoleIdValidation","DisabledSave","_save","dataDF","objSave","reportTemplateId","_arrayName","FieldText","_element","remove_character","editProps","AddReport","checkSetProps","toggleDialog","_UpdatrReport","UpdateReport","setEditReportProps","_TemplateKey","templateDataProps","_TemplateKeyArray","TemplateKey","addTemplateKey","dataEditReportProps","_props$dataEditReport","onTemplateMode","_props$dataEditReport2","_employee","_RoleEmpSplit","_RoleIdSplit","arrayRoleEmp","arrayGroup","_dataRoleEmp","Isprivate","editData","CreateBy","_fechData","CreateDate","Reportdescription","Reportname","ReporttemplateID","SecretId","TemplateID","Templateversion","_props$dataEditReport3","_props$dataEditReport4","_dataJSONParse","_dataFavoritesItem","arrayTemplate","_props$templateDataPr","dataFilter","_SelectFormEdit","_arrayItes","arrayDataReplace","_element$FieldText","_dataSplit","FieldCode","editReportData","indexGroupByFilter","indexGroupBy","indexSortingByByFilter","indexHideColumnByByFilter","indexOrderByColumnByByFilter","searchTextEnter","_rowData","_filterValueSelected","char_pos","IoCloseOutline","marginRight","BiSave","_SelectFliedMulti","onRowReorderFilter","onChangeReportName","onChangeFilterValue","onChangeGroupData","_FilterValueSelected","allFilter","valueSelected","_RadioButtonFormType","_dataFilter","edit","arrayFliedTest","arrayFliedId","_selectFliedData","_selectFliedData$i","replaceString","_objJson","_SelectedfieldlistAll","SelectedfieldlistAll","arrayFieldMulti","arrayFliedFliter","_arraykey","_SelectFliedEdit","_CalendarDate","rowdata","_DateTime","arrayPush","arraySelected","_SelectFlied","_templateSelect","_arrayKey","_AutoComplete","_dataName","Height","borderBottom","_SelectForm","resetFilterOnHide","editReport","_dataArrya","dataFilterValueSelected","ID","FieldDisplay","IsExcludeBlankData","FieldType","IsEquals","FieldTextFrom","FieldTextTo","FieldBit","FieldTypeFilterStatic","IsTodayFrom","IsTodayTo","FilterParameter","FilterValueSelected","onChangeDropdownSelectForm","scrollable","scrollHeight","showButtonBar","onChangeDropdownfilterValue","_AutoCompleteText","req","showModal","dataSelectEmployee","UnAurthorization","withPerMission","Component","isAuthorize","setIsAuthorizeo","_empData$employeeData","menus","_query","_isAuthorize","_menu$Url","_location$pathname","_menu$Url2","_location$pathname2","_menu$Url3","SearchTextInTable","forwardRef","isCheckAll","colProp","columnLabel","filterDropDownProps","filterState","allColumnProps","checkedList","setCheckedList","checkAll","setCheckAll","searchValue","setSearchValue","columnOption","setColumnOption","setSelectedKeys","resetCheck","useImperativeHandle","_filterDataSource","filterDataSource","filterKeys","indexOfKey","keysToConsider","filterColumnPorps","_item$key","_item$key2","_filterState$key","isBetween","recordVal","_item$key3","_item$key4","_filterState$key2","filterBycolumn","_e$toString3","_searchValue$toString3","_e$toString2","_searchValue$toString2","Divider","maxHeight","overflowY","valuePropName","_e$toString4","_searchValue$toString4","updatedSet","delete","_e$toString5","_searchValue$toString5","RangePicker","getColumnSearchProps","filterDropdown","selectedKeys","clearFilters","stopPropagation","ranges","Today","startOf","endOf","onFilter","selectedVal","_colProp$decimal","optionValue","minOption","maxOption","minVal","maxVal","decimalStep","pow","Slider","range","step","stringMode","setCheck","tableRef","handleCheckAllChange","_record$colProp$key","_toString","sorter","checkedForDataTypes","dataKeys","masterFormat","keyTypes","foundKeys","validKeys","_dataSource$","_columnsProps$filter","_location$search","_location$search2","customColumns","canEdit","rowClickAction","reloadData","customImportFileButton","paginationOption","onPageChange","hoverAction","setHoverAction","columnsProps","setColumnsProps","setFilterState","searchedData","setSearchedData","exportLoading","setExportLoading","showCols","setShowCols","importLoading","setImportLoading","hasArrayEmpty","setHasArrayEmpty","initFunc","_keyTypes","_selectedCols3","_selectedCols","_masterSetting","FormatDate","customCol","_customCol$Decimal","_masterSetting$Format3","_masterSetting$Format4","Decimal","_masterSetting$Format5","_option$value","maxNumberValue","selectedCols","_key$toLowerCase","_masterSetting$Format6","_masterSetting$Format7","_masterSetting$Format8","_masterSetting$Format9","formatData","_key$toLowerCase2","_selectedCols2","optionPosition","setOptionPosition","onMouseLeave","renderColumnBody","_value$toString","_value$toString2","isValid","datetime","_colProp$dateFormat","isPublishVersion","Tag","htmlBody","_a$key","_b$key","sorterDate","isBefore","isAfter","currentData","exportRow","isArray","rowKey","extra","updatedFilters","currentDataSource","onRow","SelectedFieldComponent","reportTemp","setReportColumns","setGettingreport","rtcon","setRtcon","findSelected","fecthMasterData","_rtcon","_rtcon$","_rtcon$$value","_selectedfieldlist","_selectedfieldlistfilter","fecthDataReport","FavoritesItem","fieldCollection","numCols","dateCols","edCols","suffix","number","numberString","decimalIndex","countDigitsAfterDecimal","decimalPlaces","integerPart","decimalPart","padEnd","formatNumberWithTrailingZeros","doc","DOMParser","parseFromString","innerText","getChipValue","fieldValue","_chip","onChangeSelectField","_filters","exitFilter","_data$Selectedfieldli","isPass","request_date","dateForm","validateFun","Chips","separator","DynamicReportFix","_isAutoReport","setIsAutoReport","setReportTemp","_reportName","setReportName","reportColumns","gettingFilter","setGettingFilter","gettingReport","controller","AbortController","abort","isAutoReport","_dataDynamic$dt_Repor","signal","GetReportById","atCols","_reportTemp","panelTemplate","headText","toggleIcon","collapsed","titleClassName","togglerClassName","onTogglerClick","Ripple","IoArrowBackSharp","headerTemplate","toggleable","setApiName","pathLoading","setTemplate","empList","setEmpList","checkReport","setCheckReport","isDelete","setIsDelete","setEditReport","dataEditReport","setDataEditReport","setbaseUrl","setIsAdmin","fetchReport","userId","empid","dataJsonn","_dataTemplatee","fetchTemplate","fetchEmployee","Route","exact","adminActionBody","rePortId","_ReportById","fetchGetReportById","_user","checkProps","ShowContentScreen","pdfdff","pdfData","isShowPdfData","allowFullScreen","frameBorder","Empty","FlowCardComponent","_props$approvals","_props$memoDetail$req","_props$memoDetail$req2","requestDetails","nameEn","positionNameEn","departmentNameEn","signature_en","FlowScreen","HistoryComponent","dataDialog","setDataDialog","responeWorkList","listHistoryDetails","sortDate","action_date","convertDate","momentObj","convertAction","formatPlatform","IoDesktopOutline","AiFillApple","AiFillAndroid","FaLine","convertPlatform","convertHtml","_comment","_textAbstract","last","textAbstract","dismissableMask","actor_name_en","actor_name_th","actor_position_name_en","actor_position_name_th","comment","platform","_data$comment","HistoryScreen","historyData","setHistoryData","AttachmentCardComponent","comploteLink","setComploteLink","showFile","attachPath","attach_path","BsFileEarmarkPdfFill","FaFileWord","BsFileEarmarkExcelFill","FaFilePowerpoint","BsFillFileEarmarkTextFill","attach_file","actor","attach_date","AttachmentScreen","attachFiles","CommentComponent","setComment","setPlaceholder","isInvalid","setInvalid","dataEmployee","setDataEmployee","isLoading","setIsLoading","selectedEmployee","setSelectedEmployee","isMultiAssign","setIsMultiAssign","sessionStorage","isMultiRequestComment","setIsMultiRequestComment","showAll","setShowAll","dataEmp","_data$NameTh","_data$NameEn","_data$PositionNameEn","_data$DepartmentNameE","showError","EmployeeDialogFooter","ConfirmMultiSelectEmployee","sentToMemo","waiting_for_id","waiting_for","setCommentStatus","pageName","onUpdate","commentStatus","overFlow","Footer","HeaderDialogComment","_props$lineApproval","_props$lineApproval2","_props$lineApproval2$","approvalSequence","department","signature","columnKey","BiCommentDetail","onInit","metaKeySelection","MemoButtonComponent","memoMenuButton","setMemoMenuButton","setRequire","mapMemoButton","memoMenu","menuData","mapMenuData","commandName","setSelectedView","setCurPage","BiSend","marginLeft","IoMdCheckmarkCircleOutline","IoMdArrowRoundBack","RiDeleteBinLine","AiOutlineSave","MdOutlineCancel","IoMdRefresh","BsArrowRight","RiFileForbidLine","GeneratePDF","_requestDetail","responeMemoDetail","Memoid","responePreviewPDF","MemoPage","BadgeNotificate","count","setCount","hasLastComment","setHasLastComment","setNotificate","dataMemo","_props$dataMemo","_props$dataMemo2","_props$dataMemo3","IsMemoHistoryLastComment","MemoHistoryAmount","MemoAttachFileAmount","_history","_history2","_history2$slice$shift","_history3","amountAttachment","lastComment","dataDetail","_data$attachfiles","attachfiles","_request$listFileAtta","action_id","amountComment","amount","Badge","dot","IC_ATTACHMENT_FILE","IC_HISTORY","isCard","Ribbon","offset","badgeSize","DetailContentScreen","_memo$requestDetails","_memo$requestDetails2","_memo$requestDetails3","onDetailLoading","page","setPage","setPdfData","setMemoMenu","setMemo","responeData","onFetchPdf","MemoID","Fetch","menuButtonSort","motion","transition","animate","IoDocumentText","RiNodeTree","BsClockHistory","GrAttachment","IoOpenOutline","AnimatePresence","exitBeforeEnter","initial","opacity","SelectDate","dates","setDates","isFullWidth","showIcon","BsCalendarDate","left","onOpenChange","suffixIcon","GrFormNextLink","onCalendarChange","MultiSelectDropdown","defaultVaue","allowClear","dropdownStyle","onClear","onDeselect","_selected","valueFilter","dropdownRender","flexWrap","onSelectAll","SearchFilterComponent","searchKeyword","SelectDropdown","alowClear","WorkListSideBarElementUse","_props$searchObject","_props$searchObject2","_props$searchObject3","_props$searchObject4","_props$searchObject5","_props$searchObject6","_props$searchObject7","_props$searchObject8","_props$searchObject9","_props$searchObject10","_props$searchObject11","searchObject","keyword","BsListTask","onSelectTask","defaultTask","f","RiListCheck2","formStatus","IoNewspaperOutline","formType","BiBuildings","allCompany","allDepartment","WorklistCardComponent","_props$data","_props$data2","_props$data3","_props$data4","dataUrl","setDataUrl","isCommentActive","setIsCommentActive","amount_label","currentMemoId","_requestor","Requestor","setContent","setOnDetailLoading","Subject","IsDelegated","delegateMemo","FaChevronRight","WaitingFor","taskGourp","onApproveActionClick","CurrentApprovalLevel","GetApprovalByTemplate","GetAllApprovals","_worklistToShow$slice","workListData","setWorkListData","dtWorkListData","setDTWorkListData","worklistToShow","setWorklistToShow","formTypeOptions","setFormTypeOptions","companiesOptions","setCompaniesOptions","departmentsOptions","setDepartmentsOptions","formStatusOptions","setFormStatusOptions","setSearchObject","currentPage","setCurrentPage","itemPerPage","setItemPerPage","setIsShowPdfData","isCardLoading","setIsCardLoading","toggleDetail","setToggleDetail","sidebarState","setSidebarState","setCurrentMemoId","taskHeader","setTaskHeader","currentIndex","setCurrentIndex","selectedCard","setSelectedCard","setDefaultTask","setTaskGourp","getMemoDetail","setGetMemoDetail","previousQue","abortController","_itemPerPage","indexOfLastPost","indexOfFirstPost","onpopstate","onbeforeunload","firstRetrieveData","updateWorklistToShow","fetchWorklist","task","silent","dateFrom","dateTo","actionBack","_userData$EmployeeId","iItemPerMore","CountMoreItem","FilterDateFrom","toISOString","FilterDateTo","dataWorklist","employees","todo","_todo","_emp","GetWorkListByTaskGroup","selecteCard","sidebar","initialWorklistOption","worklist","_formTypeOption","_formStatusOption","_companiesOption","_departmentsOption","resultFormTypeOption","resultFormStatusOption","resultAllCompanyOption","resultAllDepartmentOption","DepartmentName","onUpdateMemo","getElementsByTagName","overflow","_getMemoDetailById","listControlRunning","is_text_form","_autoNumFormat","templateDescJson","detechAutonumberFormula","CheckSaveAutonumber","_ActionMemoPage","listRefDocDetails","desc","_autoFormats","templateId","autoTemp","newRunning","RunningNumber","checkNum","_requestor$EmployeeId","_memoDetail","Permission","View","_dataAttachfiles","_dataApprovals","memoButton","_dataMemobutton","_dataHistory","GetAllHistory","formSelect","rawObject","_worklist","statusFilter","companyFilter","departmentFilter","formFilter","keywordFilter","filterStatusWorklistCard","filterCompanyWorklistCard","filterDepartmentWorklistCard","filterFormWorklistCard","_searchObject$keyword","_todo$DepartmentName","_todo$TemplateName","_todo$CompanyName","_todo$Status","_todo$DocumentNo","_todo$Subject","_waitingFor$NameEn","_requestor$NameEn","_requestor$NameTh","_keyword","filterKeywordWorklistCard","isDiffPreviousQue","previous","IoMenu","mapWorklistCard","Pagination","defaultCurrent","LoginScreenOpenId","pathCodeUrl","setPathCodeUrl","GetOpenId","paramString","_codeUrl","_loginOpenId","_loginOpenId$employee","PathCodeUrl","PrivateRoute","authenticationPath","setRedirectPath","routeProps","currentLocation","sessionContext","updateSessionContext","chaeckLastActtion","lastAction","diffMilliseconds","timeout","_masterData$find","_masterData$find2","Redirect","ErrorPageComponent","AddQueryComponent","selectedValue","setSelectedValue","_items","attributeButton","setAttributeButton","setViewModal","onSaveQuery","IoSaveOutline","viewModal","hideInPdf","isNotCopy","HiPlus","_data2","idx2","_data$layout$idx","_data$layout$idx$para","_data$layout$idx2","_data$layout$idx2$con","BsTrash","deleteAttributeButton","_props$template$attri3","_props$template$attri4","_props$template$attri5","_props$template$attri6","setLinkFile","maxFile","uploadFileState","_field$value","_field$value$replace","parts","Boolean","fromRender","_response$data2","_response$data3","_response$data4","_response$data5","_response$data6","setUploadFileState","openLink","RiDeleteBack2Line","AddConditionComponent","_conditions$condition","selectedFormName","setSelectedFormName","selectedFormValue","setSelectedFormValue","setDefaultValue","defaultValueItem","setDefaultValueItem","setConditions","actionConditions","setActionConditions","idxConditions","setIdxConditions","_props$attributeNumbe","_condition","attributeNumber","attributeIdx","_props$advanceForm$it","arrayItem","arrayDataItem","_dataLayout","_dataItem","_formats","setAttributeNumber","setConditionViewModal","Save","conditionViewModal","dataRequestValue","onSaveToCondition","RiEditLine","deleteCondition","_props$title","curPage","onSelectView","checkTypeIcon","AddPreFixComponent","_formats$format","setFormats","setDateFormat","formatsIdx","setFormatsIdx","saveToFormatAction","setSaveToFormatAction","selectedCondition","setSelectedCondition","symbolValue","setSymbolValue","positionValue","setPositionValue","_format","dtformat","_attribute","SavePreFix","BiFont","AiOutlineFileText","AiOutlineCalendar","onSaveToFormat","DragDropContext","onDragEnd","_components","destination","reorder","list","startIndex","endIndex","removed","source","Droppable","droppableId","provided","snapshot","_formats$format2","innerRef","Draggable","draggableId","draggableProps","dragHandleProps","isDragging","draggableStyle","userSelect","updateFormat","deleteFormat","AutoNumberComponent","setAttributeIdx","_data$condition","deleteAutoNumber","CalendarDefaultValueGroup","CalendarComponent","_props$template$attri7","_props$template$attri8","_props$template$attri9","_props$template$attri10","_props$template$attri11","setDisabled","ChoiceComponent","setInput","checkBoxRequire","setCheckBoxRequire","handleKeyDown","cellEditor","editorCallback","textEditor","tooltip","tooltipOptions","newItems","onCellEditComplete","newValue","rowEditor","MultiChoiceComponent","displayDropdown","dropdown","setDropdown","setDisplayDropdown","idex","DropdownComponent","_props$itemsList$item","TemplateModal","setRichText","IoDocumentTextOutline","checkBoxHeading","displayCheckBox","setCheckBoxHeading","NumberComponent","_props$template$attri12","_props$template$attri13","_props$template$attri14","_props$template$attri15","_props$template$attri16","_props$template$attri17","_props$template$attri18","_props$template$attri19","_props$template$attri20","_props$template$attri21","_props$template$attri22","_props$template$attri23","setDecimal","setReadonly","setMin","_ref14","_ref15","_ref16","_ref17","_ref18","_ref19","AddConditionModal","_props$revisionCondit","revisionConditions","conditionsIdx","newConditions","boxid","controltype","_conditions","setRevisionConditions","saveConditions","BiArchiveIn","RevisionComponent","setConditionsIdx","BsX","ShortTextComponent","CreateControlSideBarElement","SideBarData","FaHeading","BiText","ImTextHeight","AiOutlineNumber","FiCalendar","IoMdRadioButtonOn","MdOutlineCheckBox","FaRegListAlt","BsTable","BsFileEarmarkRichtext","FaRegImage","CgPlayButtonO","BsSortNumericDown","BiTimeFive","SideBarDataInColumn","renderIn","_data$component","_data$component$props","_data$component2","_data$component2$prop","_data$component2$prop2","_data$component2$prop3","_data$component3","_data$component3$prop","_data$component4","_data$component4$prop","_data$component4$prop2","_data$component4$prop3","TextAreaComponent","autoResize","ColumnComponent","setComponent","control2","errors2","handleSubmit2","setFromRender","checkType","renderComponent","attributeColumn","checkActionButton","columnData","columnIdx","setAttributeColumn","_respone$control","_respone$control$temp","_respone$control2","_respone$control2$tem","_respone$control2$tem2","_respone$control3","_respone$control3$tem","_respone$control3$tem2","_respone$control4","_respone$control4$tem","_respone$control4$tem2","_respone$control5","_respone$control5$tem","_respone$control5$tem2","_respone$control6","_respone$control6$tem","_respone$control6$tem2","_respone$control7","_respone$control7$tem","_respone$control7$tem2","_respone$control8","_respone$control8$tem","_respone$control8$tem2","_respone$control9","_respone$control9$tem","_respone$control9$tem2","_respone$control10","_respone$control10$te","_respone$control10$te2","_respone$control11","_respone$control11$te","_respone$control11$te2","_respone$control12","_respone$control12$te","_respone$control12$te2","_respone$control13","_respone$control13$te","_respone$control13$te2","_respone$control14","_respone$control14$te","_respone$control14$te2","_respone$control15","_respone$control15$te","_respone$control15$te2","_respone$control16","_respone$control16$te","_respone$control16$te2","_respone$control17","_respone$control17$te","_respone$control17$te2","_respone$control18","_respone$control18$te","_respone$control18$te2","_respone$control18$te3","_respone$control19","_respone$control19$te","_respone$control19$te2","_respone$control20","_respone$control20$te","_respone$control20$te2","_respone$control21","_respone$control21$te","_respone$control21$te2","_respone$control22","_respone$control22$te","_respone$control22$te2","_respone$control23","_respone$control23$te","_respone$control23$te2","_respone$control24","_respone$control24$te","_respone$control24$te2","_data$length","_data$widthInTable","_data$decimal","_data$min","_data$max","symbolNumber","useDate","fullYear","fileTypeFile","defaultValueImage","callback","shiftKey","ReferenceDocument","_props$selectedReport7","_props$mergeColumnRef4","_props$mergeColumnRef5","_props$mergeColumnRef6","_props$mergeColumnRef7","_props$conditions","_props$conditions$con","_props$conditions2","_props$conditions2$co","visibleDocControl","setVisibleDocControl","itemsControlLabel","itemsConditionList","conditionRefDoc","conditionType","defaultValueRefDoc","setDefaultValueRefDoc","defaultValueRefDoc2","setDefaultValueRefDoc2","defaultValueReport","setDefaultValueReport","actionSubmit","setActionSubmit","setDocDataSource","_dataReportTemplate","setDefaultConfigColumn","_props$mergeColumnRef","_props$mergeColumnRef2","mergeColumnRefDoc","columnRefDoc","_props$mergeColumnRef3","array2","arr3","assign","setMergeColumnRefDoc","defaultValueDropDown","fetchMyAPI","MapData","dafault","setSelectedTemplateRef","mapDefaultData","_props$selectedReport5","_props$selectedReport6","templateCode","selectedReportRef","arrayCode","_response2","fetchDataTemplateById","setSelectedReportRef","newValueAlterSelected","setValueConfigColumnTable","selectedTemplateRef","_props$selectedReport","_props$selectedReport2","_props$selectedTempla","_props$selectedTempla2","mapper","_props$selectedReport3","_props$selectedReport4","selectedFieldList","prototype","apply","_props$selectedTempla3","_props$selectedTempla4","AdvanceForm","defaultConfigColumn","optionGroupChildren","_props$selectedDocCon","_props$selectedDocCon2","_props$selectedDocCon3","selectedDocControlTemplate","setSelectedDocControlTemplate","renderIsDocControl","_e$value","idReport","arrayReport","arrayMerge","selectedReportById","_val","_props$conditions3","_props$conditions3$co","_props$conditions4","_props$conditions4$co","_props$conditions5","_props$conditions5$co","_props$conditions6","_props$conditions6$co","_props$conditions7","_props$conditions7$co","_props$conditions8","_props$conditions8$co","FooterTableComponents","_props$footerTable2","_props$footerTable2$r","footerData","setFooterTable","_props$footerTable3","_props$footerTable3$r","_props$footerTable5","_props$footerTable5$r","_props$footerTable7","_props$footerTable7$r","_props$footerTable10","_props$footerTable10$","_props$footerTable4","_props$footerTable6","_props$footerTable8","_props$footerTable9","_props$footerTable","_footerTable","deleteFooterTable","setLayoutIdx","activeIndex","setActiveIndex","TabMenu","onTabChange","deleteColumn","ImageComponents","widthControl","setWidthControl","heightControl","setHeightControl","fileTypeImage","preview","ModalCreateComponents","richText","clearErrors","_itemsLength","itemIdx","_templatesDes","templatesDes","defaultCheckBoxHeading","defaultValueReportTable","defaultValueTemplateTable","defaultValueFooterTable","defaultValueConfigColumnTable","_templatesDes$attribu","_templatesDes$attribu2","_templatesDes$attribu3","_templatesDes$attribu4","_templatesDes$attribu5","_templatesDes$attribu6","_templatesDes$attribu7","_templatesDes$attribu8","_template","_templatesDes$attribu9","docRef","setDefaultValueDocControl","_templatesDes$attribu10","_templatesDes$attribu11","_templatesDes$attribu12","_templatesDes$attribu13","_templatesDes$attribu14","_templatesDes$attribu15","_templatesDes$attribu16","_templatesDes$attribu17","_templatesDes$attribu20","_templatesDes$attribu21","_templatesDes$attribu22","_templatesDes$attribu23","_templatesDes$attribu18","_templatesDes$attribu19","_templatesDes$attribu24","_templatesDes$attribu25","_templatesDes$attribu26","_templatesDes$attribu27","_templatesDes$attribu28","_templatesDes$attribu32","_templatesDes$attribu33","_templatesDes$attribu37","_templatesDes$attribu38","_templatesDes$attribu29","_templatesDes$attribu30","_templatesDes$attribu31","_newDoc","docNewDocArray","newDoc","_templatesDes$attribu34","_templatesDes$attribu35","_templatesDes$attribu36","_docEditDoc","docEditDocArray","_templatesDes$attribu39","_templatesDes$attribu40","_templatesDes$attribu41","_docCancelDoc","docCancelDocArray","templates","_templates","visibleCreateControl","setVisibleCreateControl","checkUnique","index2","_dataLayout$template$","labelHeading","defaultDataValue","_data$min$toString","_data$max$toString","_attributeColumn$colu","_selectedReportRef$do","_selectedReportRef$do2","_selectedTemplateRef$","autoRowNumber","requestDataToLayout","_data$width","_data$height","textButton","handleError","TinyMceComponent","loadingTextFromValue","setLoadingTextFromValue","textFromValue","setTextFromValue","FormSettingComponent","viewModalControl","setViewModalControl","setItemsIdx","setLayoutLength","column1","column2","findUnique","uniq","viewManageComponent","setViewManageComponent","setControlModel","IsTextForm","BsFileEarmarkText","BsFileFont","droppableProps","_data$template","_data$template2","no_words","deleteControl","unique","newCol1","unique1","unique2","newCol2","copyLayout","BiCopyAlt","deleteLayout","SelectCondition","_selectedColumn$contr3","_selectedColumn$contr4","setSelectedColumn","setOptions","numCondition","setNumCondition","isMultiValue","setIsMultiValue","multiOptions","setMultiOptions","multiValues","setMultiValues","isCheckBox","setIsCheckBox","_selectedColumn$contr","_selectedColumn$contr2","updateData","SelectDataFormTable","globalFilterValue1","setGlobalFilterValue1","filters1","setFilters1","global","globalFilter","setGlobalFilter","_filters1","ReadOnlyTable","jsonConditionField","handleChange","maxSelectedLabels","isRequester","PlusCircleOutlined","AddMatrixForm","_props$rowData","_props$rowData2","positionLevelOptions","setPositionLevelOptions","matrixOptions","setMatrixOptions","showDialogFootter","setShowDialogFootter","maxLevel","setMaxLevel","setPositionLevel","approvalMatrixDD","setApprovalMatrixDD","setConditionsValue","specficApprovals","setSpecficApprovals","dialogTitle","setDialogTitle","dialogBody","setDialogBody","loadingSelectData","setLoadingSelectData","defSignatureID","setDefSignatureID","temSeq","setTemSeq","loc","setLoc","dtp","setDtp","doa","setDoa","spc","setSpc","isParallel","setIsParallel","parallelType","setParallelType","approveSlot","setApproveSlot","readHide","setReadHide","isRead","setIsRead","isHide","setIsHide","isNewReq","setIsNewReq","templateSelected","setTemplateSelected","templateSelectedField","setTemplateSelectedField","setJsonConditionField","labelStyle","fontStyle","ColumnJsonCondValue","jsonCon","MaxLevelId","Line_of_Command","Direct_to_Position","matrixList","Approval_MatrixId","Design_of_Authority","Specific_Approver","spc_isParallel","IsParallel","IsApproveAll","approverSlot","ApproveSlot","setDefValue","signatureList","masterId","updateChanges","componentName","specific_Approver","TemLineId","allApproveLength","EmployeeName","SpecificTypeId","SignatureID","matrix","fetchMatrixData","templateCol","fetchTemplatData","statusBodyTemplate","sig","getSign","SignatureId","rowInx","onSelected_Sinatures","FiPlus","callSelectUserDialog","callSelectRoleDialog","ApproveMatrix","redundant_Approver","setRedundant_Approver","auto_Approve","setAuto_Approve","allApprovals","setAllApprovals","selectedApprovals","setSelectedApprovals","templateLogics","setTemplateLogics","dialogMode","setDialogMode","onRedundantChange","AutoApprove","ApproverCanEdit","IsCheckAccess","GetApproveType","ApproveTypeId","TemLineApprove","spc_approval","TemplateLogic","approval","LstCondition","conIndex","Tem_LineId","_approval","ApprovalMatrixId","eIdx","_approval$TemLineId","logicControl","methodtype","InsertType","amountstatus","lstCondition","setLogicsApprover","specificApprovers","_props$controlModel$t","_props$controlModel$t2","_props$controlModel$t3","_props$controlModel$t4","controlModel","spcApprove","tem","_ColumnJson","spcApproves","maxLevelName","matrixId","Leng","GetMatrixData","MaxLevelName","maxLevelId","GetMaxLevelName","setAllApprovalsForControl","AutoApproveWhen","AddMatrixCondition","dragIndex","dropIndex","appSpcific","_rowData$Conditions","_rowData$Conditions$C","allSelected","spcs","TemSpecificId","RiFileCopy2Line","newSpcApprovals","isToggleDialog","approveType","_data$Conditions","spc_isApproveAll","CheckboxCpmponents","notLable","InformationComponents","_props$checkValidatio","_props$InformationDat3","_props$InformationDat4","_props$InformationDat5","_props$InformationDat6","_props$InformationDat7","_props$InformationDat8","_props$InformationDat9","_props$InformationDat10","_props$InformationDat11","_props$InformationDat12","_props$InformationDat13","_props$InformationDat14","_props$InformationDat15","_props$InformationDat16","_props$InformationDat17","_props$InformationDat18","informationDataProps","setInformationDataPropst","InformationDataProps","filteredAutoComplete","setFilteredAutoComplete","setKey","isloading","setIsloading","departmentSelect","setDepartmentSelect","toSelect","setToSelect","ccSelect","setCcSelect","toName","setToName","ccnName","setCcName","categoryFilter","setCategoryFilter","isMobile","setIsMobile","toValue","setToValue","CCValue","setCCValue","checkDevice","isMobileDevice","navigator","userAgent","dataToAndCC","_to","ToId","_cc","CcId","_employeeData","_toArray","_toName","_ccArray","_ccName","_duplicate","_event","AccountCode","AccountName","DefaultLang","ExpiredDate","RegisteredDate","_props$InformationDat","_department","_dataFilterDepartmentId","_props$InformationDat2","_fechDepartment","_fechEmployee","showDialogEmp","setShowDialogEmp","employeeList","_CheckboxCpmponents","setControlModelObj","_InputText","selecteOrTypeListInToAndPass","_ToArray","_CcArray","searchAutoComplete","_filteredEmployee","dataemployee","customModalStyle","filterToCC","destroyAll","columnsTo","danger","RiDeleteBin6Line","columnsCC","showMore","insertDataByEnter","toArr","ccArr","auto","checkValidation","_filtered","isVersion","TemplateSubject","isPDFShowInfo","ReportLang","isRequesterEditApproval","isFormControl","RequiredAttachment","TemplateDetailSideBarElement","checkMergeApi","setCheckMergeApi","sideBarData","setSideBarData","MergeAPI","isEnabledPDFDesign","_sideBarData","IoAlertCircleOutline","BsNewspaper","FunctionOutlined","IoPeopleOutline","IoShieldCheckmarkOutline","IoCloudUploadOutline","isDialogVisibleProps","dataProps","_data$EmployeeCode","setDataProps","showModalProps","searchDataProps","onRowSelectProps","setisDialogVisibleProps","AuthorizationTableDepartment","departmentPlaceholderDropdown","setDepartmentPlaceholderDropdown","_array","_arrayNull","departmentListProps","departmentRequestProp","depID","depaction","_dataMap","_arrayFilter","departmentManageProp","gatPlaceholder","_setDepartmentSelect","depname","setValueProps","AuthorizationDepartmentModel","setFilters","departmentSelectManage","setDepartmentSelectManage","departmentSelectRequest","setDepartmentSelectRequest","onSave","setVisibleProps","globalFilterValueTemplate","setGlobalFilterValueTemplate","visibleProps","onGlobalFilterTemplate","_Arrayfilters","AuthorizationTableData","AuthorizationPermissionModel","_permissionType$formc","_permissionType$formc2","_permissionType$formc3","_permissionType$formc4","_advanceFormLabal$","_permissionType$formc5","_permissionType$formc6","_permissionType$Permi","_permissionType$Permi2","_permissionType$Permi3","permissionType","setPermissionType","setRole","roleName","setRoleName","advanceFormLabalSelect","setAdvanceFormLabalSelect","valueType","setValueType","ValueType","informition","setInformition","Informition","setCompany","setDepartment","departmentName","setDepartmentName","companyAction","setCompanyAction","companyActionEdit","setCompanyActionEdit","advanceFormLabal","setAdvanceFormLabal","validation","setValidation","RoleValidation","DepartmentValidation","CompanyValidation","editTablePermissionProps","permissiontype","arrayRole","ids","dataRole","_props$editTablePermi","arrayDepartment","_advanceFormJson$item","actionProps","_arrayAdvanceFormLabal","__data","_arrayColumn","_Informition","formcontrol","labelInformition","Information","_advanceFormJson","advanceFormProps","tableFilter","_arrayRolePermission","Print","Copy","_objTable","Description","setDataTable","setDataAuthorization_view","labeltype","labelcolumnname","labelvaluetype","dataFile","Authorization_view","setDataAuthorization_viewEdit","_uuid","uuidv4","Download","labelvalue","_arrayRole","_arrayRoleName","_dataRole","_Role","typee","_arrayCompany","_dataCompany","_Company","_arrayDepartment","_arrayDepartmentName","_newData","AuthorizationComponent","_props$controlModel","_props$controlModel$A","_props$controlModel2","_props$controlModel2$","visibleModel","setVisibleModel","visiblePermissionModel","setVisiblePermissionModel","roleManage","setRoleManage","companyManage","setCompanyManage","companyRequest","setCompanyRequest","roleManageId","setRoleManageId","roleRequest","setRoleRequest","roleRequestId","setRoleRequestId","departmentManage","setDepartmentManage","departmentCompanyManage","setDepartmentCompanyManage","departmentCompanyRequest","setDepartmentCompanyRequest","departmentRequest","setDepartmentRequest","objectDataAuthorizationProps","Employee","employeeSelect","setEmployeeSelect","permissionTable","setPermissionTable","setAuthorization_view","keyAuthorization_view","setKeyAuthorization_view","manageCompanyJSON","setManageCompanyJSON","editTablePermission","setEditTablePermission","_SpecificEmployeeId","SpecificEmployeeId","_specificArray","dataTo","RoleID","_GameRoleID","SpecificRoleID","Authorization_manage_department","_DepartmentData","Authorization_request_company","_arrayManageCompanyDepartment","_ManageCompany","_arrayManageCompany","companyDataFilter","Company","_dataFilterCompany","Authorization_manage_company","Authorization_request_department","_DepartmentGetJson","_arrayRoleTable","_VisibleModel","roleDataFilter","Role","_specificEmployeeId","_RoleIdManage","_RoleIdRequest","_CompanyManage","_CompanyRequest","Name","_VisibleEditModel","dataRow","_arrayPush","_arrayPushPermissionTable","sorterFunc","filterType","nameA","nameB","_a$key2","_a$key3","_b$key2","VersionAndHistoryTable","previewVersionTemplate","documentCode","ModifiedByName","VersionAndHistoryComponents","templateListVersionHistoryProps","VersionTempVCProps","ObjectDataAuthorizationProps","VersionDataProps","version","value3","value5","SetVersionDataProps","VersionCheckProps","setVersionCheckProps","value4","versionCheckProps","TableTemplateDialogComponentsFixed","refTemplateList","rowSelectedData","onSaveObjTable","objectTable","setObjectTable","convertType","_type","hide","Template","dialogFooter","dragSelection","_newObj","ReferenceDocumentDialogFix","listRefTemplateProps","templateList","visibleRefenceDocumentDialog","setVisibleRefenceDocumentDialog","referenceDocumentDialogObject","setReferenceDocumentDialogObject","Display","Affiliation","Quarter","ReferenceAttachment","IsDefaultLineApprove","DocControl","selectField","tableDialog","listRefTemplate","rowDataTable","ReferenceForm","TemplateNewDoc","TemplateEditDoc","TemplateCancelDoc","SaveDataTable","searchTemplateList","setSearchTemplateList","setSelectField","tableRefDialog","setTableRefDialog","tableRefData","setTableRefData","tableRefDialogHeader","setTableRefDialogHeader","templateAddCodeMulti","setTemplateAddCodeMulti","selectFieldtoshow","setSelectFieldtoshow","listMasterData","setListMasterData","refAd","setRefAd","_IsDocControl","_lstMasterData","lstMasterData","isDocControl","D_NewTpl","D_EditTpl","D_CanTpl","_lstMasterData$find","_lstMasterData$find2","_lstMasterData$find3","_lstMasterDataSplitD_NewTpl","masterType","_lstMasterDataSplitD_EditTpl","_lstMasterDataSplitD_CanTpl","dynamicSelect","seltectItems","_RefDocColumn","selectedCol","objs","newOBJ","selectedOBJ","_ReferenceDocumentDialog","_Object","_controlModel$templat","_e$selectedValue","_e$selectedValue2","_e$selectedValue3","_controlModel","lstMastData","newTplId","editTplId","canTplId","requestModelD_NewTpl","createdBy","createdDate","modifiedBy","modifiedDate","requestModelD_EditTpl","requestModelD_CanTpl","lstMastDataFunction","_MapSelectTable","_arraySelect","_referenceDocumentDialogObject","_arraylayout","_MapSelectTableItem","templateAddCode","_templateForm$RefDocD","_listRefTemplateProps","docControl","mappingLstMaster","defaultRefModel","getOptions","_list","first","_refObject","_rowData$selectedValu","_referenceDocumentDia","_refTemp","_selectField","onTableDialogSave","ReferenceDocumentComponentsFix","_props$listRefTemplat","_props$listRefTemplat2","isLoadTemplate","setIsLoadTemplate","mstTemplateList","setMstTemplateList","fecthRefTemplate","newRef","filterRefDocColum","onClickAction","controlModelObj","ReferenceInformationDialog","listRefInformationProps","refInformation","setRefInformation","refLogic","dataLogic","setLogicsRefIn","requestSelected","setRequestorSelected","requestField","setRequestorField","fetchRequestorData","refValue","arrayRef","Logictype","Jsonvalue","ReferenceInformation","referenceData","setReferenceData","setRefLogic","fecthRefInformation","Logics","cMSTTemplateLogic","PDFEditorContext","PDFEditorProvider","papers","Letter","A4","paperLayout","setPaperLayout","w","h","static","minW","layoutType","pageProperty","setPageProperty","doctype","pageAmount","gridSize","isDragingFromOutSide","selectionBlock","setSelectionBlock","refHtml","updatePageProperties","prevSettings","addLayout","parent","targetParent","childList","round","minH","tempAttibute","fontFamily","isBold","isItalic","isUnderlined","hAlign","vAlign","urlLink","hideLabel","backgroundSize","onSelectPropertyChange","_selectionBlock","newLayout","_layout$children","child","onDeselected","removeSelectedChild","_e$children","changeDocType","docType","usePDFEditor","PDFCompontButton","unselectable","onDragStart","dataString","dragingType","PDFToolBar","reportTem","controlItem","setControlItems","getItems","getIcon","CollapsePanel","_e$template","_item$template","_item$template2","_item$template3","_item$template4","fontStyte","TabsButton","activeKey","setActiveKey","ColorPicker","onChageColor","overlayClassName","SketchPicker","hex","onChangeComplete","BgColorsOutlined","PDFEditorToolBar","_tabsItems$find","fontList","controlProperty","setControlProperty","isLinkModalOpen","setIsLinkModalOpen","linkUrl","setLinkUrl","ConfigProvider","config","theme","primaryColor","imagmeToolComponent","newProps","textToolComponent","BoldOutlined","ItalicOutlined","UnderlineOutlined","AlignLeftOutlined","AlignCenterOutlined","AlignRightOutlined","VerticalAlignBottomOutlined","VerticalAlignMiddleOutlined","VerticalAlignTopOutlined","LinkOutlined","_selectionBlock$templ","tabsItems","centered","_e$children2","StaticInput","_template$attribute3","_template$attribute4","_template$attribute5","_template$attribute6","_template$attribute7","_template$attribute8","resize","StaticImage","onUploadComplete","imageUrl","setImageUrl","getLink","imgSize","contain","cover","imgUrl","uploadButton","LoadingOutlined","PlusOutlined","Upload","listType","beforeUpload","isImage","showUploadList","originFileObj","uploadedFile","DropableComponent","paperWidth","rowHeight","setRowHeight","previewImage","setPreviewImage","selectedImg","setSelectedImg","tableDisplay","_layout$template$attr4","_layout$template$attr5","_layout$template$attr6","keyCode","renderContent","isStaticText","isSelected","_layout$template$attr7","_layout$template$attr11","_layout$template$attr12","_layout$template$attr13","_layout$template$attr14","_layout$template$attr8","_layout$template$attr9","_layout$template$attr10","childrenLayout","_layout$template$attr15","_layout$template$attr16","_layout$template$attr17","_layout$template$attr18","_layout$template$attr19","_layout$template$attr20","_layout$template$attr21","_layout$template$attr22","_layout$template$attr23","_layout$template$attr24","isPortrait","resizeHandles","isDraggable","isResizable","isBounded","GridLayout","isDroppable","containerPadding","allowOverlap","preventCollision","onDragStop","_e$children3","onResizeStop","_e$children4","onDrop","getData","WidthProvider","Responsive","PaperLayout","_pageProperty$pageSiz6","_refPaper$current5","scale","refPaper","handleZoom","_refPaper$current","parentElement","_refPaper$current2","_refPaper$current2$pa","_refPaper$current3","_refPaper$current3$pa","boardWidth","clientWidth","boardHeight","clientHeight","offsetX","transform","breakPages","lines","renderedPaperLayout","_refPaper$current4","offsetWidth","onResize","_refPaper$current6","bodyElement","querySelector","HTMLElement","_pageProperty$pageSiz","_pageProperty$pageSiz2","_pageProperty$pageSiz3","_pageProperty$pageSiz4","_pageProperty$pageSiz5","checkForNewPage","offsetHeight","oldItem","newItem","PDFTemplateComponent","templatePDF","setScale","isEnabled","setIsEnabled","JsonLayout","JsonProps","genFormat","requestResult","_refHtml$current","elements","allDivElement","tableCount","tempAfter","beforeTb","isBeforeTb","afterTb","tableControl","Alabel","html","getDivForTemplate","_tempAfter","HeaderLayout","BodyLayout","FooterLayout","tempDiv","computedStyle","getComputedStyle","cloneNode","outerHTML","onDoubleClick","ZoomOutOutlined","zoomOut","ZoomInOutlined","zoomIn","getScreenWidthWithBreakpoint","screenWidth","innerWidth","OptGroup","ShowHideControlModal","advanceFormItem","operators","destroyOnClose","maskClosable","justify","CloseOutlined","labelAlign","onValuesChange","changeValue","allValues","List","restField","validateTrigger","getFieldValue","MinusCircleOutlined","block","HideAndReadOnlyControlForm","_form$getFieldValue$s","breakpoint","setBreakpoint","selectedDataIdx","setSelectedDataIdx","controlOption","handleResize","noStyle","ErrorList","DataSourceConditionRow","onRowChange","changedValues","DataSourceLoadForm","DataSourceRelateConditionRow","refInfors","DataSourceRelatedForm","DataSourceRelatedToLoadData","labelActionValues","setLabelActionValues","compact","formValue","ShowHideByRoles","mstRoles","setMstRoles","_roles","maxTagCount","SpecialActionServiceForm","SetValueControlModal","SetValueControlForm","JsonLogicForm","readableLabels","sortedOptions","SpecialActionService","dynamicForm","setDynamicForm","getFormByType","FormLogicComponent","datalogic","useModal","setAdvanceFormItem","_dataLogics","set_dataLogics","readableLogicType","tranformData","lowercaseKeysArray","onClickAddButton","resetFields","_jsonValue$labelactio","showaction","mainConditions","logicType","splitLabel","tablestatus","ShowHideActionType","EditOutlined","updatedAllLogic","DeleteOutlined","InformationTab","templateName","MatchFieldsDataModal","DATA","MatchFieldsTab","_form$getFieldValue$s2","allmatchSAPField","EventTab","buttonDump","setButtonDump","docStatus","setDocStatus","masterButtonDump","masterDocStatus","v","fetchMasterData","ConditionTab","APITab","ReturnDataModal","ReturnTab","ReturnMessageTab","ActionserviceForm","Tabs","TabPane","tab","InfoCircleOutlined","Condition","ActionserviceTemplate","selectedRecord","setSelectedRecord","Logicid","MatchSAPField","Event","ChangeField","FormatReplace","API","Header","Return","ReturnMessage","HEAD","TYPE","OPERATOR","CONDITIONERROR","KEY","VALUE","ALLOW","MESSAGE_KEY","AutoSave","EyeOutlined","okType","overflowX","ActionService","updatedJson","createVersionMasterData","createFormControl","isPublic","TemplateDetail","TextForm","IsEdit","DepID","DocTypeCode","TemplateType","PDFLanguage","Location","To","CC","TemplateDesc","LineOfCommand","MaxLevelID","SpecificApprover","DOA","ApprovalMatrixID","CC_Viewer","ApproverCanEditContent","Modified","MultiDeptId","ReqAttach","AutoStartTemplate","AutoStartColumn","AdvanceRefCondition","specificTempApprovers","VEmployee","cMSTApprovalMatrix","cMSTPositionLevel","cMSTCompany","cMSTMasterData","_controlModel$templat15","_controlModel$templat16","_controlModel$templat17","selectView","setSelectView","controlVersionModel","setControlVersionModel","createVersionMasterModel","setCreateVersionMasterModel","interfaceTemplateLogic","setInterfaceTemplateLogic","groupTemplateName","setGroupTemplateName","templateNameWithCode","setTemplateNameWithCode","setTemplateId","isCopyValue","setIsCopyValue","setIsVersion","setIsLoad","positonLevelList","setMatrixList","setVersion","versionStatus","setVersionStatus","versionCheck","setVersionCheck","setReportTem","setFontList","sinatureOptions","setSinatureOptions","versionTempVC","setVersionTempVC","templateListVersionHistory","setTemplateListVersionHistory","objectDataAuthorization","setObjectDataAuthorization","DepartmentManage","DepartmentRequest","validationInformation","setValidationInformation","logicsApprover","logicsRefIn","setDataLogic","intiFunc","_isCopyValue","fetchPositionLevel","fetchMatrix","signatrue","allHistory","_fontList$","_fontList$$Value","companies","_Department","_dataFilterDepartment","fetchDataAuthorization","GetTemplate","isActiveTemp","_templateVersionCode","_versionTemplate","_dataVersion","_arrayVersion","_templateIdList","_dataVersionTempVC","_templateListVersionHistory","versionFunction","TemplateVersionCode","VersionTemplate","versionTemplate","dataValueInterface","refTemplateByEditFunction","advanceFormByEditFunction","_advanceForm$ReqCondi","_templateIdList$templ","_templateIdList$templ2","_templateIdList$templ3","_advanceForm$ReqCondi2","_advanceForm$ReqCondi3","ReqConditions","_RefTemplate","_dataTemplatetMasterData","_dataAuthorizationMasterData","_manage_company","_manage_department","_request_company","_request_department","_Authorization_view","_manage_companyArrayIndx0","_request_companyArrayIndx0","_manage_departmentArrayIndx0","_request_departmentArrayIndx0","Authorization_for_ViewIndx0","_MasterData","_dataTemplatetMasterDatafilter","lstMasterDataByEditFunction","_templateIdList$templ4","addTemplateDetail","previewTemplate","_control$cMSTTemplate","_interfaceTemplateLog","_interfaceTemplateLog2","_userData$EmployeeId2","_userData$EmployeeId3","_cMSTTemplateLogic","otherLogics","deletedInterface","_userData$EmployeeId5","DeleteTemplate","responeAddTemplate","typeTemplate","_dataTemplateByDocTypeCode","_userData$EmployeeId4","cMstMasterData","_control$templateForm","_templateListVersionH","AddTemplateAndVersion","go","_controlModel$templat2","_controlModel$templat3","_controlModel$templat4","_controlModel$templat5","_controlModel$templat6","_checkValidationOBJ","_controlModel$templat7","_controlModel$templat8","_controlModel$templat9","_controlModel$templat10","_controlModel$templat11","_controlModel$templat12","_controlModel$templat13","_controlModel$templat14","FaRegCopy","MdPreview","isLoadProps","stateProps","ForgotPasswordScreen","haveKey","setHaveKey","setEmail","setNewPassword","confirmPassWord","setConfirmPassWord","captcharVerify","setCaptcharVerify","isSuccess","setIsSuccess","remark","setRemark","confirm_password","checkKey","FiChevronLeft","goBack","autoComplete","DelegateApplyTo","delegateTemplate","setDelegateTemplate","selectedCustomers","setSelectedCustomers","fetchDelegateTemplate","delegateData","DelegateList","templateData","_delegateDetail","DelegateDetail","current_sorted_idx","setDelegateData","filterPlaceholder","DescriptionConfigComponent","setDescription","saveChange","_listAttach","Index","modified_date","setVisibleStatus","BiCommentEdit","visibleStatus","DelegateInformation","_props$delegateData","attachData","setAttachData","fileData","setFileData","requestFile","setRequestFile","pathData","setPathData","descriptionValue","setDescriptionValue","setEmployeeData","currentModal","setCurrentModal","setIndex","isDialogApproverVisible","setIsDialogApproverVisible","approverTextFilter","setApproverTextFilter","setApprover","dateRange","setDateRange","setChecked","deleteVisible","setDeleteVisible","descriptionRespone","setDescriptionRespone","rowDeleted","setRowDeleted","searchEmployee","setSearchEmployee","delegater","setDelegater","DelegateToId","_date","_attachmentData","AttachmentList","_delegater","attachment","ActorId","DateFrom","DateTo","formatDateTimeToMoment","formatDateTimeWithSlash","formatDateTimeAttachment","rowDelete","reoderSequence","showModalApprover","usePeriod","setUsePeriod","onSelectDate","userName","attachWorkList","lastFile","NewDate","newFile","AttachedDate","AttachFile","FileName","FilePath","BiUpload","confirmDialogfunction","onEmployeeSelect","sequenceIndex","DelegateSideBar","DelegateScreen","attachmentData","setAttachmentData","errorState","setErrorState","delegateId","setDelegateId","fetchDelegate","fetchAttachment","DelegateId","_delegateData","_attachList","valid","jsonData","onDelete","MdDeleteOutline","getAllEmailTemplate","EmailTemplateDetail","_Dropdown","_getEmailTemplate","_EmailTemplate","_textEditor","EmailBody","_clickSelectProps","clickSelectProps","_textEditoPropsr","_clickSelectText","EmailTo","FormState","EmailCC","EmailSubject","createEmailTemplate","EmailTemplateId","TemplateDocumentCode","CreatedByName","dataTreeSelectProps","setDataTreeSelectProps","setFormSelect","clickSelect","setClickSelect","formSelectLabel","setFormSelectLabel","emailTemplateObj","setEmailTemplateObj","_emailTemplateObj","AddEmailTemplate","updateEmailTemplate","_templateDropdown","_dataAdvanceForm","layoutLabel","_emailTemplateId","getEmailTemplateById","_responeData","fetchEmailTemplateById","onClickSelect","SimLineSideBar","InitialComponent","setLineapprovals","openEmpSelector","setOpenEmpSelector","openTemSelector","setOpenTemSelector","setEmployeeList","setTemplateList","allMatrix","setAllMatrix","loadTemplate","setLoadTemplate","allCondition","setAllCondition","setTemplateData","requestorData","setRequestorData","fecthEmployeeData","fecthPositionData","fecthTemplate","initApprovalMatrix","conditionObject","conditionControl","callLineApprove","_allLogic$","allValue","enterButton","onSearch","_value$Conditions","reportTo","ResultComponent","lineapprovals","setSignatureList","fecthSignature","signature_id","DashboardCard","_props$dashboard","_props$dashboard2","dashboard","TextAbstract","_data$items","colorValue","statusCard","_color","Memo_StatusName","endpoint","RiDatabase2Line","DashboardCalendar","dataCalendar","setDataCalendar","defaultValueDashboard","setDefaultValueDashboard","allDay","renderStatusView","_status","displayName","status2","color2","displayName2","tt","_dd","zz","zz15","valueDropdownInCalendar","FullCalendar","dayGridPlugin","timeGridPlugin","interactionPlugin","initialView","weekends","eventClick","jsEvent","headerToolbar","center","dayMaxEvents","events","DashboardTimeline","dataTimeline","setDataTimeline","dataGroups","setDataGroups","rightTitle","start","end","bgColor","itemProps","onMouseUp","sideBarWidth","setSideBarWidth","Timeline","groupIdKey","groupTitleKey","groupRightTitleKey","itemIdKey","itemTitleKey","itemDivTitleKey","itemGroupKey","itemTimeStartKey","itemTimeEndKey","groupLabelKey","groups","defaultTimeStart","defaultTimeEnd","itemHeightRatio","canMove","canResize","stackItems","sidebarWidth","TimelineHeaders","SidebarHeader","getRootProps","DateHeader","unit","GetAllProject","itemFilter","setResponeConfig","op","ref2","isMounted","filterGroupBy","setFilterGroupBy","dataFilterGroupBy","setDataFilterGroupBy","ItemsStatus","setItemsStatus","dataAdvancedFilter","setDataAdvancedFilter","dataAdvancedFilterList","setDataAdvancedFilterList","setDashboard","setFilter","selectedFilter","setSelectedFilter","setEndpoint","onSetSelectView","setStatusCard","project","setProject","selectedProject","setSelectedProject","selectedStatus","setSelectedStatus","keyEnter","setKeyEnter","onClickFilter","setOnClickFilter","filterAttribute","setFilterAttribute","isOpenDateFilter","setIsOpenDateFilter","setValueDropdownInCalendar","isFetchData","setIsFetchData","timeoutHandler","ms","responseConfig","_filter","GetDashboardFilterStatus","_responeDefaultAdvanced","_filterStatus","_defaultFilter","GetDashboardDefaultFilterConFig","dataMapping","_dataItemFilter","_fieldText","_fieldType","_fieldTextFrom","_fieldTextTo","_filterParameter","fieldType","fieldTextFrom","fieldTextTo","_itemFilter","fieldDisplay","fieldCode","fieldSpited","fieldText","resultCard","userPrincipalName","connectionString","defaultAdvancedFilter","_advancedFilter","GetDashboardAdvancedFilter","_filterGroupBy","GetDashboardFilterGroupBy","_statusCard","_mapGroupData","_Project","arrayProject","ProjectName","fetchProject","defaultFilterStatus","_dataArray2","jj","_element$data","_filterAttribute$item","_filterAttribute$item2","_filterAttribute$item3","_filterAttribute$item4","_isHasStatus","_dropdown","_dropdown$dropdown","_dropdown$dropdown2","_dropdown$dropdown3","_dropdown$dropdown4","statusValue","_dropdown$value$","_dropdown$value$2","advancedSearch","globalFilterInput","OverlayPanel","_op$current2","_op$current3","_filterAttribute$item5","_filterAttribute$item6","_filterAttribute$item7","_filterAttribute$item8","_filterAttribute$item9","_filterAttribute$item10","_filterAttribute$item11","_filterAttribute$item12","_filterAttribute$item13","_filterAttribute$item14","_filterAttribute$item15","_filterAttribute$item16","_filterAttribute$item17","_filterAttribute$item18","_filterAttribute$item19","_filterAttribute$item20","nameValue","_e$value2","_e$value3","_dataByLang","_e$value4","projectValue","_e$value5","_e$value6","_dataByProject","_op$current4","BsLayoutThreeColumns","IoCalendarOutline","BsCalendarRange","_op$current","FiFilter","BsChevronDown","LogApi","postDate","setPostDate","textLog","setTextLog","fetchGetLogApi","_Log","PostedDate","GetLogApi","EmailTemplateList","setFirst","setRows","columnsHeader","setcolumnsHeader","arrayHeader","columnComponents","emailTemplate","setEmailTemplate","LeaveTypeComponents","_props$leaveTypeTable","leaveTypeTable","InformationComponent","_props$getInformation","_props$refAttibutePro","_props$refAttibutePro2","_props$refAttibutePro3","_props$refAttibutePro4","_props$refAttibutePro5","_props$refAttibutePro6","_props$refAttibutePro7","_props$refAttibutePro8","_props$refAttibutePro9","_props$refAttibutePro10","_props$refAttibutePro11","projectData","setProjectData","setCanNotEdit","treeTemplate","setTreeTemplate","companyList","setCompanyList","nameEnCompanyTo","setNameEnCompanyTo","nameEnCompanyCc","setNameEnCompanyCc","searchDataCc","setSearchDataCc","searchCompanyData","setSearchCompanyData","searchRefDocData","setSearchRefDocData","setSubject","globalFilterValueCc","setGlobalFilterValueCc","globalFilterCompanyValue","setGlobalFilterCompanyValue","globalFilterRefTempValue","setGlobalFilterRefTempValue","isDialogVisibleCc","setDialogVisibleCc","isDialogVisibleCompany","setDialogVisibleCompany","isDialogVisibleRefTemp","setDialogVisibleRefTemp","selectProject","setSelectProject","selectedEmployeeTo","setSelectedEmployeeTo","filteredEmployeeTo","setFilteredEmployeeTo","selectedEmployeeCc","setSelectedEmployeeCc","filteredEmployeeCc","setFilteredEmployeeCc","setRefTempSelected","refTempSelectedProps","selectFormTemplate","setSelectFormTemplate","searchTemplateListEditing","setSearchTemplateListEditing","isSearchTemplateEditing","setIsSearchTemplateEditing","locationPathName","setLocationPathName","coreRender","setCoreRender","onLazyLoad","setOnLazyLoad","refAttibuteProps","setListRefDocsDetail","dataStatusDraftSetDateNew","setInformationTemplate_Desc","formatDateTimeDataReQuest","created_date","checkCanEdit","getInformationMethodProp","setIsSetCanEdit","_detail$listFormName$","getInformation","fetchDataCompany","info_template","copyInformation","getInformationTemplateProp","setOnLoadLineApprove","localStorageData","_templateByid","lineApprove","getLineApprove","responeAprovaWithTemplate","setLineApporve","fetchDataLineApproveWithTemplate","fetchDataTemplateByid","dataGetInformationMethodProp","templateListFormName","template_detail","document_set","setGuid","dataGetInformationMethodMemoProp","_props$requestDetail","_templateIdListFormName","setListFormName","_dataSetInformation","modified_by","created_by","auto_approve_when","template_code","document_no","company_name","project_id","searchTemplateEdit","TemplateListEditing","refId","selQuery","refDoc","CompanyCodeWithName","onGlobalFilterChangeCc","onGlobalFilterCompanyChange","dataCpl","_data$AddressEn","answer_array","dataName","responeCompanyData","onChangeSubjectMemo","_project","showModalCompany","showModalRefTemp","showModalCc","onChangeSelectProject","ProjectId","setSelectedEmployeeToFunction","setSelectedEmployeeCcFunction","isCopyProps","isBranchFromADTitle","branchFromADTitle","searchEmployeeToEnter","searchEmployeeCcEnter","isHideProject","virtualScrollerOptions","itemSize","panelStyle","onChangeSelectFormTemplate","checkTypeLeave","isTextFromValue","showControl","setShowControl","selectedView","errorResult","errorTable","datafilterEmployee","renderHeaderCc","renderHeaderCompany","renderHeaderReftemp","useBreakpoint","Grid","LineApprovalsComponent","lineData","setLineData","setdataEmployeeList","globalFilterValue2","setGlobalFilterValue2","setCanEdit","sinatures_Seleted","setSinatures_Seleted","fromIndex","setFromIndex","moveToNumber","setMoveToNumber","fetchApprovals","getLineAproveMethodProp","s","signature_th","getRequestorDetailProp","setLineApproveMethodProp","sinatures","acceptMoveto","targetIndex","moveItem","scrollDirection","raw","lastData","lineid","addData","RequestorComponent","actionAdd","setIsActionAdd","masterEmployee","isADTitleToPosition","ADTitle","setRequestor","renderSelectedRequestor","masterATDLFT","selectedRows","setSelectedRows","indexState","setIndexState","configFile","setConfigFile","getUploadFileSettingConfiguration","fechData","filterArr","openWindowAttachment","splitPath","cannotDownloadPdfAppSetting","CannotDowLoadPDFDefaultConfiguration","_listFormNames$RefDoc2","_memoDetail$Permissio2","rootPath","docPath","lastIndex","extension","checkCanDownload","checkCanDownloadAttach","checkDLAttach","downloadFileType","checkRoleId","roleId","AttachDownload","cannotDowLoadPDFDefault","_listFormNames$RefDoc","_memoDetail$Permissio","IoMdAlert","memo_id","is_merge_pdf","_selectedRows$find","handleCheckboxChange","_selectedRows","_SecRow","RequestSideBarElement","setSidebar","sidebarM","setSidebarM","BsPerson","AiOutlineApartment","ImAttachment","SideBarDataResponsive","workList","AiOutlineHistory","MemoSingleButton","RequestScreen","_requestDetail$memoDe4","setTtemplateId","setMemoId","listFormNameState","setListFormNameState","isSetCanEdit","templateTree","setTemplateTree","setErrorResult","visibleComfirm","setVisibleComfirm","setErrorTable","isActionPdf","setIsActionPdf","setIsTextFromValue","isShowPdfButton","setIsShowPdfButton","requestorId","setRequestorId","setCheckTypeLeave","onLoadLineApprove","setPreviewTemplate","setIsHideProject","setBranchFromADTitle","setIsBranchFromADTitle","activeADTitleToPosition","setActiveADTitleToPosition","isActiveADTitleToPosition","setIsActiveADTitleToPosition","refAttibute","setRefAttibute","memoPageModel","approver_can_edit","auto_approve","costcenter","department_id","document_library","is_editable","is_public","last_action_by","last_status_id","last_status_name","status_id","setLeaveTypeTable","_requestDetail$memoDe","_requestDetail$memoDe2","_requestDetail$memoDe3","fetchLineApproveWithSummary","fetchTemplateDocTypeCode","onCheckPermission","queryData","_requestDetail$memoDe5","checkRefTemplate","_memoPageModel$listRe","_refDoc","refObject","refDocsDetail","results","docDetail","replaceTitleInfo","_responeADTitle$activ","_respone$memoDetail3","_responeADTitle","activeBranchFromADTitle","_respone$memoDetail","_respone$memoDetail$r","_respone$memoDetail2","_respone$memoDetail2$","_respone$0$Value","_respone$","_respone","_display","_dataReplace","documentElement","_listFormName","_memoPageModel","_template$SpecificEmp","_template$SpecificEmp2","_template$SpecificRol","_template$SpecificRol2","emp_authorize","role_authorize","isEmpAuthorize","isRoleAuthorize","_template$SpecificEmp3","_template$SpecificEmp4","_template$SpecificRol3","_template$SpecificRol4","fechMemoDetail","fechMemoButton","permission","editDataMemoDetail","_leaveTemplate","checkLeaveRequestTemplate","fetchLeaveTemplate","setCreator","setInformation","setLineApprove","setFileAttach","getRequestor","getFileAttach","getTemplateTree","_memoId","fechMemoButtonDefault","error_result","error_table","ess_","_requestDetail$listFo","_requestDetail$memoDe6","_template_desc","runControls","_requestDetail$listFo2","_requestDetail$memoDe7","isTableRequire","table_row","table_col","_errpr","onAdd","getRequestorMethodProp","setRequestorMethodProp","setCreatorMethodProp","getInformationTemplateSetDataProp","getFileAttachMethodProp","setFileAttachMethodProp","actionNavContent","PreviewTemplateScreen","LoginGoogle","RegisterWolfScreen","checkLength","setCheckLength","checkEmail","setCheckEmail","displayPopup","setDisplayPopup","dataRemark","setDataRemark","validateEmail","Password","Note","Regis","RegisterWolfAccount","TableReferenceComponent","_props$refAttribute","_props$refAttribute2","_props$refAttribute3","showList","setShowList","refLoading","DialogRefTemplateComponent","_props$searchRefDocDa","_props$refAttribute4","filterRefTempValue","setFilterRefTempValue","setRefSelected","_data$props$refAttrib","refMemoId","RefSelected","advanceFormList","matchedItem","MAdvacveForm","assignMAdvancveForm","setDialogVisibleInRefTemplate","SelectField","DocNo","ValidateRef","ValidateSelected","renderHeaderRefTemplate","dialogVisibleInRefTemplate","TemplateVersionComponent","templateListVersion","selectedTemplateVersion","setSelectedTemplateVersion","InformationComponentFix","_listInToAndPass$to","_listInToAndPass$to2","_listInToAndPass$pass","_listInToAndPass$pass2","masterCompanies","canEditRefDoc","setListInToAndPass","listInToAndPass","masterProjects","finFo","masterInterface","checkedLeaveTemplate","isTemplateVersion","setDefaultTemplateDesc","dialogVisibleInCompany","setDialogVisibleInCompany","dialogVisibleInEmployee","setDialogVisibleInEmployee","hideProject","hideBranch","setIsHideBranch","hideTo","setIsHideTo","hideCc","setIsHideCc","hideSubject","setIsHideSubject","typeEmployeeDialog","setTypeEmployeeDialog","filteredEmployee","setFilteredEmployee","filterCompany","setFilterCompany","hasUserManual","setHasUserManual","_finFo$Value","_finFo","_showBranch","checkHasFifoFunction","searchEmployeeToAndPass","showModalInEmployeeToAndPass","masterDataList","userManual","masterlist","master","UserManualGroupName","nameFileSplit","linkFileSplit","objeMemo","com_name","checkChangeComp","refObtions","LineApprovalsComponentFix","canEditLineApproval","currentLevel","hightLight","setHightLight","myLevel","setMyLevel","dynamicTable","IsAdmin","allSeq","toggleModal","okText","employeeId","nameTh","positionNameTh","departmentNameTh","onResetClick","defSignature","OtherButtonMemoComponent","_props$memoDetail$mem7","_t","_props$permission","_props$permission2","_t2","setResponeData","isCheckByOrigin","setIsCheckByOrigin","memoIdForCopy","IsCheckAccessEditing","_props$memoDetail","_props$memoDetail$mem","_props$memoDetail$mem2","actorCheckAccess","onSetCheckAccess","checkAccessRequestModel","checkIsAccessComponent","_props$memoDetail$mem3","_props$memoDetail$mem4","_props$memoDetail$mem5","_props$memoDetail$mem6","site","encodeURIComponent","isCheckAcces","BsPencilSquare","FaPrint","AdminEditCompletedMemoPermissionContext","AdminEditCompletedMemoProvider","canEditMemo","setCanEditMemo","getCanAdminEditCompletedMemo","CheckCanAdminEditCompletedMemo","useAdminEditCompletedMemoPermissionContext","RequestScreenFix","_memoDetail$template_","_location$state","_location$state2","checkUseEffect","setCheckUseEffect","setCheckActionPage","setCheckedLeaveTemplate","_setIsControlLoading","masterTemplateDesc","setMasterTemplateDesc","setActionAlert","showLoadTimer","hideLoadTimer","isShowLoad","clearTimeout","setCanEditDoc","canEditLineApprove","setCanEditLineApprove","isCheckAccess","setIsCheckAccess","isSkipapm","setIsSkipapm","setListFormNames","setListHistoryDetails","setRefAttribute","setRefOptions","setRefLoading","setCanEditRefDoc","setRefValue","masterLeaveSpec","setMasterLeaveSpec","masterSignature","setMasterSignature","setMasterATDLFT","masterRowState","setMasterRowState","masterDLAttach","setMasterDLAttach","setFinFo","setMasterInterface","lRTempCode","setLRTempCode","mbkOnlyU","setMbkOnlyU","setMasterProjects","setMasterEmployee","setMasterCompanies","setTemplateListVersion","setIsTemplateVersion","loadingPDF","setLoadingPDF","isShowPdf","setIsShowPdf","setIsShowSum","setPermission","masterDataValidField","setMasterDataValidField","messageValidField","setMessageValidField","setDuration","skipapm","setSkipapm","requestActionMemo","setRequestActionMemo","checkRequestActionMemo","setCheckRequestActionMemo","previousAmount","setTemplate_desc","setReturnMessage","setCheckInterFace","setInterfaceButton","setIsADTitleToPosition","isRequireAttachment","setIsRequireAttachment","setEdFont","_masterData$find$Valu","projects","_e$MasterType","temCodes","_e$MasterType2","setDefault","rishFont","setrishFont","fontFormat","detectLineApproval","getAllRefDoc","_RefID","refDocs","_refTemplate","Template_desc","เลขที่เอกสาร","Template_name","Document_no","_signature","checkQuery","autoApprove","canAccess","_usrId","_docTypeCode","_isCopy","_isPreview","_documentNo","getInitialData","_requestDetail3","_requestDetail4","_requestDetail5","_requestDetail5$reque","_requestDetail5$reque2","_requestDetail$reques2","userDataByQuery","hasQueryUserId","_isTextForm","_requestDetail$reques","_requestDetail2","_requestDetail2$reque","requestConditions","canViewAndPrint","memoButtons","getLineApproveAtFirsts","templateDescWithInterface","prepareInitialLogicInterface","detechFormulas","templateDescWithLogic","autoNum","_templateDesc","initialActionFiedFormLineApprove","_requestDetail6","_requestDetail6$reque","_requestDetail6$reque2","mewLine","IsFormControl","_templateApproveId","_responseTemplate","_listTemplate","arrayEditingVersion","checkTemplateVersion","checkDataAndSetFunction","createTableSums","templateItems","rowStateCOl","responseDataLineApprove","dataJsonApproverType","approverType","onLoadLiveApproveType","RequestConditions","logices","tempdescItem","dataLineApprove","_jsonValue2","currentApprovals","_jsonValue","_datalineapprove","WaitForCommentcondition","deserializeColumnJsonCondValue","_ReqConditions$Condit","fieldAction","fieldSplited","condValue","_formulas","memoStatus","_templateDesc2","_templateDesc2$items","insert","arr","_fieldaction","_guid","chkInterface","handleDatasourcerelated","actionDesCription","_lineApproval","_templateDesc3","_templateDesc3$items","showTemplate","notInPos","userRole","currentApproval","onCheckUserRolePermissionInLogic","templateLayouts","targetCols","notTargetCols","tableCols","notUseCols","_pos$tableCols","_templateDesc$items$r","_templateDesc$items$r2","onProcessLogicReferenceNoFilter","_templateDesc$items$r3","_templateDesc$items$r4","objMemo","selctedCom","hasDatadatasourcerelated","_actionTemplate","_actionTemplate2","_layout$data$value","initialLogicData","getInitialLogicData","controlType","_templateDesc$items$p","_templateDesc$items$p2","_templateDesc$items$p3","defItems","resData","_templateDesc$items2","dataSourceLoad","userRoles","accessRoles","accessRole","onFilterLoadtoField","onLoadReferenceData","orCondition","refFilterValueEqualComlumAll","refFilterValue","responseDataReference","onFilterRefFilterField","currentFieldValue","_refFilter","refData","refFil","_jsonValue$conditions2","objectkeyList","checkedLeaveTemplateLogic","CompanyNameTh","CompanyNameEn","_jsonValue$Conditions","_lRTempCode","_responeADTitle$activ2","_spited","waitForId","_memoButtons","IsRequesterEditApproval","_templateDesc$items3","sumIntable","CheckValidField","getCheckValid","datepicker2","datepickerLabel1","datepickerLabel2","_ValidField$Value","ValidField","masterDataValid","_masterDataValid$","_masterDataValid$2","masterDataLabel1","masterDataLabel2","newDate1","newDate2","_submitType","dateValidField1","dateValidField2","_listHistoryDetails","_listFileAttachDetails","_listRefDocDetails","_listControlRunning","_listFormNames","_listInToAndPass","_tempVersion","_allLogic","_validation","Validation","_formData$items","formatFormData","_memoDetail$memoid","_requestMemoPage","listLogic","_respone$messageType","_respone$message","_respone$messageType2","messageType","_memoDetail$actorChec","_template_desc$items$","_template_desc$items$2","_template_desc$items$3","_template_desc$items$4","_template_desc$items$5","allTemplateControl","logicRefInfomation","_control$items","logicRefInformation","refInfor","resTemp","logicDataLineApprove","logiceiei","_formData$items2","_layout$template3$att","_memoDetail$memoid2","controlName","listLineApprove","AccountDialog","NewPassword","ConfirmNewPassword","CreateWOLFAccount","UpdateWOLFAccount","UserManualDialog","userManualValue","setUserManualValue","setFileName","fileInputType","setfileInputType","masterDataValue","attachFile","userManualformData","_formData$UserManualG","_formData$UserManualG2","UserManualId","FileDescription","TagKeyword","Sep","ActorName","OrderItem","AddUserManual","uploadAttach","onUploadFile","DialogListFix","subTableData","setSubTableData","_editData","DelegateListScreen","isShowApproverModal","setIsShowApproverModal","approverData","setApproverData","searchDelegateData","setSearchDelegateData","filterText","setFilterText","defaultDateRange","setDefaultDateRange","departmentData","setDepartmentData","filterEmployee","setFilterEmployee","checkIsAdmin","fetchDelegateList","_isAdmin","_delegate","delegate","assignedData","AssignedId","Approver","onResetFilter","AiFillPlusCircle","MdOutlineFormatListBulleted","RiUserSearchLine","momentWorklistFrom","momentWorklistTo","formatWorklistFrom","formatWorklistTo","formatDateTo","_data$","startDate","endDate","onClickSearch","RequesterDeptId","ActionId","WaitingId","setDataSource","bottom","LogSendEmailScreen","pageNumber","setPageNumber","logData","setLogData","setTotal","setSearchKeyword","fetchGetAll","GetAll","SendMails","onResend","Id","ReSend","dayjs","SearchOutlined","MasterDatascreenFixed","dynamicData","setDynamicData","emp_data","setEmp_data","subData","setSubData","getQuery","eriei","apiPath","_emp_dataFind2","_emp_dataFind","_emp_data","_apiPath","_emp_dataFind3","_emp_dataFind3$Employ","_emp_dataFind4","_emp_dataFind5","_emp_dataFind6","getAll","fecthApprovalMatrixItem","_emp_data2","_emp_data3","approvalMatrixes","matrixItemToString","SimLineApproveScreen","ReportScreenFix","setText","reportList","setReportList","setPaginationOption","showSizeChanger","_page","checkAutoReport","isEnable","_empList","_empList2","ExportTimeStamp","TimeStampScreen","setDataList","isLoadTable","setIsLoadTable","PageNumber","timeStampRequest","setTimeStampRequest","SearchDateTimeFrom","SearchDateTimeTo","Paging","fileSelected","setFileSelected","uploading","setUploading","exporting","setExporting","fecthTimeStamp","_paginationOption","PageCount","RecordCount","fecthExportTimeStamp","showTotal","paginationValue","UploadTimeStamp","MSDocRenderer","uri","Container","IFrame","MSDocFTMaps","docx","xls","ppt","pptx","fileTypes","weight","styled","_templateObject","_taggedTemplateLiteral","iframe","_templateObject2","PDFPreviewComponent","setElement","pdfjs","pdfjsLib","renderPage","canvas","pdf","pageNum","getPage","viewport","getViewport","outputScale","devicePixelRatio","floor","renderContext","intent","canvasContext","getContext","promise","reason","getDocument","pv","numPages","node","onContextMenu","PreviewAttachmentScreen","selectedDoc","setSelectedDoc","fileExt","setFileExt","imageType","pdfType","msType","empID","memoDocuno","handleCheckUserPDF","_window$location$port","ext","getTypeOfFile","_imageType","_pdfType","_msType","objectFit","RequestActionMemo","RejectBrowser","browserConfig","LoginSSUP","accessToken","onCallback","clear","authorizeUrl","BUDGET","PR","PO","PV","GR","renderNumber","view","alloc","remain","percentage","genBudgetColumn","BudgetSummary","renderDescription","dataSet","PublishStatus","TrackStatus","ProcurementTracking","renderPublish","BLANK","WAIT_FOR_APPROVE","PUBLISH_ON_WEB","GlobalOutlined","verticalAlign","SKIP","renderTrack","COMPLETED","CheckOutlined","retrieveFn","retreiveProcurement","tor","stdPrice","pr","rfp","compare","po","award","eGP","ReportTable","formatNumber","expandable","expandRowByClick","searchOptions","setSearchOptions","retrieveData","reqBody","handler","q","ok","fetchAutocompleteOptions","textSearch","Routes","loginScreen","setLoginScreen","guidVerify","fetchApp","browser","browserDetector","defaultProtectedRouteProps","CheckAppSetting","canDownLoadPdf","CheckCanDownloadPdf","setIsLoadPackage","pathLogoLogin","isMulti","hidePassAndRegister","SwitchTransition","CSSTransition","addEndListener","done","WorkListScreen","TemplateDetailScreen","EmailTemplateListScreen","EmailTemplateDetailScreen","ReportScreen","DashboardScreen","PaymentReport","LoadComponent","LoadPackageComponent","packagesInstall","setPackagesInstall","Animate","transitionName","isLoadPackage","SyncOutlined","spin","onClickStart","FloatingButton","NotificationComponent","BellOutlined","App","_localStorage$getItem","auzreConfig","setAuzreConfig","ua","msie","msie11","msedge","firefox","timer","setTimer","isCountDown","setIsCountDown","isIE","isEdge","isFirefox","lang","fetchCon","_document$querySelect","reponseAzureConfig","titleWeb","pathFavicon","getAzureConfig","msToTime","pad","secs","sec","formatKey","useIdleTimer","onIdle","countDown","_timer","reload","onAction","promptTimeout","immediateEvents","throttle","eventsThrottle","startOnMount","startManually","stopOnIdle","crossTab","syncTimers","publicClientApplication","authority","redirectUri","secureCookies","MsalProvider","Router","isLocalhost","registerValidSW","swUrl","serviceWorker","registration","onupdatefound","installingWorker","installing","onstatechange","Backend","LanguageDetector","initReactI18next","returnNull","fallbackLng","lng","_lang$toLowerCase","interpolation","escapeValue","rootElement","ReactDOM","BrowserRouter","Suspense","fallback","ready","unregister","checkValidServiceWorker","registerServiceWorker"],"mappings":"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","file":"static/js/main.e0ef9e89.chunk.js","sourcesContent":["import React from \"react\";\r\nimport { Col } from \"react-bootstrap\";\r\nimport \"./ComponentLabel.css\";\r\ntype Props = {\r\n renderInTable?: boolean;\r\n col?: any;\r\n errors?: any;\r\n colText?: number;\r\n rowIdx: number;\r\n colIdx: number;\r\n template: any;\r\n style?: React.CSSProperties;\r\n rightComponent?: React.ReactNode;\r\n isSubmitted?: any;\r\n};\r\n\r\nconst ComponentLabel = (props: Props) => {\r\n return (\r\n <>\r\n {!props.renderInTable && (\r\n \r\n \r\n \r\n
\r\n {props.template.label}\r\n {(props.template.type === \"an\" ||\r\n props.template.attribute.require === \"Y\") && (\r\n *\r\n )}\r\n
\r\n

\r\n {props.template &&\r\n props.template?.alter &&\r\n props.template?.alter?.replaceAll(\"|\", \"\")}\r\n

\r\n \r\n \r\n {props.rightComponent}\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default ComponentLabel;\r\n","export function replaceSpecialChar(str: string) {\r\n if (str === \"\") return \"\";\r\n str = str.replace(/ /g, \"_\");\r\n str = str.replace(\"'\", \"_\");\r\n str = str.replace(\";\", \"_\");\r\n str = str.replace(\",\", \"_\");\r\n str = str.replace(\"?\", \"_\");\r\n str = str.replace(\"<\", \"_\");\r\n str = str.replace(\">\", \"_\");\r\n str = str.replace(\"(\", \"_\");\r\n str = str.replace(\")\", \"_\");\r\n str = str.replace(\"@\", \"_\");\r\n str = str.replace(\"=\", \"_\");\r\n str = str.replace(\"+\", \"_\");\r\n str = str.replace(\"*\", \"_\");\r\n str = str.replace(\"&\", \"_\");\r\n str = str.replace(\"#\", \"_\");\r\n str = str.replace(\"%\", \"_\");\r\n str = str.replace(\"$\", \"_\");\r\n str = str.replace(\"|\", \"_\");\r\n str = str.replace(\"[\", \"_\");\r\n str = str.replace(\"]\", \"_\");\r\n str = str.replace(\"{\", \"_\");\r\n str = str.replace(\"}\", \"_\");\r\n str = str.replace(\":\", \"_\");\r\n str = str.replace(\"~\", \"_\");\r\n return str;\r\n}\r\n","export const GetAutoNumber = async (requestBody: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n requestBody.UserPrincipalName = email;\r\n const respone = await fetch(\"api/RequestControl/GetAutoNumber\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(requestBody),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const GetSaveRunningNumber = async (requestBody: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n requestBody.UserPrincipalName = email;\r\n const respone = await fetch(\"api/RequestControl/SaveRunning\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(requestBody),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const GetRvsRunning = async (requestBody: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n requestBody.UserPrincipalName = email;\r\n const respone = await fetch(\"api/RequestControl/GetRunning\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(requestBody),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const CanAssignMoreThanOne = async () => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n let requestBody = {\r\n UserPrincipalName: email,\r\n };\r\n const respone = await fetch(\"api/RequestControl/CanAssignMoreThanOne\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(requestBody),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n data.result = data.result == \"True\";\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.error(\"error: CanAssignMoreThanOne\", err);\r\n });\r\n return respone;\r\n};\r\n\r\nexport const CanRequestCommentMoreThanOne = async () => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n let requestBody = {\r\n UserPrincipalName: email,\r\n };\r\n const respone = await fetch(\r\n \"api/RequestControl/CanRequestCommentMoreThanOne\",\r\n {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(requestBody),\r\n }\r\n )\r\n .then((response) => response.json())\r\n .then((data) => {\r\n data.result = data.result == \"True\";\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.error(\"error: CanRequestCommentMoreThanOne\", err);\r\n });\r\n return respone;\r\n};\r\n\r\nexport const onDatareladToLoadData = async (dataJson: any) => {\r\n const response = await fetch(\r\n \"api/TemplateList/TemplateByid/LoadLogic/GetLoadDataFormControl2\",\r\n {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n }\r\n )\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch(() => false);\r\n return response;\r\n};\r\n","import React, { useEffect } from \"react\";\r\n\r\ninterface Props {\r\n textHeaderProps?: any;\r\n textSubProps?: any;\r\n isRequir?: boolean;\r\n colorProps?: any;\r\n}\r\n\r\nexport const TextHeaderComponents = (props: Props) => {\r\n useEffect(() => {}, []);\r\n return (\r\n
\r\n {props.isRequir ? (\r\n \r\n \r\n {props.textHeaderProps}\r\n

\r\n\r\n \r\n *\r\n \r\n
\r\n ) : (\r\n \r\n {props.textHeaderProps}\r\n

\r\n )}\r\n\r\n \r\n {props.textSubProps}\r\n

\r\n \r\n );\r\n};\r\n","import axios from \"axios\";\r\n\r\nexport const UploadTinyMce = async (dataJson: any) => {\r\n const respone = await axios({\r\n method: \"post\",\r\n url: \"api/UploadFile/AddTinyMce\",\r\n data: dataJson,\r\n })\r\n .then(function (response) {\r\n return response;\r\n })\r\n .catch((err) => {\r\n console.log(\"AddTinyMce\", err);\r\n });\r\n return respone;\r\n};\r\n\r\nexport const UploadRequestFiles = async (dataJson: any) => {\r\n const respone = await fetch(\"api/UploadFile/AddFile\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n console.log(data, \"data\");\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\nexport const UploadFileRenderControl = async (dataJson: any) => {\r\n const respone = await axios({\r\n method: \"post\",\r\n url: \"api/UploadFile/UpLoadFileRenderControl\",\r\n data: dataJson,\r\n })\r\n .then(function (response) {\r\n return response;\r\n })\r\n .catch(function (response) {\r\n return response;\r\n });\r\n return respone;\r\n};\r\n","import { useContext } from \"react\";\r\nimport { MasterSettingContext } from \"../Context/MasterSettingContext\";\r\n\r\nconst useMasterSetting = () => {\r\n const context = useContext(MasterSettingContext);\r\n if (!context)\r\n throw new Error(\"MemoPage Context must be use inside MemoPage Provider\");\r\n return context;\r\n};\r\n\r\nexport default useMasterSetting;\r\n","import axios from \"axios\";\r\nimport { IAttachFile } from \"../IRequestModel/IAttachfile\";\r\n\r\nexport const GetAllAttachFiles = async (\r\n dataJson: any\r\n): Promise => {\r\n const respone = await fetch(\"api/AttachFiles/GetAll\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n console.log({ data });\r\n\r\n return data;\r\n });\r\n return respone;\r\n};\r\nexport const UploadFileAttachFiles = async (dataJson: any) => {\r\n const respone = await axios({\r\n method: \"post\",\r\n url: \"api/AttachFiles/AddFile\",\r\n data: dataJson,\r\n })\r\n .then(function (response) {\r\n return response;\r\n })\r\n .catch((err) => {\r\n console.log({ errUploadAttach: err });\r\n });\r\n return respone;\r\n};\r\n\r\nexport const UploadRequestAttachFiles = async (dataJson: any) => {\r\n const respone = await fetch(\"api/AttachFiles/AddRequestFile\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((response) => response)\r\n .catch((err) => {\r\n console.log({ errUpload: err });\r\n });\r\n return respone;\r\n};\r\n\r\nexport const GetPort = async () => {\r\n const respone = await fetch(\"api/AttachFiles/GetPort\")\r\n .then((response) => response.json())\r\n .then((response) => response)\r\n .catch((err) => {\r\n console.log({ errUpload: err });\r\n });\r\n console.log(respone);\r\n\r\n return respone;\r\n};\r\n","export const formatKeyLogicData = (logicData: any) => {\r\n try {\r\n const _logicData = { ...logicData, data: [...logicData.data] };\r\n\r\n if (\r\n !_logicData.data.some((item: any) => item.item === \"-- Please Select --\")\r\n ) {\r\n _logicData.data.unshift({ item: \"-- Please Select --\" });\r\n }\r\n\r\n _logicData.data = _logicData.data.map((data: any) => {\r\n if (data[logicData.labelactionfield]) {\r\n return { item: data[logicData.labelactionfield] };\r\n }\r\n return data;\r\n });\r\n\r\n _logicData.data = Array.from(\r\n new Map(\r\n _logicData.data.map((item: { item: any }) => [item.item, item])\r\n ).values()\r\n );\r\n\r\n return _logicData;\r\n } catch (error) {\r\n console.error(\"logic=>formatKeyLogicData=>error\", error);\r\n }\r\n};\r\n","export const GetApprovalsByMemoIDs = async (memoIds: number[]) => {\r\n const respone = await fetch(\"api/LineApprove/GetByMemoIds\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({ memoIds: memoIds }),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.log(\"service=>error\", err);\r\n });\r\n return respone;\r\n};\r\n\r\nexport const onLoadDataLiveApprove = async (dataJson: any) => {\r\n const respone = await fetch(\r\n \"api/TemplateList/TemplateByid/LoadLogic/GetLoadLineApproveFormControl\",\r\n {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n }\r\n )\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err: any) => console.error({ errerrerr: err }));\r\n return respone;\r\n};\r\n","export enum LogicType {\r\n DataSourceRelated = \"datasourcerelated\",\r\n Reference = \"reference\",\r\n DataSourceLoad = \"datasourceload\",\r\n DataLineApprove = \"datalineapprove\",\r\n DataRelatedToLoadData = \"datareladtoloaddata\",\r\n DataAjaxLoadTable = \"dataajaxloadtable\",\r\n Permission = \"Permission\",\r\n Role = \"role\",\r\n RefInfomation = \"refinfomation\",\r\n SpecialActionService = \"specialactionservice\",\r\n HideControl = \"hidecontrol\",\r\n ReadOnlyControl = \"readonlycontrol\",\r\n ActionService = \"actionservice\",\r\n SetValueControl = \"setvaluecontrol\",\r\n}\r\n\r\nexport enum LogicOperatorType {\r\n Equal = \"=\",\r\n MoreThan = \">\",\r\n LessThan = \"<\",\r\n GreaterThanAndEqual = \">=\",\r\n LessThanAndEqual = \"<=\",\r\n NotEqual = \"!=\",\r\n Contain = \"contain\",\r\n StartWith = \"startwith\",\r\n EndWith = \"endwith\",\r\n}\r\n","import moment from \"moment\";\r\nimport { IDateAttribute } from \"../IRequestModel/ITemplateDescModel\";\r\n\r\nexport const formatDateTime = (value: any, defFormat?: string) => {\r\n if (value != \"\") {\r\n let someDateString = moment(value, \"DD/MM/YYYY HH:mm:ss\");\r\n const NewDate = moment(someDateString).format(\r\n defFormat ? defFormat : \"DD MMM yyyy\"\r\n );\r\n return NewDate;\r\n } else {\r\n const NewDate = \"\";\r\n return NewDate;\r\n }\r\n};\r\n\r\nexport const getTimeFormat = (format: IDateAttribute) => {\r\n const symbol =\r\n format.time.symbol !== \":\" && format.time.symbol !== \"\"\r\n ? format.time.symbol\r\n : \":\";\r\n const timeFormat =\r\n format.time.use === \"Y\"\r\n ? `HH${symbol}mm${format.time.useSecond === \"Y\" ? `${symbol}ss` : \"\"}`\r\n : \"\";\r\n return timeFormat;\r\n};\r\n\r\nexport const getDateFormat = (format: IDateAttribute) => {\r\n const dateFormat =\r\n \"DD\" +\r\n (format.date.symbol !== \"\" ? format.date.symbol : \" \") +\r\n \"MMM\" +\r\n (format.date.symbol !== \"\" ? format.date.symbol : \" \") +\r\n `YYYY${getTimeFormat(format)}`;\r\n\r\n return dateFormat;\r\n};\r\n","import { Form, Input, Tooltip } from \"antd\";\r\nimport React, { useEffect } from \"react\";\r\nimport ComponentLabel from \"../../ControlComponents/ComponentLabel\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { Controller, useWatch } from \"react-hook-form\";\r\nimport { TableInputProps } from \"../TableComponent/TableComponent\";\r\n\r\nimport $ from \"jquery\";\r\nimport { checkRequireFromTemplate } from \"../../../Helper/RequestScreenHelper\";\r\n\r\ntype InputFormProps = {\r\n template: any;\r\n data: any;\r\n rowIdx: number;\r\n colIdx: number;\r\n col?: any;\r\n colText?: number;\r\n colAction?: number;\r\n name: string;\r\n control: any;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n buttonType: string;\r\n onControlChange: (controlTemplate: any, controlValue: any) => any;\r\n};\r\n\r\nexport const InputControlComponent: React.FC = ({\r\n colIdx,\r\n rowIdx,\r\n control,\r\n name,\r\n data,\r\n template,\r\n col,\r\n colAction,\r\n colText,\r\n canEditDoc,\r\n checkActionPage,\r\n buttonType,\r\n onControlChange,\r\n ...props\r\n}) => {\r\n return (\r\n {\r\n // if (!field.value || field.value === \"\") {\r\n // field.value = template.attribute.default;\r\n // }\r\n let inpId = template.label.replaceAll(\" \", \"_\");\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n {/* {`${rowIdx}${colIdx}`} */}\r\n {\r\n field.onChange(e);\r\n onControlChange(template, e.target.value);\r\n }}\r\n id={inpId}\r\n value={field.value ? field.value : undefined}\r\n readOnly={!canEditDoc || template.attribute.readonly === \"Y\"}\r\n size={\"large\"}\r\n className=\"input-component table-input\"\r\n placeholder={\r\n template.type !== \"an\"\r\n ? template.attribute.description\r\n : \"Auto Number\"\r\n }\r\n maxLength={\r\n parseInt(template.attribute.length) === 0\r\n ? undefined\r\n : parseInt(template.attribute.length)\r\n }\r\n // defaultValue={template.attribute.default}\r\n disabled={\r\n !canEditDoc ||\r\n template.attribute.readonly === \"Y\" ||\r\n template.type === \"an\"\r\n }\r\n // onBlur={(e) => onChange(e.target.value)}\r\n status={\r\n isSubmitted &&\r\n errors?.items &&\r\n errors?.items[rowIdx] &&\r\n errors?.items[rowIdx].layout[colIdx] &&\r\n \"error\"\r\n }\r\n onKeyDown={(e) => {\r\n if (e.code?.toLocaleLowerCase() === \"tab\") {\r\n setTimeout(() => {\r\n /**\r\n * หลังจากที่มีการ set state จะเรียกดูค่า tabindex ของ element ปัจจุบันเพื่อที่จะเพิ่มค่า tabindex อีก 1 เพื่อที่จะ focus input ถัดไป\r\n */\r\n let curIndex = document\r\n .getElementById(inpId!)\r\n ?.getAttribute(\"tabindex\");\r\n let nxtIdx = parseInt(curIndex!) + 1;\r\n\r\n $(\r\n \"input[tabindex=\" +\r\n nxtIdx +\r\n \"], textarea[tabindex=\" +\r\n nxtIdx +\r\n \"]\"\r\n )\r\n .focus()\r\n .click();\r\n }, 300);\r\n }\r\n }}\r\n />\r\n {isSubmitted &&\r\n errors?.items &&\r\n errors?.items[rowIdx] &&\r\n errors?.items[rowIdx].layout[colIdx] && (\r\n \r\n {template.label} is required.\r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n }}\r\n />\r\n );\r\n};\r\n// export default InputControlComponent;\r\n\r\nexport const InputTableComponent: React.FC = ({\r\n name,\r\n template,\r\n saveFunc,\r\n inputRef,\r\n isEditing,\r\n onEdit,\r\n children,\r\n canEditDoc,\r\n checkActionPage,\r\n buttonType,\r\n rowIdx,\r\n colIdx,\r\n toggleEdit,\r\n ...props\r\n}) => {\r\n let nId = rowIdx + \"_\" + colIdx + \"_\" + template.label;\r\n const nextTab = () => {\r\n setTimeout(() => {\r\n /**\r\n * หลังจากที่มีการ set state จะเรียกดูค่า tabindex ของ element ปัจจุบันเพื่อที่จะเพิ่มค่า tabindex อีก 1 เพื่อที่จะ focus input ถัดไป\r\n */\r\n let curIndex = document.getElementById(nId)?.getAttribute(\"tabindex\");\r\n let nxtIdx = parseInt(curIndex!) + 1;\r\n\r\n $(\"input[tabindex=\" + nxtIdx + \"], textarea[tabindex=\" + nxtIdx + \"]\")\r\n .focus()\r\n .click();\r\n }, 300);\r\n };\r\n\r\n if (!isEditing) {\r\n return (\r\n {\r\n onEdit();\r\n }}\r\n >\r\n {\r\n e.preventDefault();\r\n saveFunc();\r\n }}\r\n onKeyDown={(e) => {\r\n if (e.code?.toLocaleLowerCase() === \"tab\") {\r\n nextTab();\r\n }\r\n }}\r\n onFocus={(e) => {\r\n onEdit();\r\n // if (toggleEdit) {\r\n // toggleEdit();\r\n // }\r\n // toggleEdit();\r\n e.target.select();\r\n }}\r\n />\r\n \r\n );\r\n }\r\n return (\r\n <>\r\n \r\n \r\n
\r\n {\r\n e.preventDefault();\r\n saveFunc();\r\n }}\r\n onKeyDown={(e) => {\r\n if (e.code?.toLocaleLowerCase() === \"tab\") {\r\n nextTab();\r\n }\r\n }}\r\n onFocus={(e) => {\r\n // if (toggleEdit) {\r\n // toggleEdit();\r\n // }\r\n // toggleEdit()\r\n e.target.select();\r\n }}\r\n />\r\n
\r\n \r\n
\r\n \r\n );\r\n};\r\n// export default InputTableControlComponent;\r\n","import React from \"react\";\r\nimport { createContext, useContext, useState } from \"react\";\r\nimport { IUserModel } from \"../IRequestModel/IUserModel\";\r\nconst _userData = JSON.parse(localStorage?.getItem(\"userData\") || \"null\") || { employeeData: {} };\r\n\r\n\r\nconst employeeData = _userData.employeeData;\r\nconst initialSession: IUserModel = employeeData;\r\n\r\nexport const UserContext = createContext<\r\n [IUserModel, (session: IUserModel) => void]\r\n>([initialSession, () => {}]);\r\n\r\nexport const useUserContext = () => useContext(UserContext);\r\n\r\nexport const UserContextProvider: React.FC = (props) => {\r\n const [userData, setUserData] = useState(initialSession);\r\n const defaultUserContext: [IUserModel, typeof setUserData] = [\r\n userData,\r\n setUserData,\r\n ];\r\n\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n};\r\n","import { createContext, ReactNode, useEffect, useState } from \"react\";\r\nimport React from \"react\";\r\nimport { useLocation } from \"react-router\";\r\nimport { notification } from \"antd\";\r\nimport \"./AlertContext.css\";\r\nimport { RiCloseCircleFill } from \"react-icons/ri\";\r\nimport { TiWarning } from \"react-icons/ti\";\r\nimport { FaCheckCircle } from \"react-icons/fa\";\r\nimport { BsFillInfoCircleFill } from \"react-icons/bs\";\r\n\r\nimport { IconType } from \"react-icons/lib\";\r\ninterface AlertProviderProps {\r\n children: ReactNode;\r\n}\r\ndeclare const AlertType: [\"success\", \"info\", \"warning\", \"error\"];\r\ninterface IToggleAlertParams {\r\n key?: string;\r\n type: (typeof AlertType)[number];\r\n message: string;\r\n description: string | ReactNode;\r\n onClose?: () => void;\r\n duration?: number;\r\n}\r\ninterface IAlertContextType {\r\n toggleAlert: (params: IToggleAlertParams) => void;\r\n}\r\nconst AlertContext = createContext(null);\r\nconst alertColors = {\r\n error: \"#b34045\",\r\n warning: \"#fecf6d\",\r\n info: \"#4091d7\",\r\n success: \"#2d884d\",\r\n};\r\nconst AlertContextProvider: React.FC = (props) => {\r\n const [api, contextHolder] = notification.useNotification();\r\n const handleToggleAlert = (params: IToggleAlertParams) => {\r\n let icon: JSX.Element = ;\r\n const iconSize = 28;\r\n if (params.type === \"error\") {\r\n icon = ;\r\n } else if (params.type === \"info\") {\r\n icon = ;\r\n } else if (params.type === \"success\") {\r\n icon = ;\r\n } else if (params.type === \"warning\") {\r\n icon = ;\r\n }\r\n api[params.type]({\r\n key: params.key,\r\n className: \"alert-custom\",\r\n message: params.message,\r\n description: params.description,\r\n placement: \"topRight\",\r\n onClose: params.onClose,\r\n duration: params.duration,\r\n style: {\r\n borderRadius: 8,\r\n zIndex: 10000,\r\n },\r\n icon,\r\n });\r\n };\r\n return (\r\n \r\n {contextHolder}\r\n {props.children}\r\n \r\n );\r\n};\r\n\r\nexport { AlertContextProvider, AlertContext };\r\n","import React, { createContext, useState, useEffect } from \"react\";\r\nimport { GetAllMasterData } from \"../Services/MasterDataService\";\r\n\r\ntype IMasterSettingContextType = {\r\n masterSetting: { [key: string]: any };\r\n updateMasterData: (masterData: any[]) => void;\r\n getMasterSetting: () => Promise<{ [key: string]: any }>;\r\n};\r\n\r\nexport const MasterSettingContext =\r\n createContext(null);\r\n\r\nexport const MasterSettingContextProvider: React.FC = (props) => {\r\n const [masterSetting, setMaterSetting] = useState<{ [key: string]: any }>({});\r\n\r\n useEffect(() => {\r\n fecthData();\r\n }, []);\r\n\r\n const fecthData = async () => {\r\n let settingDict = await getMasterSetting();\r\n setMaterSetting(settingDict);\r\n };\r\n const updateMasterData = (masterData: any[]) => {\r\n if (masterData.length > 0) {\r\n const _masterData = masterData.filter(\r\n (e) => [\"FormatDate\"].includes(e.MasterType) && e.IsActive\r\n );\r\n let settingDict: any = {};\r\n _masterData.forEach((e: any) => {\r\n settingDict[e.MasterType] = e;\r\n });\r\n setMaterSetting(settingDict);\r\n }\r\n };\r\n\r\n const getMasterSetting = async () => {\r\n const masterData = await GetAllMasterData()\r\n .then((e) => e.filter((e: any) => [\"FormatDate\"].includes(e.MasterType)))\r\n .then((e) => e.filter((e: any) => e.IsActive))\r\n .catch((err) => {\r\n console.error(err);\r\n });\r\n\r\n let settingDict: any = {};\r\n masterData?.forEach((e: any) => {\r\n settingDict[e.MasterType] = e;\r\n });\r\n return settingDict;\r\n };\r\n\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n};\r\n","import { Button, Form, Input, Popconfirm, Table } from \"antd\";\r\nimport React from \"react\";\r\n\r\ntype EditableTableProps = Parameters[0];\r\ntype ColumnTypes = Exclude;\r\n\r\nexport const formatToColumns = (columns: any[], data: any) => {\r\n let rowData: any = {};\r\n rowData[\"key\"] = data.key;\r\n for (let i = 0; i < columns.length; i++) {\r\n const column = columns[i];\r\n rowData[column.label] = data[i].value;\r\n }\r\n return rowData;\r\n};\r\n\r\nexport const formatColumn = (columns: any[], data: any) => {\r\n let newData: any[] = [];\r\n // const dataString = JSON.stringify(data);\r\n // const _data = JSON.parse(dataString);\r\n\r\n for (let i = 0; i < data?.row?.length; i++) {\r\n const row = data.row[i];\r\n let rowData: any = {};\r\n rowData[\"key\"] = i;\r\n for (let j = 0; j < row.length; j++) {\r\n const _row = row[j];\r\n rowData[columns[j]?.label] = _row.value\r\n ? _row.value\r\n : _row.item\r\n ? _row.item\r\n .map((_item: any, idx: number) =>\r\n _item === \"Y\"\r\n ? columns[j].control.template.attribute.items[idx].item\r\n : \"\"\r\n )\r\n .toString()\r\n : _row.value;\r\n // rowData[columns[j].label] = _row.value;\r\n }\r\n\r\n newData.push(rowData);\r\n }\r\n const column: any[] = [];\r\n\r\n column.push({\r\n title: \"#\",\r\n key: \"index\",\r\n width: \"80px\",\r\n align: \"center\",\r\n render: (_: any, record: { key: number }, index: number) =>\r\n record.key !== undefined ?

{record.key + 1}

:

{index + 1}

,\r\n });\r\n let cal = 0;\r\n columns.map((_column: any) => {\r\n let tableWidth = (25 / 100) * 1220;\r\n let canEdit: boolean = true;\r\n\r\n if (\r\n _column.control.template.attribute.widthInTable &&\r\n _column.control.template.attribute.widthInTable > 0\r\n ) {\r\n const width = Number(_column.control.template.attribute.widthInTable);\r\n tableWidth = (width / 100) * 1220;\r\n }\r\n cal += 200;\r\n\r\n column.push({\r\n title: (\r\n
\r\n
\r\n {_column.label}\r\n {_column.control.template.attribute.require === \"Y\" && (\r\n *\r\n )}\r\n
\r\n\r\n {_column.alter}\r\n
\r\n ),\r\n dataIndex: _column.label,\r\n editable: canEdit,\r\n width: tableWidth,\r\n isShow: _column.isShow,\r\n });\r\n });\r\n // console.log({ eee: column });\r\n\r\n return { column, newData };\r\n};\r\n","import React, { useEffect, useState } from \"react\";\r\nimport type { DatePickerProps } from \"antd\";\r\nimport { DatePicker, Space } from \"antd\";\r\nimport moment from \"moment\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport ComponentLabel from \"../../ControlComponents/ComponentLabel\";\r\nimport { RangePickerProps } from \"antd/lib/date-picker\";\r\nimport { TableInputProps } from \"../TableComponent/TableComponent\";\r\nimport { getDateFormat } from \"../../../Helper/FormatDateTime\";\r\nimport { Form, Input } from \"antd\";\r\nimport { Store } from \"antd/lib/form/interface\";\r\nimport { IDateTemplate } from \"../../../IRequestModel/ITemplateDescModel\";\r\nimport useMasterSetting from \"../../../hooks/useMasterSetting\";\r\nimport { checkRequireFromTemplate } from \"../../../Helper/RequestScreenHelper\";\r\n\r\ntype InputDateProps = {\r\n ref?: any;\r\n template: IDateTemplate;\r\n value?: any;\r\n status?: any;\r\n onChange: (value: any) => void;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n actionAlert?: any;\r\n onControlChange?: (\r\n controlTemplate: any,\r\n controlValue: any,\r\n controlUpdate: any\r\n ) => any;\r\n};\r\n\r\ntype IDateControlProps = {\r\n template: IDateTemplate;\r\n data: any;\r\n rowIdx: number;\r\n colIdx: number;\r\n col?: any;\r\n colText?: number;\r\n colAction?: number;\r\n name: string;\r\n control: any;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n buttonType: string;\r\n actionAlert?: any;\r\n onControlChange: (\r\n controlTemplate: any,\r\n controlValue: any,\r\n controlUpdate: any\r\n ) => any;\r\n};\r\n\r\nconst DateInputComponent: React.FC = ({\r\n ref,\r\n template,\r\n value,\r\n status,\r\n onChange,\r\n canEditDoc,\r\n checkActionPage,\r\n actionAlert,\r\n onControlChange,\r\n ...props\r\n}) => {\r\n const [action, setAction] = useState(false);\r\n const { masterSetting } = useMasterSetting();\r\n\r\n useEffect(() => {\r\n checkStatus();\r\n }, [action]);\r\n\r\n const checkStatus = () => {\r\n if (actionAlert) {\r\n if (actionAlert.Data) {\r\n actionAlert.Data.map((data: any) => {\r\n if (\r\n actionAlert.ErrorType === \"SpecialError\" &&\r\n data.Label === template.label &&\r\n data.Value === value\r\n ) {\r\n setAction(true);\r\n } else {\r\n setAction(false);\r\n }\r\n });\r\n }\r\n }\r\n };\r\n // console.log(\"actionAlert=>\", actionAlert);\r\n function formatDate(date: string) {\r\n let arrDate = date.split(\"/\");\r\n\r\n const mm = Number(arrDate[1]);\r\n if (mm === 1) {\r\n arrDate[1] = \"Jan\";\r\n } else if (mm === 2) {\r\n arrDate[1] = \"Feb\";\r\n } else if (mm === 3) {\r\n arrDate[1] = \"Mar\";\r\n } else if (mm === 4) {\r\n arrDate[1] = \"Apr\";\r\n } else if (mm === 5) {\r\n arrDate[1] = \"May\";\r\n } else if (mm === 6) {\r\n arrDate[1] = \"Jun\";\r\n } else if (mm === 7) {\r\n arrDate[1] = \"Jul\";\r\n } else if (mm === 8) {\r\n arrDate[1] = \"Aug\";\r\n } else if (mm === 9) {\r\n arrDate[1] = \"Sep\";\r\n } else if (mm === 10) {\r\n arrDate[1] = \"Oct\";\r\n } else if (mm === 11) {\r\n arrDate[1] = \"Nov\";\r\n } else if (mm === 12) {\r\n arrDate[1] = \"Dec\";\r\n }\r\n return arrDate.join(\r\n template.attribute.date.symbol !== \"\"\r\n ? template.attribute.date.symbol\r\n : \"/\"\r\n );\r\n }\r\n const getDateValue = (dateValue: any) => {\r\n // let newDate: Date = new Date();\r\n let newDate = moment(\r\n moment(new Date(dateValue)).format(\"DD MMM YYYY\"),\r\n \"DD MMM YYYY\"\r\n ).toDate();\r\n\r\n if (newDate.toString().toLowerCase() === \"invalid date\") {\r\n newDate = moment(formatDate(dateValue), \"DD MMM YYYY\").toDate();\r\n } else {\r\n newDate = moment(\r\n moment(formatDate(dateValue)).format(\"DD MMM YYYY\"),\r\n \"DD MMM YYYY\"\r\n ).toDate();\r\n if (newDate.toString().toLowerCase() === \"invalid date\") {\r\n console.log(\"cal=>props.data.value\", dateValue);\r\n }\r\n }\r\n\r\n // return newDate;\r\n return moment(\r\n new Date(newDate).toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"numeric\",\r\n }),\r\n getDateFormat(template.attribute)\r\n );\r\n };\r\n\r\n return (\r\n <>\r\n {\r\n onChange(\r\n value ? value?.format(getDateFormat(template.attribute)) : \"\"\r\n );\r\n }}\r\n status={action ? \"error\" : \"\"}\r\n inputReadOnly\r\n />\r\n \r\n );\r\n};\r\n// this one row col index\r\nexport const DatePickerControlComponent: React.FC = ({\r\n colIdx,\r\n rowIdx,\r\n control,\r\n name,\r\n data,\r\n template,\r\n col,\r\n colAction,\r\n colText,\r\n canEditDoc,\r\n checkActionPage,\r\n buttonType,\r\n onControlChange,\r\n ...props\r\n}) => {\r\n return (\r\n (\r\n <>\r\n \r\n \r\n \r\n {\r\n onChange(value);\r\n onControlChange(template, value, false);\r\n }}\r\n />\r\n\r\n {isSubmitted &&\r\n errors?.items &&\r\n errors?.items[rowIdx] &&\r\n errors?.items[rowIdx].layout[colIdx] && (\r\n \r\n {template.label} is required.\r\n \r\n )}\r\n \r\n \r\n \r\n )}\r\n />\r\n );\r\n};\r\n\r\nexport const DatePickerTableComponent: React.FC = ({\r\n name,\r\n template,\r\n saveFunc,\r\n inputRef,\r\n isEditing,\r\n onEdit,\r\n children,\r\n canEditDoc,\r\n checkActionPage,\r\n buttonType,\r\n ...props\r\n}) => {\r\n if (!isEditing) {\r\n return (\r\n
\r\n \r\n
\r\n );\r\n }\r\n return (\r\n <>\r\n {\r\n // if (value !== \"\" && value !== undefined) {\r\n // return moment(value, getDateFormat(template.attribute));\r\n // } else {\r\n // return null;\r\n // }\r\n // }}\r\n rules={[\r\n {\r\n required:\r\n template.attribute.require === \"Y\" &&\r\n checkRequireFromTemplate(template, buttonType),\r\n message: `${template.label} is required.`,\r\n },\r\n ]}\r\n >\r\n {\r\n saveFunc(template.type, template.type);\r\n }}\r\n />\r\n \r\n \r\n );\r\n};\r\n","import { Form, InputNumber } from \"antd\";\r\nimport React from \"react\";\r\nimport ComponentLabel from \"../../ControlComponents/ComponentLabel\";\r\nimport { Col } from \"react-bootstrap\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { TableInputProps } from \"../TableComponent/TableComponent\";\r\nimport { replaceSpecialChar } from \"../../../Helper/ReplaceSpecialChar\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\nimport $ from \"jquery\";\r\n\r\ntype InputProps = {\r\n template: any;\r\n data: any;\r\n rowIdx: number;\r\n colIdx: number;\r\n col?: any;\r\n colText?: number;\r\n colAction?: number;\r\n name: string;\r\n control: any;\r\n onControlChange: (\r\n controlTemplate: any,\r\n controlValue: any,\r\n controlUpdate: any\r\n ) => any;\r\n controlUpdate: any;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n buttonType: string;\r\n};\r\n\r\ntype InputNumberProps = {\r\n ref?: any;\r\n id?: string;\r\n template: any;\r\n value?: any;\r\n status?: any;\r\n onChange: (value: any) => void;\r\n isEditing?: any;\r\n canEditDoc: boolean;\r\n toggleEdit?: any;\r\n checkActionPage: string;\r\n};\r\n\r\nexport const InputNumberComponent: React.FC = ({\r\n id,\r\n template,\r\n value,\r\n status,\r\n onChange,\r\n canEditDoc,\r\n isEditing,\r\n toggleEdit,\r\n ref,\r\n}) => {\r\n return (\r\n <>\r\n {\r\n if (value === null || _value === \"\") {\r\n return \"\";\r\n }\r\n if (isNaN(Number(_value.replaceAll(\",\", \"\")))) {\r\n return \"\";\r\n } else {\r\n if (template.attribute.useComma === \"Y\") {\r\n return Number(_value.replaceAll(\",\", \"\")).toLocaleString(\r\n \"en-US\",\r\n {\r\n minimumFractionDigits: Number(template.attribute.decimal),\r\n }\r\n );\r\n } else {\r\n return String(\r\n Number(_value.replaceAll(\",\", \"\")).toFixed(\r\n Number(template.attribute.decimal)\r\n )\r\n );\r\n }\r\n }\r\n }}\r\n style={{\r\n width: \"100%\",\r\n }}\r\n disabled={!canEditDoc || template.attribute.readonly === \"Y\"}\r\n // readOnly={!canEditDoc || template.attribute.readonly === \"Y\"}\r\n value={value}\r\n defaultValue={template.attribute.default}\r\n onFocus={(e) => {\r\n if (toggleEdit) {\r\n toggleEdit();\r\n }\r\n e.target.select();\r\n }}\r\n onBlur={(e) => {\r\n e.preventDefault();\r\n let _value = \"\";\r\n if (\r\n e.target.value != \"\" &&\r\n !isNaN(Number(e.target.value.replaceAll(\",\", \"\")))\r\n ) {\r\n _value = Number(e.target.value.replaceAll(\",\", \"\")).toLocaleString(\r\n \"en-US\",\r\n {\r\n minimumFractionDigits: Number(template.attribute.decimal),\r\n maximumFractionDigits: Number(template.attribute.decimal),\r\n }\r\n );\r\n }\r\n onChange(_value.replaceAll(\",\", \"\"));\r\n }}\r\n onKeyDown={(e) => {\r\n if (e.code?.toLocaleLowerCase() === \"tab\") {\r\n setTimeout(() => {\r\n /**\r\n * หลังจากที่มีการ set state จะเรียกดูค่า tabindex ของ element ปัจจุบันเพื่อที่จะเพิ่มค่า tabindex อีก 1 เพื่อที่จะ focus input ถัดไป\r\n */\r\n let curIndex = document\r\n .getElementById(id!)\r\n ?.getAttribute(\"tabindex\");\r\n let nxtIdx = parseInt(curIndex!) + 1;\r\n $(\r\n \"input[tabindex=\" +\r\n nxtIdx +\r\n \"], textarea[tabindex=\" +\r\n nxtIdx +\r\n \"]\"\r\n )\r\n .focus()\r\n .click();\r\n }, 300);\r\n }\r\n }}\r\n onPressEnter={(e: any) => {\r\n e.target.blur();\r\n }}\r\n status={status}\r\n ref={ref}\r\n />\r\n \r\n );\r\n};\r\n\r\nexport const InputNumberControlComponent: React.FC = ({\r\n colIdx,\r\n rowIdx,\r\n control,\r\n name,\r\n data,\r\n template,\r\n col,\r\n colAction,\r\n colText,\r\n onControlChange,\r\n canEditDoc,\r\n checkActionPage,\r\n controlUpdate,\r\n buttonType,\r\n}) => {\r\n return (\r\n {\r\n if (\r\n template.attribute.require === \"\" ||\r\n template.attribute.require === \"N\" ||\r\n [\"draft\", \"cancel\", \"reject\", \"recall\", \"assign\"].includes(\r\n buttonType\r\n )\r\n ) {\r\n return true;\r\n }\r\n return value !== null && value !== \"\";\r\n },\r\n\r\n min:\r\n template.attribute.min && template.attribute.min?.length > 0\r\n ? Number(template.attribute.min)\r\n : undefined,\r\n max:\r\n template.attribute.max && template.attribute.max?.length > 0\r\n ? Number(template.attribute.max)\r\n : undefined,\r\n }\r\n : undefined\r\n }\r\n render={({\r\n field: { onChange, value },\r\n formState: { isSubmitted, errors },\r\n }) => {\r\n return (\r\n <>\r\n \r\n \r\n \r\n {\r\n let intValue: any = value == \"\" ? null : value;\r\n onChange(intValue);\r\n onControlChange(template, intValue, false);\r\n }}\r\n value={value}\r\n status={\r\n errors?.items &&\r\n errors?.items[rowIdx] &&\r\n errors?.items[rowIdx].layout[colIdx] &&\r\n \"error\"\r\n }\r\n />\r\n {errors?.items &&\r\n errors?.items[rowIdx] &&\r\n errors?.items[rowIdx].layout[colIdx] &&\r\n errors?.items[rowIdx]?.layout[colIdx]?.data?.value?.type ===\r\n \"validate\" && (\r\n \r\n {template.label} : is required.\r\n \r\n )}\r\n {errors?.items &&\r\n errors?.items[rowIdx] &&\r\n errors?.items[rowIdx].layout[colIdx] &&\r\n (errors?.items[rowIdx]?.layout[colIdx]?.data?.value?.type! ===\r\n \"min\" ||\r\n errors?.items[rowIdx]?.layout[colIdx]?.data?.value\r\n ?.type! === \"max\") && (\r\n \r\n {template.label} must be between {template.attribute.min}{\" \"}\r\n to {template.attribute.max}.\r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n }}\r\n />\r\n );\r\n};\r\n\r\nexport const InputNumberTableComponent: React.FC = ({\r\n rowIdx,\r\n colIdx,\r\n name,\r\n template,\r\n saveFunc,\r\n inputRef,\r\n isEditing,\r\n onEdit,\r\n children,\r\n canEditDoc,\r\n checkActionPage,\r\n buttonType,\r\n}) => {\r\n const { toggleAlert } = useAlert();\r\n\r\n if (!isEditing) {\r\n return (\r\n <>\r\n Number(template.attribute.max)) ||\r\n (template.type === \"c\" &&\r\n Number(template.attribute.max) !== 0 &&\r\n Number(children[1]) !== 0.0 &&\r\n Number(children[1]) < Number(template.attribute.min))\r\n ? {\r\n width: \"100%\",\r\n border: \"1px solid red\",\r\n borderRadius: \"6px\",\r\n }\r\n : {\r\n width: \"100%\",\r\n }\r\n }\r\n >\r\n \r\n \r\n {template.type === \"c\" &&\r\n template.attribute.min === template.attribute.max ? (\r\n <>\r\n ) : (\r\n (template.type === \"c\" &&\r\n Number(template.attribute.max) !== 0.0 &&\r\n Number(children[1]) !== 0.0 &&\r\n Number(children[1]) > Number(template.attribute.max) && (\r\n \r\n {template.label} must be between {template.attribute.min} to{\" \"}\r\n {template.attribute.max}.\r\n \r\n )) ||\r\n (template.type === \"c\" &&\r\n Number(template.attribute.min) !== 0.0 &&\r\n Number(children[1]) !== 0.0 &&\r\n Number(children[1]) < Number(template.attribute.min) && (\r\n \r\n {template.label} must be between {template.attribute.min} to{\" \"}\r\n {template.attribute.max}.\r\n \r\n ))\r\n )}\r\n \r\n );\r\n }\r\n\r\n return (\r\n <>\r\n {\r\n let correct = true;\r\n let msg = \"\";\r\n\r\n if (value) {\r\n const formatValue = Number(value);\r\n const formatMaxValue = Number(template.attribute.max);\r\n const formatMinValue = Number(template.attribute.min);\r\n if (formatMaxValue !== 0 && formatValue > formatMaxValue) {\r\n correct = false;\r\n msg = `${template.label} must be between ${template.attribute.min} to ${template.attribute.max} value.`;\r\n } else if (\r\n formatMinValue !== 0 &&\r\n formatValue < formatMinValue\r\n ) {\r\n correct = false;\r\n msg = `${template.label} must be between ${template.attribute.min} to ${template.attribute.max} value.`;\r\n }\r\n } else if (value === \"\" && template.attribute.require === \"Y\") {\r\n correct = false;\r\n }\r\n\r\n return correct\r\n ? Promise.resolve()\r\n : Promise.reject(new Error(msg));\r\n },\r\n },\r\n ]\r\n }\r\n >\r\n {\r\n saveFunc(template.type, template.type);\r\n }}\r\n />\r\n \r\n \r\n );\r\n};\r\n","import { Space } from \"antd\";\r\nimport { Radio } from \"antd\";\r\nimport React from \"react\";\r\nimport ComponentLabel from \"../../ControlComponents/ComponentLabel\";\r\nimport { Col } from \"react-bootstrap\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { Form } from \"antd\";\r\nimport { TableInputProps } from \"../TableComponent/TableComponent\";\r\nimport { Store } from \"antd/lib/form/interface\";\r\nimport { checkRequireFromTemplate } from \"../../../Helper/RequestScreenHelper\";\r\n\r\ntype InputProps = {\r\n template: any;\r\n data: any;\r\n rowIdx: number;\r\n colIdx: number;\r\n col?: any;\r\n colText?: number;\r\n colAction?: number;\r\n onControlChange: (\r\n controlTemplate: any,\r\n controlValue: any,\r\n isInTable: any\r\n ) => any;\r\n // statusMemoDetail?: boolean;\r\n name: string;\r\n control: any;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n buttonType: string;\r\n};\r\n\r\ntype InputRadioProps = {\r\n ref?: any;\r\n template: any;\r\n value?: any;\r\n status?: any;\r\n onChange?: (value: any) => void;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n};\r\n\r\nexport const RadioComponent: React.FC = ({\r\n ref,\r\n template,\r\n value,\r\n status,\r\n onChange,\r\n canEditDoc,\r\n checkActionPage,\r\n}) => {\r\n return (\r\n <>\r\n \r\n {template.attribute.multipleLine === \"N\" && (\r\n \r\n {template.attribute.items.map((choice: any) => (\r\n \r\n {choice.item}\r\n \r\n ))}\r\n \r\n )}\r\n\r\n {template.attribute.multipleLine === \"Y\" && (\r\n <>\r\n {template.attribute.items.map((choice: any) => (\r\n \r\n {choice.item}\r\n \r\n ))}\r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\nexport const RadioControlComponent: React.FC = ({\r\n colIdx,\r\n rowIdx,\r\n control,\r\n name,\r\n data,\r\n template,\r\n col,\r\n colAction,\r\n colText,\r\n canEditDoc,\r\n checkActionPage,\r\n onControlChange,\r\n buttonType,\r\n ...props\r\n}) => {\r\n return (\r\n (\r\n <>\r\n \r\n \r\n \r\n {\r\n onChange(value);\r\n onControlChange(template, value.target.value, false);\r\n }}\r\n status={\r\n isSubmitted &&\r\n errors?.items &&\r\n errors?.items[rowIdx] &&\r\n errors?.items[rowIdx].layout[colIdx]\r\n }\r\n />\r\n {errors?.items &&\r\n errors?.items[rowIdx] &&\r\n errors?.items[rowIdx].layout[colIdx] && (\r\n \r\n {template.label} is required.\r\n \r\n )}\r\n \r\n \r\n \r\n )}\r\n />\r\n );\r\n};\r\n\r\nexport const RadioTableComponent: React.FC = ({\r\n name,\r\n template,\r\n saveFunc,\r\n inputRef,\r\n isEditing,\r\n onEdit,\r\n value,\r\n children,\r\n canEditDoc,\r\n checkActionPage,\r\n buttonType,\r\n ...props\r\n}) => {\r\n if (!isEditing) {\r\n return (\r\n
\r\n \r\n
\r\n );\r\n }\r\n\r\n return (\r\n <>\r\n value}\r\n rules={\r\n canEditDoc && [\r\n {\r\n required: checkRequireFromTemplate(template, buttonType),\r\n message: `${template.label} is required.`,\r\n },\r\n ]\r\n }\r\n >\r\n {\r\n saveFunc(template.type);\r\n }}\r\n />\r\n \r\n \r\n );\r\n};\r\n","import { Form, Select } from \"antd\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport ComponentLabel from \"../../ControlComponents/ComponentLabel\";\r\nimport { Col } from \"react-bootstrap\";\r\nimport { Controller, UseFormGetValues } from \"react-hook-form\";\r\nimport { TableInputProps } from \"../TableComponent/TableComponent\";\r\nimport { ILogicRequestBody } from \"../../../IRequestModel/ILogicModel\";\r\nimport {\r\n checkRequireFromTemplate,\r\n dataReleteToDD,\r\n getRefInforValue,\r\n} from \"../../../Helper/RequestScreenHelper\";\r\nimport { formatKeyLogicData } from \"../../../Helper/formatKeyLogicData\";\r\n\r\ntype InputProps = {\r\n template: any;\r\n data: any;\r\n rowIdx: number;\r\n colIdx: number;\r\n col?: any;\r\n colText?: number;\r\n colAction?: number;\r\n name: string;\r\n control: any;\r\n onControlChange: (controlTemplate: any, controlValue: any) => any;\r\n controlUpdate: any;\r\n canEditDoc: boolean;\r\n buttonType: string;\r\n checkActionPage: string;\r\n actionAlert?: any;\r\n allLogicInTable: any[];\r\n getValues?: UseFormGetValues<{\r\n items: any;\r\n }>;\r\n};\r\n\r\ntype SelectDropdownProps = {\r\n ref?: any;\r\n template: any;\r\n value?: any;\r\n status?: any;\r\n onChange: (value: any, type: string) => void;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n onDropdownVisibleChange?: (open: boolean) => void;\r\n tableOptions?: any[];\r\n actionAlert?: any;\r\n loading?: boolean;\r\n};\r\n\r\nconst { Option } = Select;\r\n\r\nexport const SelectWithTableDropdownComponent: React.FC<\r\n SelectDropdownProps\r\n> = ({\r\n template,\r\n value,\r\n canEditDoc,\r\n onChange,\r\n tableOptions,\r\n actionAlert,\r\n onDropdownVisibleChange,\r\n loading,\r\n}) => {\r\n const [action, setAction] = useState(false);\r\n useEffect(() => {\r\n checkStatus();\r\n }, [actionAlert]);\r\n\r\n const checkStatus = () => {\r\n if (actionAlert) {\r\n if (actionAlert.Data) {\r\n actionAlert.Data.map((data: any) => {\r\n if (\r\n actionAlert.ErrorType === \"SpecialError\" &&\r\n data.Label === template.label &&\r\n data.Value === value\r\n ) {\r\n setAction(true);\r\n }\r\n });\r\n }\r\n }\r\n };\r\n\r\n // console.log(\"actionAlert=>\", actionAlert);\r\n return (\r\n <>\r\n 0\r\n ? template.attribute.items[0].item\r\n : \"--select--\"\r\n }\r\n onDropdownVisibleChange={onDropdownVisibleChange}\r\n placeholder={template.attribute.description}\r\n optionFilterProp=\"children\"\r\n loading={loading}\r\n onChange={(value) => onChange(value, \"dd\")}\r\n disabled={\r\n !canEditDoc ||\r\n template.attribute.readonly === \"Y\" ||\r\n template.readonly === \"Y\"\r\n }\r\n filterOption={(input, option) =>\r\n (option!.children as unknown as string)\r\n .toLowerCase()\r\n .includes(input.toLowerCase())\r\n }\r\n style={{\r\n textAlign: template.attribute.align === \"r\" ? \"right\" : \"left\",\r\n height: 38,\r\n }}\r\n size={\"large\"}\r\n status={action ? \"error\" : \"\"}\r\n >\r\n {tableOptions\r\n ? tableOptions?.map((option: any) => (\r\n \r\n ))\r\n : template.attribute?.items?.map((option: any) => (\r\n \r\n ))}\r\n \r\n \r\n );\r\n};\r\nexport const SelectDropdownComponent: React.FC = ({\r\n template,\r\n value,\r\n status,\r\n onChange,\r\n canEditDoc,\r\n tableOptions,\r\n onDropdownVisibleChange,\r\n}) => {\r\n return (\r\n <>\r\n onChange(value, \"dd\")}\r\n onDropdownVisibleChange={onDropdownVisibleChange}\r\n filterOption={(input, option) =>\r\n (option!.children as unknown as string)\r\n ?.toLowerCase()\r\n ?.includes(input.toLowerCase())\r\n }\r\n style={{\r\n textAlign: template.attribute.align === \"r\" ? \"right\" : \"left\",\r\n }}\r\n size={\"large\"}\r\n status={status && \"error\"}\r\n >\r\n {tableOptions\r\n ? tableOptions?.map((option: any) => (\r\n \r\n ))\r\n : template.attribute?.items?.map((option: any) => (\r\n \r\n ))}\r\n \r\n \r\n );\r\n};\r\nexport const SelectDropdownControlComponent: React.FC = ({\r\n allLogicInTable,\r\n colIdx,\r\n rowIdx,\r\n control,\r\n name,\r\n template,\r\n col,\r\n colAction,\r\n colText,\r\n onControlChange,\r\n canEditDoc,\r\n checkActionPage,\r\n buttonType,\r\n actionAlert,\r\n getValues,\r\n}) => {\r\n const [customOptions, setCustomOptions] = useState();\r\n const [labelActionLogic, setLabelActionLogic] = useState();\r\n const [loading, setLoading] = useState(false);\r\n\r\n const logicRequest = (des: any) => {\r\n try {\r\n if (allLogicInTable && getValues) {\r\n let conditions: ILogicRequestBody[] = allLogicInTable.filter(\r\n (e) => e.actionlabel === template.label\r\n );\r\n\r\n const allVal = getValues();\r\n\r\n if (conditions.length > 0) {\r\n setCustomOptions(undefined);\r\n\r\n setLoading(true);\r\n let labelactionfield: string = \"\";\r\n dataReleteToDD(\r\n conditions.map((con) => {\r\n if (con.Key !== \"\") {\r\n allVal.items.forEach((item: any) => {\r\n item.layout.forEach((_layout: any) => {\r\n if (\r\n _layout?.template?.label &&\r\n _layout?.template?.label === con.Key &&\r\n (_layout?.template?.description || \"\") === (des || \"\")\r\n ) {\r\n labelactionfield = con.labelactionfield;\r\n con.Value = _layout.data.value;\r\n }\r\n });\r\n });\r\n }\r\n return con;\r\n })\r\n ).then((val) => {\r\n const res = formatKeyLogicData({\r\n data: val,\r\n labelactionfield: labelactionfield,\r\n });\r\n\r\n if (res) {\r\n setCustomOptions([...res.data]);\r\n }\r\n setLoading(false);\r\n });\r\n }\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n };\r\n return (\r\n {\r\n if (canEditDoc && checkRequireFromTemplate(template, buttonType)) {\r\n if (value.data.value) {\r\n if (\r\n value.data.value !== \"---Select---\" &&\r\n value.data.value !== \"-- Please Select --\" &&\r\n value.data.value !== \"--Please Select--\" &&\r\n value.data.value !== \"--select--\"\r\n ) {\r\n return true;\r\n } else if (\r\n template.attribute.require === \"\" ||\r\n template.attribute.require === \"N\"\r\n ) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n } else if (!value.data.value) {\r\n if (\r\n !template.attribute.require ||\r\n template.attribute.require === \"\" ||\r\n template.attribute.require === \"N\"\r\n ) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n }\r\n },\r\n }}\r\n render={({\r\n field: { onChange, value },\r\n formState: { errors, isSubmitted },\r\n }) => {\r\n const _value = value;\r\n return (\r\n <>\r\n \r\n \r\n \r\n {\r\n onChange({\r\n ..._value,\r\n data: {\r\n value,\r\n },\r\n });\r\n onControlChange(template, value);\r\n }}\r\n tableOptions={customOptions}\r\n loading={loading}\r\n onDropdownVisibleChange={(open) => {\r\n if (open) {\r\n logicRequest(value?.template?.description);\r\n } else {\r\n setCustomOptions(undefined);\r\n setLoading(false);\r\n }\r\n }}\r\n actionAlert={actionAlert}\r\n status={\r\n isSubmitted &&\r\n ((errors?.items &&\r\n errors?.items[rowIdx] &&\r\n errors?.items[rowIdx].layout[colIdx]) ||\r\n _value === \"--select--\")\r\n }\r\n />\r\n\r\n {isSubmitted &&\r\n errors?.items &&\r\n errors?.items[rowIdx] &&\r\n errors?.items[rowIdx].layout[colIdx] && (\r\n \r\n {template.label} is required.\r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n }}\r\n />\r\n );\r\n};\r\n\r\nexport const SelectDropdownTableComponent: React.FC = ({\r\n name,\r\n template,\r\n saveFunc,\r\n isEditing,\r\n onEdit,\r\n children,\r\n canEditDoc,\r\n checkActionPage,\r\n record,\r\n allLogicInTable,\r\n actionAlert,\r\n getValues,\r\n}) => {\r\n const [customOptions, setCustomOptions] = useState();\r\n const [loading, setLoading] = useState(false);\r\n\r\n if (!isEditing) {\r\n return (\r\n
\r\n \r\n
\r\n );\r\n }\r\n\r\n const logicRequest = (des: string) => {\r\n if (allLogicInTable && getValues) {\r\n const allVal = getValues();\r\n let conditions: ILogicRequestBody[] = allLogicInTable.filter(\r\n (e: any) =>\r\n e.actionlabel === template.label ||\r\n e.actionlabel?.startsWith(template.label + \"|\")\r\n );\r\n\r\n if (conditions.length > 0) {\r\n setLoading(true);\r\n let labelactionfield: string = \"\";\r\n\r\n dataReleteToDD(\r\n conditions.map((con) => {\r\n if (con.Key !== \"\" && record[con.Key]) {\r\n\r\n con.Value = record[con.Key];\r\n } else if (con.Key !== \"\") {\r\n allVal.items.forEach((item: any) => {\r\n item.layout.forEach((_layout: any) => {\r\n if (\r\n _layout?.template?.label &&\r\n _layout?.template?.label === con.Key &&\r\n (_layout?.template?.description || \"\") === (des || \"\")\r\n ) {\r\n con.Value = _layout.data.value;\r\n }\r\n });\r\n });\r\n }\r\n labelactionfield = con.labelactionfield;\r\n\r\n return con;\r\n })\r\n ).then((val) => {\r\n const res = formatKeyLogicData({\r\n data: val,\r\n labelactionfield: labelactionfield,\r\n });\r\n if (res) {\r\n setCustomOptions([...res.data]);\r\n }\r\n setLoading(false);\r\n });\r\n }\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n 1,\r\n validator: (_, value) => {\r\n let res = true;\r\n\r\n if (template.attribute.items.length > 1) {\r\n if (value) {\r\n if (\r\n value !== \"--select--\" &&\r\n value !== \"--Please Select--\"\r\n ) {\r\n res = true;\r\n } else if (template.attribute.require === \"N\") {\r\n res = true;\r\n } else {\r\n res = false;\r\n }\r\n } else {\r\n if (template.attribute.require === \"N\") {\r\n res = true;\r\n } else {\r\n res = false;\r\n }\r\n }\r\n }\r\n\r\n return res\r\n ? Promise.resolve()\r\n : Promise.reject(`${template.label} is required.`);\r\n },\r\n },\r\n ]\r\n }\r\n >\r\n {\r\n if (open) {\r\n logicRequest(template.description);\r\n } else {\r\n setCustomOptions(undefined);\r\n setLoading(false);\r\n }\r\n }}\r\n />\r\n \r\n \r\n );\r\n};\r\n","import { Checkbox, Form } from \"antd\";\r\nimport type { CheckboxValueType } from \"antd/es/checkbox/Group\";\r\nimport React from \"react\";\r\nimport ComponentLabel from \"../../ControlComponents/ComponentLabel\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { TableInputProps } from \"../TableComponent/TableComponent\";\r\nimport { checkRequireFromTemplate } from \"../../../Helper/RequestScreenHelper\";\r\n\r\ntype InputProps = {\r\n template: any;\r\n rowIdx: number;\r\n colIdx: number;\r\n col?: any;\r\n colText?: number;\r\n colAction?: number;\r\n // statusMemoDetail?: boolean;\r\n name: string;\r\n control: any;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n buttonType: string;\r\n onControlChange: (controlTemplate: any, controlValue: any) => any;\r\n};\r\n\r\ntype CheckboxProps = {\r\n ref?: any;\r\n template: any;\r\n value?: any;\r\n status?: any;\r\n onChange: (value: any) => void;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n};\r\nexport const CheckboxInTableComponent: React.FC = ({\r\n ref,\r\n template,\r\n value,\r\n status,\r\n onChange,\r\n canEditDoc,\r\n checkActionPage,\r\n}) => {\r\n const onSelectChange = (\r\n checkedValues: CheckboxValueType[],\r\n _onChange: any\r\n ) => {\r\n let items = template.attribute.items;\r\n let test: any[] = [];\r\n const res = items.map((item: any, idx: number) => {\r\n let check = \"N\";\r\n\r\n for (let i = 0; i < checkedValues.length; i++) {\r\n const _value = checkedValues[i];\r\n\r\n if (_value === item.item) {\r\n check = \"Y\";\r\n test.push(item.item);\r\n }\r\n }\r\n return check;\r\n });\r\n\r\n // console.log({ resresres: res });\r\n // for (let i = 0; i < res.length; i++) {\r\n // const _res = res[i];\r\n // if (_res === \"Y\") {\r\n // _value.push(i);\r\n // }\r\n // }\r\n // console.log({\r\n // resresres: {\r\n // item: res,\r\n // value: _value.toString(),\r\n // },\r\n // });\r\n\r\n _onChange(test.toString(), \"cb\");\r\n // _onChange(res);\r\n };\r\n\r\n const formatOptions = (options: { item: string; chcked: string }[]) => {\r\n const _options = options.map(\r\n (option: { item: string; chcked: string }) => option.item\r\n );\r\n\r\n return _options;\r\n };\r\n const formatValue = (value: any) => {\r\n let items = template.attribute.items;\r\n let _res: any[] = [];\r\n // console.log({ value, _res, template });\r\n\r\n if (value && value.length > 0) {\r\n const _values = value.split(\",\");\r\n for (let i = 0; i < items.length; i++) {\r\n const item: any = items[i];\r\n for (let j = 0; j < _values.length; j++) {\r\n const _value = _values[j];\r\n if (_value === item.item) {\r\n }\r\n }\r\n // if (_value[i] === \"Y\") {\r\n // _res.push(item.item);\r\n // } else {\r\n // }\r\n }\r\n\r\n return _values;\r\n }\r\n\r\n return [];\r\n };\r\n return (\r\n <>\r\n onSelectChange(checkValue, onChange)}\r\n value={formatValue(value)}\r\n />\r\n \r\n );\r\n};\r\nexport const CheckboxComponent: React.FC = ({\r\n ref,\r\n template,\r\n value,\r\n status,\r\n onChange,\r\n canEditDoc,\r\n checkActionPage,\r\n}) => {\r\n const onSelectChange = (\r\n checkedValues: CheckboxValueType[],\r\n _onChange: any\r\n ) => {\r\n let items = template.attribute.items;\r\n let _values: any[] = [];\r\n const res = items.map((item: any, idx: number) => {\r\n let check = \"N\";\r\n\r\n for (let i = 0; i < checkedValues.length; i++) {\r\n const _value = checkedValues[i];\r\n\r\n if (_value === item.item) {\r\n check = \"Y\";\r\n _values.push(item.item);\r\n }\r\n }\r\n return check;\r\n });\r\n\r\n _onChange(\r\n {\r\n item: res,\r\n value: _values.toString(),\r\n },\r\n \"cb\"\r\n );\r\n };\r\n\r\n const formatOptions = (options: { item: string; chcked: string }[]) => {\r\n const _options = options.map(\r\n (option: { item: string; chcked: string }) => option.item\r\n );\r\n\r\n return _options;\r\n };\r\n const formatValue = (value: any) => {\r\n let items = template.attribute.items;\r\n let _res: any[] = [];\r\n\r\n if (value && value.item) {\r\n for (let i = 0; i < items.length; i++) {\r\n const item: any = items[i];\r\n\r\n if (value?.item[i] === \"Y\") {\r\n _res.push(item.item);\r\n }\r\n }\r\n\r\n return _res;\r\n }\r\n\r\n return [];\r\n };\r\n return (\r\n <>\r\n onSelectChange(checkValue, onChange)}\r\n value={formatValue(value)}\r\n />\r\n \r\n );\r\n};\r\n\r\nexport const CheckboxControlComponent: React.FC = ({\r\n colIdx,\r\n rowIdx,\r\n control,\r\n name,\r\n template,\r\n col,\r\n colAction,\r\n colText,\r\n canEditDoc,\r\n buttonType,\r\n checkActionPage,\r\n onControlChange,\r\n ...props\r\n}) => {\r\n return (\r\n {\r\n return (\r\n <>\r\n \r\n \r\n _value === \"N\") &&\r\n template.attribute.require === \"Y\" &&\r\n buttonType !== \"draft\"))\r\n ? \"set-layout-required\"\r\n : \"\"\r\n }`}\r\n >\r\n {/* _value === \"N\"))\r\n ? \"checkbox-invalid\"\r\n : \"\"\r\n }\r\n options={formatOptions(template.attribute.items)}\r\n onChange={(checkValue) => onSelectChange(checkValue, onChange)}\r\n value={formatValue(value)}\r\n /> */}\r\n {\r\n onChange({\r\n ...value,\r\n });\r\n onControlChange(template, value);\r\n }}\r\n value={value}\r\n status={\r\n isSubmitted &&\r\n ((errors?.items &&\r\n errors?.items[rowIdx] &&\r\n errors?.items[rowIdx].layout[colIdx]) ||\r\n (value?.item?.every((_value: string) => _value === \"N\") &&\r\n template.attribute.require === \"Y\" &&\r\n buttonType !== \"draft\"))\r\n }\r\n />\r\n {isSubmitted &&\r\n ((errors?.items &&\r\n errors?.items[rowIdx] &&\r\n errors?.items[rowIdx].layout[colIdx]) ||\r\n (value?.item?.every((_value: string) => _value === \"N\") &&\r\n template.attribute.require === \"Y\" &&\r\n buttonType !== \"draft\")) && (\r\n \r\n {template.label} is required.\r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n }}\r\n />\r\n );\r\n};\r\n\r\nexport const CheckboxTableComponent: React.FC = ({\r\n name,\r\n template,\r\n saveFunc,\r\n inputRef,\r\n isEditing,\r\n onEdit,\r\n children,\r\n canEditDoc,\r\n checkActionPage,\r\n ...props\r\n}) => {\r\n if (!isEditing) {\r\n // console.log({ children });\r\n\r\n return (\r\n
\r\n \r\n
\r\n );\r\n }\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import { Form, Input, Select } from \"antd\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport ComponentLabel from \"../../ControlComponents/ComponentLabel\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { TableInputProps } from \"../TableComponent/TableComponent\";\r\nimport { ILogicRequestBody } from \"../../../IRequestModel/ILogicModel\";\r\nimport {\r\n checkRequireFromTemplate,\r\n dataReleteToDD,\r\n} from \"../../../Helper/RequestScreenHelper\";\r\nimport { formatKeyLogicData } from \"../../../Helper/formatKeyLogicData\";\r\n\r\ntype InputProps = {\r\n template: any;\r\n data: any;\r\n rowIdx: number;\r\n colIdx: number;\r\n col?: any;\r\n colText?: number;\r\n colAction?: number;\r\n // statusMemoDetail?: boolean;\r\n name: string;\r\n control: any;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n buttonType: string;\r\n actionAlert?: any;\r\n onControlChange: (controlTemplate: any, controlValue: any) => any;\r\n};\r\n\r\ntype SelectCheckboxProps = {\r\n ref?: any;\r\n template: any;\r\n value?: any;\r\n status?: any;\r\n onChange: (value: any, type: any) => void;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n onDropdownVisibleChange?: (open: boolean) => void;\r\n tableOptions?: any[];\r\n loading?: boolean;\r\n actionAlert?: any;\r\n};\r\nconst SelectCheckboxInTableComponent: React.FC = ({\r\n ref,\r\n template,\r\n loading,\r\n value,\r\n status,\r\n onChange,\r\n canEditDoc,\r\n actionAlert,\r\n onDropdownVisibleChange,\r\n checkActionPage,\r\n tableOptions,\r\n}) => {\r\n const { Option } = Select;\r\n\r\n const [action, setAction] = useState(false);\r\n // console.log(\"actionAlertSelect=>\", actionAlert);\r\n // console.log(\"template=>\", template);\r\n // console.log(\"value=>\", value);\r\n\r\n useEffect(() => {\r\n checkStatus();\r\n }, [actionAlert]);\r\n\r\n const onSelectChange = (value: string[]) => {\r\n let items = tableOptions || template.attribute.items;\r\n let test: any[] = [];\r\n\r\n const res = items.map((item: any, idx: number) => {\r\n let check = \"N\";\r\n\r\n for (let i = 0; i < value.length; i++) {\r\n const _value = value[i];\r\n\r\n if (_value === item.item) {\r\n check = \"Y\";\r\n test.push(item.item);\r\n }\r\n }\r\n return check;\r\n });\r\n\r\n onChange(test.toString(), \"cb\");\r\n };\r\n\r\n const formatValue = (value: any) => {\r\n let items = template.attribute.items;\r\n\r\n let _res: any[] = [];\r\n if (value && value.length > 0) {\r\n const _values = value.split(\",\");\r\n for (let i = 0; i < items.length; i++) {\r\n const item: any = items[i];\r\n if (value[i] === \"Y\") {\r\n _res.push(item.item);\r\n }\r\n }\r\n return _values;\r\n }\r\n return [];\r\n };\r\n\r\n const checkStatus = () => {\r\n if (actionAlert) {\r\n if (actionAlert.Data) {\r\n actionAlert.Data.map((data: any) => {\r\n let split = value.split(\",\");\r\n split.map((splitData: any) => {\r\n if (\r\n actionAlert.ErrorType === \"SpecialError\" &&\r\n data.Label === template.label &&\r\n data.Value === splitData\r\n ) {\r\n setAction(true);\r\n }\r\n });\r\n });\r\n }\r\n }\r\n };\r\n\r\n // console.log(\"actionAlert=>\", actionAlert);\r\n return (\r\n <>\r\n {\r\n console.log({ option });\r\n return (option!.children! as unknown as string)\r\n .toLowerCase()\r\n .includes(input.toLowerCase());\r\n }}\r\n disabled={!canEditDoc || template.attribute.readonly === \"Y\"}\r\n status={action ? \"error\" : \"\"}\r\n mode=\"tags\"\r\n onDropdownVisibleChange={onDropdownVisibleChange}\r\n >\r\n {tableOptions\r\n ? tableOptions?.map((option: any, idx: number) => (\r\n \r\n ))\r\n : template.attribute?.items?.map((option: any, idx: number) => (\r\n \r\n ))}\r\n \r\n \r\n );\r\n};\r\nconst SelectCheckboxComponent: React.FC = ({\r\n ref,\r\n template,\r\n value,\r\n status,\r\n onChange,\r\n canEditDoc,\r\n checkActionPage,\r\n}) => {\r\n const { Option } = Select;\r\n\r\n const onSelectChange = (value: string[]) => {\r\n let items = template.attribute.items;\r\n let test: any[] = [];\r\n const res = items.map((item: any, idx: number) => {\r\n let check = \"N\";\r\n\r\n for (let i = 0; i < value.length; i++) {\r\n const _value = value[i];\r\n\r\n if (_value === item.item) {\r\n check = \"Y\";\r\n test.push(item.item);\r\n }\r\n }\r\n return check;\r\n });\r\n\r\n // for (let i = 0; i < res.length; i++) {\r\n // const _res = res[i];\r\n // if (_res === \"Y\") {\r\n // _value.push(i);\r\n // }\r\n // }\r\n onChange(\r\n {\r\n item: res,\r\n value: test.toString(),\r\n },\r\n \"cb\"\r\n );\r\n };\r\n\r\n const formatValue = (value: any) => {\r\n let _res: any[] = [];\r\n\r\n if (value && value.item) {\r\n if (value.value && typeof value.value == \"string\") {\r\n let namesArray = value.value.replace(/,$|,\\s+$/, \"\").split(\",\");\r\n _res = namesArray;\r\n }\r\n\r\n return _res;\r\n }\r\n\r\n return [];\r\n };\r\n\r\n return (\r\n <>\r\n {\r\n return (option!.children! as unknown as string)\r\n .toLowerCase()\r\n .includes(input.toLowerCase());\r\n }}\r\n disabled={!canEditDoc || template.attribute.readonly === \"Y\"}\r\n status={status}\r\n mode=\"tags\"\r\n >\r\n {template.attribute.items.map((option: any) => (\r\n \r\n ))}\r\n \r\n \r\n );\r\n};\r\n\r\nexport const SelectCheckboxControlComponent: React.FC = ({\r\n colIdx,\r\n rowIdx,\r\n control,\r\n name,\r\n data,\r\n template,\r\n col,\r\n colAction,\r\n colText,\r\n canEditDoc,\r\n checkActionPage,\r\n buttonType,\r\n actionAlert,\r\n onControlChange,\r\n ...props\r\n}) => {\r\n return (\r\n (\r\n <>\r\n \r\n \r\n \r\n {\r\n onChange({\r\n ...value,\r\n data: {\r\n value,\r\n },\r\n });\r\n onControlChange(template, value.value);\r\n }}\r\n value={value}\r\n status={\r\n isSubmitted &&\r\n ((errors?.items &&\r\n errors?.items[rowIdx] &&\r\n errors?.items[rowIdx].layout[colIdx]) ||\r\n (value?.item?.every((_value: string) => _value === \"N\") &&\r\n template.attribute.require === \"Y\" &&\r\n buttonType !== \"draft\")) &&\r\n \"error\"\r\n }\r\n actionAlert={actionAlert}\r\n />\r\n\r\n {isSubmitted &&\r\n ((errors?.items &&\r\n errors?.items[rowIdx] &&\r\n errors?.items[rowIdx].layout[colIdx]) ||\r\n (value?.item?.every((_value: string) => _value === \"N\") &&\r\n template.attribute.require === \"Y\" &&\r\n buttonType !== \"draft\")) && (\r\n \r\n {template.label} is required.\r\n \r\n )}\r\n \r\n \r\n \r\n )}\r\n />\r\n );\r\n};\r\n\r\nexport const SelectCheckboxTableComponent: React.FC = ({\r\n name,\r\n template,\r\n saveFunc,\r\n inputRef,\r\n isEditing,\r\n onEdit,\r\n children,\r\n canEditDoc,\r\n checkActionPage,\r\n actionAlert,\r\n allLogicInTable,\r\n record,\r\n ...props\r\n}) => {\r\n const [customOptions, setCustomOptions] = useState();\r\n const [loading, setLoading] = useState(false);\r\n\r\n const logicRequest = () => {\r\n if (allLogicInTable) {\r\n let conditions: ILogicRequestBody[] = allLogicInTable.filter(\r\n (e: any) => e.actionlabel === template.label\r\n );\r\n if (conditions.length > 0) {\r\n setLoading(true);\r\n\r\n dataReleteToDD(\r\n conditions.map((con) => {\r\n if (con.Key !== \"\") {\r\n con.Value = record[con.Key];\r\n }\r\n return con;\r\n })\r\n ).then((val) => {\r\n const res = formatKeyLogicData({ data: val });\r\n if (res) {\r\n setCustomOptions([...res.data]);\r\n }\r\n setLoading(false);\r\n });\r\n }\r\n }\r\n };\r\n\r\n if (!isEditing) {\r\n return (\r\n
\r\n \r\n
\r\n );\r\n }\r\n return (\r\n <>\r\n \r\n {\r\n if (open) {\r\n logicRequest();\r\n } else {\r\n setCustomOptions(undefined);\r\n setLoading(false);\r\n }\r\n }}\r\n />\r\n \r\n \r\n );\r\n};\r\n","import { Form, Input } from \"antd\";\r\nimport React from \"react\";\r\nimport ComponentLabel from \"../../ControlComponents/ComponentLabel\";\r\nimport { Col } from \"react-bootstrap\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { TableInputProps } from \"../TableComponent/TableComponent\";\r\nimport TextArea from \"antd/lib/input/TextArea\";\r\nimport { replaceSpecialChar } from \"../../../Helper/ReplaceSpecialChar\";\r\nimport $ from \"jquery\";\r\nimport { checkRequireFromTemplate } from \"../../../Helper/RequestScreenHelper\";\r\n\r\ntype InputProps = {\r\n template: any;\r\n data: any;\r\n rowIdx: number;\r\n colIdx: number;\r\n col?: any;\r\n colText?: number;\r\n colAction?: number;\r\n // statusMemoDetail?: boolean;\r\n name: string;\r\n control: any;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n buttonType: string;\r\n};\r\n\r\ntype InputTextAreaProps = {\r\n id?: string;\r\n ref?: any;\r\n colIdx: number;\r\n rowIdx: number;\r\n col?: any;\r\n colText?: number;\r\n template: any;\r\n value?: any;\r\n status?: any;\r\n onChange: (value: any) => void;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n};\r\n\r\nexport const InputTextAreaComponent: React.FC = ({\r\n id,\r\n ref,\r\n colIdx,\r\n rowIdx,\r\n col,\r\n colText,\r\n template,\r\n value,\r\n status,\r\n onChange,\r\n canEditDoc,\r\n checkActionPage,\r\n}) => {\r\n const { TextArea } = Input;\r\n let tId = replaceSpecialChar(id ?? \"\");\r\n\r\n const nextTab = () => {\r\n setTimeout(() => {\r\n /**\r\n * หลังจากที่มีการ set state ใน onblur จะเรียกดูค่า tabindex ของ element ปัจจุบันเพื่อที่จะเพิ่มค่า tabindex อีก 1 เพื่อที่จะ focus input ถัดไป\r\n */\r\n let curIndex = document.getElementById(tId)?.getAttribute(\"tabindex\");\r\n let nxtIdx = parseInt(curIndex!) + 1;\r\n\r\n $(\"input[tabindex=\" + nxtIdx + \"], textarea[tabindex=\" + nxtIdx + \"]\")\r\n .focus()\r\n .click();\r\n }, 300);\r\n };\r\n\r\n return (\r\n <>\r\n {\r\n onChange(e.target.value);\r\n }}\r\n onKeyDown={(e) => {\r\n if (e.code?.toLocaleLowerCase() === \"tab\") {\r\n console.log(\"key down\");\r\n nextTab();\r\n }\r\n }}\r\n disabled={canEditDoc && template.attribute.readonly === \"Y\"}\r\n readOnly={canEditDoc && template.attribute.readonly === \"Y\"}\r\n status={status}\r\n />\r\n \r\n );\r\n};\r\n\r\nexport const InputTextAreaControlComponent: React.FC = ({\r\n colIdx,\r\n rowIdx,\r\n control,\r\n name,\r\n data,\r\n template,\r\n col,\r\n colAction,\r\n colText,\r\n canEditDoc,\r\n checkActionPage,\r\n buttonType,\r\n ...props\r\n}) => {\r\n const { TextArea } = Input;\r\n let tId = template.label.replaceAll(\" \", \"_\");\r\n\r\n const nextTab = () => {\r\n setTimeout(() => {\r\n /**\r\n * หลังจากที่มีการ set state ใน onblur จะเรียกดูค่า tabindex ของ element ปัจจุบันเพื่อที่จะเพิ่มค่า tabindex อีก 1 เพื่อที่จะ focus input ถัดไป\r\n */\r\n let curIndex = document.getElementById(tId)?.getAttribute(\"tabindex\");\r\n let nxtIdx = parseInt(curIndex!) + 1;\r\n // console.log({id, curIndex, nxtIdx});\r\n\r\n $(\r\n \"input[tabindex=\" + nxtIdx + \"], textarea[tabindex=\" + nxtIdx + \"]\"\r\n ).focus();\r\n }, 300);\r\n };\r\n\r\n return (\r\n {\r\n return (\r\n <>\r\n \r\n \r\n \r\n {\r\n if (e.code?.toLocaleLowerCase() === \"tab\") {\r\n nextTab();\r\n }\r\n }}\r\n />\r\n {isSubmitted &&\r\n errors?.items &&\r\n errors?.items[rowIdx] &&\r\n errors?.items[rowIdx].layout[colIdx] && (\r\n \r\n {template.label} is required.\r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n }}\r\n />\r\n );\r\n};\r\n\r\nexport const InputTextAreaTableComponent: React.FC = ({\r\n rowIdx,\r\n colIdx,\r\n name,\r\n template,\r\n saveFunc,\r\n inputRef,\r\n isEditing,\r\n onEdit,\r\n children,\r\n canEditDoc,\r\n checkActionPage,\r\n buttonType,\r\n toggleEdit,\r\n ...props\r\n}) => {\r\n // const row = rowIdx?.toString();\r\n // const col = colIdx?.toString();\r\n // console.log(typeof row);\r\n let tId = rowIdx + \"_\" + colIdx + \"_\" + template.label;\r\n\r\n const nextTab = () => {\r\n setTimeout(() => {\r\n /**\r\n * หลังจากที่มีการ set state ใน onblur จะเรียกดูค่า tabindex ของ element ปัจจุบันเพื่อที่จะเพิ่มค่า tabindex อีก 1 เพื่อที่จะ focus input ถัดไป\r\n */\r\n let curIndex = document.getElementById(tId)?.getAttribute(\"tabindex\");\r\n let nxtIdx = parseInt(curIndex!) + 1;\r\n // console.log({id, curIndex, nxtIdx});\r\n\r\n $(\"input[tabindex=\" + nxtIdx + \"], textarea[tabindex=\" + nxtIdx + \"]\")\r\n .focus()\r\n .click();\r\n }, 300);\r\n };\r\n\r\n if (!isEditing) {\r\n return (\r\n \r\n {\r\n if (e.code?.toLocaleLowerCase() === \"tab\") {\r\n nextTab();\r\n }\r\n }}\r\n onFocus={(e) => {\r\n if (toggleEdit) {\r\n toggleEdit();\r\n }\r\n e.target.select();\r\n }}\r\n />\r\n \r\n );\r\n }\r\n return (\r\n <>\r\n \r\n console.log(\"tex\", template.attribute)}\r\n maxLength={\r\n parseInt(template.attribute.length) === 0\r\n ? undefined\r\n : parseInt(template.attribute.length)\r\n }\r\n // style={{\r\n // height: 38,\r\n // }}\r\n onBlur={(e) => {\r\n e.preventDefault();\r\n saveFunc();\r\n }}\r\n onKeyDown={(e) => {\r\n if (e.code?.toLocaleLowerCase() === \"tab\") {\r\n nextTab();\r\n }\r\n }}\r\n />\r\n \r\n \r\n );\r\n};\r\n","import React, { useState } from \"react\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { SelectButton } from \"primereact/selectbutton\";\r\nimport { Button } from \"primereact/button\";\r\nimport { Form } from \"react-bootstrap\";\r\nimport { generateQuickGuid } from \"../../../Helper/GenerateGuid\";\r\nimport { UploadFileAttachFiles } from \"../../../Services/AttachFileService\";\r\nimport { ConfirmDialog, confirmDialog } from \"primereact/confirmdialog\";\r\nimport { useUserContext } from \"../../../Context/UserContext\";\r\nimport \"../mainCssControl.css\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\nimport { replaceSpecialChar } from \"../../../Helper/ReplaceSpecialChar\";\r\ntype AttachmentModalProp = {\r\n visibleDialog: boolean;\r\n setVisibleDialog: (value: boolean) => void;\r\n setCheckHasValue: (value: boolean) => void;\r\n toast: any;\r\n template: any;\r\n onChange: (value: string) => void;\r\n nameFile: string;\r\n setNameFile: (value: string) => void;\r\n value: string;\r\n setValue: (value: string) => void;\r\n link: string;\r\n setLink: (value: string) => void;\r\n SharepointSiteURL: string;\r\n TinyURL: string;\r\n visibleConfirmDialog: boolean;\r\n setVisibleConfirmDialog: (value: boolean) => void;\r\n selected: any;\r\n setSelected: any;\r\n};\r\n\r\nexport const AttachmentModal: React.FC = ({\r\n visibleDialog,\r\n setVisibleDialog,\r\n setCheckHasValue,\r\n toast,\r\n template,\r\n onChange,\r\n nameFile,\r\n setNameFile,\r\n link,\r\n setLink,\r\n SharepointSiteURL,\r\n TinyURL,\r\n visibleConfirmDialog,\r\n setVisibleConfirmDialog,\r\n selected,\r\n setSelected,\r\n value,\r\n setValue,\r\n ...props\r\n}: AttachmentModalProp) => {\r\n const [fileType, setFileType] = useState(\"Attach file\");\r\n const { toggleAlert } = useAlert();\r\n const [userData] = useUserContext();\r\n const options = [\"Attach file\", \"Attach link\"];\r\n\r\n const onFileSelected = (e: any) => {\r\n let mapData: any = [];\r\n var hasInvalidFiles = false;\r\n\r\n const file = e.dataTransfer\r\n ? e.dataTransfer.files[0]\r\n : e.currentTarget.files[0];\r\n if (file === undefined) {\r\n return false;\r\n }\r\n console.log({ filefilefile: file });\r\n if (template.description) {\r\n const myArray = template.description.split(\"*\");\r\n for (let index = 1; index < myArray.length; index++) {\r\n mapData.push(myArray[index]);\r\n if (file.name.endsWith(myArray[index])) {\r\n hasInvalidFiles = true;\r\n continue;\r\n }\r\n }\r\n }\r\n if (!hasInvalidFiles) {\r\n e.target.value = null;\r\n toggleAlert({\r\n description: `Unsupported file selected.`,\r\n message: `File type warning.`,\r\n type: \"warning\",\r\n });\r\n setSelected(undefined);\r\n return;\r\n }\r\n var filesize = file.size / 1024 / 1024;\r\n if (parseInt(template.attribute.max) < filesize) {\r\n toggleAlert({\r\n description: `File size exceeds ${template.attribute.max} MB`,\r\n message: `File size warning.`,\r\n type: \"warning\",\r\n });\r\n\r\n e.target.value = null;\r\n setSelected(undefined);\r\n return false;\r\n }\r\n setSelected(file);\r\n };\r\n const fileUpload = () => {\r\n return (\r\n
\r\n
\r\n \r\n \r\n \r\n File Formats Accepted {template.description}\r\n \r\n \r\n
\r\n
\r\n );\r\n };\r\n const linkUpload = () => {\r\n return (\r\n
\r\n
\r\n \r\n {\r\n setNameFile(e.target.value?.replaceAll(\" \", \"_\"));\r\n }}\r\n />\r\n
\r\n
\r\n \r\n {\r\n setLink(e.target.value?.replaceAll(\" \", \"_\"));\r\n }}\r\n />\r\n
\r\n
\r\n );\r\n };\r\n const footerDialog = (onChange: any) => {\r\n return (\r\n
\r\n setVisibleDialog(false)}\r\n label=\"Close\"\r\n id=\"CloseButton\"\r\n className=\"close-set-color-button-active-request\"\r\n />\r\n uploadFile(onChange)}\r\n style={{ height: \"38px\" }}\r\n label=\"Save Changes\"\r\n id=\"SaveChangesButton\"\r\n className=\"save-set-color-button-active-request\"\r\n />\r\n
\r\n );\r\n };\r\n const uploadFile = async (onChange: any) => {\r\n try {\r\n if (value === \"Attach file\") {\r\n if (selected) {\r\n const formData = new FormData();\r\n formData.append(`files`, selected);\r\n formData.append(\"Doclib\", \"TempAttachment\");\r\n formData.append(\"docSet\", generateQuickGuid());\r\n formData.append(\"fileDesc\", \"renderControl\");\r\n formData.append(\"actorID\", userData.EmployeeId.toString());\r\n const response = await UploadFileAttachFiles(formData);\r\n console.log(response, \"response\");\r\n\r\n if (response?.data?.result) {\r\n onChange(\r\n replaceSpecialChar(selected.name) +\r\n \"|\" +\r\n replaceSpecialChar(response.data.pathUrl)\r\n );\r\n setNameFile(replaceSpecialChar(selected.name));\r\n // if (SharepointSiteURL) {\r\n // setLink(SharepointSiteURL + \"\" + response?.data.pathUrl);\r\n // } else {\r\n setLink(response?.data.pathUrl?.replaceAll(\" \", \"_\"));\r\n // }\r\n }\r\n setVisibleConfirmDialog(true);\r\n } else {\r\n confirm1(\"Please select a file.\");\r\n }\r\n } else if (value === \"Attach link\") {\r\n console.log(\"at+>\", link);\r\n if (link !== undefined) {\r\n onChange(nameFile?.replaceAll(\" \", \"_\") + \"|\" + link);\r\n setNameFile(nameFile?.replaceAll(\" \", \"_\"));\r\n setLink(link);\r\n setVisibleConfirmDialog(true);\r\n } else {\r\n confirm1(\"Please insert a link.\");\r\n }\r\n }\r\n } catch (error) {\r\n console.log(\"At=>error\", error);\r\n }\r\n };\r\n const confirm1 = (msg: string) => {\r\n confirmDialog({\r\n message: msg,\r\n header: \"Alert\",\r\n icon: \"pi pi-info-circle\",\r\n rejectClassName: \"hide-component\",\r\n });\r\n };\r\n return (\r\n <>\r\n setVisibleDialog(false)}\r\n draggable={false}\r\n footer={footerDialog(onChange)}\r\n >\r\n setValue(e.value)}\r\n >\r\n\r\n {value === \"Attach file\" && fileUpload()}\r\n {value === \"Attach link\" && linkUpload()}\r\n \r\n \r\n );\r\n};\r\n","import { Button } from \"primereact/button\";\r\nimport React, { useState, useEffect, useRef } from \"react\";\r\nimport { TableInputProps } from \"../TableComponent/TableComponent\";\r\nimport { Form as AntForm, Popover } from \"antd\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport \"./AttachmentComponent.css\";\r\nimport { AiOutlineClose } from \"react-icons/ai\";\r\nimport { ConfirmDialog } from \"primereact/confirmdialog\";\r\nimport ComponentLabel from \"../../ControlComponents/ComponentLabel\";\r\nimport { Col } from \"react-bootstrap\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { AttachmentModal } from \"./AttachmentModal\";\r\nimport { checkRequireFromTemplate } from \"../../../Helper/RequestScreenHelper\";\r\n\r\ntype Props = {\r\n template: any;\r\n data: any;\r\n rowIdx: number;\r\n colIdx: number;\r\n col?: any;\r\n colText?: number;\r\n colAction?: number;\r\n // statusMemoDetail?: boolean;\r\n name: string;\r\n control: any;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n buttonType: string;\r\n};\r\n\r\ntype InputAttachmentProps = {\r\n ref?: any;\r\n rowIdx?: any;\r\n colIdx?: any;\r\n template: any;\r\n value?: any;\r\n status?: any;\r\n onChange: (value: any) => void;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n id?: string;\r\n};\r\n\r\nexport const AttachmentComponent: React.FC = ({\r\n ref,\r\n rowIdx,\r\n colIdx,\r\n template,\r\n value,\r\n status,\r\n onChange,\r\n id,\r\n canEditDoc,\r\n checkActionPage,\r\n ...props\r\n}: InputAttachmentProps) => {\r\n const toast = useRef(null);\r\n const [isModalVisible, setIsModalVisible] = useState(false);\r\n const [checkHasValue, setCheckHasValue] = useState(false);\r\n const [link, setLink] = useState();\r\n const [nameFile, setNameFile] = useState(\"\");\r\n const _userData = JSON.parse(window.localStorage.getItem(\"userData\") || \"\");\r\n const [visibleConfirmDialog, setVisibleConfirmDialog] =\r\n useState(false);\r\n const [selected, setSelected] = useState();\r\n const [uploadType, setUploadType] = useState(\"\");\r\n const _sharepointSiteURL = _userData.SharepointSiteURL;\r\n\r\n useEffect(() => {\r\n deFaultValue();\r\n }, [value]);\r\n\r\n const deFaultValue = async () => {\r\n try {\r\n const def = template.attribute.default || \"\";\r\n if (!value && !def) {\r\n return;\r\n }\r\n if (value === \"\" && def === \"\") {\r\n return;\r\n }\r\n\r\n const [nameFile, linkFile] = value?.split(\"|\") || def?.split(\"|\");\r\n const linkUrl = linkFile;\r\n\r\n setLink(linkUrl);\r\n setNameFile(nameFile);\r\n setCheckHasValue(true);\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n };\r\n\r\n // function openWindow() {\r\n // var pathArray = link.split(\"/\");\r\n // console.log(\"at=>link\", link);\r\n // console.log(\"at=>pathArray\", pathArray);\r\n // console.log({ link });\r\n // const _baseUrl = window.location.hostname;\r\n\r\n // const TmpUrl =\r\n // process.env.NODE_ENV === \"development\"\r\n // ? \"qar2.wolfapprove.com\"\r\n // : _baseUrl;\r\n // console.log({ ddd: `https://${TmpUrl}/${link}` });\r\n\r\n // window.open(`https://${TmpUrl}/${link}`, \"_blank\", \"noreferrer\");\r\n // }\r\n async function openWindow() {\r\n var pathArray = link.split(\"/\");\r\n const _link = link\r\n ? link.charAt(0) !== \"/\" && !_sharepointSiteURL\r\n ? \"/\" + link\r\n : link\r\n : \"\";\r\n\r\n const protocol = window.location.protocol;\r\n if (_sharepointSiteURL) {\r\n if (_link.startsWith(_sharepointSiteURL)) {\r\n console.log(\"att=>\", _link);\r\n\r\n window.open(`${_link}`, \"_blank\", \"noreferrer\");\r\n } else {\r\n console.log(\"att=>\", `${_sharepointSiteURL}${_link}`);\r\n\r\n window.open(`${_sharepointSiteURL}${_link}`, \"_blank\", \"noreferrer\");\r\n }\r\n } else if (_userData.TinyURL) {\r\n if (location.host !== \"localhost:5001\") {\r\n let _port = location.port;\r\n if (_port) {\r\n _userData.TinyURL = _userData.TinyURL + \":\" + _port;\r\n }\r\n }\r\n if (\r\n _link.includes(\"www\") ||\r\n _link.includes(\".com\") ||\r\n _link.includes(\".tv\") ||\r\n _link.includes(\".net\") ||\r\n _link.includes(\"https\") ||\r\n _link.includes(\"http\") ||\r\n _link.includes(\".com\") ||\r\n _link.includes(\".co.th\")\r\n ) {\r\n if (_link.includes(\"https\")) {\r\n window.open(\r\n `https://${_link.replaceAll(\"https://\", \"\")}`,\r\n \"_blank\",\r\n \"noreferrer\"\r\n );\r\n } else if (_link.includes(\"http\")) {\r\n window.open(\r\n `http://${_link.replaceAll(\"http://\", \"\")}`,\r\n \"_blank\",\r\n \"noreferrer\"\r\n );\r\n } else {\r\n window.open(`https://${_link}`, \"_blank\", \"noreferrer\");\r\n }\r\n } else {\r\n window.open(\r\n `${protocol}//${_userData.TinyURL}${_link}`,\r\n \"_blank\",\r\n \"noreferrer\"\r\n );\r\n }\r\n } else if (!_userData.TinyURL) {\r\n window.open(`${_link}`, \"_blank\", \"noreferrer\");\r\n }\r\n }\r\n\r\n const confirmUploadDialog = () => {\r\n return (\r\n <>\r\n setVisibleConfirmDialog(false)}\r\n message=\"Are you sure you want to proceed?\"\r\n header=\"Confirmation\"\r\n icon=\"pi pi-exclamation-triangle\"\r\n position=\"top\"\r\n accept={acceptUpload}\r\n acceptClassName=\"p-button p-component p-button-raised p-button-success\"\r\n rejectClassName=\"p-button p-component p-button-outlined p-button-danger\"\r\n draggable={false}\r\n />\r\n \r\n );\r\n };\r\n\r\n const acceptUpload = () => {\r\n if (uploadType === \"Attach file\") {\r\n setCheckHasValue(true);\r\n setIsModalVisible(false);\r\n } else if (uploadType === \"Attach link\") {\r\n setCheckHasValue(true);\r\n setIsModalVisible(false);\r\n } else {\r\n setCheckHasValue(false);\r\n setSelected(undefined);\r\n setLink(\"\");\r\n setNameFile(\"\");\r\n setUploadType(\"Attach file\");\r\n onChange(\"\");\r\n setIsModalVisible(false);\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n \r\n {confirmUploadDialog()}\r\n
\r\n \r\n {\r\n if (checkHasValue) {\r\n openWindow();\r\n } else if (canEditDoc) {\r\n setIsModalVisible(true);\r\n }\r\n }}\r\n className=\"r\"\r\n type=\"button\"\r\n style={{\r\n borderTopLeftRadius: \"6px\",\r\n borderBottomLeftRadius: \"6px\",\r\n borderTopRightRadius:\r\n checkHasValue && canEditDoc && template.attribute.readonly\r\n ? undefined\r\n : \"6px\",\r\n borderBottomRightRadius:\r\n checkHasValue && canEditDoc && template.attribute.readonly\r\n ? undefined\r\n : \"6px\",\r\n backgroundColor: \"rgb(40, 47, 106)\",\r\n border: \"1px solid rgb(40, 47, 106)\",\r\n boxShadow: \"none\",\r\n width: \"100%\",\r\n height: \"38px\",\r\n // cursor: checkHasValue || canEditDoc ? \"pointer\" : \"default\",\r\n // opacity: checkHasValue && canEditDoc ? 1 : 0.6,\r\n }}\r\n disabled={checkHasValue || canEditDoc ? false : true}\r\n />\r\n \r\n\r\n {checkHasValue && canEditDoc && (\r\n {\r\n setUploadType(\"Clear\");\r\n\r\n setVisibleConfirmDialog(true);\r\n }}\r\n >\r\n \r\n
\r\n )}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport const AttachmentControlComponent: React.FC = ({\r\n colIdx,\r\n rowIdx,\r\n control,\r\n name,\r\n data,\r\n template,\r\n col,\r\n colAction,\r\n colText,\r\n canEditDoc,\r\n checkActionPage,\r\n buttonType,\r\n ...props\r\n}) => {\r\n return (\r\n <>\r\n (\r\n <>\r\n \r\n \r\n
\r\n \r\n {isSubmitted &&\r\n errors?.items &&\r\n errors?.items[rowIdx] &&\r\n errors?.items[rowIdx].layout[colIdx] && (\r\n \r\n {template.label} is required.\r\n \r\n )}\r\n
\r\n \r\n \r\n )}\r\n />\r\n \r\n );\r\n};\r\n\r\nexport const AttachmentTableComponent: React.FC = ({\r\n name,\r\n template,\r\n saveFunc,\r\n inputRef,\r\n isEditing,\r\n onEdit,\r\n value,\r\n children,\r\n canEditDoc,\r\n checkActionPage,\r\n buttonType,\r\n\r\n ...props\r\n}) => {\r\n if (!isEditing) {\r\n return (\r\n
\r\n \r\n
\r\n );\r\n }\r\n return (\r\n <>\r\n value}\r\n rules={\r\n canEditDoc && [\r\n {\r\n required: checkRequireFromTemplate(template, buttonType),\r\n message: `${template.label} is required.`,\r\n },\r\n ]\r\n }\r\n >\r\n \r\n \r\n \r\n );\r\n};\r\n","import { useContext } from \"react\";\r\nimport { AlertContext } from \"../Context/AlertContext\";\r\n\r\nconst useAlert = () => {\r\n const context = useContext(AlertContext);\r\n if (!context)\r\n throw new Error(\"Load Context must be use inside Load Provider\");\r\n return context;\r\n};\r\n\r\nexport default useAlert;\r\n","import {\r\n GetAttachmentFilesByMemoId,\r\n GetRefDocFormTable,\r\n} from \"../Services/MemoService\";\r\n\r\nexport type RefResult = {\r\n items: any[];\r\n listRefDocsDetail: any[];\r\n listFileAttachDetails?: any[] | null;\r\n errorMessage?: string;\r\n};\r\n\r\nexport const onChanceRef = async (\r\n refTempSelected: any,\r\n memoDetail: any,\r\n listFormNames: any,\r\n refAttribute: any,\r\n currentTemp: any\r\n) => {\r\n let result: RefResult = {\r\n items: [],\r\n listRefDocsDetail: [],\r\n listFileAttachDetails: null,\r\n };\r\n\r\n try {\r\n if (memoDetail) {\r\n if (\r\n refTempSelected !== undefined &&\r\n refTempSelected !== null &&\r\n refTempSelected.length > 0\r\n ) {\r\n let template_desc = currentTemp;\r\n let _listRefDocsDetail: any[] = [];\r\n let listFileAttachDetails: any[] = [];\r\n let docsCode: any[] = [];\r\n let refTemp: any;\r\n const refColumn = JSON.parse(listFormNames?.RefDocColumn);\r\n if (\r\n listFormNames?.RefTemplate !== \"\" &&\r\n listFormNames?.RefTemplate !== null\r\n ) {\r\n refTemp = JSON.parse(listFormNames?.RefTemplate);\r\n refTemp.map((temp: any) => {\r\n if (temp.DocumentCode !== \"\") {\r\n docsCode.push(temp.DocumentCode);\r\n }\r\n });\r\n }\r\n\r\n for (const refTems of refTempSelected) {\r\n let refDocDetail = {\r\n memoRefdoc_id: refTems.MemoId,\r\n doc_no: refTems.DocumentNo,\r\n template_ID: listFormNames?.template_id,\r\n template_Name: listFormNames?.template_name,\r\n memoSubject: listFormNames?.subject,\r\n };\r\n if (refTems.MAdvancveForm) {\r\n const selectedColumn = JSON.parse(refTems?.MAdvancveForm);\r\n let valibCol: any[] = [];\r\n _listRefDocsDetail.push(refDocDetail);\r\n\r\n refColumn.map((col: any) => {\r\n if (col.Value !== null && col.Value !== \"\") {\r\n if (col.Value === \"_DocumentNo\") {\r\n col.ControlValue = { value: refTems.DocumentNo };\r\n } else if (col.Value === \"_DocumentAmount\") {\r\n col.ControlValue = { value: refTems.Amount };\r\n } else if (col.Value === \"_RequestorEmployeeName\") {\r\n col.ControlValue = { value: refTems.RNameEn };\r\n } else if (col.Value === \"_RequestorEmployeePositionTh\") {\r\n col.ControlValue = { value: refTems.RPositionTh };\r\n } else if (col.Value === \"_RequestorEmployeePositionEn\") {\r\n col.ControlValue = { value: refTems.RPositionEn };\r\n } else if (col.Value === \"_RequestorEmployeeDepartmentTh\") {\r\n col.ControlValue = { value: refTems.DepartmentTh };\r\n } else if (col.Value === \"_RequestorEmployeeDepartmentEn\") {\r\n col.ControlValue = { value: refTems.DepartmentEn };\r\n } else if (col.Value === \"_InformationFormName\") {\r\n col.ControlValue = { value: refTems.TemplateName };\r\n } else if (col.Value === \"_InformationRequestDate\") {\r\n col.ControlValue = { value: refTems.RequestDate };\r\n } else if (col.Value === \"_InformationCompany\") {\r\n col.ControlValue = { value: refTems.CompanyName };\r\n } else {\r\n let selColLabel = \"\";\r\n if (col.Value.indexOf(\"_\") !== -1) {\r\n let colLabel = col.Value.split(\"_\");\r\n selColLabel = colLabel.pop();\r\n } else {\r\n selColLabel = col.Value;\r\n }\r\n if (col.TypeControl === \"Table\") {\r\n let sourceRow: any = -1;\r\n let sourceCols: any[] = [];\r\n let targetPositions: any[] = [];\r\n let originDefaultValue = \"\";\r\n selectedColumn.items.map((selCol: any, rowIdx: number) => {\r\n selCol.layout.map((_layout: any) => {\r\n if (\r\n selColLabel === _layout.template.label &&\r\n _layout.template.type === \"tb\"\r\n ) {\r\n col.objTable?.map(\r\n (objTable: any, tarColIdx: number) => {\r\n if (objTable?.Value !== null) {\r\n _layout.template.attribute.column.map(\r\n (refTable: any, colIdx: number) => {\r\n if (refTable.label === objTable.Value) {\r\n // originDefaultValue =\r\n sourceRow = rowIdx;\r\n sourceCols.push({\r\n colIdx: colIdx,\r\n });\r\n targetPositions.push(tarColIdx);\r\n }\r\n }\r\n );\r\n }\r\n }\r\n );\r\n }\r\n });\r\n });\r\n if (sourceRow > -1) {\r\n let tableRows: any[] = [];\r\n if (refAttribute?.mode !== \"Single\") {\r\n //adding if condition to check value of colcontrol\r\n if (col.ControlValue) {\r\n tableRows = col.ControlValue;\r\n }\r\n }\r\n selectedColumn.items[sourceRow].layout[0]?.data?.row?.map(\r\n (row: any) => {\r\n let newRow: any[] = [];\r\n\r\n for (let i = 0; i < col.objTable.length; i++) {\r\n newRow.push({ value: null });\r\n }\r\n\r\n sourceCols.map((col: any, colIdx: number) => {\r\n newRow[targetPositions[colIdx]] = row[col.colIdx];\r\n });\r\n if (newRow.length > 0) {\r\n tableRows.push(newRow);\r\n }\r\n }\r\n );\r\n col.ControlValue = tableRows;\r\n }\r\n } else {\r\n selectedColumn.items.map((selCol: any) => {\r\n selCol.layout.map((_layout: any) => {\r\n if (_layout.template.label === selColLabel) {\r\n col.ControlValue = _layout.data;\r\n }\r\n });\r\n });\r\n }\r\n }\r\n valibCol.push(col);\r\n }\r\n });\r\n\r\n template_desc.map((item: any, rowIdx: number) => {\r\n item.layout.map((_layout: any, colIdx: number) => {\r\n valibCol.map((col: any) => {\r\n if (!col.ControlValue) return;\r\n\r\n if (\r\n col.TypeControl === \"Table\" &&\r\n _layout.template.type === \"tb\"\r\n ) {\r\n if (col.Key === _layout.template.label) {\r\n if (\r\n JSON.stringify(_layout.data.row) !==\r\n JSON.stringify(col.ControlValue)\r\n ) {\r\n _layout.template.attribute.column.forEach(\r\n (originCol: any, _colIdx: number) => {\r\n col.ControlValue.map((refCol: any) => {\r\n if (refCol[_colIdx]?.value === null) {\r\n if (\r\n originCol.control.template.attribute\r\n .default !== \"\"\r\n ) {\r\n refCol[_colIdx].value = getDefValueInTemplate(\r\n originCol.control.template\r\n );\r\n }\r\n }\r\n });\r\n }\r\n );\r\n\r\n const rowstateCol =\r\n _layout.template.attribute.column.find(\r\n (col: any) => col.label === \"rowstate\"\r\n );\r\n if (rowstateCol) {\r\n col.ControlValue.map((e: any) => {\r\n e.push({ value: null });\r\n return e;\r\n });\r\n }\r\n\r\n _layout.data.row = [...col.ControlValue];\r\n }\r\n }\r\n } else if (\r\n col.TypeControl != \"Table\" &&\r\n _layout.template.type != \"l\"\r\n ) {\r\n if (col.Key === _layout.template.label) {\r\n if (_layout.data?.value !== col.ControlValue?.value) {\r\n _layout.data = col.ControlValue;\r\n }\r\n }\r\n } else {\r\n // Nothing do something because template type is heading\r\n }\r\n });\r\n });\r\n });\r\n if (\r\n listFormNames.RefDocDisplay.split(\",\")[5] &&\r\n listFormNames.RefDocDisplay.split(\",\")[5] === \"Yes\"\r\n ) {\r\n let _res: any[] = [];\r\n await getMemoForAttch(refTems.MemoId).then((e: any) => {\r\n if (e) {\r\n result.listFileAttachDetails = [\r\n ...listFileAttachDetails,\r\n ...e,\r\n ];\r\n }\r\n });\r\n }\r\n }\r\n\r\n result.items = template_desc;\r\n result.listRefDocsDetail = _listRefDocsDetail;\r\n }\r\n }\r\n }\r\n\r\n return result;\r\n } catch (error: any) {\r\n console.error(\"ref=>error\", error);\r\n\r\n result.errorMessage = error;\r\n return result;\r\n }\r\n};\r\n\r\nconst getMemoForAttch = async (memoId: number) => {\r\n const requestBody = {\r\n memoid: memoId,\r\n };\r\n let res: any[] = [];\r\n await GetAttachmentFilesByMemoId(requestBody).then((e: any) => {\r\n res = e;\r\n });\r\n return res;\r\n};\r\n\r\nexport const fetchRefDocFormTable = async (memoDetail: any, template: any) => {\r\n let tempAtt = template.attribute;\r\n if (tempAtt !== undefined) {\r\n if (tempAtt.refdoc !== undefined) {\r\n const dataRequest = {\r\n PageIndex: 0,\r\n PageSize: 0,\r\n CUserID: memoDetail.creator.EmployeeId.toString(),\r\n RUserID: memoDetail.requestor.EmployeeId.toString(),\r\n ConditionRefdoc:\r\n tempAtt.conditionrefdoc.length > 0\r\n ? JSON.stringify(tempAtt.conditionrefdoc)\r\n : \"\",\r\n Search: \"\",\r\n docDataSource: tempAtt.refdoc.docDataSource,\r\n docReport: tempAtt.refdoc.docReport,\r\n docCancelDoc: tempAtt.refdoc.docCancelDoc,\r\n docEditDoc: tempAtt.refdoc.docEditDoc,\r\n docNewDoc: tempAtt.refdoc.docNewDoc,\r\n doccontrol: tempAtt.refdoc.doccontrol !== \"N\",\r\n docref: tempAtt.refdoc.docref,\r\n };\r\n\r\n const refDetails = await GetRefDocFormTable(dataRequest);\r\n\r\n if (refDetails) {\r\n if (refDetails?.dt_Report?.length > 0) {\r\n return refDetails.dt_Report;\r\n } else {\r\n return [];\r\n }\r\n }\r\n }\r\n }\r\n};\r\n","export const GetAllDynamic = async (\r\n apiName: any,\r\n requestBody?: any,\r\n queryString?: any\r\n) => {\r\n try {\r\n if (!requestBody && window.localStorage.getItem(\"email\")) {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n requestBody = { UserPrincipal: email, ConnectionString: \"\" };\r\n }\r\n\r\n let url = \"\";\r\n if (queryString) {\r\n let urlParams = new URLSearchParams({\r\n Scopes: queryString?.Scopes || \"\",\r\n IsActiveOnly: queryString?.IsActiveOnly || \"\",\r\n });\r\n url = \"/api/\" + apiName + \"?\" + urlParams.toString();\r\n } else {\r\n url = \"/api/\" + apiName;\r\n }\r\n\r\n const respone = await fetch(url, requestBody)\r\n .then((response: any) => response.json())\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch((ex: any) => {\r\n return ex;\r\n });\r\n\r\n return respone;\r\n } catch (error) {\r\n console.log(\"service=>GetAllDynamic=>error\", error);\r\n }\r\n};\r\n\r\nexport const updateDynamic = async (apiName: any, formBody: any) => {\r\n if (apiName.endsWith(\"s\")) {\r\n apiName = apiName.substring(0, apiName.length - 1);\r\n }\r\n\r\n const data = {\r\n name: apiName !== \"MasterData\" ? apiName.replace(\"Master\", \"\") : apiName,\r\n model: JSON.stringify(formBody),\r\n };\r\n const respone = await fetch(\"/api/MasterData/UpdateData\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(data),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n });\r\n\r\n return respone;\r\n};\r\n","import React, { useState, useEffect, useMemo } from \"react\";\r\nimport NumberComponent from \"../../ControlComponents/NumberComponent/NumberComponent\";\r\nimport Row from \"react-bootstrap/Row\";\r\nimport Col from \"react-bootstrap/Col\";\r\nimport \"./CoreControllerComponent.css\";\r\nimport { useForm, Controller } from \"react-hook-form\";\r\nimport CheckboxComponent from \"../../ControlComponents/CheckboxComponent/CheckboxComponent\";\r\nimport MainCheckboxComponents from \"../../ControlComponents/MainCheckboxComponents/MainCheckboxComponents\";\r\nimport MainTextComponents from \"../../ControlComponents/MainTextComponents/MainTextComponents\";\r\nimport AttachmentComponent from \"../../ControlComponents/AttachmentComponent/AttachmentComponent\";\r\nimport DropdownComponent from \"../../ControlComponents/DropdownComponent/DropdownComponent\";\r\nimport RadioComponent from \"../../ControlComponents/RadioComponent/RadioComponent\";\r\nimport CalendarComponent from \"../../ControlComponents/CalendarComponent/CalendarComponent\";\r\nimport ShortTextComponent from \"../../ControlComponents/InputTextComponent/ShortTextComponent/ShortTextComponent\";\r\nimport TextareaComponent from \"../../ControlComponents/InputTextComponent/TextareaComponent/TextareaComponent\";\r\nimport ButtonComponent from \"../../ControlComponents/ButtonComponent/ButtonComponent\";\r\nimport AutoNumberComponent from \"../../ControlComponents/NumberComponent/AutoNumberComponent/AutoNumberComponent\";\r\nimport RevisionComponent from \"../../ControlComponents/NumberComponent/RevisionComponent/RevisionComponent\";\r\nimport { EditorComponent } from \"../../ControlComponents/EditorComponent/EditorComponent\";\r\n// import TableComponent from \"../../ControlComponents/TableComponent/TableComponent\";\r\nimport { SummaryComponent } from \"../../ControlComponents/SummaryComponent/SummaryComponent\";\r\nimport { Item } from \"rc-menu\";\r\nimport { AnyMap } from \"@reduxjs/toolkit/node_modules/immer/dist/internal\";\r\nimport { EmptyComponent } from \"../../ControlComponents/EmptyComponent/EmptyComponent\";\r\nimport {\r\n GetAutoNumber,\r\n GetRvsRunning,\r\n // GetRunningNumber,\r\n} from \"../../../Services/RequestControlService\";\r\nimport { GetAllDynamic } from \"../../../Services/DynamicService\";\r\nimport {\r\n GetAllApprovals,\r\n GetApprovalByTemplate,\r\n} from \"../../../Services/ApprovalService\";\r\nimport ImageComponent from \"../../ControlComponents/ImageComponent/ImageComponent\";\r\nimport { IListApprovalDetailsModel } from \"../../../IRequestModel/IListApprovalDetailsModel\";\r\nimport { ProgressSpinner } from \"primereact/progressspinner\";\r\ninterface Props {\r\n coreRender: boolean;\r\n setCoreRender: any;\r\n formTemplate: any;\r\n setInformationMethodProp: (e: any) => void;\r\n errorResult: any;\r\n statusMemoDetail: boolean;\r\n errorTable: any;\r\n setSummary: (respone: any) => void;\r\n templateID: any;\r\n isInitialLogic: any;\r\n setIsInitialLogic: any;\r\n selectedView: any;\r\n showControl: any;\r\n setShowControl: any;\r\n requestDetail: any;\r\n setRequestDetail: any;\r\n setLineApporve: any;\r\n getInformationTemplateProp(): any;\r\n setOnLoading: any;\r\n logic: any;\r\n listLogicData: any;\r\n setListLogicData: any;\r\n}\r\n\r\nexport const CoreControllerComponent = (props: Props) => {\r\n const [advanceForm, setAdvanceForm] = useState({});\r\n const [tableSummary, setTableSummary] = useState([]);\r\n const [summary, setSummary] = useState(0);\r\n const [isShowSummary, setIsShowSummary] = useState(false);\r\n const [formLoading, setFormLoading] = useState(true);\r\n const [formComponent, setFormComponent] = useState();\r\n const [autoNumFormat, setAutoNumFormat] = useState();\r\n const [autoNumDigit, setAutoNumDigit] = useState();\r\n const [numFormulas, setNumFormulas] = useState([]);\r\n const [allLogic, setAllLogic] = useState([]);\r\n const [valueTable, setValueTable] = useState([]);\r\n const [runningNumber, setRunningNumber] = useState(\"\");\r\n const [rvsPosition, setRvsPosition] = useState();\r\n const [currentLogic, setCurrentLogic] = useState(\"\");\r\n const userData: any = JSON.parse(window.localStorage.getItem(\"userData\"));\r\n\r\n useEffect(() => {\r\n if (isShowSummary) {\r\n sumValue();\r\n }\r\n }, [isShowSummary]);\r\n\r\n const [isFirstLoad, setIsFirstLoad] = useState(true);\r\n useEffect(() => {\r\n setAdvanceForm(JSON.parse(props.formTemplate));\r\n // console.log(\"ddddddddddddddd\");\r\n if (tableSummary.length === 0) {\r\n setSumTable();\r\n }\r\n // props.setShowControl([]);\r\n // console.log(\"props.form\", JSON.parse(props.formTemplate));\r\n }, [props.formTemplate]);\r\n\r\n useEffect(() => {\r\n if (advanceForm !== undefined && Object.keys(advanceForm).length !== 0) {\r\n // if (props.showControl?.length === 0) {\r\n // var arr = Array.from(Array(advanceForm.items.length), () =>\r\n // new Array(2).fill(true)\r\n // );\r\n // // props.setShowControl([...arr]);\r\n // }\r\n if (runningNumber === \"\") {\r\n getRevision();\r\n }\r\n // sumValue();\r\n renderControl(JSON.parse(props.formTemplate));\r\n setFormLoading(false);\r\n }\r\n }, [advanceForm]);\r\n useEffect(() => {\r\n if (valueTable.length > 0) {\r\n renderControl(JSON.parse(props.formTemplate));\r\n setFormLoading(false);\r\n }\r\n }, [valueTable]);\r\n\r\n useEffect(() => {\r\n if (\r\n props.logic.length > 0 &&\r\n props.isInitialLogic === false &&\r\n advanceForm?.items?.length > 0\r\n ) {\r\n checkLogic();\r\n }\r\n }, [props.logic, advanceForm]);\r\n\r\n useEffect(() => {\r\n console.log(\"listLogicData\", props.listLogicData, isFirstLoad);\r\n\r\n if (props.listLogicData?.length > 0) {\r\n setIsFirstLoad(false);\r\n }\r\n if (\r\n props.listLogicData?.length > 0 &&\r\n props.isInitialLogic &&\r\n !isFirstLoad\r\n ) {\r\n console.log(\"listLogicData\", props.listLogicData, isFirstLoad);\r\n\r\n for (let i = 0; i < props.listLogicData.length; i++) {\r\n const logic = props.listLogicData[i];\r\n if (logic.name === \"datasourcerelated\") {\r\n if (logic.data.relateGroup.length > 0) {\r\n onDataSourceLoadRelated(\r\n logic.data.relateGroup,\r\n logic.data.dataJson\r\n );\r\n }\r\n }\r\n if (logic.name === \"datareladtoloaddata\") {\r\n if (logic.data.length > 0) {\r\n onChangeAttributeForm(logic.data, logic.row, logic.col);\r\n }\r\n }\r\n if (logic.name === \"dataajaxloadtable\") {\r\n onDataAjaxLoadTable(\r\n logic.row,\r\n logic.col,\r\n logic.data.label,\r\n logic.data.dataJson\r\n );\r\n }\r\n if (logic.name === \"reference\") {\r\n onDataRefLoadTable(logic.row, logic.col, logic.data.dataJson);\r\n }\r\n }\r\n }\r\n if (props.listLogicData?.length > 0 && props.isInitialLogic) {\r\n for (let i = 0; i < props.listLogicData.length; i++) {\r\n const logic = props.listLogicData[i];\r\n if (logic.name === \"datalineapprove\") {\r\n onLoadLineApproveWithLogic(logic.data.dataJson);\r\n }\r\n }\r\n }\r\n }, [props.listLogicData]);\r\n async function getRevision() {\r\n let _advanceForm: any = advanceForm;\r\n const detail = props.requestDetail;\r\n\r\n let requestBody: any = {};\r\n if (rvsPosition !== undefined) {\r\n let items: any[] = [];\r\n let rvsTemp =\r\n _advanceForm.items[rvsPosition.rowIdx].layout[rvsPosition.colIdx];\r\n requestBody.TemplateId = detail.memoDetail.template_id;\r\n requestBody.RefId = 0;\r\n requestBody.Digit = rvsTemp.template.attribute.digit;\r\n requestBody.Labelrevision = rvsTemp.template.label;\r\n requestBody.Alter = rvsTemp.template.alter;\r\n\r\n if (rvsTemp.template.attribute.conditions.length > 0) {\r\n rvsTemp.template.attribute.conditions.map((con: any) => {\r\n _advanceForm.items.map((item: any, rowIdx: number) => {\r\n item.layout.map((layout: any, colIdx: number) => {\r\n if (con.label === layout.template.label) {\r\n items.push({ Label: con.label, value: layout.data.value });\r\n }\r\n });\r\n });\r\n });\r\n }\r\n requestBody.MemoId = null;\r\n requestBody.Itemlabel = items;\r\n const revision = await GetRvsRunning(requestBody);\r\n if (revision) {\r\n setRunningNumber(revision.item);\r\n }\r\n }\r\n }\r\n\r\n // useEffect(() => {\r\n // if (\r\n // // props.showControl?.length > 0 &&\r\n // // !props.showControl?.every((e: any) => e === true) &&\r\n // advanceForm !== undefined &&\r\n // Object.keys(advanceForm).length !== 0\r\n // ) {\r\n // renderControl(JSON.parse(props.formTemplate));\r\n // setFormLoading(true);\r\n // }\r\n // }, [props.showControl]);\r\n\r\n const onClickLogic = async (\r\n template: any,\r\n rowIdx: Number,\r\n colIdx: Number\r\n ) => {\r\n // console.log(\"template\", template);\r\n let mstTable = \"\";\r\n let mstType = \"\";\r\n let mColumn = \"\";\r\n let columnAll = \"\";\r\n let requestLogic: any = [];\r\n let relateGroup: any = [];\r\n let conditions: any = [];\r\n let lineLogic: string = \"\";\r\n const _logic: any = props.logic;\r\n for (let i = 0; i < _logic.length; i++) {\r\n const logic: any = _logic[i];\r\n // console.log(logic);\r\n\r\n if (logic.jsonvalue !== null) {\r\n if (logic.jsonvalue.length > 0) {\r\n const jsonObject = JSON.parse(_logic[i].jsonvalue);\r\n if (logic.logictype === \"datasourcerelated\") {\r\n for (let j = 0; j < jsonObject.relatedvalue.length; j++) {\r\n const relateValue = jsonObject.relatedvalue[j];\r\n // console.log(relateValue, template.template.description);\r\n for (let k = 0; k < advanceForm.items.length; k++) {\r\n const _advanceForm = advanceForm.items[k];\r\n // console.log(\"_advanceForm\", _advanceForm);\r\n for (let l = 0; l < _advanceForm.layout.length; l++) {\r\n const _layout = _advanceForm.layout[l];\r\n if (\r\n relateValue.label === _layout.template.label &&\r\n template.template.description ===\r\n _layout.template.attribute.description &&\r\n jsonObject.label === template.template.label\r\n ) {\r\n // console.log(\r\n // \"dddddddddddddddddddddddddddd\",\r\n // relateValue.label,\r\n // template.template,\r\n // _layout.template\r\n // );\r\n relateGroup.push({\r\n group: relateValue,\r\n row: k,\r\n col: l,\r\n });\r\n }\r\n }\r\n }\r\n }\r\n const dataJson = {\r\n Key: template.template.label,\r\n Value: template.data.value,\r\n logicid: logic.logicid,\r\n };\r\n // console.log(\"ddddddddddd\", dataJson, relateGroup);\r\n requestLogic.push({\r\n name: logic.logictype,\r\n data: {\r\n relateGroup,\r\n dataJson,\r\n },\r\n });\r\n // onDataSourceLoadRelated(relateGroup, dataJson);\r\n }\r\n if (logic.logictype === \"datareladtoloaddata\") {\r\n for (let j = 0; j < jsonObject.labelactions.length; j++) {\r\n const labelaction = jsonObject.labelactions[j];\r\n // console.log(jsonObject);\r\n if (labelaction.labelintablestatus !== false) {\r\n for (let k = 0; k < advanceForm.items.length; k++) {\r\n const _advanceForm = advanceForm.items[k];\r\n // console.log(\"_advanceForm\", _advanceForm);\r\n for (let l = 0; l < _advanceForm.layout.length; l++) {\r\n const _layout = _advanceForm.layout[l];\r\n if (\r\n labelaction.label === template.template.label &&\r\n jsonObject.autoloadvaluelabel.label ===\r\n _layout.template.label\r\n ) {\r\n // console.log(\r\n // \"labelaction.label\",\r\n // labelaction.label,\r\n // template.template.label,\r\n // _layout.template.label\r\n // );\r\n const dataJson = {\r\n Key: template.template.label,\r\n Value: template.data.value,\r\n logicid: logic.logicid,\r\n };\r\n const data: any = await onDatareladToLoadData([dataJson]);\r\n\r\n if (data.length > 0) {\r\n requestLogic.push({\r\n name: logic.logictype,\r\n data: data[0].data,\r\n row: k,\r\n col: l,\r\n });\r\n // onChangeAttributeForm(data[0].data, k, l);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n if (logic.logictype === \"dataajaxloadtable\") {\r\n for (let j = 0; j < jsonObject.labelactions.length; j++) {\r\n const labelaction = jsonObject.labelactions[j];\r\n // console.log(jsonObject);\r\n if (labelaction.labelintablestatus !== false) {\r\n for (let k = 0; k < advanceForm.items.length; k++) {\r\n const _advanceForm = advanceForm.items[k];\r\n // console.log(\"_advanceForm\", _advanceForm);\r\n for (let l = 0; l < _advanceForm.layout.length; l++) {\r\n const _layout = _advanceForm.layout[l];\r\n if (_layout.template.type === \"tb\") {\r\n // console.log(\"dsssssssssssssdasdddddddd\", _layout.template);\r\n for (\r\n let m = 0;\r\n m < _layout.template.attribute.column.length;\r\n m++\r\n ) {\r\n const tbColumn = _layout.template.attribute.column[m];\r\n if (\r\n tbColumn.label === jsonObject.autoloadvaluelabel.label\r\n ) {\r\n const dataJson = {\r\n Key: labelaction.label,\r\n Value:\r\n template.data.value !== undefined\r\n ? template.data.value.toString()\r\n : \"\",\r\n logicid: logic.logicid,\r\n };\r\n requestLogic.push({\r\n name: logic.logictype,\r\n data: {\r\n label: jsonObject.autoloadvaluelabel.label,\r\n dataJson,\r\n },\r\n row: i,\r\n col: j,\r\n });\r\n // const data = onDataAjaxLoadTable(\r\n // i,\r\n // j,\r\n // jsonObject.autoloadvaluelabel.label,\r\n // dataJson\r\n // );\r\n setCurrentLogic(logic.logictype);\r\n // console.log(\"ddddddEEEEEEEEEE\");\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n if (logic.logictype === \"reference\") {\r\n let loadTo = { row: -1, col: -1 };\r\n let refFilter: any = [];\r\n let loadToField = jsonObject.Column;\r\n mstTable = jsonObject.Mastertable || \"\";\r\n mstType = jsonObject.Type || \"\";\r\n mColumn = jsonObject.MColumn || \"\";\r\n columnAll = jsonObject.ColumnAll || \"\";\r\n for (let j = 0; j < jsonObject.Filter.length; j++) {\r\n const controlFilter = jsonObject.Filter[j];\r\n for (let k = 0; k < advanceForm.items.length; k++) {\r\n const _advanceForm = advanceForm.items[k];\r\n // console.log(\"_advanceForm\", _advanceForm);\r\n for (let l = 0; l < _advanceForm.layout.length; l++) {\r\n const _layout = _advanceForm.layout[l];\r\n if (_layout.template.label === jsonObject.label) {\r\n loadTo = {\r\n row: k,\r\n col: l,\r\n };\r\n }\r\n if (_layout.template.label === controlFilter.TBColumn) {\r\n refFilter.push({\r\n mstColumn: controlFilter.MSTColumn,\r\n tbColumn: _layout.data.value,\r\n });\r\n }\r\n }\r\n }\r\n }\r\n\r\n const dataJson = {\r\n mstTable,\r\n mstType,\r\n mColumn,\r\n columnAll,\r\n refFilter,\r\n loadToField,\r\n };\r\n setCurrentLogic(logic.logictype);\r\n requestLogic.push({\r\n name: logic.logictype,\r\n data: {\r\n dataJson,\r\n },\r\n row: loadTo.row,\r\n col: loadTo.col,\r\n });\r\n // onDataRefLoadTable(loadTo.row, loadTo.col, dataJson);\r\n }\r\n if (logic.logictype === \"datalineapprove\") {\r\n // console.log(\"datalineapprove\");\r\n for (let k = 0; k < advanceForm.items.length; k++) {\r\n const _advanceForm = advanceForm.items[k];\r\n for (let l = 0; l < _advanceForm.layout.length; l++) {\r\n const _layout = _advanceForm.layout[l];\r\n if (jsonObject.label === _layout.template.label) {\r\n // console.log(\r\n // \"_layout.data.value\",\r\n // _layout.data.value,\r\n // _layout.template.label\r\n // );\r\n\r\n conditions.push({\r\n label: _layout.template.label,\r\n value:\r\n _layout.data.value === null\r\n ? \"\"\r\n : _layout.template.type === \"c\"\r\n ? Number(_layout.data.value).toLocaleString()\r\n : _layout.data.value,\r\n });\r\n lineLogic = logic.logicid;\r\n }\r\n }\r\n }\r\n if (conditions.length > 0) {\r\n const dataJson = {\r\n logicid: lineLogic,\r\n conditions: conditions,\r\n };\r\n requestLogic.push({\r\n name: logic.logictype,\r\n data: {\r\n dataJson,\r\n },\r\n });\r\n // onLoadLineApproveWithLogic(dataJson);\r\n conditions = [];\r\n lineLogic = \"\";\r\n // console.log(\"dataJsondataJson\", dataJson);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n // props.setListLogicData((prevState: any) => {\r\n // if (JSON.stringify(prevState) !== JSON.stringify(requestLogic)) {\r\n // return requestLogic;\r\n // }\r\n // });\r\n if (JSON.stringify(props.listLogicData) !== JSON.stringify(requestLogic)) {\r\n\r\n props.setListLogicData([...requestLogic]);\r\n }\r\n console.log(\"requestLogic\", requestLogic, props.listLogicData);\r\n };\r\n const checkLogic = async () => {\r\n const _logic = props.logic;\r\n props.setIsInitialLogic(true);\r\n // console.log(\"checklogic\");\r\n console.log(\"_logic_logic\", props.setIsInitialLogic);\r\n\r\n // const userData = JSON.parse(window.localStorage.getItem(\"userData\"));\r\n const empId = userData.employeeData.EmployeeId;\r\n // let _showControl: any = props.showControl;\r\n let dataSourceLoadGroup: any[] = [];\r\n let dataSourceRelatedToLoadGroup: any[] = [];\r\n let mstTable = \"\";\r\n let mstType = \"\";\r\n let mColumn = \"\";\r\n let columnAll = \"\";\r\n let lineSeq = 0;\r\n let currentApproverLevel =\r\n props.requestDetail.memoDetail.current_approval_level;\r\n // let position = [];\r\n // let labelAction = [];\r\n for (let z = 0; z < _logic.length; z++) {\r\n const element = _logic[z];\r\n if (element.jsonvalue !== null && element.jsonvalue !== \"[]\") {\r\n if (element.jsonvalue.length > 0) {\r\n const jsonObject = JSON.parse(_logic[z].jsonvalue);\r\n // console.log(\"Logic=>jsonObject\", jsonObject);\r\n\r\n let positionTable = { row: -1, col: -1 };\r\n\r\n if (element.logictype === \"datasourceload\") {\r\n for (let i = 0; i < advanceForm.items.length; i++) {\r\n const _advanceForm = advanceForm.items[i];\r\n // console.log(\"_advanceForm\", _advanceForm);\r\n for (let j = 0; j < _advanceForm.layout.length; j++) {\r\n const _layout = _advanceForm.layout[j];\r\n if (_layout.template.label === jsonObject.label) {\r\n // console.log(\"_layout.template.label\", _layout.template.label);\r\n // const _data = await onDataSourceLoad(i, j, element.logicid);\r\n dataSourceLoadGroup.push({\r\n col: j,\r\n row: i,\r\n data: element.logicid,\r\n });\r\n }\r\n }\r\n }\r\n }\r\n if (element.logictype === \"role\") {\r\n const roles = await GetAllDynamic(\"Roles/GetAll\", undefined);\r\n\r\n // const _data = await onDataSourceLoad(i, j, element.logicid);\r\n if (jsonObject.action === \"show\") {\r\n for (let m = 0; m < jsonObject.fieldaction.length; m++) {\r\n const fieldaction = jsonObject.fieldaction[m];\r\n for (let k = 0; k < advanceForm.items.length; k++) {\r\n const _advanceForm = advanceForm.items[k];\r\n // console.log(\"_advanceForm\", _advanceForm);\r\n for (let l = 0; l < _advanceForm.layout.length; l++) {\r\n const _layout = _advanceForm.layout[l];\r\n\r\n if (fieldaction.lable === _layout.template.label) {\r\n // console.log(\r\n // \"_layout_layout_layout_layout.label\",\r\n // _layout\r\n // );\r\n // console.log(\r\n // \"fieldaction.label\",\r\n // fieldaction.lable,\r\n // \"_layout.template.label\",\r\n // _layout.template.label\r\n // );\r\n for (let n = 0; n < jsonObject.roleids.length; n++) {\r\n const roleid = jsonObject.roleids[n].id;\r\n for (let m = 0; m < roles.length; m++) {\r\n const role = roles[m];\r\n if (roleid != role.RoleId) {\r\n // console.log(\r\n // \"_showControl\",\r\n // _showControl,\r\n // \":\",\r\n // k,\r\n // \":\",\r\n // l\r\n // );\r\n // _showControl[k][l] = false;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n if (element.logictype === \"approvetype\") {\r\n // for (let i = 0; i < props.requestDetail.listApprovalDetails.length; i++) {\r\n // const approver = props.requestDetail.listApprovalDetails[i];\r\n // if (approver.emp_id === empId ) {\r\n // lineSeq = approver.sequence\r\n // }\r\n // }\r\n // const _data = await onDataSourceLoad(i, j, element.logicid);\r\n // const approvals = await GetAllApprovals({\r\n // memoid: props.requestDetail.memoDetail.memoid,\r\n // });\r\n const approvals = await fetch(\"api/LineApprove/GetByMemoId\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({\r\n memoid: props.requestDetail.memoDetail.memoid,\r\n }),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n });\r\n\r\n if (jsonObject.action === \"show\") {\r\n for (let m = 0; m < jsonObject.fieldaction.length; m++) {\r\n const fieldaction = jsonObject.fieldaction[m];\r\n for (let k = 0; k < advanceForm.items.length; k++) {\r\n const _advanceForm = advanceForm.items[k];\r\n // console.log(\"_advanceForm\", _advanceForm);\r\n for (let l = 0; l < _advanceForm.layout.length; l++) {\r\n const _layout = _advanceForm.layout[l];\r\n\r\n if (fieldaction.lable === _layout.template.label) {\r\n for (\r\n let n = 0;\r\n n < jsonObject.approvetypeids.length;\r\n n++\r\n ) {\r\n const typeid = jsonObject.approvetypeids[n].typeid;\r\n\r\n for (let m = 0; m < approvals.length; m++) {\r\n const approver = approvals[m];\r\n\r\n // if (\r\n // props.requestDetail.memoDetail\r\n // .current_approval_level == approver.sequence\r\n // ) {\r\n // console.log(\"dddddddddddddddddddddd\");\r\n\r\n // _showControl[k][l] = false;\r\n // }\r\n if (\r\n props.requestDetail.memoDetail\r\n .current_approval_level != approver.sequence ||\r\n approver.emp_id != empId ||\r\n typeid != approver.ApproveType\r\n ) {\r\n // _showControl[k][l] = false;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n let logicGroupData: any[] = [];\r\n // console.log(\"dataSourceRelatedToLoadGroup\", dataSourceRelatedToLoadGroup);\r\n if (dataSourceLoadGroup.length > 0) {\r\n const response = await onDataSourceLoad(dataSourceLoadGroup);\r\n logicGroupData.push({ type: \"onDataSourceLoad\", data: response });\r\n // console.log(\"responseGroup\", response);\r\n }\r\n if (dataSourceRelatedToLoadGroup.length > 0) {\r\n const response = await onDatareladToLoadData(\r\n dataSourceRelatedToLoadGroup\r\n );\r\n logicGroupData.push({ type: \"onDatareladToLoadData\", data: response });\r\n // console.log(\"onDatareladToLoadData\", response);\r\n }\r\n onChangeLogicForm(logicGroupData);\r\n // props.setShowControl([..._showControl]);\r\n setFormLoading(false);\r\n };\r\n const onChangeLogicForm = (logicGroupData: any) => {\r\n let _advanceForm = advanceForm;\r\n props.setIsInitialLogic(true);\r\n for (let i = 0; i < logicGroupData.length; i++) {\r\n const logicGroup = logicGroupData[i];\r\n if (logicGroup.type === \"onDataSourceLoad\") {\r\n for (let j = 0; j < logicGroup.data.length; j++) {\r\n let logicData = logicGroup.data[j];\r\n logicData.data.push({ item: \"-- Please Select --\" });\r\n for (let k = 0; k < logicData.data.length; k++) {\r\n const data = logicData.data[k];\r\n const keyValues = Object.keys(data).map((key) => {\r\n const newKey = \"item\";\r\n return { [newKey]: data[key] };\r\n });\r\n logicData.data[k] = keyValues[0];\r\n }\r\n _advanceForm.items[logicData.row].layout[\r\n logicData.col\r\n ].template.attribute.items = logicData.data;\r\n if (\r\n _advanceForm.items[logicData.row].layout[logicData.col].data\r\n .value !== \"-- Please Select --\"\r\n ) {\r\n _advanceForm.items[logicData.row].layout[logicData.col].data.value =\r\n \"-- Please Select --\";\r\n }\r\n\r\n // console.log(\"datasource\", logicData);\r\n }\r\n }\r\n }\r\n // console.log(\"JSON.stringify(_advanceForm)\", JSON.stringify(_advanceForm));\r\n\r\n props.setInformationMethodProp(JSON.stringify(_advanceForm));\r\n };\r\n\r\n function setSumTable() {\r\n const items = JSON.parse(props.formTemplate).items;\r\n let tableArray: any[] = [];\r\n\r\n items.map((item: any, rowIdx: number) => {\r\n item.layout.map((layout: any, colIdx: number) => {\r\n if (layout.template.type === \"tb\") {\r\n console.log(\"table=>layout.template\", layout.template);\r\n if (layout.template.attribute.column) {\r\n for (let i = 0; i < layout.template.attribute.column.length; i++) {\r\n const column = layout.template.attribute.column[i];\r\n if (column.control.template.type === \"c\") {\r\n if (column.control.template.attribute.summary === \"Y\") {\r\n tableArray.push({\r\n tableLabel: layout.template.label,\r\n total: 0,\r\n });\r\n\r\n setTableSummary([...tableArray]);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n });\r\n });\r\n }\r\n const onLoadLogic = async (templateID: any) => {\r\n const dataLogic = await fetch(\"api/TemplateList/TemplateByid/LoadLogic\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({ TemplateId: templateID }),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n // console.log(\"Logic=> \", data);\r\n\r\n setAllLogic([...data]);\r\n return data;\r\n });\r\n return dataLogic;\r\n };\r\n\r\n const onDataRefLoadTable = async (row: any, col: any, dataJson: any) => {\r\n setFormLoading(true);\r\n // console.log(\"dataJsondataJson\", dataJson);\r\n\r\n let query = `SELECT * FROM ${dataJson.mstTable} WHERE `;\r\n\r\n for (let i = 0; i < dataJson.refFilter.length; i++) {\r\n const refFilter = dataJson.refFilter[i];\r\n if (i === 0 && dataJson.refFilter.length > 1) {\r\n query = query + `${refFilter.mstColumn}='${refFilter.tbColumn}' AND `;\r\n }\r\n if (i % 2 === 0) {\r\n query = query + `${refFilter.mstColumn}='${refFilter.tbColumn}'`;\r\n }\r\n if (i % 2 !== 0 && i !== 0) {\r\n query = query + ` AND ${refFilter.mstColumn}='${refFilter.tbColumn}'`;\r\n }\r\n }\r\n if (dataJson.mstTable === \"MSTMasterData\" && dataJson.mstType.length > 0) {\r\n query = query + ` AND MasterType='${dataJson.mstType}'`;\r\n }\r\n if (dataJson.mColumn.length > 0) {\r\n query = query + ` AND ${dataJson.mColumn}='${dataJson.mstType}'`;\r\n }\r\n if (dataJson.columnAll.length > 0) {\r\n query = query + ` AND ${dataJson.columnAll}='All'`;\r\n }\r\n // console.log(\"queryquery\", query);\r\n\r\n const dataSource = await fetch(\r\n \"api/TemplateList/TemplateByid/LoadLogic/GetLoadDataFormControlRef\",\r\n {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n }\r\n )\r\n .then((response) => response.json())\r\n .then((data: any) => {\r\n console.log(\"dddddddddddddddddddsadddddata\", data);\r\n setFormLoading(false);\r\n\r\n onChangeRefValueTableForm(data.DT, dataJson.loadToField, row, col);\r\n });\r\n };\r\n const onDataAjaxLoadTable = async (\r\n row: any,\r\n col: any,\r\n autoloadvaluelabel: any,\r\n dataJson: any\r\n ) => {\r\n // console.log(\r\n // \"row, col, dataJson\",\r\n // row,\r\n // col,\r\n // JSON.stringify(dataJson),\r\n // autoloadvaluelabel\r\n // );\r\n\r\n const dataSource = await fetch(\r\n \"api/TemplateList/TemplateByid/LoadLogic/GetLoadDataFormControl\",\r\n {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n }\r\n )\r\n .then((response) => response.json())\r\n .then(\r\n (data) => {\r\n console.log(\"listLogicData\", data);\r\n\r\n onChangeAttributeTableForm(data, row, col, autoloadvaluelabel);\r\n }\r\n // console.log(\"load\", data)\r\n );\r\n };\r\n const onLoadLineApproveWithLogic = async (dataJson: any) => {\r\n // console.log(\"row, col, dataJson\", dataGroup);\r\n // const userData = JSON.parse(window.localStorage.getItem(\"userData\"));\r\n const empData = userData.employeeData;\r\n let _dataJson = dataJson;\r\n if (_dataJson.length > 0) {\r\n for (let i = 0; i < _dataJson.length; i++) {\r\n const data = _dataJson[i];\r\n }\r\n }\r\n const requestData = {\r\n employee: empData,\r\n ComCode: props.requestDetail.memoDetail.company_id,\r\n JsonCondition: JSON.stringify(dataJson),\r\n templateForm: {\r\n ...props.requestDetail.memoDetail,\r\n TemplateApproveId: 0,\r\n },\r\n lstTRNLineApprove: [],\r\n };\r\n\r\n // console.log(\"requestData\", requestData);\r\n\r\n await fetch(\r\n \"api/TemplateList/TemplateByid/LoadLogic/GetLoadLineApproveFormControl\",\r\n {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(requestData),\r\n }\r\n )\r\n .then((response) => response.json())\r\n .then(\r\n (data) => {\r\n // onChangeAttributeForm(data, row, col)\r\n let lineApproval = props.requestDetail.listApprovalDetails;\r\n let _data = data;\r\n let newData: any = [];\r\n let sequence = 0;\r\n let isHas = false;\r\n for (let i = 0; i < _data.length; i++) {\r\n const lineNew = _data[i];\r\n for (let j = 0; j < lineApproval.length; j++) {\r\n const line = lineApproval[j];\r\n if (line.emp_id === lineNew.emp_id) {\r\n newData.push(line);\r\n isHas = true;\r\n }\r\n }\r\n if (isHas) {\r\n isHas = false;\r\n } else {\r\n newData.push(lineNew);\r\n }\r\n }\r\n\r\n console.log(\"_dataLine\", newData, data);\r\n\r\n props.setRequestDetail((prevState: any) => ({\r\n ...prevState,\r\n listApprovalDetails: [...data],\r\n }));\r\n }\r\n // console.log(\"load\", data)\r\n );\r\n\r\n // return responseGroup;\r\n };\r\n const onDatareladToLoadData = async (dataGroup: any) => {\r\n // console.log(\"row, col, dataJson\", dataGroup);\r\n let responseGroup: any[] = [];\r\n setFormLoading(true);\r\n\r\n for (let i = 0; i < dataGroup.length; i++) {\r\n const dataSource: any = dataGroup[i];\r\n\r\n const dataJson = {\r\n logicid: dataSource.logicid,\r\n Key: dataSource.Key,\r\n Value: dataSource.Value,\r\n };\r\n await fetch(\r\n \"api/TemplateList/TemplateByid/LoadLogic/GetLoadDataFormControl\",\r\n {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n }\r\n )\r\n .then((response) => response.json())\r\n .then(\r\n (data) => {\r\n // console.log(\"dddddddddddddd\", data);\r\n setFormLoading(false);\r\n responseGroup.push({\r\n data: data,\r\n row: dataSource.row,\r\n col: dataSource.col,\r\n });\r\n // onChangeAttributeForm(data, row, col)\r\n }\r\n // console.log(\"load\", data)\r\n );\r\n }\r\n return responseGroup;\r\n };\r\n const onDataSourceLoadRelated = async (relateGroup: any, dataJson: any) => {\r\n // console.log(\"relateGroup, dataJson\", relateGroup, dataJson);\r\n // const dataJson = {\r\n // logicid,\r\n // Key: \"\",\r\n // Value: \"\",\r\n // };\r\n const dataSource = await fetch(\r\n \"api/TemplateList/TemplateByid/LoadLogic/GetLoadDataFormControl\",\r\n {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n }\r\n )\r\n .then((response) => response.json())\r\n .then((data) => {\r\n setFormLoading(false);\r\n\r\n onChangeValueForm(data, relateGroup);\r\n });\r\n };\r\n const onDataSourceLoad = async (dataGroup: any) => {\r\n // console.log(row, col, logicid);\r\n let responseGroup: any[] = [];\r\n console.log(\"table=>dataGroup\", dataGroup);\r\n\r\n for (let i = 0; i < dataGroup.length; i++) {\r\n const dataSource: any = dataGroup[i];\r\n\r\n const dataJson = {\r\n logicid: dataSource.data,\r\n Key: \"\",\r\n Value: \"\",\r\n };\r\n await fetch(\r\n \"api/TemplateList/TemplateByid/LoadLogic/GetLoadDataFormControl\",\r\n {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n }\r\n )\r\n .then((response) => response.json())\r\n .then(\r\n (data) => {\r\n responseGroup.push({\r\n data: data,\r\n row: dataSource.row,\r\n col: dataSource.col,\r\n });\r\n // onChangeAttributeForm(data, row, col)\r\n }\r\n // console.log(\"load\", data)\r\n );\r\n }\r\n return responseGroup;\r\n };\r\n const onTableDatareladToLoadData = async (\r\n row: any,\r\n advanceRow: any,\r\n advanceCol: any,\r\n tableRow: any,\r\n tableCol: any,\r\n tableActionCol: any,\r\n dataJson: any\r\n ) => {\r\n // console.log(\"row, col, dataJson tabel\", dataJson, loadToCol);\r\n let tableValue: any = row;\r\n // console.log(\"dataJson\", dataJson);\r\n\r\n const dataSource = await fetch(\r\n \"api/TemplateList/TemplateByid/LoadLogic/GetLoadDataFormControl\",\r\n {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n }\r\n )\r\n .then((response) => response.json())\r\n .then((data) => data);\r\n\r\n onChangeValueTableForm(\r\n row,\r\n dataSource,\r\n advanceRow,\r\n advanceCol,\r\n tableRow,\r\n tableCol,\r\n tableActionCol\r\n );\r\n\r\n // console.log(\"dsasdasdweweqweqweqewqwe\");\r\n\r\n // console.log(\r\n // \"tableValuetableValuetableValue\",\r\n // tableValue,\r\n // advanceRow,\r\n // advanceCol\r\n // );\r\n };\r\n const onChangeValueTableForm = (\r\n row: any,\r\n dataRequest: any,\r\n\r\n advanceRow: any,\r\n advanceCol: any,\r\n tableRow: any,\r\n tableCol: any,\r\n tableActionCol: any\r\n ) => {\r\n let _advanceForm = advanceForm;\r\n let _dataRequest = dataRequest;\r\n let _valueTable = valueTable;\r\n let rowTable: any = row;\r\n for (let i = 0; i < _dataRequest.length; i++) {\r\n const _colData = _dataRequest[i];\r\n const keyValues = Object.keys(_colData).map((key) => {\r\n const newKey = \"item\";\r\n return { [newKey]: _colData[key] };\r\n });\r\n _dataRequest[i] = keyValues[0];\r\n }\r\n rowTable[tableRow][tableActionCol] = _dataRequest;\r\n // console.log(\"eieieieieiei\", _dataRequest, rowTable, tableActionCol);\r\n setValueTable([...rowTable]);\r\n\r\n // _valueTable.push(_dataRequest[i]);\r\n };\r\n\r\n // console.log(\"onChangeValueTableForm\", _valueTable);\r\n\r\n const onChangeAttributeTableForm = (\r\n dataRequest: any,\r\n rowIdx: number,\r\n colIdx: number,\r\n autoloadvaluelabel: any\r\n ) => {\r\n let _advanceForm = advanceForm;\r\n let _dataRequest = dataRequest;\r\n // _dataRequest.splice(0, 0, { item: \"--select--\" });\r\n for (let i = 0; i < _dataRequest.length; i++) {\r\n const data = _dataRequest[i];\r\n const keyValues = Object.keys(data).map((key) => {\r\n const newKey = \"item\";\r\n return { [newKey]: data[key] };\r\n });\r\n _dataRequest[i] = keyValues[0];\r\n }\r\n // console.log(W\r\n // \"datatatatatat\",\r\n // _dataRequest,\r\n // autoloadvaluelabel,\r\n // colIdx,\r\n // rowIdx\r\n // );\r\n try {\r\n for (\r\n let i = 0;\r\n i <\r\n _advanceForm.items[rowIdx].layout[colIdx].template.attribute.column\r\n .length;\r\n i++\r\n ) {\r\n const col =\r\n _advanceForm.items[rowIdx].layout[colIdx].template.attribute.column[\r\n i\r\n ];\r\n if (col.label === autoloadvaluelabel) {\r\n _advanceForm.items[rowIdx].layout[colIdx].template.attribute.column[\r\n i\r\n ].control.template.attribute.items = _dataRequest;\r\n }\r\n }\r\n } catch (error) {}\r\n\r\n // if (_dataRequest.length > 0) {\r\n // _advanceForm.items[rowIdx].layout[colIdx].data = _dataRequest[0];\r\n\r\n props.setInformationMethodProp(JSON.stringify(_advanceForm));\r\n // }\r\n };\r\n const onChangeValueForm = (dataRequest: any, relateGroup: any) => {\r\n let _advanceForm = advanceForm;\r\n let _dataRequest = dataRequest;\r\n let res: any = [];\r\n for (let i = 0; i < _dataRequest.length; i++) {\r\n const data = _dataRequest[i];\r\n for (const [key, value] of Object.entries(data)) {\r\n for (let j = 0; j < relateGroup.length; j++) {\r\n const relate = relateGroup[j];\r\n if (relate.group.value === key) {\r\n _advanceForm.items[relate.row].layout[relate.col].data = {\r\n value: value,\r\n };\r\n // res.push({\r\n // label: relate.group.label,\r\n // value: value,\r\n // });\r\n }\r\n }\r\n }\r\n }\r\n\r\n // for (let i = 0; i < _dataRequest.length; i++) {\r\n // const data = _dataRequest[i];\r\n // const keyValues = Object.keys(data).map((key) => {\r\n // const newKey = \"value\";\r\n // return { [newKey]: data[key] };\r\n // });\r\n // _dataRequest[i] = keyValues[0];\r\n // }\r\n\r\n // if (_dataRequest.length > 0) {\r\n // _advanceForm.items[rowIdx].layout[colIdx].data = _dataRequest[0];\r\n\r\n props.setInformationMethodProp(JSON.stringify(_advanceForm));\r\n // }\r\n };\r\n const onChangeAttributeForm = (\r\n dataRequest: any,\r\n rowIdx: number,\r\n colIdx: number\r\n ) => {\r\n let _advanceForm = advanceForm;\r\n let _dataRequest = dataRequest;\r\n // _dataRequest.splice(0, 0, { item: \"--select--\" });\r\n\r\n for (let i = 0; i < _dataRequest.length; i++) {\r\n const data = _dataRequest[i];\r\n\r\n let keyValues = Object.keys(data).map((key) => {\r\n const newKey = \"item\";\r\n return { [newKey]: data[key] };\r\n });\r\n _dataRequest[i] = keyValues[0];\r\n }\r\n if (_dataRequest !== null) {\r\n let items = _dataRequest;\r\n const s = items.find((e: any) => e.item === \"-- Please Select -- \");\r\n if (s === undefined) {\r\n items.push({ item: \"-- Please Select -- \" });\r\n }\r\n _advanceForm.items[rowIdx].layout[colIdx].data.value =\r\n \"-- Please Select -- \";\r\n _dataRequest = items;\r\n }\r\n _advanceForm.items[rowIdx].layout[colIdx].template.attribute.items =\r\n _dataRequest;\r\n setFormLoading(false);\r\n\r\n props.setInformationMethodProp(JSON.stringify(_advanceForm));\r\n };\r\n const onChangeRefValueTableForm = (\r\n dataRequest: any,\r\n loadToField: any,\r\n advanceRow: any,\r\n advanceCol: any\r\n ) => {\r\n let _advanceForm = advanceForm;\r\n let _dataRequest: any = dataRequest;\r\n let _valueTable = valueTable;\r\n console.log(\"permittedValues\", _dataRequest, _advanceForm, advanceRow);\r\n\r\n const permittedValues = _dataRequest.map(function (value: any) {\r\n let res: any = {};\r\n for (let i = 0; i < loadToField.length; i++) {\r\n const field = loadToField[i];\r\n res[field[\"TBColumn\"]] = value[field[\"MSTColumn\"]];\r\n // ={ [field[\"TBColumn\"]]: value[field[\"MSTColumn\"]] }\r\n }\r\n return res;\r\n });\r\n\r\n let resRow: any = [];\r\n if (_advanceForm.items) {\r\n for (let i = 0; i < permittedValues.length; i++) {\r\n const perValue = permittedValues[i];\r\n let colData = new Array(\r\n _advanceForm?.items[advanceRow].layout[\r\n advanceCol\r\n ].template.attribute.column.length\r\n ).fill({ value: \"\" });\r\n for (const [key, value] of Object.entries(perValue)) {\r\n // const dataRef = permittedValues[i];\r\n for (\r\n let j = 0;\r\n j <\r\n _advanceForm?.items[advanceRow].layout[advanceCol].template\r\n .attribute.column.length;\r\n j++\r\n ) {\r\n const _tableCol =\r\n _advanceForm?.items[advanceRow].layout[advanceCol].template\r\n .attribute.column[j];\r\n\r\n if (_tableCol.label === key) {\r\n colData[j] = { value };\r\n }\r\n }\r\n }\r\n resRow.push(colData);\r\n }\r\n }\r\n if (_dataRequest.length > 0 && resRow.length > 0 && _advanceForm.items) {\r\n _advanceForm.items[advanceRow].layout[advanceCol].data.row = resRow;\r\n\r\n props.setInformationMethodProp(JSON.stringify(_advanceForm));\r\n }\r\n // console.log(\"onChangeValueTableForm\", _valueTable);\r\n };\r\n\r\n const onChangeEditForm = (\r\n dataRequest: any,\r\n rowIdx: number,\r\n colIdx: number\r\n ) => {\r\n let _advanceForm = advanceForm;\r\n let _dataRequest = dataRequest;\r\n if (_advanceForm) {\r\n _advanceForm.items[rowIdx].layout[colIdx].data = _dataRequest;\r\n\r\n if (_advanceForm.items[rowIdx].layout[colIdx].template.type !== \"an\") {\r\n if (!props.statusMemoDetail) {\r\n genAutoNum(_advanceForm.items);\r\n \r\n }\r\n }\r\n if (\r\n (_advanceForm.items[rowIdx].layout[colIdx].template.type === \"dd\" ||\r\n _advanceForm.items[rowIdx].layout[colIdx].template.type === \"c\" ||\r\n _advanceForm.items[rowIdx].layout[colIdx].template.type === \"cb\" ||\r\n _advanceForm.items[rowIdx].layout[colIdx].template.type === \"r\") &&\r\n props.isInitialLogic\r\n ) {\r\n onClickLogic(_advanceForm.items[rowIdx].layout[colIdx], rowIdx, colIdx);\r\n\r\n // onCheckLogic( _advanceForm.items[rowIdx].layout[colIdx].data)\r\n\r\n // checkLogic();\r\n }\r\n if (\r\n _advanceForm.items[rowIdx].layout[colIdx].template.type === \"c\" ||\r\n _advanceForm.items[rowIdx].layout[colIdx].template.type === \"tb\"\r\n ) {\r\n sumValue();\r\n }\r\n // if (_advanceForm.items[rowIdx].layout[colIdx].template.type === \"c\") {\r\n // if (\r\n // _advanceForm.items[rowIdx].layout[colIdx].template.attribute\r\n // .formula === \"\"\r\n // ) {\r\n // calNumberWithFormula(\r\n // _advanceForm.items[rowIdx].layout[colIdx],\r\n // rowIdx,\r\n // colIdx\r\n // );\r\n // }\r\n // }\r\n props.setInformationMethodProp(JSON.stringify(_advanceForm));\r\n }\r\n // setAdvanceForm(_advanceForm);\r\n };\r\n const onChangeEditFormTable = (\r\n columns: any,\r\n row: any,\r\n dataRequest: any,\r\n rowIdx: any,\r\n colIdx: any,\r\n tableRowIdx: any,\r\n tableColIdx: any\r\n ) => {\r\n let _advanceForm = advanceForm;\r\n let _dataRequest = dataRequest;\r\n let table = _advanceForm.items[tableRowIdx].layout[tableColIdx];\r\n\r\n const _logic: any = props.logic;\r\n\r\n for (let i = 0; i < _logic.length; i++) {\r\n const logic: any = _logic[i];\r\n\r\n if (logic.jsonvalue !== null) {\r\n if (logic.jsonvalue.length > 0) {\r\n const jsonObject = JSON.parse(_logic[i].jsonvalue);\r\n\r\n if (logic.logictype === \"datareladtoloaddata\") {\r\n let eiei: any = [];\r\n let labelAction: any = [];\r\n if (table.data.row !== null) {\r\n if (table.data.row.length > 0) {\r\n let dataJson: any = {};\r\n let tableActionCol = 0;\r\n\r\n for (let k = 0; k < jsonObject.labelactions.length; k++) {\r\n const labelaction = jsonObject.labelactions[k];\r\n\r\n if (labelaction.label === columns[colIdx].field) {\r\n dataJson = {\r\n Key: labelaction.label,\r\n Value: dataRequest.value,\r\n logicid: logic.logicid,\r\n };\r\n }\r\n }\r\n for (let k = 0; k < columns.length; k++) {\r\n const _column = columns[k];\r\n\r\n if (jsonObject.autoloadvaluelabel.label === _column.field) {\r\n tableActionCol = k;\r\n }\r\n }\r\n const data = onTableDatareladToLoadData(\r\n row,\r\n tableRowIdx,\r\n tableColIdx,\r\n rowIdx,\r\n colIdx,\r\n tableActionCol,\r\n dataJson\r\n );\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n };\r\n\r\n // useMemo(() => {\r\n // sumValue();\r\n // }, [tableSummary]);\r\n\r\n function onTableFooterChange(\r\n footerVal: any,\r\n footerRow: any,\r\n rowIdx: number,\r\n colIdx: number\r\n ) {\r\n let _advanceForm = advanceForm;\r\n\r\n _advanceForm.items[rowIdx].layout[\r\n colIdx\r\n ].template.attribute.footerTable.rows[footerRow].value = footerVal;\r\n props.setInformationMethodProp(JSON.stringify(_advanceForm));\r\n }\r\n\r\n async function genAutoNum(control: any[]) {\r\n if (autoNumFormat === undefined) {\r\n let formats: any[] = [];\r\n let digit: number = 0;\r\n control.forEach((item: any) => {\r\n item.layout.forEach((layout: any) => {\r\n if (layout.template.type === \"an\") {\r\n formats = layout.template.attribute.formats;\r\n digit = layout.template.digit;\r\n }\r\n });\r\n });\r\n setAutoNumDigit(digit);\r\n setAutoNumFormat(formats);\r\n } else {\r\n let str: string[] = [];\r\n let isCheck: boolean = false;\r\n control.forEach((item: any, rowIdx: number) => {\r\n item.layout.forEach(async (layout: any, colIdx: number) => {\r\n if (\r\n autoNumFormat.find((format: any) => {\r\n if (\r\n format.format.find((fm: any) => {\r\n if (fm.type !== \"pf\") {\r\n if (fm.label === layout.template.label) {\r\n return true;\r\n }\r\n }\r\n })\r\n ) {\r\n return true;\r\n }\r\n })\r\n ) {\r\n let choiceFormat: any = null;\r\n let requestBody: any = {};\r\n autoNumFormat.map((format: any) => {\r\n format.condition.map((con: any) => {\r\n if (\r\n con.label === layout.template.label &&\r\n con.value === layout.data.value\r\n ) {\r\n choiceFormat = format;\r\n }\r\n });\r\n });\r\n if (choiceFormat !== null) {\r\n choiceFormat.format.map((format: any) => {\r\n if (format.type === \"pf\") {\r\n if (!str.includes(format.label)) {\r\n str.push(format.label);\r\n }\r\n } else if (layout.template.label === format.label) {\r\n let value: string = layout.data.value;\r\n if (value !== null) {\r\n if (value.indexOf(\"(\") > 0 && value.indexOf(\")\")) {\r\n str.push(\r\n value.substring(\r\n value.indexOf(\"(\") + 1,\r\n value.indexOf(\")\")\r\n )\r\n );\r\n } else {\r\n str.push(value);\r\n }\r\n }\r\n if (str.length === format.length) {\r\n isCheck = true;\r\n }\r\n }\r\n });\r\n } else {\r\n autoNumFormat.map((ft: any) => {\r\n if (ft.condition.length === 0) {\r\n ft.format.map((format: any) => {\r\n if (format.type === \"pf\") {\r\n if (!str.includes(format.label)) {\r\n str.push(format.label);\r\n }\r\n } else if (layout.template.label === format.label) {\r\n let value: string = layout.data.value;\r\n if (value !== null) {\r\n if (value.indexOf(\"(\") > 0 && value.indexOf(\")\")) {\r\n str.push(\r\n value.substring(\r\n value.indexOf(\"(\") + 1,\r\n value.indexOf(\")\")\r\n )\r\n );\r\n } else {\r\n str.push(value);\r\n }\r\n }\r\n }\r\n if (str.length === ft.format.length) {\r\n if (\r\n !str.includes(\"--Select--\") &&\r\n !str.includes(\"--select--\")\r\n ) {\r\n isCheck = true;\r\n }\r\n }\r\n });\r\n }\r\n });\r\n }\r\n if (isCheck) {\r\n requestBody.Prefix = str.join(\"-\") + \"-\";\r\n requestBody.Digit = autoNumDigit;\r\n requestBody.TemplateId = props.templateID;\r\n if (!requestBody.Prefix.toLowerCase().includes(\"select\")) {\r\n const dd = await GetAutoNumber(requestBody);\r\n if (dd.Message !== undefined) {\r\n } else {\r\n control.forEach((item: any, rowIdx: number) => {\r\n item.layout.forEach((layout: any, colIdx: number) => {\r\n if (layout.template.type === \"an\") {\r\n if (layout.data.value !== dd) {\r\n onChangeEditForm({ value: dd }, rowIdx, colIdx);\r\n }\r\n }\r\n });\r\n });\r\n }\r\n }\r\n } else {\r\n control.forEach((item: any, rowIdx: number) => {\r\n item.layout.forEach((layout: any, colIdx: number) => {\r\n if (layout.template.type === \"an\") {\r\n if (layout.data.value !== null) {\r\n onChangeEditForm({ value: null }, rowIdx, colIdx);\r\n }\r\n }\r\n });\r\n });\r\n }\r\n }\r\n });\r\n });\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n if (rvsPosition !== undefined) {\r\n onChangeEditForm(\r\n { value: runningNumber },\r\n rvsPosition.rowIdx,\r\n rvsPosition.colIdx\r\n );\r\n }\r\n }, [runningNumber]);\r\n\r\n function sumValue() {\r\n if (advanceForm !== undefined && Object.keys(advanceForm).length !== 0) {\r\n let items = advanceForm.items;\r\n let sum = 0;\r\n let digit = 2;\r\n items.map((item: any, rowIdx: number) => {\r\n item.layout.map((layout: any, colIdx: number) => {\r\n if (layout.template.type === \"c\") {\r\n if (layout.template.attribute.summary === \"Y\") {\r\n digit = Number(layout.template.attribute.decimal);\r\n if (Number(layout.data.value) !== 0) {\r\n sum = sum + Number(layout.data.value);\r\n }\r\n }\r\n }\r\n });\r\n });\r\n tableSummary.map((table: any) => {\r\n if (table.total !== 0) {\r\n sum = sum + table.total;\r\n }\r\n });\r\n\r\n if (sum !== summary) {\r\n setSummary(sum);\r\n props.setSummary(sum.toFixed(digit));\r\n }\r\n }\r\n }\r\n\r\n function updateTableSum(tableName: string, tableSum: number) {\r\n if (tableSummary.length > 0) {\r\n const ss = JSON.stringify(tableSummary);\r\n let sumTable = JSON.parse(ss);\r\n\r\n if (tableSum !== 0) {\r\n sumTable.map((table: any) => {\r\n if (table.tableLabel === tableName) {\r\n table.total = tableSum;\r\n }\r\n });\r\n if (\r\n advanceForm !== undefined &&\r\n Object.keys(advanceForm).length !== 0\r\n ) {\r\n let items = advanceForm.items;\r\n let sum = 0;\r\n let digit = 2;\r\n items.map((item: any, rowIdx: number) => {\r\n item.layout.map((layout: any, colIdx: number) => {\r\n if (layout.template.type === \"c\") {\r\n if (layout.template.attribute.summary === \"Y\") {\r\n digit = Number(layout.template.attribute.decimal);\r\n if (Number(layout.data.value) !== 0) {\r\n sum = sum + Number(layout.data.value);\r\n }\r\n }\r\n }\r\n });\r\n });\r\n sumTable.map((table: any) => {\r\n if (!isNaN(table.total)) {\r\n sum = sum + table.total;\r\n }\r\n });\r\n\r\n if (!isNaN(sum)) {\r\n setSummary(sum);\r\n props.setSummary(sum.toFixed(digit));\r\n }\r\n }\r\n setTableSummary([...sumTable]);\r\n } else {\r\n setSummary(0);\r\n props.setSummary(`0.00`);\r\n }\r\n }\r\n }\r\n\r\n function calNumberWithFormula(temp: any, rowIdx: number, colIdx: number) {\r\n try {\r\n let items = advanceForm.items;\r\n let formu: string = temp.template.attribute.formula;\r\n\r\n let total = 0;\r\n if (formu !== \"\" && formu !== null) {\r\n items.map((item: any, rowIdx: number) => {\r\n item.layout.map((layout: any, colIdx: number) => {\r\n if (formu.includes(\"sum\")) {\r\n const match =\r\n formu\r\n .substring(formu.indexOf(\"(\"), formu.indexOf(\")\"))\r\n .match(/[a-zA-Z-'`ก-๏0-9]+[ a-zA-Z-'`ก-๏0-9]/g) || [];\r\n\r\n if (match.includes(layout.template.label)) {\r\n const selCol = match[1];\r\n layout.template.attribute.column.map(\r\n (col: any, colIdx: number) => {\r\n if (selCol === col.label) {\r\n layout.data?.row?.map((row: any, rowIdx: number) => {\r\n total += Number(row[colIdx].value);\r\n });\r\n }\r\n }\r\n );\r\n }\r\n } else {\r\n const match =\r\n formu.match(/[a-zA-Z' `ก-๏0-9]+[ a-zA-Z '`ก-๏0-9]/g) || [];\r\n\r\n if (match.includes(layout.template.label)) {\r\n if (layout.data.value !== null) {\r\n formu = formu.replace(\r\n layout.template.label,\r\n layout.data.value.toString()\r\n );\r\n } else {\r\n formu = formu.replace(layout.template.label, \"0\");\r\n }\r\n }\r\n\r\n var regExp = /[a-zA-Zก-๏]/g;\r\n if (!regExp.test(formu)) {\r\n total = eval(formu);\r\n }\r\n }\r\n });\r\n });\r\n\r\n if (total !== null && total !== NaN) {\r\n if (Number(temp.data.value) !== total) {\r\n onChangeEditForm(\r\n { value: total.toFixed(Number(temp.template.attribute.decimal)) },\r\n rowIdx,\r\n colIdx\r\n );\r\n }\r\n } else {\r\n onChangeEditForm({ value: 0 }, rowIdx, colIdx);\r\n }\r\n }\r\n } catch (error) {\r\n console.log(\"number=>error\", error);\r\n }\r\n }\r\n\r\n const renderControl = async (form: any) => {\r\n setFormComponent([...controlComponent]);\r\n\r\n // setFormLoading(true);\r\n // const control = form.items;\r\n // // console.log(control);\r\n // // const show: any[] = props.showControl;\r\n // let controlComponent: any = [];\r\n // const _errorResult = props.errorResult || [];\r\n // let numFormulas: any[] = [];\r\n // let dd: string = \"set-padding-core-control\";\r\n // // if (props.showControl?.length > 0) {\r\n // for (let i = 0; i < control.length; i++) {\r\n // const _layout = control[i].layout;\r\n // const _layoutLength = _layout.length;\r\n // const grid_size = 12 / _layoutLength;\r\n // let _colText = 0;\r\n // let _colAction = 0;\r\n // if (_layoutLength == 1) {\r\n // _colText = 2;\r\n // _colAction = 10;\r\n // } else if (_layoutLength == 2) {\r\n // _colText = 2;\r\n // _colAction = 4;\r\n // }\r\n // let grid_row = (\r\n // \r\n // {_layout.map((_template: any, idx: any) => {\r\n // const error_corecontroll = _errorResult.find(\r\n // (_data: any, _idx: any) => _data.row === i && _data.col === idx\r\n // );\r\n // if (!onChangeEditForm) {\r\n // return;\r\n // }\r\n // if (\r\n // _template.template.type === \"l\"\r\n // // &&\r\n // // props.showControl[i][idx] !== false\r\n // ) {\r\n // return (\r\n // \r\n // );\r\n // }\r\n // if (\r\n // _template.template.type === \"c\"\r\n // // &&\r\n // // props.showControl[i][idx] !== false\r\n // ) {\r\n // if (_template.template.attribute.formula !== \"\") {\r\n // numFormulas.push({\r\n // label: _template.template.label,\r\n // formula: _template.template.attribute.formula,\r\n // });\r\n // setNumFormulas(numFormulas);\r\n // }\r\n // if (_template.template.attribute.summary === \"Y\") {\r\n // setIsShowSummary(true);\r\n // }\r\n // return (\r\n // \r\n // );\r\n // }\r\n // if (_template.template.type === \"d\") {\r\n // return (\r\n // \r\n // );\r\n // }\r\n // if (_template.template.type === \"cb\") {\r\n // return (\r\n // \r\n // );\r\n // }\r\n // if (_template.template.type === \"r\") {\r\n // return (\r\n // \r\n // );\r\n // }\r\n // if (_template.template.type === \"bt\") {\r\n // return (\r\n // \r\n // );\r\n // }\r\n // if (_template.template.type === \"an\") {\r\n // return (\r\n // \r\n // );\r\n // }\r\n // if (_template.template.type === \"rvs\") {\r\n // setRvsPosition({ rowIdx: i, colIdx: idx });\r\n // return (\r\n // \r\n // );\r\n // }\r\n // if (_template.template.type === \"tb\") {\r\n // if (_template.template.attribute.column) {\r\n // for (\r\n // let i = 0;\r\n // i < _template.template.attribute.column.length;\r\n // i++\r\n // ) {\r\n // const column = _template.template.attribute.column[i];\r\n // if (column.control.template.type === \"c\") {\r\n // if (column.control.template.attribute.summary === \"Y\") {\r\n // setIsShowSummary(true);\r\n // }\r\n // }\r\n // }\r\n // }\r\n // return (\r\n // \r\n // );\r\n // }\r\n // if (_template.template.type === \"ed\") {\r\n // return (\r\n // \r\n // \r\n // \r\n // );\r\n // }\r\n // if (_template.template.type === \"at\") {\r\n // return (\r\n // \r\n // );\r\n // }\r\n // if (\r\n // _template.template.type === \"t\"\r\n // // &&\r\n // // props.showControl[i][idx] !== false\r\n // ) {\r\n // dd = \"set-padding-core-control\";\r\n // // console.log(\r\n // // \"showControl[i][idx]\",\r\n // // _template.template.label,\r\n // // showControl[i][idx],\r\n // // i,\r\n // // idx,\r\n // // showControl\r\n // // );\r\n // return (\r\n // \r\n // );\r\n // }\r\n // if (_template.template.type === \"ta\") {\r\n // return (\r\n // \r\n // );\r\n // }\r\n // if (_template.template.type === \"dd\") {\r\n // if (_template.template.attribute.items !== null) {\r\n // let items = _template.template.attribute.items;\r\n // const value = _template.data.value;\r\n // if (items.find((e: any) => e.item === value)) {\r\n // // console.log(\"dropdown=>true\");\r\n // } else {\r\n // // console.log(\"dropdown=>false\");\r\n // }\r\n // }\r\n // // console.log(\"dropdown=>\" + _template.template.label, _template);\r\n // return (\r\n // \r\n // );\r\n // }\r\n // if (_template.template.type === \"im\") {\r\n // return (\r\n // \r\n // );\r\n // }\r\n // if (_template.template.type === \"em\") {\r\n // return (\r\n // \r\n // );\r\n // }\r\n // })}\r\n // \r\n // );\r\n // if (!grid_row.props.children.every((e: any) => e === undefined)) {\r\n // controlComponent.push(grid_row);\r\n // }\r\n // }\r\n // // controlComponent.push(\r\n // //
\r\n // // \r\n // //
\r\n // // );\r\n // setFormComponent([...controlComponent]);\r\n // // }\r\n // // setFormLoading(false);\r\n };\r\n\r\n return (\r\n
\r\n {formLoading && (\r\n
\r\n \r\n
\r\n )}\r\n {formComponent}\r\n {isShowSummary && (\r\n
\r\n \r\n
\r\n )}\r\n
\r\n );\r\n};\r\n","import { InputNumber } from \"primereact/inputnumber\";\r\nimport React, { useEffect } from \"react\";\r\nimport { InputTextComponents } from \"../../InputTextComponents/InputTextComponents\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport \"./SummaryComponent.css\";\r\ninterface Props {\r\n headtext: string;\r\n subtext: string;\r\n summaryProps?: any;\r\n}\r\n\r\nexport const SummaryComponent = (props: Props) => {\r\n return (\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n );\r\n};\r\n","import moment from \"moment\";\r\nimport {\r\n IAutoNumberAttibute,\r\n IAutoNumberFormat,\r\n} from \"../IRequestModel/IAutoNumberFormat\";\r\nimport { IMemoDetailModel } from \"../IRequestModel/IMemoDetailModel\";\r\nimport {\r\n GetAutoNumber,\r\n onDatareladToLoadData,\r\n} from \"../Services/RequestControlService\";\r\nimport { IUserModel } from \"../IRequestModel/IUserModel\";\r\nexport async function genAutoNum(\r\n _control: any,\r\n autoNumFormat: IAutoNumberAttibute,\r\n template_id: any,\r\n status: any,\r\n isCopy: boolean = false\r\n) {\r\n try {\r\n if (autoNumFormat.formats.length > 0) {\r\n let autoNumberAttibute: IAutoNumberAttibute = autoNumFormat;\r\n let str: string[] = [];\r\n let isCheck: boolean = false;\r\n let requestBody: any = {};\r\n let formats: IAutoNumberFormat[] = autoNumberAttibute.formats;\r\n let choiceFormat = null;\r\n let tempLabels: string[] = [];\r\n let tempValues: string[] = [];\r\n\r\n for (let i = 0; i < formats.length; i++) {\r\n if (formats[i].condition.length > 0) {\r\n const con = formats[i].condition;\r\n for (let j = 0; j < con.length; j++) {\r\n _control.forEach((item: any) => {\r\n item.layout.forEach((layout: any) => {\r\n if (con[j].label === layout.template.label) {\r\n let tempValue = layout.data.value;\r\n\r\n if (tempValue === null && layout.template.type === \"dd\") {\r\n layout.data.value =\r\n layout?.template?.attribute?.items[0]?.item ||\r\n \"--select--\";\r\n }\r\n if (con[j].value === layout.data.value) {\r\n if (!tempLabels.includes(con[j].label)) {\r\n tempLabels = [...tempLabels, con[j].label];\r\n tempValues = [...tempValues, con[j].value];\r\n }\r\n }\r\n }\r\n });\r\n });\r\n }\r\n }\r\n }\r\n\r\n for (let i = 0; i < formats.length; i++) {\r\n if (choiceFormat != null) {\r\n break;\r\n }\r\n\r\n if (formats[i].condition.length > 0) {\r\n const con = formats[i].condition;\r\n\r\n if (tempLabels.length > 0) {\r\n for (let j = 0; j < con.length; j++) {\r\n if (\r\n tempLabels.includes(con[j].label) &&\r\n tempValues.includes(con[j].value)\r\n ) {\r\n choiceFormat = formats[i];\r\n }\r\n if (choiceFormat !== null) break;\r\n }\r\n }\r\n } else {\r\n choiceFormat = formats[i];\r\n }\r\n }\r\n\r\n if (choiceFormat !== null) {\r\n choiceFormat.format.map((format: any) => {\r\n if (format.type) {\r\n if (format.type === \"pf\") {\r\n if (!str.includes(format.label)) {\r\n str.push(format.label);\r\n }\r\n } else if (format.type === \"datetime\") {\r\n const formattedYear = moment().format(format.label);\r\n str.push(formattedYear);\r\n } else if (format.type === \"ddl\") {\r\n _control.forEach((item: any) => {\r\n item.layout.forEach(async (layout: any) => {\r\n if (layout.template.label === format.label) {\r\n let value: string = layout.data.value;\r\n let newPosition = format.position;\r\n\r\n if (value !== null) {\r\n if (format.condition === \"Split\") {\r\n let newFormat = value.split(format.symbol);\r\n for (let i = 0; i < newFormat.length; i++) {\r\n newPosition = newPosition.replace(\r\n new RegExp(\"\\\\$\\\\{\" + (i + 1) + \"\\\\}\", \"gi\"),\r\n newFormat[i]\r\n );\r\n }\r\n if (\r\n newPosition.indexOf(\"(\") > -1 &&\r\n newPosition.indexOf(\")\")\r\n ) {\r\n str.push(\r\n newPosition.substring(\r\n newPosition.indexOf(\"(\") + 1,\r\n newPosition.indexOf(\")\")\r\n )\r\n );\r\n } else {\r\n str.push(newPosition);\r\n }\r\n } else {\r\n if (value?.indexOf(\"(\") > -1 && value?.indexOf(\")\")) {\r\n str.push(\r\n value.substring(\r\n value.indexOf(\"(\") + 1,\r\n value.indexOf(\")\")\r\n )\r\n );\r\n } else {\r\n str.push(value);\r\n }\r\n }\r\n }\r\n }\r\n });\r\n });\r\n }\r\n }\r\n });\r\n\r\n if (str.length === choiceFormat.format.length) {\r\n if (\r\n !str.includes(\"--select--\") &&\r\n !str.includes(\"-- select --\") &&\r\n !str.includes(\"-- please select --\") &&\r\n !str.includes(\"--- please select ---\") &&\r\n !str.includes(\"--please select--\") &&\r\n !str.includes(\"---please select---\") &&\r\n !str.includes(\"--Select--\") &&\r\n !str.includes(\"-- Select --\") &&\r\n !str.includes(\"-- Please Select --\") &&\r\n !str.includes(\"--- Please Select ---\") &&\r\n !str.includes(\"--Please Select--\") &&\r\n !str.includes(\"---Please Select---\")\r\n ) {\r\n isCheck = true;\r\n }\r\n }\r\n }\r\n\r\n if (\r\n _control[autoNumberAttibute.rowIndex].layout[\r\n autoNumberAttibute.colIndex\r\n ].isShow\r\n ) {\r\n if (status === \"New Request\" || isCopy) {\r\n if (isCheck) {\r\n const showSymbol = autoNumFormat.showSymbol;\r\n let prefix = \"\";\r\n if (showSymbol) {\r\n prefix = str.join(\"-\") + \"-\";\r\n } else {\r\n prefix = str.join(\"\");\r\n }\r\n autoNumFormat.fisrtPreix = prefix;\r\n requestBody.Prefix = prefix;\r\n requestBody.Digit = autoNumFormat.digit;\r\n requestBody.TemplateId = template_id;\r\n requestBody.Status = status;\r\n requestBody.Label =\r\n _control[autoNumberAttibute.rowIndex].layout[\r\n autoNumberAttibute.colIndex\r\n ].template.label;\r\n const dd = await GetAutoNumber(requestBody);\r\n if (dd.Message !== undefined) {\r\n } else {\r\n _control[autoNumberAttibute.rowIndex].layout[\r\n autoNumberAttibute.colIndex\r\n ].data.value = dd;\r\n }\r\n } else if (!isCheck) {\r\n _control[autoNumberAttibute.rowIndex].layout[\r\n autoNumberAttibute.colIndex\r\n ].data.value = \"\";\r\n }\r\n }\r\n } else {\r\n _control[autoNumberAttibute.rowIndex].layout[\r\n autoNumberAttibute.colIndex\r\n ].data.value = \"\";\r\n }\r\n }\r\n } catch (error) {\r\n console.error(\"auto=>error\", error);\r\n }\r\n return _control;\r\n}\r\n\r\nexport const callGenAutoNumber = (\r\n autoNumFormat: IAutoNumberAttibute,\r\n controlTemplate: any\r\n) => {\r\n let callAutoNumber = false;\r\n try {\r\n for (let i = 0; i < autoNumFormat.formats.length; i++) {\r\n if (autoNumFormat.formats[i].format.length > 0) {\r\n const format = autoNumFormat.formats[i].format;\r\n callAutoNumber =\r\n format.find((e) => e.label === controlTemplate.label) !== undefined;\r\n if (callAutoNumber) {\r\n break;\r\n }\r\n }\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n return callAutoNumber;\r\n};\r\n\r\nexport function getValueControl(\r\n controlID: string,\r\n memoDetail: IMemoDetailModel\r\n) {\r\n let strValue: string = \"\";\r\n\r\n switch (controlID.toLowerCase()) {\r\n case \"requestor id\":\r\n strValue = memoDetail.requestor.EmployeeId.toString();\r\n break;\r\n case \"requestor code\":\r\n strValue = memoDetail.requestor.EmployeeCode;\r\n break;\r\n case \"requestor name\":\r\n strValue = memoDetail.requestor.NameEn;\r\n break;\r\n case \"requestor email\":\r\n strValue = memoDetail.requestor.Email;\r\n break;\r\n case \"requestor position\":\r\n strValue = memoDetail.requestor.PositionNameEn;\r\n break;\r\n case \"requestor department\":\r\n strValue = memoDetail.requestor.DepartmentNameEn;\r\n break;\r\n default:\r\n // handle default case here\r\n break;\r\n }\r\n\r\n return strValue;\r\n}\r\n\r\nexport const getDefValueInTemplate = (template: any) => {\r\n const templateType = template?.type;\r\n let returnValue: any = null;\r\n if (templateType === \"t\" || templateType === \"ta\" || templateType === \"c\") {\r\n returnValue = template.attribute.default;\r\n } else if (templateType === \"dd\" || templateType === \"r\") {\r\n if (template.attribute.items && template.attribute.items.length > 0) {\r\n const selectedItem = template.attribute.items.find(\r\n (e: any) => e.checked === \"Y\"\r\n );\r\n\r\n returnValue = selectedItem?.item || template.attribute.items[0].item;\r\n if (templateType === \"r\") {\r\n returnValue = selectedItem?.item || \"\";\r\n }\r\n } else {\r\n returnValue = \"-- Please Select --\";\r\n }\r\n // DefaultCalendar\r\n } else if (templateType === \"cb\") {\r\n if (template.attribute.items && template.attribute.items.length > 0) {\r\n const selectedItem = template.attribute.items.filter(\r\n (e: any) => e.check === \"Y\"\r\n );\r\n\r\n returnValue = selectedItem.map((e: any) => e.item).join(\",\");\r\n }\r\n } else if (templateType === \"d\") {\r\n if (template.attribute.defaultType === \"Days\") {\r\n let defaultDate = parseInt(template.attribute.default);\r\n let defValue = moment(Date.now())\r\n .add(defaultDate, \"days\")\r\n .format(\"DD MMM YYYY\");\r\n returnValue = defValue;\r\n }\r\n }\r\n\r\n return returnValue;\r\n};\r\n\r\nexport function getRefInforValue(\r\n controlID: string,\r\n memoDetail: IMemoDetailModel,\r\n userData: IUserModel,\r\n defValue: string = \"\"\r\n) {\r\n let strValue: string = defValue;\r\n if (memoDetail) {\r\n switch (controlID) {\r\n case \"Requestor_Employee_code\":\r\n strValue = memoDetail.requestor?.EmployeeCode;\r\n break;\r\n case \"Requestor_NameEn\":\r\n strValue = memoDetail.requestor?.NameEn;\r\n break;\r\n case \"Requestor_NameTh\":\r\n strValue = memoDetail.requestor?.NameTh;\r\n break;\r\n case \"Requestor_PositionEn\":\r\n strValue = memoDetail.requestor?.PositionNameEn;\r\n break;\r\n case \"Requestor_PositonEn\":\r\n strValue = memoDetail.requestor?.PositionNameEn;\r\n break;\r\n case \"Requestor_PositionTh\":\r\n strValue = memoDetail.requestor?.PositionNameTh;\r\n break;\r\n case \"Requestor_PositonTh\":\r\n strValue = memoDetail.requestor?.PositionNameTh;\r\n break;\r\n case \"Requestor_DivisionEn\":\r\n strValue = memoDetail.requestor?.DivisionNameEn;\r\n break;\r\n case \"Requestor_DivisionTh\":\r\n strValue = memoDetail.requestor?.DivisionNameTh;\r\n break;\r\n case \"Requestor_DepartmentEn\":\r\n strValue = memoDetail.requestor?.DepartmentNameEn;\r\n break;\r\n case \"Requestor_DepartmentTh\":\r\n strValue = memoDetail.requestor?.DepartmentNameTh;\r\n break;\r\n case \"Requestor_Email\":\r\n strValue = memoDetail.requestor?.Email;\r\n break;\r\n case \"Actor_Employee_code\":\r\n strValue = userData?.EmployeeCode;\r\n break;\r\n case \"Actor_NameEn\":\r\n strValue = userData?.NameEn;\r\n break;\r\n case \"Actor_NameTh\":\r\n strValue = userData?.NameTh;\r\n break;\r\n case \"Actor_PositionEn\":\r\n strValue = userData?.PositionNameEn;\r\n break;\r\n case \"Actor_PositionTh\":\r\n strValue = userData?.PositionNameTh;\r\n break;\r\n case \"Actor_PositonEn\":\r\n strValue = userData?.PositionNameEn;\r\n break;\r\n case \"Actor_PositonTh\":\r\n strValue = userData?.PositionNameTh;\r\n break;\r\n case \"Actor_DivisionEn\":\r\n strValue = userData?.DivisionNameEn;\r\n break;\r\n case \"Actor_DivisionTh\":\r\n strValue = userData?.DivisionNameTh;\r\n break;\r\n case \"Actor_DepartmentEn\":\r\n strValue = userData?.DepartmentNameEn;\r\n break;\r\n case \"Actor_DepartmentTh\":\r\n strValue = userData?.DepartmentNameTh;\r\n break;\r\n case \"Actor_Email\":\r\n strValue = userData?.Email;\r\n break;\r\n case \"Company_Company id\":\r\n strValue = memoDetail?.company_id?.toString();\r\n break;\r\n case \"Company_Company name\":\r\n strValue = memoDetail.company_id?.toString();\r\n break;\r\n default:\r\n // handle default case here\r\n\r\n break;\r\n }\r\n }\r\n return strValue;\r\n}\r\n\r\nexport const dataReleteToDD = async (conditions: any[]) => {\r\n const res = await onDatareladToLoadData(conditions);\r\n return res;\r\n};\r\nexport function balanceParentheses(expression: string) {\r\n let stack = [];\r\n let result = [];\r\n\r\n // First pass: Remove unmatched closing parentheses\r\n for (let char of expression) {\r\n if (char === \"(\") {\r\n stack.push(char);\r\n result.push(char);\r\n } else if (char === \")\") {\r\n if (stack.length > 0) {\r\n stack.pop();\r\n result.push(char);\r\n }\r\n } else {\r\n result.push(char);\r\n }\r\n }\r\n\r\n // Second pass: Remove unmatched opening parentheses\r\n stack = [];\r\n let finalResult = [];\r\n\r\n for (let i = result.length - 1; i >= 0; i--) {\r\n let char = result[i];\r\n if (char === \")\") {\r\n stack.push(char);\r\n finalResult.push(char);\r\n } else if (char === \"(\") {\r\n if (stack.length > 0) {\r\n stack.pop();\r\n finalResult.push(char);\r\n }\r\n } else {\r\n finalResult.push(char);\r\n }\r\n }\r\n\r\n // Reverse to restore the correct order\r\n return finalResult.reverse().join(\"\");\r\n}\r\n\r\nexport const calculateAdvanceForm = (form: any) => {\r\n let tableSums: any = {};\r\n\r\n for (let i = 0; i < form.length; i++) {\r\n let layouts = form[i];\r\n for (let j = 0; j < layouts.layout.length; j++) {\r\n const layout = layouts.layout[j];\r\n if (layout.template.type === \"c\") {\r\n calCulateFunc(layout, tableSums);\r\n } else if (layout.template.type === \"tb\") {\r\n calCulateInTableFunc(layout, tableSums);\r\n }\r\n }\r\n }\r\n console.log({ form });\r\n};\r\n\r\nconst calCulateInTableFunc = (layout: any, tableSums: any) => {\r\n try {\r\n if (layout.template.formula === \"\") return;\r\n const formulas = layout.template.formula.split(\"|\");\r\n const columns: { label: string; attribute: any; type: string }[] =\r\n layout.template.attribute.column.map((e: any) => {\r\n return {\r\n label: e.label,\r\n attribute: e.control.template.attribute,\r\n type: e.control.template.type,\r\n };\r\n });\r\n const rowDatas = layout?.data?.row ?? [];\r\n tableSums[layout.template.label] = {};\r\n rowDatas.forEach((rowData: any, rowIdx: number) => {\r\n formulas.map((formula: string) => {\r\n try {\r\n let resulstField = formula.split(\"=\");\r\n let formu: string = resulstField[0];\r\n let resultColIdx = -1;\r\n let resultDecimal = 0;\r\n let result: number = 0;\r\n\r\n if (formu.startsWith(\"Min\") || formu.startsWith(\"Max\")) {\r\n const operator = formu.startsWith(\"Max\") ? \"Max\" : \"Min\";\r\n const fields = formu\r\n .substring(formu.indexOf(\"(\") + 1, formu.lastIndexOf(\")\"))\r\n .split(\",\");\r\n\r\n fields.forEach((field) => {\r\n columns.forEach((col: any, colIdx: number) => {\r\n if (field === col.label) {\r\n const value = Number(\r\n rowData[col.label]?.toString()?.replaceAll(\",\", \"\")\r\n );\r\n if (!Number.isNaN(value))\r\n if (\r\n result === 0 ||\r\n (operator === \"Max\" && value > result) ||\r\n (operator === \"Min\" && value < result)\r\n ) {\r\n result = value;\r\n }\r\n }\r\n if (col.label === resulstField[1]) {\r\n resultColIdx = colIdx;\r\n resultDecimal = Number(col.control.attribute.decimal);\r\n }\r\n });\r\n });\r\n } else if (formu.startsWith(\"diffdate\")) {\r\n const fields = formu\r\n .substring(formu.indexOf(\"(\") + 1, formu.lastIndexOf(\")\"))\r\n .split(\",\");\r\n\r\n let firstDate = moment(rowData[fields[0]]);\r\n let lastDate = moment(rowData[fields[1]]);\r\n let res = firstDate.diff(lastDate, \"days\");\r\n if (res >= 1) {\r\n res += 1;\r\n }\r\n\r\n result = res;\r\n const resCol = columns.find(\r\n (col: any) => col.label === resulstField[1]\r\n );\r\n resultDecimal = Number(resCol?.attribute.decimal);\r\n } else if (formu.startsWith(\"difftime\")) {\r\n const fields = formu\r\n .substring(formu.indexOf(\"(\") + 1, formu.lastIndexOf(\")\"))\r\n .split(\",\");\r\n\r\n let firstDate = moment(rowData[fields[0]], \"h.mm\");\r\n let lastDate = moment(rowData[fields[1]], \"h.mm\");\r\n let res = firstDate.diff(lastDate, \"minutes\");\r\n\r\n const hours = Math.trunc(res / 60);\r\n const remainingMinutes = res % 60;\r\n let formattedTime =\r\n res <= -1 && res >= -9\r\n ? `-0.0${Math.abs(remainingMinutes)}`\r\n : hours === -0 && res < -10\r\n ? `-${hours}.${Math.abs(remainingMinutes)}`\r\n : res < -10\r\n ? `${hours}.${Math.abs(remainingMinutes)}`\r\n : `${hours}.${remainingMinutes}`;\r\n\r\n result = Number(formattedTime);\r\n const resCol = columns.find(\r\n (col: any) => col.label === resulstField[1]\r\n );\r\n resultDecimal = Number(resCol?.attribute.decimal);\r\n } else {\r\n const allField =\r\n formu.match(/(?:get\\([^+\\-*\\/=]+\\)|[^+\\-*\\/=()\\[\\]{}]+)/g) || [];\r\n allField.forEach((field: string) => {\r\n if (field.startsWith(\"get\")) {\r\n const labels = field\r\n .substring(field.indexOf(\"(\") + 1, field.lastIndexOf(\")\"))\r\n .split(\",\");\r\n if (labels.length > 0) {\r\n }\r\n } else {\r\n try {\r\n columns.forEach(\r\n (\r\n col: { label: string; attribute: any },\r\n colIdx: number\r\n ) => {\r\n if (field === col.label) {\r\n const decimal = Number(col.attribute.decimal);\r\n console.log(col);\r\n console.log(decimal);\r\n\r\n const value = Number(\r\n rowData[colIdx].value?.toString()?.replaceAll(\",\", \"\")\r\n ).toFixed(decimal);\r\n formu = formu.replace(\r\n col.label,\r\n value !== \"NaN\" ? value : Number(0).toFixed(decimal)\r\n );\r\n }\r\n if (col.label === resulstField[1]) {\r\n resultColIdx = colIdx;\r\n resultDecimal = Number(col.attribute.decimal);\r\n }\r\n }\r\n );\r\n } catch (error) {\r\n console.error(formu + \"=>\", error);\r\n }\r\n }\r\n });\r\n }\r\n let dd = formu.replaceAll(\",\", \"\");\r\n result = eval(dd);\r\n rowData[resultColIdx].value = result?.toFixed(resultDecimal);\r\n\r\n if (rowDatas) {\r\n columns.forEach(\r\n (\r\n col: { label: string; attribute: any; type: string },\r\n colIdx: number\r\n ) => {\r\n if (col.type === \"c\") {\r\n const decimal = Number(col.attribute.decimal);\r\n let colSum: number = 0;\r\n rowDatas.forEach((e: any) => {\r\n const val = Number(e[colIdx].value);\r\n\r\n if (!Number.isNaN(val)) {\r\n colSum = colSum + val;\r\n }\r\n });\r\n if (tableSums[layout.template.label]) {\r\n tableSums[layout.template.label][col.label] = colSum;\r\n }\r\n }\r\n }\r\n );\r\n }\r\n } catch (error) {\r\n console.error(formula + \"=>\", error);\r\n }\r\n });\r\n });\r\n } catch (error) {\r\n console.error(\"table=>cal=>error\", error);\r\n }\r\n};\r\n\r\nconst calCulateFunc = (layout: any, tableSum: any) => {\r\n try {\r\n const formula = layout.template.attribute.formula;\r\n if (formula === \"\") return;\r\n let total: number = NaN;\r\n if (formula.startsWith(\"diffdate\")) {\r\n let resulstField = formula.split(\"=\");\r\n let variables = resulstField[0];\r\n const selCol = variables\r\n .substring(variables.indexOf(\"(\") + 1, variables.lastIndexOf(\")\"))\r\n .split(\",\");\r\n // let match: any = resulstField[0].match(/[^+%\\-\\*\\/=)(]+/g) || [];\r\n let datepicker1: { [x: string]: moment.Moment } = {\r\n [selCol[0]]: moment(),\r\n [selCol[1]]: moment(),\r\n };\r\n\r\n total = datepicker1[selCol[0]].diff(datepicker1[selCol[1]], \"days\");\r\n if (total >= 1) {\r\n total += 1;\r\n }\r\n } else if (formula.startsWith(\"difftime\")) {\r\n let resulstField = formula.split(\"=\");\r\n let variables = resulstField[0];\r\n const selCol = variables\r\n .substring(variables.indexOf(\"(\") + 1, variables.lastIndexOf(\")\"))\r\n .split(\",\");\r\n let formattedTime: string = \"\";\r\n\r\n total = Number(formattedTime);\r\n } else {\r\n let resulstField = formula.split(\"=\");\r\n\r\n let match: any = resulstField[0].match(/[^+%\\-\\*\\/=)(]+/g) || [];\r\n\r\n match.forEach((formu: any) => {\r\n if (formu?.includes(\"sum\")) {\r\n try {\r\n const selCol = formu\r\n .substring(formu.indexOf(\"(\") + 1, formu.lastIndexOf(\")\"))\r\n .split(\";\");\r\n\r\n if (tableSum[selCol[0]]) {\r\n layout.data.value = tableSum[selCol[0]][selCol[1]] ?? 0;\r\n }\r\n } catch (error) {\r\n console.error(\"cal=>error\", error);\r\n }\r\n }\r\n });\r\n }\r\n } catch (error) {\r\n console.error(\"table=>cal=>error\", error);\r\n }\r\n};\r\n\r\nexport const checkRequireFromTemplate = (\r\n template: any,\r\n buttonType: string\r\n): boolean => {\r\n let checked: boolean = false;\r\n\r\n if (\r\n template.attribute.require === \"Y\" &&\r\n [\"submit\", \"approve\", \"request comment\"].includes(buttonType)\r\n ) {\r\n checked = true;\r\n }\r\n\r\n return checked;\r\n};\r\n","import React, { useEffect, FC, useRef, useState } from \"react\";\r\nimport Row from \"react-bootstrap/Row\";\r\nimport \"./CoreControllerComponent.css\";\r\nimport { useFieldArray, UseFormTrigger } from \"react-hook-form\";\r\nimport Controls from \"./Controls\";\r\nimport { Form, Spin } from \"antd\";\r\nimport _ from \"lodash\";\r\nimport {\r\n ILogic,\r\n ILogicRequestBody,\r\n ILogicTypeDataLineApprove,\r\n ILogicTypeHideControl,\r\n ILogicTypeReadOnly,\r\n ILogicTypeReference,\r\n ILogicTypeReladToLoadData,\r\n ILogicTypeSourceRelated,\r\n} from \"../../../IRequestModel/ILogicModel\";\r\nimport { ISelectDropdownTemplate } from \"../../../IRequestModel/ITemplateDescModel\";\r\nimport { formatToColumns } from \"../../../Helper/formatColumn\";\r\nimport { formatKeyLogicData } from \"../../../Helper/formatKeyLogicData\";\r\nimport { INumberFormula } from \"../../../IRequestModel/INumberFormula\";\r\nimport { UseFormGetValues } from \"react-hook-form\";\r\nimport { IAutoNumberAttibute } from \"../../../IRequestModel/IAutoNumberFormat\";\r\nimport { GetRvsRunning } from \"../../../Services/RequestControlService\";\r\nimport { onChanceRef, RefResult } from \"../../../Helper/RequestRefFunctions\";\r\nimport { GetApprovalsByMemoIDs } from \"../../../Services/LineApprovalsService\";\r\nimport {\r\n balanceParentheses,\r\n calculateAdvanceForm,\r\n callGenAutoNumber,\r\n genAutoNum,\r\n getRefInforValue,\r\n getValueControl,\r\n} from \"../../../Helper/RequestScreenHelper\";\r\nimport { tableSelectOption } from \"../../AntdControlComponent/TableComponent/TableComponent\";\r\nimport { IRequestOnSubmit } from \"../../../IRequestModel/CreateFormControl/IRequestOnSubmit\";\r\n\r\nimport { LogicType } from \"../../../constants/logic-type\";\r\nimport moment from \"moment\";\r\nimport {\r\n checkIsCorrect,\r\n processHideControlLogic,\r\n} from \"../../../Helper/LogicHelper\";\r\nimport { useUserContext } from \"../../../Context/UserContext\";\r\n\r\ninterface Props {\r\n templateDesc: any;\r\n setMemoDetail: any;\r\n memoDetail: any;\r\n control: any;\r\n register: any;\r\n handleSubmit: any;\r\n onSubmit: any;\r\n documentNo: any;\r\n errors: any;\r\n reset: any;\r\n allLogic: ILogic[];\r\n isFirstRun: any;\r\n jsonConditions: any;\r\n setJsonConditions: any;\r\n onControlChange: (controlName: any, controlValue: any) => any;\r\n numFormulas: INumberFormula[];\r\n lineApproval: any;\r\n setLineApproval: (value: any[]) => void;\r\n autoNumFormat: IAutoNumberAttibute;\r\n setValue: any;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n buttonType: string;\r\n setButtonType: (data: any) => void;\r\n isControlLoading: boolean;\r\n setIsControlLoading: (valaue: boolean) => void;\r\n getLineApproveForAmount: (\r\n amount: number,\r\n jsonCondition?: string,\r\n logicType?: string,\r\n layout?: any\r\n ) => Promise;\r\n previousView: any;\r\n tableSummaries: any;\r\n setTableSummaries: (value: any[]) => void;\r\n refTempSelected: any[];\r\n listFormNames: any;\r\n setListRefDocDetails: (value: any[]) => void;\r\n setListFileAttachDetails: (value: any[]) => void;\r\n refAttribute: any;\r\n prepareInitialLogic: (\r\n logics: ILogic[],\r\n templateDesc: any,\r\n _memoDetail: any,\r\n isOnRef: boolean,\r\n requestor?: any,\r\n isRequestorChange?: boolean,\r\n _lineApproval?: any[],\r\n isRef?: boolean\r\n ) => void;\r\n onProcessLogicReference: (\r\n logic: ILogic,\r\n controlTemplate: any,\r\n controlValue: any,\r\n control: any\r\n ) => Promise<{\r\n loadTo: any[];\r\n data: any[];\r\n row: number;\r\n col: number;\r\n } | null>;\r\n previousRefTempSelected: any;\r\n tableOptions: tableSelectOption[];\r\n setTableOptions: (value: tableSelectOption[]) => void;\r\n checkInterFace: boolean;\r\n onSubmitInterface: (\r\n formData: any,\r\n data: IRequestOnSubmit,\r\n setLoadingInterface: any\r\n ) => void;\r\n returnMessage: string;\r\n listReturn: any;\r\n interfaceButton: any;\r\n actionAlert: any;\r\n edFont?: any;\r\n defaultFont?: any;\r\n dfCurr?: any;\r\n setDfCurr?: (val: any) => void;\r\n trigger: UseFormTrigger<{\r\n items: any;\r\n }>;\r\n getValues: UseFormGetValues<{\r\n items: any;\r\n }>;\r\n}\r\n\r\nexport const CoreControllerComponentTest: FC = ({\r\n setDfCurr,\r\n dfCurr,\r\n onProcessLogicReference,\r\n templateDesc,\r\n trigger,\r\n getValues,\r\n setMemoDetail,\r\n isFirstRun,\r\n previousRefTempSelected,\r\n control,\r\n register,\r\n handleSubmit,\r\n onSubmit,\r\n onSubmitInterface,\r\n documentNo,\r\n errors,\r\n onControlChange,\r\n reset,\r\n memoDetail,\r\n allLogic,\r\n jsonConditions,\r\n setJsonConditions,\r\n numFormulas,\r\n lineApproval,\r\n setLineApproval,\r\n autoNumFormat,\r\n setValue,\r\n canEditDoc,\r\n checkActionPage,\r\n buttonType,\r\n isControlLoading,\r\n setIsControlLoading,\r\n getLineApproveForAmount,\r\n setListFileAttachDetails,\r\n tableSummaries,\r\n setTableSummaries,\r\n previousView,\r\n refTempSelected,\r\n listFormNames,\r\n refAttribute,\r\n setListRefDocDetails,\r\n prepareInitialLogic,\r\n tableOptions,\r\n setTableOptions,\r\n checkInterFace,\r\n returnMessage,\r\n listReturn,\r\n interfaceButton,\r\n actionAlert,\r\n setButtonType,\r\n edFont,\r\n defaultFont,\r\n}) => {\r\n const { fields, update } = useFieldArray({\r\n control, // control from template_desc\r\n name: \"items\",\r\n });\r\n\r\n const controlRef = useRef([]);\r\n const [allLogicInTable, setAllLogicInTable] = useState(\r\n []\r\n );\r\n const [userData] = useUserContext();\r\n\r\n useEffect(() => {\r\n try {\r\n if (tableOptions.length > 0) {\r\n let tableLogics: any[] = [];\r\n\r\n tableOptions.forEach((logic: any) => {\r\n if (\r\n logic.logictype === LogicType.DataRelatedToLoadData ||\r\n logic.logictype === LogicType.DataAjaxLoadTable\r\n ) {\r\n const jsonValue: ILogicTypeReladToLoadData =\r\n logic.jsonvalue &&\r\n logic.jsonvalue.length > 0 &&\r\n JSON.parse(logic.jsonvalue.replace(`},\\r\\n],`, \"}],\"));\r\n\r\n tableLogics = [\r\n ...tableLogics,\r\n ...jsonValue.labelactions.map((labelaction: any) => {\r\n return {\r\n Key: labelaction.label,\r\n logictype: logic.logictype,\r\n actionlabel: jsonValue.autoloadvaluelabel.label,\r\n labelactionfield: jsonValue.autoloadvaluelabel.value,\r\n Value: getRefInforValue(\r\n labelaction.label,\r\n memoDetail,\r\n userData\r\n ),\r\n logicid: logic.logicid,\r\n };\r\n }),\r\n ];\r\n } else if (logic.logictype === LogicType.DataSourceLoad) {\r\n const jsonValue: any =\r\n logic.jsonvalue &&\r\n logic.jsonvalue.length > 0 &&\r\n JSON.parse(logic.jsonvalue.replace(`},\\r\\n],`, \"}],\"));\r\n\r\n const cons = jsonValue.conditions?.filter((con: any) => {\r\n return con.objectkey;\r\n });\r\n if (cons?.length > 0) {\r\n cons.map((con: any) => {\r\n return {\r\n logicid: logic.logicid,\r\n logictype: logic.logictype,\r\n labelactionfield: jsonValue.labelactionfield,\r\n Key: con.objectkey,\r\n Value: getValueControl(con.objectkey, memoDetail),\r\n };\r\n });\r\n } else {\r\n tableLogics.push({\r\n logicid: logic.logicid,\r\n logictype: logic.logictype,\r\n labelactionfield: jsonValue.labelactionfield,\r\n Key: \"\",\r\n actionlabel: jsonValue.label,\r\n Value: null,\r\n });\r\n }\r\n } else if (logic.logictype === LogicType.RefInfomation) {\r\n const jsonValue: any =\r\n logic.jsonvalue &&\r\n logic.jsonvalue.length > 0 &&\r\n JSON.parse(logic.jsonvalue.replace(`},\\r\\n],`, \"}],\"));\r\n const con = jsonValue.condition.split(\" | \");\r\n\r\n tableLogics.push({\r\n logicid: logic.logicid,\r\n logictype: logic.logictype,\r\n Key: con[0],\r\n actionlabel: con[1],\r\n Value: getRefInforValue(jsonValue.required, memoDetail, userData),\r\n });\r\n } else if (\r\n logic.logictype === LogicType.HideControl ||\r\n logic.logictype === LogicType.ReadOnlyControl\r\n ) {\r\n const jsonValue: ILogicTypeReadOnly | ILogicTypeHideControl =\r\n logic.jsonvalue &&\r\n logic.jsonvalue.length > 0 &&\r\n JSON.parse(logic.jsonvalue.replace(`},\\r\\n],`, \"}],\"));\r\n\r\n const con = jsonValue.conditions;\r\n const jsonLabel = JSON.parse(jsonValue.label);\r\n\r\n con.forEach((group) => {\r\n group.conditions.forEach((e) => {\r\n e.value = e.comparewith\r\n ? getRefInforValue(e.comparewith, memoDetail, userData)\r\n : e.value;\r\n });\r\n });\r\n tableLogics.push({\r\n logicid: logic.logicid,\r\n logictype: logic.logictype,\r\n Key: jsonLabel.label,\r\n jsonValue: jsonValue,\r\n });\r\n } else if (logic.logictype === LogicType.SetValueControl) {\r\n const jsonValue: any =\r\n logic.jsonvalue &&\r\n logic.jsonvalue.length > 0 &&\r\n JSON.parse(logic.jsonvalue.replace(`},\\r\\n],`, \"}],\"));\r\n\r\n jsonValue.actionControl = JSON.parse(jsonValue.actionControl);\r\n jsonValue.conditions.forEach((cons: any) => {\r\n cons.conditions.forEach((con: any) => {\r\n tableLogics.push({\r\n logicid: logic.logicid,\r\n logictype: logic.logictype,\r\n Key: con.field,\r\n operator: con.operator,\r\n actionlabel:\r\n jsonValue.actionControl.label +\r\n \"|\" +\r\n jsonValue.actionControl.isInTable,\r\n Value: con.value,\r\n valuetoset: cons.valuetoset,\r\n });\r\n });\r\n });\r\n }\r\n });\r\n\r\n setAllLogicInTable([...tableLogics]);\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n }, [tableOptions, memoDetail]);\r\n\r\n const returnToValure = (template: any, _data: any) => {\r\n let gogo = [];\r\n for (let j = 0; j < template.attribute.column.length; j++) {\r\n const column = template.attribute.column[j];\r\n gogo.push({ value: _data[column.label] });\r\n }\r\n return gogo;\r\n };\r\n\r\n useEffect(() => {\r\n processRef();\r\n setIsControlLoading(false);\r\n }, [refAttribute, refTempSelected]);\r\n\r\n async function processRef() {\r\n try {\r\n if (refAttribute) {\r\n if (refAttribute.refIdOnQuery) {\r\n try {\r\n const refResult: RefResult = await onChanceRef(\r\n refTempSelected,\r\n memoDetail,\r\n listFormNames,\r\n refAttribute,\r\n fields\r\n );\r\n\r\n if (refResult.errorMessage) {\r\n } else if (refResult.items.length > 0) {\r\n if (canEditDoc) {\r\n previousRefTempSelected.current = refTempSelected;\r\n onRefSelect(refResult, refTempSelected);\r\n }\r\n }\r\n } catch (error) {\r\n console.error(\"ref=>error\", error);\r\n }\r\n } else if (\r\n !isFirstRun.current &&\r\n previousView.current === \"2\" &&\r\n isDifferent(previousRefTempSelected, refTempSelected)\r\n ) {\r\n try {\r\n let refResult: RefResult = await onChanceRef(\r\n refTempSelected,\r\n memoDetail,\r\n listFormNames,\r\n refAttribute,\r\n fields\r\n );\r\n if (refResult.errorMessage) {\r\n } else if (refResult.items.length > 0) {\r\n if (canEditDoc) {\r\n previousRefTempSelected.current = refTempSelected;\r\n // calCulateCorecontrol;\r\n\r\n onRefSelect(refResult, refTempSelected);\r\n }\r\n }\r\n } catch (error) {\r\n console.error(\"ref=>error\", error);\r\n }\r\n }\r\n }\r\n } catch (error) {\r\n console.error(\"ref=>useEffect=>error\", error);\r\n }\r\n }\r\n const isDifferent = (\r\n refRpreviousRefTempSelectedesult: any,\r\n refTempSelected: any\r\n ) => {\r\n let isDifferent: boolean = false;\r\n try {\r\n if (\r\n refRpreviousRefTempSelectedesult.current &&\r\n refRpreviousRefTempSelectedesult.current.length > 0\r\n ) {\r\n if (refTempSelected && refTempSelected.length > 0) {\r\n isDifferent =\r\n refTempSelected[0]?.MemoId !=\r\n refRpreviousRefTempSelectedesult.current[0]?.MemoId ?? true;\r\n }\r\n } else {\r\n isDifferent = true;\r\n }\r\n } catch (error) {\r\n console.error(\"ref=>error\", error);\r\n }\r\n return isDifferent;\r\n };\r\n const onRefSelect = async (refResult: any, refSelected: any) => {\r\n try {\r\n setIsControlLoading(true);\r\n\r\n let _listLineApprove: any[] = [...lineApproval];\r\n let listMemoIds: number[] = [];\r\n refSelected.forEach((e: any) => {\r\n listMemoIds.push(e.MemoId);\r\n });\r\n\r\n if (refAttribute?.isDefaultLineApprove) {\r\n const resApprovals: any[] = await GetApprovalsByMemoIDs(listMemoIds);\r\n if (resApprovals?.length > 0) {\r\n setLineApproval([..._listLineApprove, ...resApprovals]);\r\n }\r\n }\r\n\r\n const _control = await detechRevisionControl(\r\n memoDetail.template_id,\r\n refResult.items,\r\n listMemoIds[0]\r\n );\r\n\r\n const newControl = await _onControlChangeRef(_control);\r\n setValue(\"items\", [...newControl.items]);\r\n trigger();\r\n\r\n setListRefDocDetails(refResult.listRefDocsDetail);\r\n if (refResult.listFileAttachDetails)\r\n setListFileAttachDetails(refResult.listFileAttachDetails);\r\n } catch (error) {\r\n console.error(\"ref=>error\", error);\r\n }\r\n setIsControlLoading(false);\r\n };\r\n\r\n const onProcessSummary = async (\r\n _control: any,\r\n jsonCondition: any,\r\n controlTemplate?: any,\r\n controlValue?: any\r\n ) => {\r\n let _amount = 0;\r\n let isSum = false;\r\n let isControlHasSum = false;\r\n try {\r\n if (\r\n controlTemplate &&\r\n controlTemplate.type === \"c\" &&\r\n controlTemplate.attribute.summary === \"Y\"\r\n ) {\r\n isControlHasSum = true;\r\n }\r\n\r\n _control?.forEach((item: any, rowIdx: number) => {\r\n item.layout.forEach((layout: any) => {\r\n try {\r\n if (layout.template.type === \"c\") {\r\n if (layout.template.attribute.summary === \"Y\") {\r\n isControlHasSum = true;\r\n isSum = true;\r\n _amount += Number(layout.data.value || 0);\r\n }\r\n } else if (layout.template.type === \"tb\") {\r\n const tableCol: any[] = layout.template.attribute.column;\r\n let tableSum: number = 0;\r\n if (controlValue?.length > 0) {\r\n const selTable =\r\n controlTemplate?.type === \"tb\"\r\n ? controlValue?.find(\r\n (e: any) => e.tableTemp.label === layout.template.label\r\n )\r\n : tableSummaries?.find(\r\n (e: any) => e.tableTemp.label === layout.template.label\r\n );\r\n\r\n tableCol.forEach((col: any, colIdx: number) => {\r\n if (col.control.template.attribute.summary === \"Y\") {\r\n if (\r\n !Number.isNaN(\r\n Number(selTable.AllCol[col.control.template.label])\r\n )\r\n ) {\r\n isSum = true;\r\n isControlHasSum = true;\r\n tableSum += Number(\r\n selTable.AllCol[col.control.template.label]\r\n );\r\n }\r\n }\r\n });\r\n } else {\r\n tableCol.forEach((col: any, colIdx: number) => {\r\n if (col.control.template.attribute.summary === \"Y\") {\r\n layout.data.row?.forEach((row: any) => {\r\n isSum = true;\r\n isControlHasSum = true;\r\n\r\n if (row[colIdx]) {\r\n tableSum += Number(row[colIdx]?.value || 0);\r\n }\r\n });\r\n }\r\n });\r\n }\r\n _amount += tableSum;\r\n }\r\n } catch (error) {\r\n console.error(\"sum=>error\", error);\r\n }\r\n });\r\n });\r\n\r\n await getLineApproveForAmount(\r\n _amount,\r\n undefined,\r\n undefined,\r\n controlTemplate\r\n );\r\n } catch (error) {\r\n console.error(\"sum=>error\", error);\r\n }\r\n return {\r\n sumControl: _control,\r\n sumRes: {\r\n _amount: _amount,\r\n isSum: isSum,\r\n isControlHasSum: isControlHasSum,\r\n },\r\n };\r\n };\r\n\r\n const onCheckInterface = async (\r\n buttonType: any,\r\n setLoadingInterface: any\r\n ) => {\r\n memoDetail.template_desc = { items: fields };\r\n\r\n var request: IRequestOnSubmit = {\r\n buttonType: buttonType,\r\n inputComment: \"\",\r\n waitingFor: \"\",\r\n waitingForId: 0,\r\n };\r\n let dd: any = await onSubmitInterface(\r\n memoDetail.template_desc,\r\n request,\r\n setLoadingInterface\r\n );\r\n\r\n if (dd) {\r\n calculateAdvanceForm(dd);\r\n setValue(\"items\", [...dd]);\r\n }\r\n };\r\n\r\n const calCulateCorecontrol = async (\r\n currentControl: any,\r\n controlTemplate?: any,\r\n controlValue?: any\r\n ) => {\r\n try {\r\n if (controlValue != null) {\r\n for (let i = 0; i < numFormulas.length; i++) {\r\n let formula = numFormulas[i];\r\n let total: number = NaN;\r\n if (formula.formula.startsWith(\"diffdate\")) {\r\n let resulstField = formula.formula.split(\"=\");\r\n let variables = resulstField[0];\r\n const selCol = variables\r\n .substring(variables.indexOf(\"(\") + 1, variables.lastIndexOf(\")\"))\r\n .split(\",\");\r\n // let match: any = resulstField[0].match(/[^+%\\-\\*\\/=)(]+/g) || [];\r\n let datepicker1: { [x: string]: moment.Moment } = {\r\n [selCol[0]]: moment(),\r\n [selCol[1]]: moment(),\r\n };\r\n\r\n resulstField.forEach((formu: any) => {\r\n currentControl.forEach((layout: any) => {\r\n layout.layout.forEach((col: any) => {\r\n if (selCol.includes(col.template.label)) {\r\n datepicker1[col.template.label] = moment(col.data.value);\r\n }\r\n });\r\n });\r\n });\r\n total = datepicker1[selCol[0]].diff(datepicker1[selCol[1]], \"days\");\r\n if (total >= 1) {\r\n total += 1;\r\n }\r\n } else if (formula.formula.startsWith(\"difftime\")) {\r\n let resulstField = formula.formula.split(\"=\");\r\n let variables = resulstField[0];\r\n const selCol = variables\r\n .substring(variables.indexOf(\"(\") + 1, variables.lastIndexOf(\")\"))\r\n .split(\",\");\r\n let datepicker: { [x: string]: moment.Moment } = {\r\n [selCol[0]]: moment(),\r\n [selCol[1]]: moment(),\r\n };\r\n let res: number = 0;\r\n let formattedTime: string = \"\";\r\n resulstField.forEach((formu: any) => {\r\n currentControl.forEach((layout: any) => {\r\n layout.layout.forEach((col: any) => {\r\n if (selCol.includes(col.template.label)) {\r\n datepicker[col.template.label] = moment(\r\n col.data.value,\r\n \"h.mm\"\r\n );\r\n res = datepicker[selCol[0]].diff(\r\n datepicker[selCol[1]],\r\n \"minutes\"\r\n );\r\n\r\n let hours = Math.trunc(res / 60);\r\n let remainingMinutes = res % 60;\r\n formattedTime =\r\n res <= -1 && res >= -9\r\n ? `-0.0${Math.abs(remainingMinutes)}`\r\n : hours === -0 && res < -10\r\n ? `-${hours}.${Math.abs(remainingMinutes)}`\r\n : res < -10\r\n ? `${hours}.${Math.abs(remainingMinutes)}`\r\n : `${hours}.${remainingMinutes}`;\r\n }\r\n });\r\n });\r\n });\r\n total = Number(formattedTime);\r\n } else {\r\n let resulstField = formula.formula.split(\"=\");\r\n let variables = resulstField[0];\r\n\r\n let match: any = variables.match(/[^+\\-\\*\\/=)(]+/g) || [];\r\n\r\n match = match.map((e: string) => {\r\n return balanceParentheses(e);\r\n });\r\n console.log(match);\r\n\r\n match.forEach((formu: any) => {\r\n if (match?.includes(\"sum\") && controlValue?.length > 0) {\r\n if (formu === \"sum\") return;\r\n if (controlTemplate.type === \"tb\") {\r\n try {\r\n const selCol = formu.split(\";\");\r\n\r\n if (controlTemplate.label === selCol[0]) {\r\n const tableCol: any[] = controlTemplate.attribute.column;\r\n\r\n const selValue =\r\n controlValue[selCol[1]] !== undefined\r\n ? controlValue[selCol[1]]\r\n : controlValue?.find(\r\n (e: any) => e.tableTemp.label === selCol[0]\r\n );\r\n\r\n if (selValue?.AllCol) {\r\n tableCol?.forEach((col: any) => {\r\n if (selCol[1] === col.label) {\r\n total = 0;\r\n if (selValue?.AllCol[col.label] != undefined) {\r\n total =\r\n total + Number(selValue?.AllCol[col.label]);\r\n }\r\n }\r\n });\r\n }\r\n }\r\n } catch (error) {\r\n console.error(\"cal=>error\", error);\r\n }\r\n } else {\r\n currentControl.forEach((layout: any) => {\r\n layout.layout.forEach((col: any) => {\r\n if (col.template.type === \"tb\") {\r\n const selCol = formu\r\n .substring(\r\n formu.indexOf(\"(\") + 1,\r\n formu.lastIndexOf(\")\")\r\n )\r\n .split(\";\");\r\n const tableCol: any[] = col.template.attribute.column;\r\n\r\n const selValue = tableSummaries.find(\r\n (e: any) => e.tableTemp.label === selCol[0]\r\n );\r\n\r\n tableCol?.forEach((col: any) => {\r\n if (selCol[1] === col.label) {\r\n if (selValue?.AllCol[col.label]) {\r\n variables = variables.replace(\r\n formu,\r\n selValue.AllCol[selCol[1]].toString()\r\n );\r\n }\r\n }\r\n });\r\n }\r\n });\r\n });\r\n }\r\n } else {\r\n currentControl?.forEach((item: any, rowIdx: number) => {\r\n item?.layout?.forEach((layout: any) => {\r\n if (match.includes(layout.template.label)) {\r\n if (layout.data.value && layout.data.value !== \"\") {\r\n variables = variables.replace(\r\n layout.template.label,\r\n layout.data.value.toString().replaceAll(\",\", \"\")\r\n );\r\n } else {\r\n variables = variables.replace(\r\n layout.template.label,\r\n \"0\"\r\n );\r\n }\r\n }\r\n });\r\n });\r\n }\r\n });\r\n var regExp = /[a-zA-Zก-๏]/g;\r\n\r\n if (!regExp.test(variables)) {\r\n total = eval(variables);\r\n }\r\n }\r\n\r\n if (!isNaN(total)) {\r\n const callLogics: any[] = checkCallLogic(\r\n allLogic,\r\n currentControl[formula.rowIndex].layout[formula.colIndex].template\r\n );\r\n\r\n currentControl[formula.rowIndex].layout[\r\n formula.colIndex\r\n ].data.value = total.toFixed(\r\n currentControl[formula.rowIndex].layout[formula.colIndex].template\r\n .attribute.decimal\r\n );\r\n if (callLogics.length > 0) {\r\n // let _jsonConditions = jsonConditions;\r\n for (let i = 0; i < callLogics.length; i++) {\r\n const _response = await onProcessLogic(\r\n callLogics[i],\r\n currentControl[formula.rowIndex].layout[formula.colIndex]\r\n .template,\r\n currentControl[formula.rowIndex].layout[formula.colIndex].data\r\n .value,\r\n currentControl,\r\n false\r\n );\r\n\r\n // _jsonConditions = _response || \"\";\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n return currentControl;\r\n } catch (error) {\r\n console.error(\"cal=>error\", error);\r\n }\r\n };\r\n\r\n const updateTableSummaries = (tableTemp: any, value: any) => {\r\n if (tableSummaries) {\r\n const _tableSummaries = JSON.stringify(tableSummaries);\r\n let _sumTable = JSON.parse(_tableSummaries);\r\n\r\n _sumTable.map((e: any) => {\r\n if (e.tableTemp.label === tableTemp.label) {\r\n e.AllCol = value;\r\n }\r\n });\r\n\r\n if (!_.isEqual(_sumTable, tableSummaries)) {\r\n _onControlChange(tableTemp, _sumTable, true);\r\n setTableSummaries([..._sumTable]);\r\n }\r\n }\r\n };\r\n\r\n //check if control has logic\r\n const checkCallLogic = (logics: any, controlTemplate: any) => {\r\n let callLogic: any[] = [];\r\n\r\n logics.forEach((logic: ILogic) => {\r\n if (logic.logictype === LogicType.DataSourceRelated) {\r\n const jsonValue: ILogicTypeSourceRelated =\r\n logic.jsonvalue &&\r\n logic.jsonvalue.length > 0 &&\r\n JSON.parse(logic.jsonvalue.replace(`},\\r\\n],`, \"}],\"));\r\n\r\n if (controlTemplate.type === \"tb\") {\r\n for (let j = 0; j < controlTemplate.attribute.column.length; j++) {\r\n const col = controlTemplate.attribute.column[j];\r\n if (jsonValue.label === col.label) {\r\n callLogic.push(logic);\r\n }\r\n }\r\n } else {\r\n if (jsonValue.label === controlTemplate.label) {\r\n callLogic.push(logic);\r\n }\r\n }\r\n } else if (logic.logictype === LogicType.DataAjaxLoadTable) {\r\n const jsonValue: ILogicTypeSourceRelated =\r\n logic.jsonvalue &&\r\n logic.jsonvalue.length > 0 &&\r\n JSON.parse(logic.jsonvalue.replace(`},\\r\\n],`, \"}],\"));\r\n\r\n const selectAction = jsonValue.labelactions.find(\r\n (e) => e.label === controlTemplate.label\r\n );\r\n if (selectAction) {\r\n callLogic.push(logic);\r\n }\r\n } else if (logic.logictype === LogicType.DataRelatedToLoadData) {\r\n const jsonValue: ILogicTypeReladToLoadData =\r\n logic.jsonvalue &&\r\n logic.jsonvalue.length > 0 &&\r\n JSON.parse(logic.jsonvalue.replace(`},\\r\\n],`, \"}],\"));\r\n if (controlTemplate.type === \"tb\") {\r\n for (let i = 0; i < jsonValue.labelactions.length; i++) {\r\n const labelAction = jsonValue.labelactions[i];\r\n for (let j = 0; j < controlTemplate.attribute.column.length; j++) {\r\n const col = controlTemplate.attribute.column[j];\r\n if (labelAction.label === col.label) {\r\n callLogic.push(logic);\r\n }\r\n }\r\n }\r\n } else {\r\n for (let i = 0; i < jsonValue.labelactions.length; i++) {\r\n const labelAction = jsonValue.labelactions[i];\r\n\r\n if (labelAction.label === controlTemplate.label) {\r\n callLogic.push(logic);\r\n }\r\n }\r\n }\r\n } else if (logic.logictype === LogicType.Reference) {\r\n const jsonValue: ILogicTypeReference =\r\n logic.jsonvalue &&\r\n logic.jsonvalue.length > 0 &&\r\n JSON.parse(logic.jsonvalue.replace(`},\\r\\n],`, \"}],\"));\r\n for (let i = 0; i < jsonValue.Filter.length; i++) {\r\n const filter = jsonValue.Filter[i];\r\n if (filter.TBColumn === controlTemplate.label) {\r\n callLogic.push(logic);\r\n }\r\n }\r\n } else if (logic.logictype === LogicType.DataLineApprove) {\r\n const jsonValue: ILogicTypeDataLineApprove =\r\n logic.jsonvalue &&\r\n logic.jsonvalue.length > 0 &&\r\n JSON.parse(logic.jsonvalue.replace(`},\\r\\n],`, \"}],\"));\r\n if (jsonValue.label === controlTemplate.label) {\r\n callLogic.push(logic);\r\n }\r\n } else if (\r\n logic.logictype === LogicType.SetValueControl ||\r\n logic.logictype === LogicType.HideControl ||\r\n logic.logictype === LogicType.ReadOnlyControl\r\n ) {\r\n const jsonValue: any = JSON.parse(logic.jsonvalue);\r\n let allLabel: any[] = [];\r\n const tempColumns: string[] =\r\n controlTemplate?.attribute?.column?.map(\r\n (e: { label: any }) => e.label\r\n ) ?? [];\r\n\r\n jsonValue.conditions.map((con: any) => {\r\n try {\r\n if (typeof con.field === \"string\") {\r\n con.field = JSON.parse(con.field);\r\n }\r\n\r\n con.conditions.forEach((condition: any) => {\r\n allLabel.push(condition.field);\r\n });\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n });\r\n\r\n if (\r\n allLabel.includes(controlTemplate.label) ||\r\n allLabel.filter((e) => tempColumns.includes(e)).length > 0\r\n ) {\r\n callLogic.push(logic);\r\n }\r\n }\r\n });\r\n\r\n return callLogic;\r\n };\r\n const _onControlChangeRef = async (refControl: any) => {\r\n let _jsonConditions = jsonConditions;\r\n let template: any = null;\r\n\r\n if (!isFirstRun?.current) {\r\n if (previousView?.current === \"2\") {\r\n const logics = allLogic;\r\n\r\n let oldRefControl = refControl;\r\n\r\n oldRefControl = await prepareInitialLogic(\r\n logics,\r\n {\r\n items: oldRefControl,\r\n },\r\n memoDetail,\r\n memoDetail.status,\r\n memoDetail.requestor,\r\n undefined,\r\n undefined,\r\n true\r\n );\r\n\r\n for (let i = 0; i < oldRefControl.items.length; i++) {\r\n const item = oldRefControl.items[i];\r\n for (let j = 0; j < item.layout.length; j++) {\r\n const layout = item.layout[j];\r\n if (layout.template.type !== \"tb\") {\r\n const callLogic = checkCallLogic(\r\n logics.filter((e) => e.logictype === LogicType.DataLineApprove),\r\n layout.template\r\n );\r\n\r\n if (callLogic.length > 0) {\r\n template = layout.template;\r\n }\r\n let table_dd_to_dd_Result: any[] = [];\r\n\r\n for (let i = 0; i < callLogic.length; i++) {\r\n const _response = await onProcessLogic(\r\n callLogic[i],\r\n layout.template,\r\n layout.data.value,\r\n refControl,\r\n false\r\n );\r\n\r\n if (_response?.type == \"lineapprove\") {\r\n _jsonConditions = _response?.value || \"\";\r\n } else {\r\n table_dd_to_dd_Result.push(callLogic[i]);\r\n }\r\n }\r\n const dd = Array.from(\r\n new Set([...tableOptions, ...table_dd_to_dd_Result])\r\n );\r\n\r\n setTableOptions([...dd]);\r\n }\r\n }\r\n }\r\n await calculateAdvanceForm(oldRefControl.items);\r\n\r\n if (autoNumFormat.formats.length > 0 && canEditDoc) {\r\n oldRefControl.items = await genAutoNum(\r\n oldRefControl.items,\r\n autoNumFormat,\r\n memoDetail.template_id,\r\n memoDetail.status\r\n );\r\n }\r\n\r\n const { sumControl } = await onProcessSummary(\r\n oldRefControl.items,\r\n _jsonConditions,\r\n template,\r\n null\r\n );\r\n refControl = sumControl;\r\n if (_jsonConditions) {\r\n if (_jsonConditions.type && _jsonConditions.value) {\r\n oldRefControl = _jsonConditions.value;\r\n }\r\n }\r\n return oldRefControl;\r\n }\r\n return refControl;\r\n }\r\n return refControl;\r\n };\r\n\r\n //trigger when control value change\r\n const _onControlChange = async (\r\n controlTemplate: ISelectDropdownTemplate | any, //controled change template\r\n controlValue: any, //value\r\n isInTable: boolean = false, // if control in table\r\n isRef?: boolean\r\n ) => {\r\n try {\r\n let _amount = 0;\r\n let _jsonConditions: string = jsonConditions; //condition for datalineapprove logic\r\n\r\n setIsControlLoading(true);\r\n\r\n /**\r\n * Condition check controlValue must not null or undefined.\r\n * But allow controlValue is zero (0) for input type number and input zero value.\r\n * And not allow trigger when change tap to Information screen\r\n */\r\n if (controlValue != null && !isFirstRun?.current) {\r\n if (previousView?.current === \"2\") {\r\n const logics = allLogic; //all template logic\r\n\r\n //check if triggered control has logic or not\r\n const callLogic = checkCallLogic(logics, controlTemplate);\r\n\r\n //unrelate constant\r\n const _controlString = JSON.stringify(fields);\r\n const _control = JSON.parse(_controlString);\r\n\r\n const newControlString = JSON.stringify(_control);\r\n let newControl = JSON.parse(newControlString);\r\n\r\n let table_dd_to_dd_Result: any[] = [];\r\n //check if can call logic and this control not type = tb\r\n let resetForm = false;\r\n //calculate all control value to amount in memodetail\r\n newControl = await calCulateCorecontrol(\r\n _control,\r\n controlTemplate,\r\n controlValue\r\n );\r\n\r\n if (dfCurr && dfCurr?.Value2 === controlTemplate.label) {\r\n if (setDfCurr)\r\n setDfCurr((prevState: any) => ({\r\n ...prevState,\r\n Value1: controlValue,\r\n }));\r\n }\r\n\r\n const { sumControl, sumRes } = await onProcessSummary(\r\n newControl,\r\n _jsonConditions,\r\n controlTemplate,\r\n controlValue\r\n );\r\n\r\n newControl = sumControl;\r\n\r\n if (\r\n (controlTemplate.type !== \"tb\" || isInTable) &&\r\n callLogic.length > 0\r\n ) {\r\n callLogic.sort((a, b) => {\r\n if (\r\n a.logictype === \"datalineapprove\" &&\r\n b.logictype !== \"datalineapprove\"\r\n ) {\r\n return 1;\r\n } else if (\r\n a.logictype !== \"datalineapprove\" &&\r\n b.logictype === \"datalineapprove\"\r\n ) {\r\n return -1;\r\n } else {\r\n return 0;\r\n }\r\n });\r\n if (isInTable) {\r\n callLogic.sort((a, b) => {\r\n if (\r\n a.logictype === \"datasourcerelated\" &&\r\n b.logictype !== \"datasourcerelated\"\r\n ) {\r\n return -1;\r\n } else if (\r\n a.logictype !== \"datasourcerelated\" &&\r\n b.logictype === \"datasourcerelated\"\r\n ) {\r\n return 1;\r\n } else {\r\n return 0;\r\n }\r\n });\r\n }\r\n\r\n if (isInTable) {\r\n callLogic.sort((a, b) => {\r\n if (\r\n a.logictype === \"datasourcerelated\" &&\r\n b.logictype !== \"datasourcerelated\"\r\n ) {\r\n return -1;\r\n } else if (\r\n a.logictype !== \"datasourcerelated\" &&\r\n b.logictype === \"datasourcerelated\"\r\n ) {\r\n return 1;\r\n } else {\r\n return 0;\r\n }\r\n });\r\n }\r\n\r\n for (let i = 0; i < callLogic.length; i++) {\r\n const { type, value, controls } = await onProcessLogic(\r\n callLogic[i],\r\n controlTemplate,\r\n controlValue,\r\n newControl,\r\n isInTable\r\n );\r\n\r\n if (type === \"table_dd_to_dd\") {\r\n //setNewOptionToControl\r\n table_dd_to_dd_Result.push(callLogic[i]);\r\n } else if (type === \"control\") {\r\n newControl = value;\r\n }\r\n //return value to save function in TableComponent\r\n if ((type === \"table\" || type === \"control\") && isInTable) {\r\n setIsControlLoading(false);\r\n if (type === \"table\" && isInTable) {\r\n table_dd_to_dd_Result.push(callLogic[i]);\r\n } else {\r\n newControl = value;\r\n }\r\n\r\n return { type, value };\r\n } else if (type === \"lineapprove\" && !isInTable) {\r\n //set jsonconditions\r\n\r\n _jsonConditions = value || \"\";\r\n }\r\n }\r\n }\r\n\r\n if (\r\n autoNumFormat.formats.length > 0 &&\r\n canEditDoc &&\r\n callGenAutoNumber(autoNumFormat, controlTemplate)\r\n ) {\r\n newControl = await genAutoNum(\r\n newControl,\r\n autoNumFormat,\r\n memoDetail.template_id,\r\n memoDetail.status\r\n );\r\n }\r\n\r\n const dd = Array.from(\r\n new Set([...tableOptions, ...table_dd_to_dd_Result])\r\n );\r\n\r\n setTableOptions([...dd]);\r\n\r\n if (newControl && !isRef) {\r\n if (!_.isEqual(getValues(), { items: newControl })) {\r\n setValue(\"items\", [...newControl]);\r\n trigger();\r\n }\r\n }\r\n }\r\n }\r\n setIsControlLoading(false);\r\n } catch (error) {\r\n setIsControlLoading(false);\r\n console.error(\"core=>error\", error);\r\n }\r\n };\r\n\r\n const detechRevisionControl = async (\r\n _templateId: any,\r\n _control: any,\r\n memoId?: number\r\n ) => {\r\n try {\r\n if (![\"New Request\"].includes(memoDetail.status)) return _control;\r\n let requestBody: any = {};\r\n let items: any[] = [];\r\n let rowIndex = -1;\r\n let colIndex = -1;\r\n\r\n _control.forEach((item: any, rowIdx: number) => {\r\n item.layout.forEach((layout: any, colIdx: number) => {\r\n if (layout.template.type === \"rvs\") {\r\n requestBody.TemplateId = _templateId;\r\n requestBody.RefId = memoId;\r\n requestBody.Digit = layout.template.attribute.digit;\r\n requestBody.Labelrevision = layout.template.label;\r\n requestBody.Alter = layout.template.alter;\r\n requestBody.MemoId = null;\r\n rowIndex = rowIdx;\r\n colIndex = colIdx;\r\n }\r\n });\r\n });\r\n\r\n if (rowIndex !== -1 && colIndex !== -1) {\r\n if (\r\n _control[rowIndex].layout[colIndex].template.attribute.conditions\r\n .length > 0\r\n ) {\r\n const rvsCon = _control[rowIndex].layout[colIndex];\r\n rvsCon.template.attribute.conditions.map((con: any) => {\r\n _control.map((item: any, rowIdx: number) => {\r\n item.layout.map((layout: any, colIdx: number) => {\r\n if (con.label === layout.template.label) {\r\n items.push({\r\n Label: con.label,\r\n value: layout.data.value,\r\n });\r\n }\r\n });\r\n });\r\n });\r\n }\r\n\r\n requestBody.Itemlabel = items;\r\n\r\n if (requestBody.Itemlabel.length > 0) {\r\n let isCheck = true;\r\n\r\n requestBody.Itemlabel.forEach((item: any) => {\r\n if (!item.value || item.value === \"\") {\r\n isCheck = false;\r\n return;\r\n }\r\n });\r\n\r\n if (isCheck) {\r\n const revision = await GetRvsRunning(requestBody);\r\n _control[rowIndex].layout[colIndex].data.value = revision.item;\r\n }\r\n }\r\n }\r\n return _control;\r\n } catch (error) {\r\n console.error(\"rvs=>error\", error);\r\n }\r\n };\r\n\r\n //process datasourcerelate function\r\n const onProcessLogicDataSourceRelated = async (\r\n logic: ILogic,\r\n controlTemplate: any,\r\n controlValue: any,\r\n isInTable: boolean,\r\n control: any\r\n ) => {\r\n let responseDataSourceLoadRelated: any = {\r\n relateGroup: [],\r\n data: [],\r\n };\r\n\r\n const controlDescription =\r\n controlTemplate?.description ||\r\n controlTemplate?.attribute?.description ||\r\n \"\";\r\n const jsonValue: ILogicTypeSourceRelated =\r\n logic.jsonvalue &&\r\n logic.jsonvalue.length > 0 &&\r\n JSON.parse(logic.jsonvalue.replace(`},\\r\\n],`, \"}],\"));\r\n let jsonRelated: any = [];\r\n\r\n if (jsonValue.label === controlTemplate.label && !isInTable) {\r\n //body to fetch data\r\n const conditions = jsonValue.conditions;\r\n if (conditions.length > 0) {\r\n conditions.forEach((e) => {\r\n if (!e.value) {\r\n for (let k = 0; k < control.length; k++) {\r\n const item = control[k];\r\n for (let l = 0; l < item.layout.length; l++) {\r\n const _layout = item.layout[l];\r\n const _label = _layout.label || _layout.template.label;\r\n const _des =\r\n _layout?.template?.description ||\r\n _layout?.template?.attribute?.description ||\r\n \"\";\r\n if (e.label === _label && controlDescription == _des) {\r\n jsonRelated.push({\r\n Key: _label,\r\n Value: _layout.data.value,\r\n logicid: logic.logicid,\r\n });\r\n }\r\n }\r\n }\r\n }\r\n });\r\n responseDataSourceLoadRelated.data = await onDatareladToLoadData(\r\n jsonRelated\r\n );\r\n } else {\r\n const dataJson = {\r\n Key: controlTemplate.label,\r\n Value: controlValue,\r\n logicid: logic.logicid,\r\n };\r\n\r\n responseDataSourceLoadRelated.data = await onDataSourceLoadRelated(\r\n dataJson\r\n );\r\n }\r\n\r\n if (responseDataSourceLoadRelated.data?.length > 0) {\r\n //find control position to put data in\r\n for (let i = 0; i < jsonValue.relatedvalue?.length; i++) {\r\n const relateValue = jsonValue?.relatedvalue[i];\r\n for (let j = 0; j < control?.length; j++) {\r\n const item = control[j];\r\n for (let k = 0; k < item.layout?.length; k++) {\r\n const layout = item?.layout[k];\r\n if (\r\n JSON.stringify(layout.template) != \"{}\" &&\r\n ![\"l\", \"em\"].includes(layout.template.type) &&\r\n layout.template.label === relateValue.label &&\r\n controlDescription ===\r\n (layout.template?.description ||\r\n layout.template?.attribute?.description ||\r\n \"\")\r\n // layout.template.label === relateValue.label\r\n ) {\r\n responseDataSourceLoadRelated.relateGroup.push({\r\n row: j,\r\n col: k,\r\n relateValue,\r\n });\r\n }\r\n }\r\n }\r\n }\r\n\r\n return { responseDataSourceLoadRelated, isInTable };\r\n }\r\n } else if (isInTable) {\r\n if (controlValue.dataIndex === jsonValue.label) {\r\n const _dataJson: any[] = [];\r\n const conditions = jsonValue.conditions;\r\n const _control = controlTemplate.attribute.column;\r\n\r\n conditions.forEach((e) => {\r\n for (let k = 0; k < _control.length; k++) {\r\n const item = _control[k];\r\n if (e.label === item.label) {\r\n _dataJson.push({\r\n Key: item.label,\r\n Value: controlValue[e.label],\r\n logicid: logic.logicid,\r\n });\r\n }\r\n }\r\n });\r\n\r\n responseDataSourceLoadRelated.data = await onDatareladToLoadData(\r\n _dataJson\r\n );\r\n\r\n if (responseDataSourceLoadRelated.data.length > 0) {\r\n for (let i = 0; i < jsonValue.relatedvalue.length; i++) {\r\n const relateValue = jsonValue.relatedvalue[i];\r\n for (let j = 0; j < controlTemplate.attribute.column.length; j++) {\r\n const item = controlTemplate.attribute.column[j];\r\n for (\r\n let k = 0;\r\n k < responseDataSourceLoadRelated.data.length;\r\n k++\r\n ) {\r\n const relate = responseDataSourceLoadRelated.data[k];\r\n for (const [keyRelate, valueRelate] of Object.entries(relate)) {\r\n if (\r\n keyRelate === relateValue.value &&\r\n relateValue.label === item.label\r\n ) {\r\n responseDataSourceLoadRelated.relateGroup.push({\r\n row: controlValue.key,\r\n col: j,\r\n valueRelate,\r\n });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n return { responseDataSourceLoadRelated, isInTable };\r\n }\r\n }\r\n }\r\n return false;\r\n };\r\n\r\n const onProcessLogicAjax = async (\r\n logic: ILogic,\r\n controlTemplate: any,\r\n controlValue: any,\r\n isInTable: boolean\r\n ) => {\r\n let responseDataSourceLoadRelated: any = {\r\n relateGroup: [],\r\n data: [],\r\n actionFrom: { row: -1, col: -1 },\r\n };\r\n const jsonValue: ILogicTypeSourceRelated =\r\n logic.jsonvalue &&\r\n logic.jsonvalue.length > 0 &&\r\n JSON.parse(logic.jsonvalue.replace(`},\\r\\n],`, \"}],\"));\r\n\r\n //body to fetch data\r\n const dataJson = {\r\n Key: controlTemplate.label,\r\n Value: controlValue,\r\n logicid: logic.logicid,\r\n };\r\n responseDataSourceLoadRelated.data = await onDataSourceLoadRelated(\r\n dataJson\r\n );\r\n //check if has response data\r\n if (responseDataSourceLoadRelated.data.length > 0) {\r\n //find control position to put data in\r\n const relateValue = jsonValue.autoloadvaluelabel.label;\r\n for (let i = 0; i < jsonValue.labelactions.length; i++) {\r\n if (jsonValue.labelactions[i].label === controlTemplate.label) {\r\n for (let j = 0; j < templateDesc?.items?.length; j++) {\r\n const item = templateDesc?.items[j];\r\n for (let k = 0; k < item.layout?.length; k++) {\r\n const layout = item?.layout[k];\r\n if (layout.template.type === \"tb\") {\r\n isInTable = true;\r\n layout.template.attribute.column.forEach(\r\n (col: any, colIdx: number) => {\r\n if (col.label === relateValue) {\r\n responseDataSourceLoadRelated.relateGroup.push({\r\n row: j,\r\n col: k,\r\n relateValue,\r\n tableCol: colIdx,\r\n });\r\n }\r\n }\r\n );\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n return { responseDataSourceLoadRelated, isInTable };\r\n }\r\n\r\n return { responseDataSourceLoadRelated, isInTable };\r\n };\r\n\r\n //process datalineapprove logic\r\n const onProcessLogicLineApprove = async (\r\n logic: ILogic,\r\n controlTemplate: any,\r\n controlValue: any,\r\n control: any\r\n ) => {\r\n const jsonValue: ILogicTypeDataLineApprove =\r\n logic.jsonvalue &&\r\n logic.jsonvalue.length > 0 &&\r\n JSON.parse(logic.jsonvalue.replace(`},\\r\\n],`, \"}],\"));\r\n\r\n const conditionsValue = onFilterCondotionsValue(\r\n jsonValue,\r\n control,\r\n controlTemplate,\r\n controlValue\r\n );\r\n\r\n if (conditionsValue.length > 0) {\r\n return JSON.stringify({\r\n logicid: logic.logicid,\r\n conditions: conditionsValue,\r\n });\r\n }\r\n return false;\r\n };\r\n const onProcessLogicDataRelatedToLoadData = async (\r\n logic: ILogic,\r\n controlTemplate: any,\r\n controlValue: any,\r\n control: any,\r\n isInTable: boolean\r\n ) => {\r\n const jsonValue: ILogicTypeReladToLoadData =\r\n logic.jsonvalue &&\r\n logic.jsonvalue.length > 0 &&\r\n JSON.parse(logic.jsonvalue.replace(`},\\r\\n],`, \"}],\"));\r\n const { dataJson, loadTo, actionFrom } = onFindDataJson(\r\n controlTemplate,\r\n controlValue,\r\n control,\r\n jsonValue,\r\n logic.logicid,\r\n isInTable\r\n );\r\n console.log(dataJson);\r\n\r\n if (dataJson) {\r\n // check if has response data\r\n if (dataJson.length > 0) {\r\n if (isFirstRun.current || checkIfLogicsHaveValue(dataJson)) {\r\n const rawData: any = await onDatareladToLoadData(dataJson);\r\n\r\n if (rawData && loadTo) {\r\n let data = formatKeyLogicData({ data: rawData });\r\n\r\n return { data, loadTo, actionFrom };\r\n }\r\n }\r\n }\r\n }\r\n return false;\r\n };\r\n\r\n const checkIfLogicsHaveValue = (dataJson: any[]) => {\r\n let _bool = false;\r\n dataJson.forEach((data) => {\r\n Object.keys(data).map((key) => {\r\n if (key.toLowerCase() === \"value\") {\r\n _bool = true;\r\n }\r\n });\r\n });\r\n\r\n return _bool;\r\n };\r\n\r\n const checkIfGetData = (data: any[]) => {\r\n let _bool = true;\r\n\r\n for (let i = 0; i < data.length; i++) {\r\n if (data[i].item === \"\") {\r\n _bool = false;\r\n return _bool;\r\n }\r\n }\r\n if (data.length === 1 && data[0].item === \"-- Please Select --\") {\r\n _bool = false;\r\n return _bool;\r\n }\r\n return _bool;\r\n };\r\n\r\n const onProcessLogic = async (\r\n logic: ILogic,\r\n controlTemplate: ISelectDropdownTemplate | any,\r\n controlValue: any,\r\n _control: any,\r\n isInTable: boolean,\r\n sumRes?: any\r\n ): Promise<{\r\n type:\r\n | \"control\"\r\n | \"lineapprove\"\r\n | \"table\"\r\n | \"table_dd_to_dd\"\r\n | \"controlValue\"\r\n | null;\r\n value: any;\r\n controls?: any;\r\n }> => {\r\n let responseDataSourceLoadRelated: any = {\r\n relateGroup: [],\r\n data: [],\r\n };\r\n\r\n const controlString = _control\r\n ? JSON.stringify(_control)\r\n : JSON.stringify(templateDesc.items);\r\n\r\n let newControl;\r\n try {\r\n if (controlString) {\r\n newControl = JSON.parse(controlString);\r\n }\r\n if (logic) {\r\n //find logic that control have\r\n\r\n if (logic.logictype === LogicType.DataSourceRelated) {\r\n const responseData = await onProcessLogicDataSourceRelated(\r\n logic,\r\n controlTemplate,\r\n controlValue,\r\n isInTable,\r\n newControl\r\n );\r\n\r\n if (responseData) {\r\n //check if this control in table\r\n if (controlTemplate.type === \"tb\" && isInTable) {\r\n //format value to data in template type = table\r\n const ee = returnToValure(controlTemplate, controlValue);\r\n\r\n let newColumn: any = {};\r\n\r\n for (\r\n let i = 0;\r\n i <\r\n responseData.responseDataSourceLoadRelated.relateGroup.length;\r\n i++\r\n ) {\r\n //put data to specific row\r\n const relateGroup =\r\n responseData.responseDataSourceLoadRelated.relateGroup[i];\r\n newControl[controlValue.rowTemplate].layout[\r\n controlValue.colTemplate\r\n ].data.row[relateGroup.row] = ee;\r\n\r\n newControl[controlValue.rowTemplate].layout[\r\n controlValue.colTemplate\r\n ].data.row[relateGroup.row][relateGroup.col].value =\r\n relateGroup.valueRelate;\r\n\r\n //format value to row value\r\n newColumn = formatToColumns(\r\n controlTemplate.attribute.column,\r\n newControl[controlValue.rowTemplate].layout[\r\n controlValue.colTemplate\r\n ].data.row[relateGroup.row]\r\n );\r\n }\r\n\r\n const responseDataTable = {\r\n ...newColumn,\r\n key: controlValue.key,\r\n };\r\n\r\n return { type: \"table\", value: responseDataTable };\r\n } else {\r\n for (\r\n let i = 0;\r\n i <\r\n responseData.responseDataSourceLoadRelated.relateGroup.length;\r\n i++\r\n ) {\r\n const relateGroup =\r\n responseData.responseDataSourceLoadRelated.relateGroup[i];\r\n\r\n for (\r\n let j = 0;\r\n j < responseData.responseDataSourceLoadRelated.data.length;\r\n j++\r\n ) {\r\n const relateData =\r\n responseData.responseDataSourceLoadRelated.data[j];\r\n\r\n if (\r\n newControl[relateGroup.row].layout[relateGroup.col].template\r\n .type === \"cb\"\r\n ) {\r\n let items =\r\n newControl[relateGroup.row].layout[relateGroup.col]\r\n .template.attribute.items;\r\n const resVals: string[] =\r\n relateData[relateGroup.relateValue.value].split(\",\");\r\n\r\n items = items.map((e: any) => {\r\n if (resVals.includes(e.item)) {\r\n return \"Y\";\r\n }\r\n return \"N\";\r\n });\r\n newControl[relateGroup.row].layout[\r\n relateGroup.col\r\n ].data.item = items;\r\n newControl[relateGroup.row].layout[\r\n relateGroup.col\r\n ].data.value = relateData[relateGroup.relateValue.value];\r\n } else {\r\n newControl[relateGroup.row].layout[\r\n relateGroup.col\r\n ].data.value = relateData[relateGroup.relateValue.value];\r\n }\r\n if (\r\n callGenAutoNumber(\r\n autoNumFormat,\r\n newControl[relateGroup.row].layout[relateGroup.col]\r\n .template\r\n )\r\n ) {\r\n newControl = await genAutoNum(\r\n newControl,\r\n autoNumFormat,\r\n memoDetail.template_id,\r\n memoDetail.status\r\n );\r\n }\r\n }\r\n }\r\n return { type: \"control\", value: newControl };\r\n }\r\n }\r\n } else if (logic.logictype === LogicType.Reference) {\r\n const responseData = await onProcessLogicReference(\r\n logic,\r\n controlTemplate,\r\n controlValue,\r\n newControl\r\n );\r\n\r\n if (responseData) {\r\n //map data from api response\r\n const permittedValues = responseData.data.map(function (\r\n value: any\r\n ) {\r\n let res: any = {};\r\n for (let i = 0; i < responseData.loadTo.length; i++) {\r\n const field = responseData.loadTo[i];\r\n res[field[\"TBColumn\"]] = value[field[\"MSTColumn\"]];\r\n }\r\n return res;\r\n });\r\n let resRow: any[] = [];\r\n\r\n if (permittedValues) {\r\n for (let i = 0; i < permittedValues.length; i++) {\r\n const perValue = permittedValues[i];\r\n\r\n //create empty table data as response api length\r\n let colData = new Array(\r\n newControl[responseData.row].layout[\r\n responseData.col\r\n ].template.attribute.column.length\r\n ).fill({ value: \"\" });\r\n\r\n //loop for put data to table\r\n for (const [key, value] of Object.entries(perValue)) {\r\n //loop throught table template column length\r\n for (\r\n let j = 0;\r\n j <\r\n newControl[responseData.row].layout[responseData.col]\r\n .template.attribute.column.length;\r\n j++\r\n ) {\r\n const _tableCol =\r\n newControl[responseData.row].layout[responseData.col]\r\n .template.attribute.column[j];\r\n\r\n // if column label = key of data response, put data in\r\n if (_tableCol.label === key) {\r\n colData[j] = { value };\r\n }\r\n }\r\n }\r\n\r\n resRow.push(colData);\r\n }\r\n\r\n newControl[responseData.row].layout[responseData.col].data.row =\r\n resRow;\r\n return { type: \"control\", value: newControl };\r\n }\r\n }\r\n } else if (logic.logictype === LogicType.DataLineApprove) {\r\n const responseData = await onProcessLogicLineApprove(\r\n logic,\r\n controlTemplate,\r\n controlValue,\r\n newControl\r\n );\r\n\r\n if (responseData) {\r\n await getLineApproveForAmount(\r\n sumRes?._amount,\r\n responseData,\r\n LogicType.DataLineApprove,\r\n controlTemplate\r\n );\r\n setIsControlLoading(false);\r\n\r\n // return { type: \"lineapprove\", value: responseData };\r\n }\r\n } else if (logic.logictype === LogicType.DataRelatedToLoadData) {\r\n const jsonValue: ILogicTypeReladToLoadData =\r\n logic.jsonvalue &&\r\n logic.jsonvalue.length > 0 &&\r\n JSON.parse(logic.jsonvalue.replace(`},\\r\\n],`, \"}],\"));\r\n const isInTable = jsonValue.labelactions\r\n .map((e) => e.labelintablestatus)\r\n .includes(\"true\");\r\n if (isInTable) {\r\n return {\r\n type: \"table_dd_to_dd\",\r\n value: null,\r\n };\r\n } else {\r\n for (let k = 0; k < newControl.length; k++) {\r\n for (let l = 0; l < newControl[k].layout.length; l++) {\r\n const _layout = newControl[k].layout[l];\r\n const _label = _layout.label || _layout.template.label;\r\n if (jsonValue.autoloadvaluelabel.label === _label) {\r\n newControl[k].layout[l].template.attribute.items = [];\r\n newControl[k].layout[l].data.value = \"-- Please Select --\";\r\n }\r\n }\r\n }\r\n return { type: \"control\", value: newControl };\r\n }\r\n } else if (logic.logictype === LogicType.DataAjaxLoadTable) {\r\n const responseData = await onProcessLogicAjax(\r\n logic,\r\n controlTemplate,\r\n controlValue,\r\n isInTable\r\n );\r\n\r\n if (responseData.isInTable) {\r\n return {\r\n type: \"table_dd_to_dd\",\r\n value: null,\r\n };\r\n } else if (responseData) {\r\n for (\r\n let i = 0;\r\n i < responseData.responseDataSourceLoadRelated.relateGroup.length;\r\n i++\r\n ) {\r\n const processData = formatKeyLogicData(\r\n responseData.responseDataSourceLoadRelated\r\n );\r\n\r\n newControl[processData.relateGroup[i].row].layout[\r\n processData.relateGroup[i].col\r\n ].template.attribute.column[\r\n processData.relateGroup[i].tableCol\r\n ].control.template.attribute.items = processData.data;\r\n }\r\n reset({\r\n items: _control,\r\n });\r\n }\r\n } else if (logic.logictype === LogicType.HideControl) {\r\n const jsonValue: ILogicTypeHideControl = JSON.parse(logic.jsonvalue);\r\n\r\n processHideControlLogic(\r\n jsonValue,\r\n newControl,\r\n \"isShow\",\r\n memoDetail,\r\n userData\r\n );\r\n return {\r\n type: \"control\",\r\n value: newControl,\r\n };\r\n } else if (logic.logictype === LogicType.ReadOnlyControl) {\r\n const jsonValue: ILogicTypeReadOnly = JSON.parse(logic.jsonvalue);\r\n processHideControlLogic(\r\n jsonValue,\r\n newControl,\r\n \"isReadOnly\",\r\n memoDetail,\r\n userData\r\n );\r\n\r\n return {\r\n type: \"control\",\r\n value: newControl,\r\n };\r\n } else if (logic.logictype === LogicType.SetValueControl) {\r\n const jsonValue: any =\r\n logic.jsonvalue &&\r\n logic.jsonvalue.length > 0 &&\r\n JSON.parse(logic.jsonvalue.replace(`},\\r\\n],`, \"}],\"));\r\n\r\n let valueToSet: any = null;\r\n jsonValue.conditions.forEach(\r\n (consGroup: { conditions: string | any[]; valuetoset: any }) => {\r\n let isConditionsSatisfied = true;\r\n\r\n for (let i = 0; i < consGroup.conditions.length; i++) {\r\n const con = consGroup.conditions[i];\r\n let conditionSatisfied = false;\r\n\r\n for (let k = 0; k < _control.length; k++) {\r\n for (let l = 0; l < _control[k].layout.length; l++) {\r\n const _layout = _control[k].layout[l];\r\n const _label = _layout.label || _layout.template.label;\r\n\r\n if (con.field === _label) {\r\n const dataValue = _layout.data.value;\r\n conditionSatisfied = checkIsCorrect(\r\n dataValue,\r\n con.operator,\r\n con.value\r\n );\r\n if (i === 0) {\r\n isConditionsSatisfied = conditionSatisfied;\r\n } else {\r\n isConditionsSatisfied =\r\n isConditionsSatisfied && conditionSatisfied;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (isConditionsSatisfied) {\r\n valueToSet = consGroup.valuetoset;\r\n }\r\n }\r\n );\r\n\r\n jsonValue.actionControl = JSON.parse(jsonValue.actionControl);\r\n if (\r\n controlTemplate.type === \"tb\" &&\r\n jsonValue.actionControl.isInTable\r\n ) {\r\n if (controlValue[jsonValue.actionControl.label] !== undefined) {\r\n controlValue[jsonValue.actionControl.label] = valueToSet;\r\n return { type: \"table\", value: controlValue };\r\n }\r\n }\r\n let hasDatalineapprove: any = null;\r\n let actionTemplate: any = null;\r\n\r\n newControl.forEach((control: { layout: any[] }) => {\r\n control.layout.forEach((layout) => {\r\n if (layout.template.label === jsonValue.actionControl.label) {\r\n layout.data.value = valueToSet;\r\n const newLogic = checkCallLogic(allLogic, layout.template);\r\n hasDatalineapprove = newLogic.find(\r\n (e) => e.logictype === \"datalineapprove\"\r\n );\r\n actionTemplate = layout;\r\n } else {\r\n try {\r\n if (\r\n layout.template.label === jsonValue.actionControl.isInTable\r\n ) {\r\n const colIdx = layout.template.attribute.column\r\n ?.map((e: any) => e.label)\r\n .indexOf(jsonValue.actionControl.label);\r\n\r\n layout.data.row?.map((row: any) => {\r\n row[colIdx].value = valueToSet;\r\n });\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n }\r\n });\r\n });\r\n\r\n if (callGenAutoNumber(autoNumFormat, actionTemplate.template)) {\r\n newControl = await genAutoNum(\r\n newControl,\r\n autoNumFormat,\r\n memoDetail.template_id,\r\n memoDetail.status\r\n );\r\n }\r\n calculateAdvanceForm(newControl);\r\n if (hasDatalineapprove) {\r\n const res = await onProcessLogicLineApprove(\r\n hasDatalineapprove,\r\n actionTemplate.template,\r\n actionTemplate.data.value,\r\n newControl\r\n );\r\n if (res) {\r\n await getLineApproveForAmount(\r\n sumRes?._amount,\r\n res,\r\n LogicType.DataLineApprove,\r\n controlTemplate\r\n );\r\n setIsControlLoading(false);\r\n\r\n // return { type: \"lineapprove\", value: responseData };\r\n }\r\n }\r\n return { type: \"control\", value: newControl };\r\n }\r\n setIsControlLoading(false);\r\n }\r\n } catch (error) {\r\n console.error(\r\n \"onProcessLogic=>error\",\r\n error,\r\n \"Logic=> \" + logic,\r\n \"value=> \",\r\n controlValue\r\n );\r\n }\r\n\r\n return { type: null, value: null };\r\n };\r\n\r\n const onDataSourceLoadRelated = async (dataJson: any) => {\r\n const dataSource = await fetch(\r\n \"api/TemplateList/TemplateByid/LoadLogic/GetLoadDataFormControl\",\r\n {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n }\r\n )\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n // setFormLoading(false);\r\n\r\n // onChangeValueForm(data, relateGroup);\r\n });\r\n return dataSource;\r\n };\r\n\r\n const onFindDataJson = (\r\n controlTemplate: any,\r\n controlValue: string,\r\n _control: any,\r\n jsonValue: ILogicTypeReladToLoadData,\r\n logicid: string,\r\n isInTable: boolean\r\n ) => {\r\n const response: {\r\n dataJson: any[];\r\n loadTo: { row: number; col: number };\r\n actionFrom: { row: number; col: number };\r\n } = {\r\n dataJson: [],\r\n loadTo: { row: -1, col: -1 },\r\n actionFrom: { row: -1, col: -1 },\r\n };\r\n\r\n if (!isInTable) {\r\n for (let j = 0; j < jsonValue.labelactions.length; j++) {\r\n const labelaction = jsonValue.labelactions[j].label;\r\n\r\n if (controlTemplate.label === labelaction) {\r\n const conditions = jsonValue.conditions;\r\n conditions.forEach((e) => {\r\n for (let k = 0; k < _control.length; k++) {\r\n const item = _control[k];\r\n for (let l = 0; l < item.layout.length; l++) {\r\n const _layout = item.layout[l];\r\n const _label = _layout.label || _layout.template.label;\r\n if (e.label === _label) {\r\n response.dataJson.push({\r\n Key: _label,\r\n Value: _layout.data.value,\r\n logicid: logicid,\r\n });\r\n }\r\n if (jsonValue.autoloadvaluelabel.label === _label) {\r\n response.loadTo = {\r\n row: k,\r\n col: l,\r\n };\r\n }\r\n }\r\n }\r\n });\r\n }\r\n }\r\n } else {\r\n const _controlValue = controlValue as any;\r\n for (let j = 0; j < jsonValue.labelactions.length; j++) {\r\n const labelaction = jsonValue.labelactions[j];\r\n\r\n for (let k = 0; k < controlTemplate.attribute.column.length; k++) {\r\n const column = controlTemplate.attribute.column[k];\r\n\r\n if (column.control.template.label === labelaction.label) {\r\n const conditions = jsonValue.conditions;\r\n\r\n conditions.forEach((e) => {\r\n for (let k = 0; k < _control.length; k++) {\r\n const item = _control[k];\r\n for (let l = 0; l < item.layout.length; l++) {\r\n const _layout = item.layout[l];\r\n const _label = _layout.label || _layout.template.label;\r\n\r\n if (e.label === _label) {\r\n response.dataJson.push({\r\n Key: _label,\r\n Value: _layout.data.value,\r\n logicid: logicid,\r\n });\r\n } else if (column.control.template.label === e.label) {\r\n const exit = response.dataJson.find(\r\n (e) => e.Key === column.control.template?.label\r\n );\r\n if (!exit) {\r\n response.dataJson.push({\r\n Key: column.control.template?.label,\r\n Value:\r\n _controlValue.values[column.control.template.label],\r\n logicid: logicid,\r\n });\r\n }\r\n }\r\n }\r\n }\r\n });\r\n\r\n response.actionFrom = { row: _controlValue.key, col: k };\r\n\r\n // }\r\n }\r\n if (\r\n column.control.template.label === jsonValue.autoloadvaluelabel.label\r\n ) {\r\n response.loadTo = {\r\n row: _controlValue.key,\r\n col: k,\r\n };\r\n }\r\n }\r\n }\r\n }\r\n\r\n return response;\r\n };\r\n const onDatareladToLoadData = async (dataJson: any) => {\r\n const response = await fetch(\r\n \"api/TemplateList/TemplateByid/LoadLogic/GetLoadDataFormControl2\",\r\n {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n }\r\n )\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch(() => false);\r\n return response;\r\n };\r\n\r\n const onFilterCondotionsValue = (\r\n jsonValue: ILogicTypeDataLineApprove,\r\n _control: any,\r\n controlTemplate: any,\r\n controlValue: any\r\n ) => {\r\n let conditions: { label: string; value: string; action?: string }[] = [];\r\n for (let i = 0; i < jsonValue.Conditions.length; i++) {\r\n const condition = jsonValue.Conditions[i];\r\n\r\n if (_control) {\r\n for (let j = 0; j < _control.length; j++) {\r\n const item = _control[j];\r\n\r\n for (let k = 0; k < item.layout.length; k++) {\r\n const layout = item.layout[k];\r\n\r\n if (condition.label === layout.template.label) {\r\n if (layout.template.type === \"dd\") {\r\n conditions.push({\r\n label: condition.label,\r\n value: layout.data.value\r\n ? layout.data.value.toLocaleString()\r\n : \"0\",\r\n action: condition.action,\r\n });\r\n } else if (layout.template.type === \"cb\") {\r\n conditions.push({\r\n label: condition.label,\r\n value: layout.data.value,\r\n action: condition.action,\r\n });\r\n } else {\r\n conditions.push({\r\n label: condition.label,\r\n value: layout.data.value\r\n ? layout.data.value.toLocaleString()\r\n : \"0\",\r\n action: condition.action,\r\n });\r\n }\r\n }\r\n }\r\n }\r\n\r\n // }\r\n }\r\n }\r\n return conditions;\r\n };\r\n\r\n return (\r\n \r\n \r\n {fields.map((_control: any, idx: number) => {\r\n let dd: string = \"set-padding-core-control\";\r\n if (!_control.layout.every((e: any) => !e.isShow)) {\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n })}\r\n \r\n \r\n );\r\n};\r\n","import { Dropdown, InputRef, Menu, Typography } from \"antd\";\r\nimport { Form, Table, Modal } from \"antd\";\r\nimport type { FormInstance } from \"antd/lib/form\";\r\nimport { Button } from \"primereact/button\";\r\nimport { TieredMenu } from \"primereact/tieredmenu\";\r\nimport React, { useContext, useEffect, useRef, useState } from \"react\";\r\nimport { Col } from \"react-bootstrap\";\r\nimport { IoEllipsisVertical } from \"react-icons/io5\";\r\nimport { IMemoDetailModel } from \"../../../IRequestModel/IMemoDetailModel\";\r\nimport { GetRefDocFormTable } from \"../../../Services/MemoService\";\r\nimport {\r\n IColumn,\r\n SelectDataDialog,\r\n} from \"../../Select/SelectionDataDialog/SelectDataDialog\";\r\nimport { AttachmentTableComponent } from \"../AttachmentUploadControlComponent/AttachmentComponent\";\r\nimport { DatePickerTableComponent } from \"../DatePickerControlComponent/DatePickerControlComponent\";\r\nimport { InputTableComponent } from \"../InputControlComponent/InputControlComponent\";\r\nimport { InputNumberTableComponent } from \"../InputNumberControlComponent/InputNumberControlComponent\";\r\nimport { CheckboxTableComponent } from \"../MainCheckboxControl/CheckboxComponent\";\r\nimport { SelectCheckboxTableComponent } from \"../MainCheckboxControl/SelectCheckboxComponent\";\r\nimport { RadioTableComponent } from \"../RadioControlComponent/RadioControlComponent\";\r\nimport { SelectDropdownTableComponent } from \"../SelectDropdownContronComponent/SelectDropdownContronComponent\";\r\nimport { InputTextAreaTableComponent } from \"../TextAreaControlComponent/InputTextAreaControlComponent\";\r\nimport MoveToDialog from \"./MoveToDialog\";\r\nimport \"./TableComponentCSS.css\";\r\nimport { GetReportById } from \"../../../Services/ReportService\";\r\nimport TableFooter from \"./TableFooter\";\r\n\r\nimport moment from \"moment\";\r\nimport ComponentLabel from \"../../ControlComponents/ComponentLabel\";\r\nimport {\r\n CheckCircleOutlined,\r\n CloseSquareOutlined,\r\n FileTextOutlined,\r\n} from \"@ant-design/icons\";\r\nimport ExcelTablePreview from \"./ExcelTablePreview\";\r\nimport { ILogicRequestBody } from \"../../../IRequestModel/ILogicModel\";\r\nimport {\r\n checkIsCorrect,\r\n isConditionSatisfiedFunc,\r\n} from \"../../../Helper/LogicHelper\";\r\nimport { balanceParentheses } from \"../../../Helper/RequestScreenHelper\";\r\nimport { LogicType } from \"../../../constants/logic-type\";\r\nimport { UseFormGetValues } from \"react-hook-form\";\r\nimport _ from \"lodash\";\r\n\r\nconst { confirm } = Modal;\r\nconst { Text } = Typography;\r\n\r\nconst EditableContext = React.createContext | null>(null);\r\n\r\nexport interface tableSelectOption {\r\n actionsCol: {\r\n label: string;\r\n rowIdx: number;\r\n colIdx: number;\r\n value: any;\r\n };\r\n targetCol: {\r\n label: string;\r\n rowIdx: number;\r\n colIdx: number;\r\n options: { item: string }[];\r\n };\r\n}\r\n\r\nexport interface Item {\r\n key: string;\r\n name: string;\r\n age: string;\r\n address: string;\r\n}\r\ninterface EditableRowProps {\r\n index: number;\r\n}\r\n\r\nexport type TableInputProps = {\r\n rowIdx?: number;\r\n colIdx?: number;\r\n template: any;\r\n name: string;\r\n saveFunc: any;\r\n inputRef: any;\r\n value?: any;\r\n isEditing: boolean;\r\n onEdit: () => void;\r\n children: any;\r\n canEditDoc: any;\r\n checkActionPage: any;\r\n buttonType: string;\r\n record?: any;\r\n allLogicInTable?: ILogicRequestBody[];\r\n actionAlert?: any;\r\n toggleEdit?: any;\r\n getValues?: UseFormGetValues<{\r\n items: any;\r\n }>;\r\n};\r\n\r\nconst EditableRow: React.FC = ({ index, ...props }) => {\r\n const [form] = Form.useForm();\r\n return (\r\n
\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\ninterface EditableCellProps {\r\n title: React.ReactNode;\r\n editable: boolean;\r\n children: React.ReactNode;\r\n dataIndex: keyof Item;\r\n record: any;\r\n handleSave: (\r\n record: Item,\r\n dataIndex: string,\r\n responseControlChange?: any\r\n ) => void;\r\n template: any;\r\n onControlChange: any;\r\n rowTemplate: any;\r\n colTemplate: any;\r\n canEditDoc: any;\r\n checkActionPage: any;\r\n buttonType: string;\r\n isError: boolean;\r\n allLogicInTable: ILogicRequestBody[];\r\n actionAlert?: any;\r\n setButtonType: (buttonType: any) => void;\r\n refDocOptions: any[];\r\n refTableColumn: any[];\r\n getValues: UseFormGetValues<{\r\n items: any;\r\n }>;\r\n // isControlLoading: any;\r\n}\r\n\r\nconst EditableCell: React.FC = ({\r\n title,\r\n editable,\r\n children,\r\n dataIndex,\r\n record,\r\n handleSave,\r\n template,\r\n onControlChange,\r\n rowTemplate,\r\n colTemplate,\r\n canEditDoc,\r\n checkActionPage,\r\n buttonType,\r\n setButtonType,\r\n isError,\r\n allLogicInTable,\r\n refDocOptions,\r\n refTableColumn,\r\n actionAlert,\r\n getValues,\r\n ...restProps\r\n}) => {\r\n const [editing, setEditing] = useState(false);\r\n const inputRef = useRef(null);\r\n const form = useContext(EditableContext)!;\r\n const [memoByOption, setMemoByOption] = useState(0);\r\n const [haveLink, setHaveLink] = useState();\r\n // const [templateState, setTemplateState] = useTemplateDescContext();\r\n useEffect(() => {\r\n if (editing) {\r\n setTimeout(() => {\r\n inputRef?.current!?.focus({\r\n cursor: \"end\",\r\n });\r\n }, 0);\r\n }\r\n }, [editing]);\r\n\r\n const toggleEdit = async () => {\r\n setEditing((prev) => !prev);\r\n form.setFieldsValue({ [dataIndex]: record[dataIndex] });\r\n };\r\n\r\n const save = async (value?: any, type?: any) => {\r\n try {\r\n // let values = await form.getFieldsValue();\r\n //let values = await form.validateFields();\r\n let values = await form.getFieldsValue();\r\n let responseControlChange = null;\r\n\r\n responseControlChange = await onControlChange(\r\n template,\r\n { ...record, ...values, rowTemplate, colTemplate, dataIndex, values },\r\n true\r\n );\r\n\r\n if (responseControlChange && responseControlChange.type === \"table\") {\r\n values = responseControlChange.value;\r\n }\r\n\r\n handleSave({ ...record, ...values }, dataIndex, responseControlChange);\r\n\r\n toggleEdit();\r\n } catch (errInfo) {\r\n if (process.env.NODE_ENV === \"development\") {\r\n console.error(\"Save failed:\", errInfo);\r\n }\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n findRefMemoId(record);\r\n }, [memoByOption, refDocOptions]);\r\n\r\n const findRefMemoId = (record: any) => {\r\n const res = refDocOptions.find((e: any) => {\r\n const ff = template?.attribute?.mergecolumnrefdoc?.find((col: any) => {\r\n return e[col.RefDocLabel] === record[col.ColumnLabel];\r\n });\r\n const gg = template?.attribute?.mergecolumnrefdoc?.find(\r\n (col: any) => col.HaveLink === true\r\n );\r\n\r\n if (gg) {\r\n setHaveLink(gg);\r\n }\r\n return ff !== undefined;\r\n });\r\n\r\n if (res !== undefined) {\r\n setMemoByOption(res.Memo_MemoId);\r\n }\r\n };\r\n let childNode = dataIndex ? <> : children;\r\n const logicsOfTable =\r\n allLogicInTable?.filter(\r\n (e) =>\r\n e.logictype === LogicType.ReadOnlyControl ||\r\n e.logictype === LogicType.HideControl ||\r\n e.logictype === LogicType.SetValueControl\r\n ) || [];\r\n\r\n if (editable) {\r\n for (let i = 0; i < template.attribute.column.length; i++) {\r\n let _col = template.attribute.column[i];\r\n const label = _col.control.template.label\r\n ? _col.control.template.label\r\n : _col.label;\r\n const type = _col.control.template.type;\r\n const logicInCol = logicsOfTable.filter((e) => e.Key === dataIndex);\r\n\r\n let isShowOnLogic = true;\r\n if (logicInCol.length > 0) {\r\n logicInCol.forEach((logic) => {\r\n if (logic.logictype === LogicType.ReadOnlyControl) {\r\n let isConditionSatisfied = false;\r\n Object.keys(record).forEach((key) => {\r\n if (!isConditionSatisfied) {\r\n isConditionSatisfied = isConditionSatisfiedFunc(\r\n key,\r\n record[key],\r\n logic?.jsonValue\r\n );\r\n }\r\n });\r\n if (logic.Key === _col.label) {\r\n _col.isReadOnly = isConditionSatisfied;\r\n }\r\n } else if (logic.logictype === LogicType.HideControl) {\r\n let isConditionSatisfied = false;\r\n Object.keys(record).forEach((key) => {\r\n if (!isConditionSatisfied) {\r\n isConditionSatisfied = isConditionSatisfiedFunc(\r\n key,\r\n record[key],\r\n logic?.jsonValue\r\n );\r\n }\r\n });\r\n\r\n isShowOnLogic = !isConditionSatisfied;\r\n }\r\n });\r\n }\r\n\r\n if (isShowOnLogic) {\r\n if (label === dataIndex) {\r\n if (type === \"ta\") {\r\n childNode = (\r\n \r\n );\r\n } else if (type === \"dd\") {\r\n childNode = (\r\n \r\n );\r\n } else if (type === \"l\") {\r\n } else if (type === \"c\") {\r\n childNode = (\r\n \r\n );\r\n } else if (type === \"cb\") {\r\n if (_col.control.template.attribute.display === \"dd\") {\r\n childNode = (\r\n \r\n );\r\n } else {\r\n childNode = (\r\n \r\n );\r\n }\r\n } else if (type === \"t\") {\r\n var getUrl = window.location;\r\n var baseUrl = getUrl.protocol + \"//\" + getUrl.host;\r\n\r\n childNode =\r\n haveLink &&\r\n haveLink.HaveLink === true &&\r\n haveLink.ColumnLabel === label ? (\r\n \r\n {record[dataIndex]}\r\n \r\n ) : (\r\n \r\n );\r\n // }\r\n } else if (type === \"r\") {\r\n childNode = (\r\n \r\n );\r\n } else if (type === \"d\") {\r\n childNode = (\r\n \r\n );\r\n } else if (type === \"at\") {\r\n childNode = (\r\n \r\n );\r\n } else if (type === \"bt\") {\r\n } else if (type === \"id\") {\r\n return <>1;\r\n } else if (type === \"action\") {\r\n // return ;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n return (\r\n \r\n
{childNode}
\r\n \r\n );\r\n};\r\n\r\ntype EditableTableProps = Parameters[0];\r\n\r\ntype ColumnTypes = Exclude;\r\ntype TableProps = {\r\n _columns: any;\r\n _data: any;\r\n onChange: any;\r\n layout: any;\r\n isControlLoading: any;\r\n onControlChange: any;\r\n rowTemplate: any;\r\n colTemplate: any;\r\n canEditDoc: any;\r\n checkActionPage: any;\r\n buttonType: string;\r\n tableSummary?: any;\r\n onCheckInterface: any;\r\n onSubmit: any;\r\n isError: boolean;\r\n memoDetail: IMemoDetailModel;\r\n updateTableSummaries: (tableTemp: any, value: any) => void;\r\n checkInterFace: any;\r\n interfaceButton: any;\r\n allLogicInTable: ILogicRequestBody[];\r\n actionAlert?: any;\r\n setButtonType: (data: any) => void;\r\n colText?: number;\r\n rowIdx: number;\r\n colIdx: number;\r\n getValues: UseFormGetValues<{\r\n items: any;\r\n }>;\r\n};\r\n\r\nconst TableComponent: React.FC = ({\r\n _columns,\r\n _data,\r\n onChange,\r\n layout,\r\n isControlLoading,\r\n onControlChange,\r\n rowTemplate,\r\n colTemplate,\r\n canEditDoc,\r\n checkActionPage,\r\n buttonType,\r\n tableSummary,\r\n onCheckInterface,\r\n onSubmit,\r\n getValues,\r\n isError,\r\n memoDetail,\r\n allLogicInTable,\r\n updateTableSummaries,\r\n checkInterFace,\r\n interfaceButton,\r\n actionAlert,\r\n setButtonType,\r\n colIdx,\r\n rowIdx,\r\n colText,\r\n}) => {\r\n const [moveToDialogVisible, setMoveToDialogVisible] =\r\n useState(false);\r\n const [moveFormIndex, setMoveFormIndex] = useState(-1);\r\n\r\n const [summary, setSummary] = useState();\r\n const [tableLoad, setTableLoad] = useState(false);\r\n const [refTableDialogVisible, setRefTableDialogVisible] =\r\n useState(false);\r\n const [refTableLoading, setRefTableLoading] = useState(false);\r\n const [refDocOptions, setRefDocOptions] = useState([]);\r\n const [refTableColumn, setRefTableColumn] = useState([]);\r\n const [tableFooter, setTableFooter] = useState(\r\n layout.template.attribute?.footerTable?.rows || []\r\n );\r\n const [exportFile, setExportFile] = useState([]);\r\n const [loadFile, setLoadFile] = useState(false);\r\n useEffect(() => {\r\n if (layout.template.attribute.enabledpopupdefdoc === \"Y\") {\r\n fetchRefDocFormTable();\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n setSummary(tableSummary);\r\n }, [tableSummary]);\r\n\r\n const handleDelete = (key: React.Key) => {\r\n const newData = _data.filter((item: any) => item.key !== key);\r\n if (newData.length === 0) {\r\n summaryFunc();\r\n }\r\n // onChange({ row: [...returnToValue(newData)] });\r\n onChange({ ...layout, data: { row: returnToValue(newData) } });\r\n\r\n setTimeout(() => {\r\n setTableLoad(false);\r\n }, 500);\r\n };\r\n\r\n const menu = useRef([]);\r\n\r\n function createRowCopy(key: number) {\r\n let newData: any = {\r\n key: key,\r\n };\r\n const cols = layout.template.attribute.column;\r\n const tableLogic = allLogicInTable.filter((e) => {\r\n if (e.logictype === LogicType.SetValueControl) {\r\n return e.actionlabel.split(\"|\")[1] === layout.template.label;\r\n } else {\r\n return e.Key === layout.template.label;\r\n }\r\n });\r\n\r\n cols.map((col: any) => {\r\n let type = col.control.template.type;\r\n let colLogic = tableLogic.find((e) => {\r\n return e.actionlabel?.split(\"|\")[0] === col.control.template.label;\r\n });\r\n\r\n if (type == \"cb\") {\r\n newData[col.label] = col.control.template.attribute.items\r\n .filter((e: any) => e.check === \"Y\")\r\n .map((e: any) => e.item)\r\n .join(\",\");\r\n } else if (type == \"t\" || type == \"ta\" || type == \"c\") {\r\n newData[col.label] = col.control.template.attribute.default\r\n ? col.control.template.attribute.default\r\n : colLogic\r\n ? colLogic.Value\r\n : null;\r\n\r\n if (newData[col.label]) {\r\n newData[col.label] = newData[col.label].replace(\r\n /\\[.+\\]/gi,\r\n (x: any) => {\r\n let fmt = x.replace(\"[\", \"\").replace(\"]\", \"\");\r\n return moment().format(fmt);\r\n }\r\n );\r\n }\r\n } else if (type == \"dd\" || type === \"r\") {\r\n newData[col.label] = col.control.template.attribute.items\r\n .filter((e: any) => e.checked === \"Y\")\r\n .map((e: any) => e.item)\r\n .join(\",\");\r\n } else if (type === \"d\") {\r\n if (col.control.template.attribute.default != \"\") {\r\n if (col.control.template.attribute.defaultType === \"Days\") {\r\n let defaultDate = parseInt(col.control.template.attribute.default);\r\n let defValue = \"\";\r\n\r\n if (defaultDate > 0) {\r\n defValue = moment()\r\n .add(defaultDate, \"days\")\r\n .format(\"DD MMM YYYY\");\r\n } else {\r\n defValue = moment()\r\n .subtract(defaultDate * -1, \"days\")\r\n .format(\"DD MMM YYYY\");\r\n }\r\n\r\n newData[col.label] = defValue;\r\n }\r\n }\r\n } else {\r\n newData[col.label] = null;\r\n }\r\n });\r\n tableLogic.forEach((logic) => {\r\n if (logic?.logictype === LogicType.SetValueControl) {\r\n let keyData = null;\r\n const tempDesc = getValues();\r\n\r\n tempDesc.items.forEach((items: any) => {\r\n items.layout.forEach((layout: any) => {\r\n if (layout.template.label === logic.Key) {\r\n keyData = layout;\r\n if (\r\n checkIsCorrect(logic.Value, logic.operator, layout.data.value)\r\n ) {\r\n newData[logic.actionlabel.split(\"|\")[0]] = logic.valuetoset;\r\n }\r\n }\r\n });\r\n });\r\n\r\n if (!keyData) {\r\n Object.keys(newData).forEach((key) => {\r\n if (logic.Key === key) {\r\n if (checkIsCorrect(logic.Value, logic.operator, newData[key])) {\r\n newData[logic.actionlabel.split(\"|\")[0]] = logic.valuetoset;\r\n }\r\n }\r\n });\r\n }\r\n }\r\n });\r\n\r\n return newData;\r\n }\r\n\r\n const handleAdd = () => {\r\n let newData: any = createRowCopy(_data.length);\r\n\r\n let eiei = [..._data, newData];\r\n setButtonType(\"addrow\");\r\n onChange({ ...layout, data: { row: returnToValue(eiei) } });\r\n };\r\n\r\n const handleAddMultiRow = (newRows: any[]) => {\r\n let newData: any = newRows;\r\n let rows: any[] = [..._data];\r\n newData.map((e: any) => {\r\n rows.push(e);\r\n });\r\n rows.map((e: any, idx: number) => {\r\n e.key = idx;\r\n });\r\n\r\n onChange({ ...layout, data: { row: returnToValue(rows) } });\r\n };\r\n\r\n const returnToValue = (_data: any) => {\r\n let newJa: any = [];\r\n for (let i = 0; i < _data.length; i++) {\r\n const _eiei = _data[i];\r\n let gogo = [];\r\n for (let j = 0; j < layout.template.attribute.column.length; j++) {\r\n const column = layout.template.attribute.column[j];\r\n gogo.push({ value: _eiei[column.label] });\r\n }\r\n newJa.push(gogo);\r\n }\r\n\r\n return newJa;\r\n };\r\n\r\n const calCulateFunc = (row: any) => {\r\n try {\r\n if (layout.template.formula !== \"\") {\r\n const formulas = layout.template.formula.split(\"|\");\r\n const columns = layout.template.attribute.column;\r\n\r\n formulas.map((formula: string) => {\r\n let resulstField = formula.split(\"=\");\r\n let formu: string = resulstField[0];\r\n let resultColIdx = -1;\r\n let resultDecimal = 0;\r\n let result: number = 0;\r\n if (formu.startsWith(\"Min\") || formu.startsWith(\"Max\")) {\r\n const operator = formu.startsWith(\"Max\") ? \"Max\" : \"Min\";\r\n const fields = formu\r\n .substring(formu.indexOf(\"(\") + 1, formu.lastIndexOf(\")\"))\r\n .split(\",\");\r\n\r\n fields.forEach((field) => {\r\n columns.forEach((col: any, colIdx: number) => {\r\n if (field === col.label) {\r\n const value = Number(\r\n row[col.label]?.toString()?.replaceAll(\",\", \"\")\r\n );\r\n\r\n if (!Number.isNaN(value))\r\n if (\r\n result === 0 ||\r\n (operator === \"Max\" && value > result) ||\r\n (operator === \"Min\" && value < result)\r\n ) {\r\n result = value;\r\n }\r\n }\r\n if (col.label === resulstField[1]) {\r\n resultColIdx = colIdx;\r\n resultDecimal = Number(\r\n col.control.template.attribute.decimal\r\n );\r\n }\r\n });\r\n });\r\n } else if (formu.startsWith(\"diffdate\")) {\r\n const fields = formu\r\n .substring(formu.indexOf(\"(\") + 1, formu.lastIndexOf(\")\"))\r\n .split(\",\");\r\n\r\n let firstDate = moment(row[fields[0]]);\r\n let lastDate = moment(row[fields[1]]);\r\n let res = firstDate.diff(lastDate, \"days\");\r\n if (res >= 1) {\r\n res += 1;\r\n }\r\n\r\n result = res;\r\n const resCol = columns.find(\r\n (col: any) => col.label === resulstField[1]\r\n );\r\n resultDecimal = Number(resCol.control.template.attribute.decimal);\r\n } else if (formu.startsWith(\"difftime\")) {\r\n const fields = formu\r\n .substring(formu.indexOf(\"(\") + 1, formu.lastIndexOf(\")\"))\r\n .split(\",\");\r\n\r\n let firstDate = moment(row[fields[0]], \"h.mm\");\r\n let lastDate = moment(row[fields[1]], \"h.mm\");\r\n let res = firstDate.diff(lastDate, \"minutes\");\r\n\r\n const hours = Math.trunc(res / 60);\r\n const remainingMinutes = res % 60;\r\n let formattedTime =\r\n res <= -1 && res >= -9\r\n ? `-0.0${Math.abs(remainingMinutes)}`\r\n : hours === -0 && res < -10\r\n ? `-${hours}.${Math.abs(remainingMinutes)}`\r\n : res < -10\r\n ? `${hours}.${Math.abs(remainingMinutes)}`\r\n : `${hours}.${remainingMinutes}`;\r\n\r\n result = Number(formattedTime);\r\n const resCol = columns.find(\r\n (col: any) => col.label === resulstField[1]\r\n );\r\n resultDecimal = Number(resCol.control.template.attribute.decimal);\r\n } else {\r\n // const allField = formu.match(/\\w+\\([^+\\-\\*/=]\\)|\\w+/g) || [];\r\n let allField: any = resulstField[0].match(/[^+\\-\\*\\/=)(]+/g) || [];\r\n\r\n allField = allField.map((e: string) => {\r\n return balanceParentheses(e);\r\n });\r\n\r\n allField.forEach((field: string) => {\r\n if (field.startsWith(\"get\")) {\r\n const labels = field\r\n .substring(field.indexOf(\"(\") + 1, field.lastIndexOf(\")\"))\r\n .split(\",\");\r\n if (labels.length > 0) {\r\n const items = getValues()?.items;\r\n for (let index = 0; index < items.length; index++) {\r\n const item = items[index];\r\n for (let j = 0; j < item.layout.length; j++) {\r\n const layout = item.layout[j];\r\n if (layout.template.label) {\r\n if (labels.includes(layout.template.label)) {\r\n formu = formu.replace(\r\n `get(${layout.template.label})`,\r\n layout.data.value !== \"NaN\"\r\n ? layout.data.value\r\n : Number(0).toFixed(\r\n layout.template.attribute.decimal\r\n )\r\n );\r\n }\r\n }\r\n }\r\n }\r\n }\r\n } else {\r\n columns.forEach((col: any, colIdx: number) => {\r\n if (field === col.label) {\r\n const decimal = Number(\r\n col.control.template.attribute.decimal\r\n );\r\n const value = Number(\r\n row[col.label]?.toString()?.replaceAll(\",\", \"\")\r\n ).toFixed(decimal);\r\n formu = formu.replace(\r\n col.label,\r\n value !== \"NaN\" ? value : Number(0).toFixed(decimal)\r\n );\r\n }\r\n if (col.label === resulstField[1]) {\r\n resultColIdx = colIdx;\r\n resultDecimal = Number(\r\n col.control.template.attribute.decimal\r\n );\r\n }\r\n });\r\n }\r\n });\r\n\r\n let dd = formu.replaceAll(\",\", \"\");\r\n\r\n result = eval(dd);\r\n }\r\n\r\n row[resulstField[1]] = result?.toFixed(resultDecimal);\r\n });\r\n }\r\n } catch (error) {\r\n console.error(\"table=>cal=>error\", error);\r\n }\r\n };\r\n\r\n const summaryFunc = () => {\r\n try {\r\n if (tableSummary) {\r\n const cols = layout.template.attribute.column;\r\n const _tableSummary = JSON.stringify(tableSummary);\r\n let _sum = JSON.parse(_tableSummary);\r\n\r\n cols.map((e: any) => {\r\n if (e.control.template.type === \"c\") {\r\n _sum[e.label] = 0;\r\n }\r\n });\r\n\r\n _data.forEach((e: any) => {\r\n cols.map((col: any) => {\r\n if (col.control.template.type === \"c\") {\r\n //ทำไว้เผื่อแก้โครงสร้าง object ที่ผิดรูป\r\n if (!e[col.control.template.label]) {\r\n col.control.template.label = col.label;\r\n }\r\n\r\n if (e[col.control.template.label]) {\r\n if (e[col.control.template.label]) {\r\n col.control.template.label = col.label;\r\n if (\r\n !Number.isNaN(\r\n Number(\r\n e[col.control.template.label]\r\n ?.toString()\r\n ?.replaceAll(\",\", \"\")\r\n )\r\n )\r\n ) {\r\n _sum[col.control.template.label] += Number(\r\n e[col.control.template.label]\r\n ?.toString()\r\n ?.replaceAll(\",\", \"\")\r\n );\r\n } else if (\r\n !Number.isNaN(Number(e[col.control.template.label]))\r\n ) {\r\n _sum[col.control.template.label] += Number(\r\n e[col.control.template.label]\r\n );\r\n }\r\n }\r\n }\r\n }\r\n });\r\n });\r\n const debouncedCalCulateTableFooter = _.debounce(\r\n calCulateTableFooter,\r\n 50\r\n );\r\n const debouncedUpdateTableSummaries = _.debounce(\r\n updateTableSummaries,\r\n 50\r\n );\r\n\r\n if (!_.isEqual(tableSummary, _sum)) {\r\n calCulateTableFooter();\r\n updateTableSummaries(layout.template, _sum);\r\n } else {\r\n debouncedCalCulateTableFooter();\r\n debouncedUpdateTableSummaries(layout.template, _sum);\r\n }\r\n }\r\n } catch (error) {\r\n console.error(\"table=>sum=>error\", error);\r\n }\r\n };\r\n\r\n useEffect(() => summaryFunc(), [_data]);\r\n\r\n const handleSave = (\r\n row: any,\r\n dataIndex: string,\r\n responseControlChange?: any\r\n ) => {\r\n const newData = [..._data];\r\n const index = newData.findIndex((item) => row.key === item.key);\r\n if (row[\"rowstate\"] !== undefined && row[\"rowstate\"] !== \"i\") {\r\n const originTemplatedesc: any = getValues();\r\n\r\n let rowData =\r\n originTemplatedesc.items[rowTemplate].layout[colTemplate].data.row[\r\n row.key\r\n ];\r\n\r\n const actionIndex = originTemplatedesc.items[rowTemplate].layout[\r\n colTemplate\r\n ].template.attribute.column.findIndex(\r\n (col: { label: any }) => col.label === dataIndex\r\n );\r\n\r\n if (\r\n rowData[actionIndex].value !== row[dataIndex] ||\r\n (rowData[actionIndex].value === null &&\r\n row.values[row.dataIndex] === \"\")\r\n ) {\r\n row[\"rowstate\"] = \"u\";\r\n } else {\r\n row[\"rowstate\"] = null;\r\n }\r\n }\r\n\r\n calCulateFunc(row);\r\n\r\n const item = newData[index];\r\n newData.splice(index, 1, {\r\n ...item,\r\n ...row,\r\n });\r\n let res = layout;\r\n\r\n if (responseControlChange && responseControlChange.type === \"control\") {\r\n for (let i = 0; i < responseControlChange.value.length; i++) {\r\n const items = responseControlChange.value[i];\r\n for (let j = 0; j < items.layout.length; j++) {\r\n const _layout = items.layout[j];\r\n if (_layout.template.label === layout.template.label) {\r\n res = _layout;\r\n }\r\n }\r\n }\r\n }\r\n onChange({ ...res, data: { row: returnToValue(newData) } });\r\n };\r\n\r\n const defColumns: any[] = _columns.map((_col: any) => {\r\n return {\r\n ..._col,\r\n };\r\n });\r\n\r\n if (canEditDoc) {\r\n defColumns.push({\r\n title: (\r\n {\r\n setButtonType(\"\");\r\n try {\r\n if (layout.template.attribute.enabledpopupdefdoc === \"Y\") {\r\n setRefTableDialogVisible(true);\r\n } else {\r\n handleAdd();\r\n }\r\n } catch (error) {\r\n console.error(\"table=>error\", error);\r\n }\r\n }}\r\n >\r\n ),\r\n className: \"action-column\",\r\n key: \"operation\",\r\n align: \"center\",\r\n fixed: \"right\",\r\n width: 50,\r\n render: (_: any, record: { key: number }) => (\r\n
{actionBodyTemplate(record.key)}
\r\n ),\r\n onCell: (record: any) => {\r\n return {\r\n onClick: (e: any) => {\r\n menu?.current[record?.key]?.toggle(e);\r\n },\r\n };\r\n },\r\n });\r\n }\r\n\r\n const addRowTo = (key: number) => {\r\n try {\r\n let rows: any[] = _data;\r\n let newData: any = createRowCopy(key);\r\n rows.splice(key, 0, newData);\r\n rows.map((row: any, idx: number) => (row.key = idx));\r\n onChange({ ...layout, data: { row: returnToValue(rows) } });\r\n\r\n setTimeout(() => {\r\n setTableLoad(false);\r\n }, 500);\r\n } catch (error) {\r\n console.error(\"table=>error\", error);\r\n }\r\n };\r\n\r\n const duplicate = (key: number) => {\r\n try {\r\n let rows: any[] = _data;\r\n let newData: any = createRowCopy(key);\r\n layout.template.attribute.column.forEach((_col: any) => {\r\n newData[_col.label] = rows[key][_col.label];\r\n });\r\n rows.splice(key, 0, newData);\r\n rows.map((row: any, idx: number) => (row.key = idx));\r\n\r\n onChange({ ...layout, data: { row: returnToValue(rows) } });\r\n } catch (error) {\r\n console.error(\"table=>error\", error);\r\n }\r\n setTimeout(() => {\r\n setTableLoad(false);\r\n }, 500);\r\n };\r\n\r\n const moveTo = (key: number) => {\r\n try {\r\n if (moveFormIndex !== -1) {\r\n let dd = JSON.stringify(_data);\r\n let rows: any[] = JSON.parse(dd);\r\n let updateRow = rows.splice(moveFormIndex, 1)[0];\r\n rows.splice(key, 0, updateRow);\r\n setMoveFormIndex(-1);\r\n rows.map((row: any, idx: number) => (row.key = idx));\r\n\r\n onChange({ ...layout, data: { row: returnToValue(rows) } });\r\n\r\n setTimeout(() => {\r\n setTableLoad(false);\r\n }, 500);\r\n }\r\n } catch (error) {\r\n console.error(\"table=>error\", error);\r\n }\r\n };\r\n\r\n const actionBodyTemplate = (key: number) => {\r\n const items = [\r\n {\r\n label: \"Create new item\",\r\n icon: \"pi pi-fw pi-plus\",\r\n items: [\r\n {\r\n label: \"Create new item above\",\r\n icon: \"pi pi-fw pi-plus\",\r\n command: () => {\r\n setTableLoad(true);\r\n addRowTo(key);\r\n },\r\n },\r\n {\r\n label: \"Create new item below\",\r\n icon: \"pi pi-fw pi-plus\",\r\n command: () => {\r\n setTableLoad(true);\r\n addRowTo(key + 1);\r\n },\r\n },\r\n ],\r\n },\r\n {\r\n label: \"Move to\",\r\n icon: \"pi pi-fw pi-sort-alt\",\r\n command: () => {\r\n setMoveFormIndex(key);\r\n setMoveToDialogVisible(true);\r\n },\r\n },\r\n {\r\n label: \"Duplicate\",\r\n icon: \"pi pi-fw pi-copy\",\r\n command: () => {\r\n setTableLoad(true);\r\n duplicate(key);\r\n },\r\n },\r\n {\r\n label: \"Delete\",\r\n icon: \"pi pi-fw pi-trash\",\r\n command: () => {\r\n setTableLoad(true);\r\n handleDelete(key);\r\n },\r\n },\r\n ];\r\n return (\r\n \r\n {\r\n menu.current[key] = el;\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n\r\n const columns = defColumns.map((col: any) => {\r\n if (!col.editable) {\r\n return col;\r\n }\r\n\r\n return {\r\n ...col,\r\n onCell: (record: any) => ({\r\n record,\r\n editable: col.editable,\r\n dataIndex: col.dataIndex,\r\n title: col.title,\r\n handleSave,\r\n template: layout.template,\r\n onControlChange,\r\n rowTemplate,\r\n colTemplate,\r\n canEditDoc,\r\n checkActionPage,\r\n buttonType,\r\n allLogicInTable,\r\n }),\r\n };\r\n });\r\n\r\n const calCulateTableFooter = (changeObj?: any) => {\r\n try {\r\n const columns = layout.template.attribute.column;\r\n let decimal: number = 2;\r\n\r\n setTableFooter([\r\n ...tableFooter.map((footer: any) => {\r\n let formu = footer?.formula;\r\n\r\n const allField = formu.match(/[^+%\\-\\*\\/=)(]+/g) || [];\r\n\r\n if (changeObj && changeObj.label === footer.label) {\r\n footer.value = changeObj?.value;\r\n }\r\n columns.forEach((col: any) => {\r\n if (allField.includes(col.label)) {\r\n decimal = Number(col.control.template.attribute.decimal);\r\n\r\n formu = formu?.replace(\r\n col.label,\r\n summary[col.label]?.toFixed(decimal) !== \"NaN\"\r\n ? summary[col.label]?.toFixed(decimal)\r\n : Number(0).toFixed(decimal)\r\n );\r\n } else if (allField.includes(\"value\")) {\r\n decimal = Number(col.control.template.attribute.decimal);\r\n\r\n formu = formu.replaceAll(\r\n \"value\",\r\n footer?.value?.toFixed(decimal)\r\n );\r\n }\r\n });\r\n const validate: any[] =\r\n formu.match(/[\\u0E00-\\u0E7FA-Za-z]+|\\([^)]+\\)+/g) || [];\r\n\r\n if (validate.length > 0) {\r\n tableFooter.map((e: any) => {\r\n if (formu.indexOf(e.label) !== -1) {\r\n formu = formu.replace(\r\n e.label,\r\n Number(e?.result.replaceAll(\",\", \"\"))\r\n );\r\n }\r\n });\r\n }\r\n\r\n if (footer?.formula.includes(\"value\")) {\r\n const value = eval(formu)?.toLocaleString(undefined, {\r\n maximumFractionDigits: 2,\r\n });\r\n\r\n footer.result = value;\r\n } else {\r\n const value = eval(formu)?.toLocaleString(undefined, {\r\n maximumFractionDigits: 2,\r\n });\r\n footer.result = value;\r\n }\r\n\r\n return footer;\r\n }),\r\n ]);\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n };\r\n\r\n async function fetchRefDocFormTable() {\r\n let tempAtt = layout.template.attribute;\r\n\r\n if (refDocOptions.length === 0) {\r\n setRefTableLoading(true);\r\n\r\n if (tempAtt !== undefined) {\r\n if (tempAtt.refdoc !== undefined) {\r\n let dataRequest = {\r\n PageIndex: 0,\r\n PageSize: 0,\r\n CUserID: memoDetail.creator.EmployeeId.toString(),\r\n RUserID: memoDetail.requestor.EmployeeId.toString(),\r\n ConditionRefdoc:\r\n tempAtt.conditionrefdoc.length > 0\r\n ? JSON.stringify(tempAtt.conditionrefdoc)\r\n : \"\",\r\n Search: memoDetail.creator.NameEn,\r\n docDataSource: tempAtt.refdoc.docDataSource,\r\n docReport: tempAtt.refdoc.docReport,\r\n docCancelDoc: tempAtt.refdoc.docCancelDoc,\r\n docEditDoc: tempAtt.refdoc.docEditDoc,\r\n docNewDoc: tempAtt.refdoc.docNewDoc,\r\n doccontrol: tempAtt.refdoc.doccontrol !== \"N\",\r\n docref: tempAtt.refdoc.docref,\r\n };\r\n const refDetails = await GetRefDocFormTable(dataRequest);\r\n\r\n if (tempAtt.refdoc.docDataSource === \"Template\") {\r\n let refColumn: any[] = [];\r\n let refOptions: any[] = [];\r\n refDetails.forEach((e: any) => {\r\n let _option: any = { Memo_MemoId: e.MemoId };\r\n let advanceForm = JSON.parse(e.MAdvancveForm);\r\n advanceForm.items.map((a: any) => {\r\n a.layout.map((l: any) => {\r\n const target = tempAtt.mergecolumnrefdoc.find(\r\n (col: any) =>\r\n col.RefDocLabel.split(\"_\")[1] === l.template.label\r\n );\r\n\r\n if (target) {\r\n _option[target.RefDocLabel] = l.data.value;\r\n _option[l.template.label] = l.data.value;\r\n }\r\n tempAtt.mergecolumnrefdoc.map((a: any) => {\r\n if (a.RefDocLabel === \"DocumentNo\") {\r\n _option[a.RefDocLabel] = e.DocumentNo;\r\n _option[a.RefDocLabel] = e.DocumentNo;\r\n } else if (a.RefDocLabel === \"DocumentAmount\") {\r\n _option[a.RefDocLabel] = e.Amount;\r\n _option[a.RefDocLabel] = e.Amount;\r\n } else if (a.RefDocLabel === \"CreatorEmployeeCode\") {\r\n _option[a.RefDocLabel] = e.CreatorId;\r\n _option[a.RefDocLabel] = e.CreatorId;\r\n } else if (a.RefDocLabel === \"CreatorEmployeeName\") {\r\n if (memoDetail.report_lang.toLowerCase() === \"en\") {\r\n _option[a.RefDocLabel] = e.CNameEn;\r\n _option[a.RefDocLabel] = e.CNameEn;\r\n } else {\r\n _option[a.RefDocLabel] = e.CNameTh;\r\n _option[a.RefDocLabel] = e.CNameTh;\r\n }\r\n } else if (a.RefDocLabel === \"CreatorEmployeePosition\") {\r\n _option[a.RefDocLabel] = e.CPositionEn;\r\n _option[a.RefDocLabel] = e.CPositionEn;\r\n } else if (a.RefDocLabel === \"CreatorEmployeeDivision\") {\r\n _option[a.RefDocLabel] = e.CDivisionEn;\r\n _option[a.RefDocLabel] = e.CDivisionEn;\r\n } else if (a.RefDocLabel === \"CreatorEmployeeDepartment\") {\r\n _option[a.RefDocLabel] = e.CDepartmentEn;\r\n _option[a.RefDocLabel] = e.CDepartmentEn;\r\n } else if (a.RefDocLabel === \"CreatorEmployeeEmail\") {\r\n _option[a.RefDocLabel] = \"\";\r\n _option[a.RefDocLabel] = \"\";\r\n } else if (a.RefDocLabel === \"RequestorEmployeeCode\") {\r\n _option[a.RefDocLabel] = e.RequesterId;\r\n _option[a.RefDocLabel] = e.RequesterId;\r\n } else if (a.RefDocLabel === \"RequestorEmployeeName\") {\r\n if (memoDetail.report_lang.toLowerCase() === \"en\") {\r\n _option[a.RefDocLabel] = e.RNameEn;\r\n _option[a.RefDocLabel] = e.RNameEn;\r\n } else {\r\n _option[a.RefDocLabel] = e.RNameTh;\r\n _option[a.RefDocLabel] = e.RNameTh;\r\n }\r\n } else if (a.RefDocLabel === \"RequestorEmployeePosition\") {\r\n if (memoDetail.report_lang.toLowerCase() === \"en\") {\r\n _option[a.RefDocLabel] = e.RPositionEn;\r\n _option[a.RefDocLabel] = e.RPositionEn;\r\n } else {\r\n _option[a.RefDocLabel] = e.RPositionTh;\r\n _option[a.RefDocLabel] = e.RPositionTh;\r\n }\r\n } else if (a.RefDocLabel === \"RequestorEmployeeDivision\") {\r\n if (memoDetail.report_lang.toLowerCase() === \"en\") {\r\n _option[a.RefDocLabel] = e.RDivisionEn;\r\n _option[a.RefDocLabel] = e.RDivisionEn;\r\n } else {\r\n _option[a.RefDocLabel] = e.RDivisionTh;\r\n _option[a.RefDocLabel] = e.RDivisionTh;\r\n }\r\n } else if (\r\n a.RefDocLabel === \"RequestorEmployeeDepartment\"\r\n ) {\r\n if (memoDetail.report_lang.toLowerCase() === \"en\") {\r\n _option[a.RefDocLabel] = e.RDepartmentEn;\r\n _option[a.RefDocLabel] = e.RDepartmentEn;\r\n } else {\r\n _option[a.RefDocLabel] = e.RDepartmentTh;\r\n _option[a.RefDocLabel] = e.RDepartmentTh;\r\n }\r\n } else if (a.RefDocLabel === \"RequestorEmployeeEmail\") {\r\n _option[a.RefDocLabel] = \"\";\r\n _option[a.RefDocLabel] = \"\";\r\n } else if (a.RefDocLabel === \"InformationDocumentStatus\") {\r\n _option[a.RefDocLabel] = e.StatusName;\r\n _option[a.RefDocLabel] = e.StatusName;\r\n } else if (a.RefDocLabel === \"InformationFormName\") {\r\n _option[a.RefDocLabel] = e.TemplateName;\r\n _option[a.RefDocLabel] = e.TemplateName;\r\n } else if (a.RefDocLabel === \"InformationRequestDate\") {\r\n _option[a.RefDocLabel] = e.RequestDate;\r\n _option[a.RefDocLabel] = e.RequestDate;\r\n } else if (a.RefDocLabel === \"InformationCompany\") {\r\n _option[a.RefDocLabel] = e.CompanyName;\r\n _option[a.RefDocLabel] = e.CompanyName;\r\n } else if (a.RefDocLabel === \"InformationBranch\") {\r\n _option[a.RefDocLabel] = e.DocumentNo;\r\n _option[a.RefDocLabel] = e.DocumentNo;\r\n } else if (a.RefDocLabel === \"InformationSubject\") {\r\n _option[a.RefDocLabel] = e.MemoSubject;\r\n _option[a.RefDocLabel] = e.MemoSubject;\r\n } else if (a.RefDocLabel === \"InformationProject\") {\r\n _option[a.RefDocLabel] = \"\";\r\n _option[a.RefDocLabel] = \"\";\r\n }\r\n });\r\n });\r\n });\r\n refOptions.push(_option);\r\n });\r\n tempAtt.mergecolumnrefdoc.forEach((e: any) => {\r\n refColumn.push({\r\n field: e.RefDocLabel,\r\n headerEn: e.RefDocLabel,\r\n });\r\n });\r\n setRefDocOptions([...refOptions]);\r\n setRefTableColumn([...refColumn]);\r\n } else if (tempAtt.refdoc.docDataSource === \"Report\") {\r\n dataRequest.docref = refDetails.TemplateId.split(\"|\").map(\r\n (e: string) => {\r\n return { id: e };\r\n }\r\n );\r\n const refReportDetail = await GetRefDocFormTable(dataRequest);\r\n\r\n if (refReportDetail?.dt_Report?.length > 0) {\r\n let refColumn: any[] = [];\r\n\r\n tempAtt.mergecolumnrefdoc.forEach((e: any) => {\r\n refColumn.push({\r\n field: e.RefDocLabel,\r\n headerEn: e.RefDocLabel,\r\n });\r\n });\r\n\r\n setRefTableColumn([...refColumn]);\r\n\r\n setRefDocOptions([...refReportDetail.dt_Report]);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n setRefTableLoading(false);\r\n }\r\n\r\n const onImportExcel = async (dataJson: any) => {\r\n const response = await fetch(\"api/Excel/ImportData\", {\r\n method: \"POST\",\r\n body: dataJson,\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n });\r\n return response;\r\n };\r\n\r\n const onExportExcel = async (dataJson: any) => {\r\n try {\r\n const fileName = \"export.xlsx\";\r\n const response = await fetch(\"api/Excel/ExportData\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\", // Ensure correct content type\r\n },\r\n body: JSON.stringify({\r\n mAdvance: JSON.stringify(dataJson),\r\n }),\r\n })\r\n .then((response) => response.blob())\r\n .then((blob) => {\r\n const url = window.URL.createObjectURL(new Blob([blob]));\r\n const a = document.createElement(\"a\");\r\n a.href = url;\r\n a.download = fileName;\r\n document.body.appendChild(a);\r\n a.click();\r\n a.remove();\r\n })\r\n .catch((error) => console.error(\"Download failed:\", error));\r\n } catch (error) {\r\n console.error(\"Error:\", error);\r\n }\r\n };\r\n\r\n const handleFileUpload = async (file: any) => {\r\n try {\r\n const uploadFile = new FormData();\r\n uploadFile.append(\"file\", file);\r\n const respone = await onImportExcel(uploadFile);\r\n if (respone) {\r\n putExcelToTable(respone);\r\n setExportFile(respone);\r\n }\r\n } catch (error: any) {\r\n console.error(error.message);\r\n }\r\n };\r\n\r\n const putExcelToTable = (resultData: any[]) => {\r\n const result = resultData.slice(0, resultData.length);\r\n\r\n let newRows = resultData.slice(0, resultData.length);\r\n confirm({\r\n title: \"Preview data\",\r\n icon: \"\",\r\n className: \"csv-confirm-modal\",\r\n content: (\r\n {\r\n if (e) {\r\n newRows = result.slice(1, newRows.length);\r\n } else {\r\n newRows = result;\r\n }\r\n }}\r\n />\r\n ),\r\n width: \"80%\",\r\n okButtonProps: {\r\n icon: ,\r\n className: \"confirm-btn ok\",\r\n style: { display: \"flex\", alignItems: \"center\" },\r\n },\r\n onOk() {\r\n // handleAddMultiRow(newRows);\r\n\r\n onChange({ ...layout, data: { row: returnToValue(newRows) } });\r\n },\r\n cancelButtonProps: {\r\n icon: ,\r\n type: \"ghost\",\r\n className: \"cancel\",\r\n style: { display: \"flex\", alignItems: \"center\" },\r\n },\r\n });\r\n };\r\n\r\n const menuClickHandler = (key: string) => {\r\n if (key === \"import\") {\r\n // Trigger file input click when Import is clicked\r\n const input = document.createElement(\"input\");\r\n input.type = \"file\";\r\n input.accept = \".xlsx\";\r\n input.onchange = (e: any) => {\r\n const file = e?.target?.files[0];\r\n if (file) {\r\n handleFileUpload(file);\r\n }\r\n };\r\n input.click();\r\n } else if (key === \"export\") {\r\n layout.data = { row: returnToValue(_data) };\r\n onExportExcel(layout);\r\n }\r\n };\r\n const menuItem = (\r\n {\r\n menuClickHandler(info.key);\r\n }}\r\n >\r\n }>\r\n
Import
\r\n
\r\n\r\n }>\r\n Export\r\n \r\n \r\n );\r\n\r\n return (\r\n <>\r\n
\r\n \r\n e.preventDefault()}\r\n style={{\r\n height: \"38px\",\r\n color: \"#ffffff\",\r\n fontSize: \"1em\",\r\n borderRadius: \"6px\",\r\n margin: \" 11px 11px 0px 0px\",\r\n justifyContent: \"center\",\r\n }}\r\n />\r\n \r\n )\r\n }\r\n />\r\n
\r\n {\r\n if (tableLoad) {\r\n setTableLoad(false);\r\n }\r\n }}\r\n >\r\n \r\n ) => (\r\n \r\n ),\r\n row: EditableRow,\r\n },\r\n }\r\n : {}\r\n }\r\n dataSource={_data}\r\n loading={tableLoad}\r\n columns={columns as ColumnTypes}\r\n rowClassName={() => \"editable-row\"}\r\n bordered\r\n id=\"table-control\"\r\n scroll={{ x: 1500 - 1000, y: 500 }}\r\n footer={() => {\r\n const haveInput = tableFooter?.find((e: any) => e.useValue);\r\n\r\n return tableFooter.map((footer: any) => {\r\n return (\r\n \r\n );\r\n });\r\n }}\r\n summary={() => {\r\n try {\r\n const cols = layout?.template?.attribute?.column;\r\n let isShowSum = false;\r\n cols.forEach((col: any) => {\r\n if (col.control.template.attribute.isSummary === \"Y\") {\r\n isShowSum = true;\r\n return;\r\n }\r\n });\r\n if (isShowSum && _data.length > 0 && summary) {\r\n return (\r\n \r\n \r\n \r\n Total\r\n \r\n {cols.map((col: any, idx: any) => {\r\n if (col.control.template.attribute.isSummary !== \"Y\") {\r\n return (\r\n \r\n );\r\n } else {\r\n return (\r\n \r\n \r\n {!isNaN(\r\n Number(summary[col.control.template.label])\r\n )\r\n ? Number(\r\n Number(\r\n summary[col.control.template.label]\r\n )\r\n ).toLocaleString(\"en-US\", {\r\n minimumFractionDigits: Number(\r\n col.control.template.attribute.decimal\r\n ),\r\n })\r\n : \"0.00\"}\r\n \r\n \r\n );\r\n }\r\n })}\r\n \r\n \r\n \r\n );\r\n }\r\n } catch (error) {\r\n if (process.env.NODE_ENV === \"development\") {\r\n console.error(\"table=>sum=>\", error);\r\n }\r\n }\r\n }}\r\n />\r\n\r\n \r\n\r\n {\r\n try {\r\n if (_selectedData?.length > 0) {\r\n let newRows: any[] = [];\r\n _selectedData?.map((e: any, idx: number) => {\r\n let newRow = createRowCopy(idx);\r\n layout.template.attribute.mergecolumnrefdoc.forEach(\r\n (col: any) => {\r\n newRow[col.ColumnLabel] = e[col.RefDocLabel];\r\n }\r\n );\r\n newRows.push(newRow);\r\n });\r\n handleAddMultiRow(newRows);\r\n // setSelectedData([]);\r\n setRefTableDialogVisible(false);\r\n }\r\n } catch (error) {\r\n if (process.env.NODE_ENV === \"development\") {\r\n console.error(\"table=>ref=>\", error);\r\n }\r\n }\r\n }}\r\n />\r\n \r\n \r\n );\r\n};\r\n\r\nexport default React.memo(TableComponent);\r\n","import { Col, Row } from \"react-bootstrap\";\r\nimport { Button } from \"primereact/button\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { InputNumber } from \"primereact/inputnumber\";\r\nimport React, { useState } from \"react\";\r\n\r\ntype Props = {\r\n header: string;\r\n dataLength: number;\r\n isVisible: boolean;\r\n setIsVisible: (isVisible: boolean) => void;\r\n moveFunc: (key: number) => void;\r\n setLoading: (load: boolean) => void;\r\n};\r\n\r\nconst MoveToDialog = ({\r\n header,\r\n dataLength,\r\n isVisible,\r\n setLoading,\r\n setIsVisible,\r\n moveFunc,\r\n}: Props) => {\r\n const [moveValue, setMoveValue] = useState(1);\r\n const renderFooter = () => {\r\n return (\r\n
\r\n setIsVisible(false)}\r\n style={{ height: \"38px\" }}\r\n className=\"p-button-text\"\r\n />\r\n {\r\n setLoading(true);\r\n moveFunc(moveValue - 1);\r\n setIsVisible(false);\r\n }}\r\n style={{ height: \"38px\" }}\r\n autoFocus\r\n />\r\n
\r\n );\r\n };\r\n return (\r\n <>\r\n {\r\n setIsVisible(false);\r\n setMoveValue(1);\r\n }}\r\n footer={renderFooter}\r\n className=\"information-dialog\"\r\n draggable={false}\r\n closable={false}\r\n resizable={false}\r\n blockScroll\r\n >\r\n \r\n {\r\n if (e?.value <= dataLength) {\r\n setMoveValue(e?.value);\r\n }\r\n }}\r\n />\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default MoveToDialog;\r\n","import { Input, InputNumber } from \"antd\";\r\nimport React, { useState } from \"react\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\n\r\ntype Props = {\r\n footerAtt: any;\r\n onChange: (changeObj?: any) => void;\r\n haveInput: boolean;\r\n};\r\n\r\nconst TableFooter = ({ footerAtt, onChange, haveInput }: Props) => {\r\n const [inputValue, setInputValue] = useState(footerAtt.value);\r\n\r\n return (\r\n
\r\n \r\n \r\n {footerAtt.label + \" : \"}\r\n \r\n {footerAtt.useValue ? (\r\n <>\r\n {\" \"}\r\n \r\n \r\n `${value}`.replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\r\n }\r\n parser={(value) => value!.replace(/\\$\\s?|(,*)/g, \"\")}\r\n onChange={(e) => {\r\n setInputValue(e);\r\n }}\r\n onBlur={(e) => {\r\n if (Number(e.target.value)) {\r\n console.log(footerAtt);\r\n\r\n let dup = { ...footerAtt };\r\n dup.value = Number(e.target.value);\r\n onChange(dup);\r\n }\r\n }}\r\n controls={false}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n <>\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n
\r\n );\r\n};\r\n\r\nexport default TableFooter;\r\n","import { Checkbox, Table } from \"antd\";\r\nimport React, { useState } from \"react\";\r\n\r\ntype Props = {\r\n newRows: any[];\r\n columns: any[];\r\n onCheckedHeader: (checked: boolean) => void;\r\n};\r\n\r\nconst ExcelTablePreview = ({ newRows, columns, onCheckedHeader }: Props) => {\r\n const [sourceData, setsourceData] = useState(newRows);\r\n\r\n const [displayData, setDisplayData] = useState(newRows);\r\n const [pageSize, setPageSize] = useState(10);\r\n const [current, setCurrent] = useState(1);\r\n console.log(\"newRows\", newRows);\r\n console.log(\"newRows=>columns\", columns);\r\n return (\r\n <>\r\n e.key !== \"operation\")}\r\n scroll={{ x: 1500 - 1000, y: 500 }}\r\n pagination={{\r\n pageSize: pageSize,\r\n onShowSizeChange: (current, size) => {\r\n setPageSize(size);\r\n },\r\n }}\r\n />\r\n \r\n );\r\n};\r\n\r\nexport default ExcelTablePreview;\r\n","import { Form, Input, Tooltip } from \"antd\";\r\nimport React, { useEffect } from \"react\";\r\nimport ComponentLabel from \"../../ControlComponents/ComponentLabel\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { Controller, useWatch } from \"react-hook-form\";\r\nimport { TableInputProps } from \"../TableComponent/TableComponent\";\r\n\r\ntype InputFormProps = {\r\n template: any;\r\n data: any;\r\n rowIdx: number;\r\n colIdx: number;\r\n col?: any;\r\n colText?: number;\r\n colAction?: number;\r\n name: string;\r\n control: any;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n buttonType: string;\r\n onControlChange: (controlTemplate: any, controlValue: any) => any;\r\n};\r\n\r\nexport const AutoNumber: React.FC = ({\r\n colIdx,\r\n rowIdx,\r\n control,\r\n name,\r\n data,\r\n template,\r\n col,\r\n colAction,\r\n colText,\r\n canEditDoc,\r\n checkActionPage,\r\n buttonType,\r\n onControlChange,\r\n ...props\r\n}) => {\r\n return (\r\n {\r\n // if (!field.value || field.value === \"\") {\r\n // field.value = template.attribute.default;\r\n // }\r\n return (\r\n <>\r\n \r\n \r\n \r\n {\r\n field.onChange(e);\r\n onControlChange(template, e.target.value);\r\n }}\r\n id={template.label.replaceAll(\" \", \"_\")}\r\n value={field.value ? field.value : undefined}\r\n readOnly={!canEditDoc || template.attribute.readonly === \"Y\"}\r\n size={\"large\"}\r\n className=\"input-component\"\r\n placeholder={\r\n template.type !== \"an\"\r\n ? template.attribute.description\r\n : \"Auto Number\"\r\n }\r\n maxLength={\r\n parseInt(template.attribute.length) === 0\r\n ? undefined\r\n : parseInt(template.attribute.length)\r\n }\r\n // defaultValue={template.attribute.default}\r\n disabled={\r\n !canEditDoc ||\r\n template.attribute.readonly === \"Y\" ||\r\n template.type === \"an\"\r\n }\r\n // onBlur={(e) => onChange(e.target.value)}\r\n status={\r\n isSubmitted &&\r\n errors?.items &&\r\n errors?.items[rowIdx] &&\r\n errors?.items[rowIdx].layout[colIdx] &&\r\n \"error\"\r\n }\r\n />\r\n {isSubmitted &&\r\n errors?.items &&\r\n errors?.items[rowIdx] &&\r\n errors?.items[rowIdx].layout[colIdx] && (\r\n \r\n {template.label} is required.\r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n }}\r\n />\r\n );\r\n};\r\n// export default InputControlComponent;\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { Button } from \"primereact/button\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport \"./ButtonComponent.css\";\r\nimport { useHistory } from \"react-router\";\r\nimport { confirmDialog } from \"primereact/confirmdialog\";\r\nimport ComponentLabel from \"../ComponentLabel\";\r\ninterface Props {\r\n template: any;\r\n data: any;\r\n col?: any;\r\n rowIdx: number;\r\n colIdx: number;\r\n onChangeEditForm?: (dataRequest: any, rowIdx: number, colIdx: number) => void;\r\n colText?: number;\r\n colAction?: number;\r\n documentNo: any;\r\n renderInTable?: boolean;\r\n errorValid?: any;\r\n statusMemoDetail?: boolean;\r\n name: any;\r\n control: any;\r\n canEditDoc: boolean;\r\n}\r\nexport default function ButtonComponent(props: Props) {\r\n const [url, setUrl] = useState(\"\");\r\n const history = useHistory();\r\n\r\n useEffect(() => {\r\n if (props.template.URL) {\r\n let newUrl: string = props.template.URL;\r\n newUrl = newUrl.replace(\"TP\", \"template\");\r\n if (newUrl.indexOf(\"/Memo?\") !== -1) {\r\n newUrl = newUrl.replace(\"/Memo?\", \"MemoID=0&\");\r\n }\r\n if (newUrl.startsWith(\"http\")) {\r\n newUrl = newUrl;\r\n } else if (!newUrl.startsWith(\"?\")) {\r\n newUrl = \"?\" + newUrl;\r\n }\r\n setUrl(newUrl);\r\n }\r\n }, []);\r\n\r\n return (\r\n <>\r\n \r\n \r\n
\r\n {\r\n const temp = props.template;\r\n let str = \"\";\r\n if (props.documentNo !== \"Auto Generate\") {\r\n let param = \"\";\r\n let val = \"\";\r\n temp.attribute.items.map((item: any, idx: number) => {\r\n item.layout.map((_layout: any) => {\r\n if (_layout.control.label === \"Document No\") {\r\n val = props.documentNo;\r\n }\r\n param = _layout.paramiter.value;\r\n });\r\n });\r\n if (param !== \"\" && val !== \"\") {\r\n str = \"&\" + param + \"=\" + val;\r\n }\r\n\r\n if (url.startsWith(\"?\")) {\r\n window.open(`/Request${url + str}`, \"_blank\", \"noreferrer\");\r\n } else {\r\n window.open(`${url + str}`, \"_blank\", \"noreferrer\");\r\n }\r\n } else {\r\n confirmDialog({\r\n message: \"กรุณาบันทึกก่อนดำเนินการ\",\r\n header: \"Alert\",\r\n icon: \"pi pi-exclamation-triangle\",\r\n rejectClassName: \"hide-component\",\r\n });\r\n }\r\n }}\r\n />\r\n
\r\n \r\n \r\n );\r\n}\r\n","import React, { useEffect, useState } from \"react\";\r\n// import \"tinymce/tinymce\";\r\n// // import tinymce from \"tinymce/tinymce\";\r\n// import \"tinymce/icons/default\";\r\n// import \"tinymce/themes/silver\";\r\n// import \"tinymce/plugins/paste\";\r\n// import \"tinymce/plugins/link\";\r\n// import \"tinymce/plugins/table\";\r\n// import \"tinymce/plugins/fullscreen\";\r\n// import \"tinymce/plugins/autolink\";\r\n// import \"tinymce/plugins/autosave\";\r\n// import \"tinymce/plugins/charmap\";\r\n// import \"tinymce/plugins/image\";\r\n// import \"tinymce/plugins/imagetools\";\r\n// import \"tinymce/plugins/textpattern\";\r\n// import \"tinymce/plugins/code\";\r\n// import \"tinymce/plugins/advlist\";\r\n// import \"tinymce/plugins/lists\";\r\n// import \"tinymce/plugins/print\";\r\n// import \"tinymce/plugins/preview\";\r\n// import \"tinymce/plugins/hr\";\r\n// import \"tinymce/plugins/anchor\";\r\n// import \"tinymce/plugins/pagebreak\";\r\n// import \"tinymce/plugins/searchreplace\";\r\n// import \"tinymce/plugins/wordcount\";\r\n// import \"tinymce/plugins/insertdatetime\";\r\n// import \"tinymce/plugins/media\";\r\n// import \"tinymce/plugins/nonbreaking\";\r\n// import \"tinymce/plugins/save\";\r\n// import \"tinymce/plugins/contextmenu\";\r\n// import \"tinymce/plugins/directionality\";\r\n// import \"tinymce/plugins/template\";\r\n// import \"tinymce/plugins/textcolor\";\r\n// import \"tinymce/plugins/colorpicker\";\r\n// import \"tinymce/skins/ui/oxide/skin.min.css\";\r\n// import \"tinymce/skins/ui/oxide/content.min.css\";\r\nimport \"./EditorComponent.css\";\r\nimport { Editor } from \"@tinymce/tinymce-react\";\r\nimport { ProgressSpinner } from \"primereact/progressspinner\";\r\nimport { UploadTinyMce } from \"../../../Services/UploadFileService\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport ComponentLabel from \"../ComponentLabel\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { useUserContext } from \"../../../Context/UserContext\";\r\nimport { log } from \"console\";\r\nimport { GetPort } from \"../../../Services/AttachFileService\";\r\nimport { checkRequireFromTemplate } from \"../../../Helper/RequestScreenHelper\";\r\n\r\ninterface Props {\r\n template: any;\r\n data: any;\r\n rowIdx: number;\r\n colIdx: number;\r\n colText: any;\r\n col?: any;\r\n onChangeEditForm?: (dataRequest: any, rowIdx: number, colIdx: number) => void;\r\n errorValid?: any;\r\n statusMemoDetail?: boolean;\r\n name: string;\r\n control: any;\r\n buttonType: any;\r\n canEditDoc: boolean;\r\n colAction: any;\r\n edFont?: any;\r\n defaultFont?: any;\r\n}\r\n\r\nexport const EditorComponent = (props: Props) => {\r\n const initialValues = {\r\n value: null,\r\n };\r\n const [contentEditor, setContentEditor] = useState(\r\n !props.data.value ? initialValues : props.data\r\n );\r\n\r\n const [loading, setLoading] = useState(true);\r\n const [userData, setUserData] = useUserContext();\r\n var _userData = JSON.parse(window.localStorage.getItem(\"userData\") || \"\");\r\n const _sharepointSiteURL = _userData.SharepointSiteURL;\r\n let _tinyURL = _userData.TinyURL;\r\n\r\n async function defaultValue() {\r\n if (props.data.value) {\r\n props.data.value = props.data.value\r\n .replace(/\\{/g, \"<\")\r\n .replace(/\\}/g, \">\")\r\n .replace(/\\'/g, \"\");\r\n setContentEditor((prevState: any) => ({\r\n ...prevState,\r\n value: props.data.value,\r\n }));\r\n } else {\r\n props.data.value = \"\";\r\n }\r\n }\r\n const handleEditorChange = (content: any, editor: any, onChange: any) => {\r\n applyStylesToEditor(editor);\r\n onChange(content);\r\n };\r\n\r\n const applyStylesToEditor = (editor: any) => {\r\n const editorBody = editor.getBody();\r\n if (editorBody) {\r\n editorBody.style.wordBreak = \"break-word\";\r\n editorBody.style.overflowWrap = \"break-word\";\r\n editorBody.querySelectorAll(\"td\").forEach((cell: any) => {\r\n cell.style.wordBreak = \"break-word\";\r\n cell.style.overflowWrap = \"break-word\";\r\n });\r\n }\r\n };\r\n\r\n const applyStylesToContent = (content: string) => {\r\n const div = document.createElement(\"div\");\r\n div.innerHTML = content;\r\n div.style.wordBreak = \"break-word\";\r\n div.style.overflowWrap = \"break-word\";\r\n div.querySelectorAll(\"td\").forEach((cell: any) => {\r\n cell.style.wordBreak = \"break-word\";\r\n cell.style.overflowWrap = \"break-word\";\r\n });\r\n return div.innerHTML;\r\n };\r\n\r\n return (\r\n {\r\n const _value =\r\n value?.replace(/\\{/g, \"<\").replace(/\\}/g, \">\").replace(/\\'/g, \"\") ||\r\n \"\";\r\n const styledValue = applyStylesToContent(_value);\r\n\r\n return (\r\n <>\r\n \r\n {props.template.attribute.readonly === \"Y\" ? (\r\n
\r\n ) : (\r\n {\r\n editor.on(\"init\", () => {\r\n applyStylesToEditor(editor);\r\n });\r\n },\r\n }}\r\n value={styledValue}\r\n onEditorChange={(content: any, editor: any) => {\r\n handleEditorChange(content, editor, onChange);\r\n }}\r\n />\r\n )}\r\n \r\n \r\n );\r\n }}\r\n name={props.name}\r\n rules={{\r\n required: checkRequireFromTemplate(props.template, props.buttonType),\r\n }}\r\n control={props.control}\r\n />\r\n );\r\n};\r\n","import React from \"react\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\n\r\ninterface Props {\r\n key: any;\r\n col?: any;\r\n colText?: number;\r\n colAction?: number;\r\n}\r\n\r\nexport const EmptyComponent = (props: Props) => {\r\n return (\r\n <>\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n

\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n );\r\n};\r\n","import React, { useEffect, useRef, useState } from \"react\";\r\nimport { Col, Form, Row } from \"react-bootstrap\";\r\nimport \"./ImageComponent.css\";\r\nimport { Image } from \"antd\";\r\nimport { UploadFileRenderControl } from \"../../../Services/UploadFileService\";\r\nimport { generateQuickGuid } from \"../../../Helper/GenerateGuid\";\r\nimport { RiDeleteBack2Line } from \"react-icons/ri\";\r\nimport { CgCloseR } from \"react-icons/cg\";\r\n\r\nimport { Toast } from \"primereact/toast\";\r\n\r\nimport { Controller } from \"react-hook-form\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\nimport { replaceSpecialChar } from \"../../../Helper/ReplaceSpecialChar\";\r\nimport { checkRequireFromTemplate } from \"../../../Helper/RequestScreenHelper\";\r\n\r\ninterface Props {\r\n template: any;\r\n data: any;\r\n col?: any;\r\n rowIdx: number;\r\n colIdx: number;\r\n onChangeEditForm?: (dataRequest: any, rowIdx: number, colIdx: number) => void;\r\n renderInTable?: string;\r\n colText?: number;\r\n colAction?: number;\r\n errorValid?: string;\r\n statusMemoDetail?: boolean;\r\n name: string;\r\n control: any;\r\n buttonType: string;\r\n canEditDoc: boolean;\r\n}\r\n\r\nexport default function ImageComponent(props: Props) {\r\n const toast = useRef(null);\r\n const { toggleAlert } = useAlert();\r\n const userData = JSON.parse(window.localStorage.getItem(\"userData\") || \"\");\r\n const _sharepointSiteURL = userData.SharepointSiteURL;\r\n let port = location.host === \"localhost:5001\" ? undefined : location.port;\r\n let _TinyURL =\r\n port !== undefined || \"\" ? userData.TinyURL + \":\" + port : userData.TinyURL;\r\n const initialValues = {\r\n value: null,\r\n };\r\n const [valueState, setValueState] = useState(\r\n props.data.value == null || undefined ? initialValues : props.data\r\n );\r\n const [fileType, setFileType] = useState(\"\");\r\n useEffect(() => {\r\n deFaultValue();\r\n }, []);\r\n\r\n function isValidUrl(url: string | null) {\r\n if (!url) {\r\n return url;\r\n }\r\n try {\r\n new URL(url);\r\n return url;\r\n } catch (err) {\r\n return `${location.protocol}//${userData.TinyURL}${url}`;\r\n }\r\n }\r\n\r\n const deFaultValue = async () => {\r\n if (props.template.fileType) {\r\n const myArray = props.template.fileType.split(\"*\");\r\n let mapData: any = [];\r\n for (let index = 1; index < myArray.length; index++) {\r\n myArray[index] = \".\" + myArray[index];\r\n mapData.push(myArray[index]);\r\n }\r\n setFileType(mapData.toString());\r\n }\r\n let _port = location.port;\r\n if (!location.host.startsWith( \"localhost:\")) {\r\n if (_port) {\r\n userData.TinyURL = userData.TinyURL + \":\" + _port;\r\n }\r\n }\r\n };\r\n\r\n async function onFileSelect(e: any, onChange: any) {\r\n if (e.target.files[0] !== null) {\r\n const files = e.target.files[0];\r\n var hasInvalidFiles = false;\r\n if (props.template?.fileType) {\r\n const myArray = props.template?.fileType.split(\"*\");\r\n for (let index = 1; index < myArray.length; index++) {\r\n if (files.name.endsWith(myArray[index])) {\r\n hasInvalidFiles = true;\r\n continue;\r\n }\r\n }\r\n }\r\n const _port = location.port;\r\n if (!location.host.startsWith( \"localhost:\")) {\r\n if (_port) {\r\n userData.TinyURL = userData.TinyURL + \":\" + _port;\r\n }\r\n }\r\n if (!hasInvalidFiles) {\r\n toggleAlert({\r\n description: `Unsupported file selected.`,\r\n message: `File type warning.`,\r\n type: \"warning\",\r\n });\r\n\r\n setValueState((prevState: any) => ({\r\n ...prevState,\r\n value: null,\r\n }));\r\n e.target.value = null;\r\n return;\r\n }\r\n const formData = new FormData();\r\n var guid = \"imageControl\" + generateQuickGuid();\r\n formData.append(\"files\", files);\r\n formData.append(\"docSet\", guid);\r\n formData.append(\"actorID\", userData.employeeData.EmployeeId);\r\n var response = await UploadFileRenderControl(formData);\r\n onChange(replaceSpecialChar(response.data.pathUrl));\r\n }\r\n }\r\n return (\r\n <>\r\n \r\n {\r\n value = isValidUrl(value);\r\n\r\n return (\r\n <>\r\n {\r\n console.log(`${_sharepointSiteURL}${value}`);\r\n console.log(\r\n `${location.protocol}//${userData.TinyURL}${value}`\r\n );\r\n }}\r\n sm={props.col === undefined ? 12 : undefined}\r\n md={props.col === undefined ? props.colText : undefined}\r\n xs={props.col === undefined ? 12 : undefined}\r\n xl={props.col === undefined ? props.colText : undefined}\r\n className={\r\n props.renderInTable === undefined ? \"padding-controller\" : \"\"\r\n }\r\n >\r\n {props.renderInTable != \"renderInTable\" && (\r\n \r\n \r\n
\r\n \r\n {props.template.label}\r\n \r\n {props.template.attribute.require === \"Y\" && (\r\n \r\n *\r\n \r\n )}\r\n
\r\n

{props.template.alter}

\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n {value ? (\r\n \r\n
\r\n \r\n
\r\n {props.template.attribute?.readonly === \"N\" && (\r\n
\r\n {\r\n setValueState((prevState: any) => ({\r\n ...prevState,\r\n value: null,\r\n }));\r\n onChange(null);\r\n }}\r\n />\r\n
\r\n )}\r\n
\r\n ) : (\r\n <>\r\n {props.template.attribute?.readonly === \"N\" && (\r\n {\r\n console.log(fileType, \"fileType\");\r\n }}\r\n disabled={\r\n !props.canEditDoc ||\r\n props.template.attribute.readonly === \"Y\"\r\n }\r\n type=\"file\"\r\n onChange={(e: any) => {\r\n onFileSelect(e, onChange);\r\n }}\r\n className={`set-input-component-css form-control`}\r\n />\r\n )}\r\n \r\n File Formats Accepted {props.template?.fileType}\r\n \r\n \r\n )}\r\n\r\n {isSubmitted &&\r\n errors?.items &&\r\n errors?.items[props.rowIdx] &&\r\n errors?.items[props.rowIdx].layout[props.colIdx] && (\r\n \r\n {props.template.label} is required.\r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n }}\r\n rules={{\r\n required:\r\n props.template.attribute.require === \"Y\" &&\r\n checkRequireFromTemplate(props.template, props.buttonType),\r\n }}\r\n name={props.name}\r\n control={props.control}\r\n />\r\n \r\n );\r\n}\r\n","import React, { useEffect } from \"react\";\r\n// import { SelectCheckboxComponent } from \"../../AntdControlComponent/MainCheckboxControl/SelectCheckboxComponent\";\r\nimport { CheckboxControlComponent } from \"../../AntdControlComponent/MainCheckboxControl/CheckboxComponent\";\r\nimport { SelectCheckboxControlComponent } from \"../../AntdControlComponent/MainCheckboxControl/SelectCheckboxComponent\";\r\nimport CheckboxDropdownComponent from \"./CheckboxDropdownComponent/CheckboxDropdownComponent\";\r\ninterface Props {\r\n template: any;\r\n data: any;\r\n rowIdx: number;\r\n colIdx: number;\r\n onChangeEditForm?: (dataRequest: any, rowIdx: number, colIdx: number) => void;\r\n colText?: number;\r\n colAction?: number;\r\n renderInTable?: boolean;\r\n errorValid?: any;\r\n statusMemoDetail?: boolean;\r\n name: any;\r\n control: any;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n buttonType: string;\r\n onControlChange: (controlTemplate: any, controlValue: any) => any;\r\n}\r\nexport default function MainCheckboxComponents(props: Props) {\r\n return (\r\n <>\r\n {props.template.attribute.display === \"dd\" && (\r\n \r\n )}\r\n {props.template.attribute.display !== \"dd\" && (\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import React from \"react\";\r\nimport \"./HeadingComponent.css\";\r\ninterface Props {\r\n template: any;\r\n data: any;\r\n rowIdx: number;\r\n colIdx: number;\r\n}\r\nexport default function HeadingComponent(props: Props) {\r\n return (\r\n
\r\n

\r\n

{props.template.label}
\r\n
\r\n {props.template.alter != \"\" ? `${props.template.alter}` : \"\"}\r\n
\r\n

\r\n
\r\n );\r\n}\r\n","import React, { useEffect } from \"react\";\r\ninterface Props {\r\n template: any;\r\n data: any;\r\n rowIdx: number;\r\n colIdx: number;\r\n}\r\nexport default function HeadingComponent(props: Props) {\r\n return (\r\n <>\r\n {props.template.istext == \"Y\" ? (\r\n \r\n \r\n {props.template.textvalue}\r\n \r\n \r\n ) : (\r\n
{props.template.textvalue}
\r\n )}\r\n \r\n );\r\n}\r\n","import React from \"react\";\r\nimport HeadingComponent from \"./HeadingComponent/HeadingComponent\";\r\nimport TextComponent from \"./TextComponent/TextComponent\";\r\nimport { Col, Row } from \"antd\";\r\nimport { Button } from \"primereact/button\";\r\n\r\ninterface Props {\r\n template: any;\r\n data: any;\r\n rowIdx: number;\r\n colIdx: number;\r\n}\r\nexport default function MainTextComponents(props: Props) {\r\n return (\r\n <>\r\n \r\n {props.template.istext === \"N\" && (\r\n \r\n )}\r\n {props.template.istext === \"Y\" && (\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import React, { useEffect, useState } from \"react\";\r\n\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport \"./ButtonComponent.css\";\r\nimport { useHistory } from \"react-router\";\r\nimport { confirmDialog } from \"primereact/confirmdialog\";\r\nimport ComponentLabel from \"../ComponentLabel\";\r\nimport { Button } from \"antd\";\r\ninterface Props {\r\n template: any;\r\n data: any;\r\n col?: any;\r\n rowIdx: number;\r\n colIdx: number;\r\n onChangeEditForm?: (dataRequest: any, rowIdx: number, colIdx: number) => void;\r\n colText?: number;\r\n colAction?: number;\r\n documentNo: any;\r\n renderInTable?: boolean;\r\n errorValid?: any;\r\n statusMemoDetail?: boolean;\r\n name: any;\r\n control: any;\r\n canEditDoc: boolean;\r\n onCheckInterface:any; \r\n}\r\nexport default function ButtonSpecialComponent(props: Props) {\r\n const [loadingInterface, setLoadingInterface] = useState(false);\r\n return (\r\n <>\r\n {/* */}\r\n \r\n
\r\n {\r\n props.onCheckInterface(props.template.label, setLoadingInterface);\r\n }}\r\n >{props.template.alter}\r\n
\r\n \r\n \r\n );\r\n}\r\n","import React, { FC } from \"react\";\r\nimport { Controller, UseFormGetValues, useFieldArray } from \"react-hook-form\";\r\nimport { formatColumn } from \"../../../Helper/formatColumn\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\nimport { IAutoNumberAttibute } from \"../../../IRequestModel/IAutoNumberFormat\";\r\nimport { IMemoDetailModel } from \"../../../IRequestModel/IMemoDetailModel\";\r\nimport { AttachmentControlComponent } from \"../../AntdControlComponent/AttachmentUploadControlComponent/AttachmentComponent\";\r\nimport { AutoNumber } from \"../../AntdControlComponent/AutoNumberFix/AutoNumberFix\";\r\nimport { DatePickerControlComponent } from \"../../AntdControlComponent/DatePickerControlComponent/DatePickerControlComponent\";\r\nimport { InputControlComponent } from \"../../AntdControlComponent/InputControlComponent/InputControlComponent\";\r\nimport { InputNumberControlComponent } from \"../../AntdControlComponent/InputNumberControlComponent/InputNumberControlComponent\";\r\nimport { RadioControlComponent } from \"../../AntdControlComponent/RadioControlComponent/RadioControlComponent\";\r\nimport { SelectDropdownControlComponent } from \"../../AntdControlComponent/SelectDropdownContronComponent/SelectDropdownContronComponent\";\r\nimport TableComponent from \"../../AntdControlComponent/TableComponent/TableComponent\";\r\nimport { InputTextAreaControlComponent } from \"../../AntdControlComponent/TextAreaControlComponent/InputTextAreaControlComponent\";\r\nimport ButtonComponent from \"../../ControlComponents/ButtonComponent/ButtonComponent\";\r\nimport ComponentLabel from \"../../ControlComponents/ComponentLabel\";\r\nimport { EditorComponent } from \"../../ControlComponents/EditorComponent/EditorComponent\";\r\nimport { EmptyComponent } from \"../../ControlComponents/EmptyComponent/EmptyComponent\";\r\nimport ImageComponent from \"../../ControlComponents/ImageComponent/ImageComponent\";\r\nimport MainCheckboxComponents from \"../../ControlComponents/MainCheckboxComponents/MainCheckboxComponents\";\r\nimport MainTextComponents from \"../../ControlComponents/MainTextComponents/MainTextComponents\";\r\n\r\nimport $ from \"jquery\";\r\nimport ButtonSpecialComponent from \"../../ControlComponents/ButtonComponent/ButtonSpecialComponent\";\r\nimport { ILogicRequestBody } from \"../../../IRequestModel/ILogicModel\";\r\nimport { checkRequireFromTemplate } from \"../../../Helper/RequestScreenHelper\";\r\n\r\ntype Props = {\r\n nestIndex: number;\r\n control: any;\r\n register: any;\r\n documentNo: any;\r\n controlRef: any;\r\n onControlChange: (controlTemplate: any, controlValue: any) => any;\r\n controlUpdate: any;\r\n calCulateCorecontrol: any;\r\n isControlLoading: any;\r\n canEditDoc: boolean;\r\n checkActionPage: string;\r\n tableSummaries?: any[];\r\n updateTableSummaries: (tableTemp: any, value: any) => void;\r\n buttonType: string;\r\n autoNumFormat: IAutoNumberAttibute;\r\n onCheckInterface: any;\r\n onSubmit: any;\r\n memoDetail: IMemoDetailModel;\r\n checkInterFace: boolean;\r\n returnMessage: string;\r\n listReturn: any;\r\n interfaceButton: any;\r\n actionAlert?: any;\r\n setButtonType: (data: any) => void;\r\n edFont?: any;\r\n defaultFont?: any;\r\n allLogicInTable: ILogicRequestBody[];\r\n getValues: UseFormGetValues<{\r\n items: any;\r\n }>;\r\n};\r\n\r\nconst Controls: FC = ({\r\n control,\r\n nestIndex,\r\n register,\r\n documentNo,\r\n controlRef,\r\n onControlChange,\r\n controlUpdate,\r\n autoNumFormat,\r\n isControlLoading,\r\n calCulateCorecontrol,\r\n allLogicInTable,\r\n memoDetail,\r\n onCheckInterface,\r\n onSubmit,\r\n canEditDoc,\r\n checkActionPage,\r\n tableSummaries,\r\n updateTableSummaries,\r\n buttonType,\r\n setButtonType,\r\n checkInterFace,\r\n returnMessage,\r\n listReturn,\r\n getValues,\r\n interfaceButton,\r\n actionAlert,\r\n edFont,\r\n defaultFont,\r\n}) => {\r\n const { toggleAlert } = useAlert();\r\n const { fields, remove, append, update } = useFieldArray({\r\n control,\r\n name: `items[${nestIndex}].layout`,\r\n });\r\n\r\n return (\r\n <>\r\n {fields.map((layout: any, layoutIdx: number) => {\r\n const layoutLength = fields.length;\r\n const grid_size = 12 / layoutLength;\r\n let _colText = 0;\r\n let _colAction = 0;\r\n if (layoutLength == 1) {\r\n _colText =\r\n layout.template.type === \"tb\" || layout.template.type === \"ed\"\r\n ? 11\r\n : 2;\r\n _colAction = layout.template.type === \"ed\" ? 12 : 10;\r\n } else if (layoutLength == 2) {\r\n _colText = 2;\r\n _colAction = 4;\r\n }\r\n let _isCanEdit = canEditDoc;\r\n\r\n if (layout.template.type === \"l\" && layout.isShow !== false) {\r\n return (\r\n \r\n );\r\n } else if (layout.template.type === \"ed\" && layout.isShow !== false) {\r\n return (\r\n // \r\n <>\r\n \r\n \r\n \r\n // \r\n );\r\n } else if (layout.template.type === \"c\" && layout.isShow !== false) {\r\n return (\r\n \r\n );\r\n } else if (layout.template.type === \"ta\" && layout.isShow !== false) {\r\n return (\r\n \r\n );\r\n // }\r\n } else if (layout.template.type === \"dd\" && layout.isShow !== false) {\r\n return (\r\n \r\n );\r\n } else if (layout.template.type === \"cb\" && layout.isShow !== false) {\r\n return (\r\n \r\n );\r\n } else if (layout.template.type === \"at\" && layout.isShow !== false) {\r\n return (\r\n \r\n );\r\n } else if (layout.template.type === \"t\" && layout.isShow !== false) {\r\n return (\r\n \r\n );\r\n } else if (layout.template.type === \"r\" && layout.isShow !== false) {\r\n return (\r\n \r\n );\r\n } else if (layout.template.type === \"tb\" && layout.isShow !== false) {\r\n // check all column isShow == false\r\n // if isHideAllColumn == true then hide all table and label but save data to api on submit\r\n const columns = layout.template.attribute.column as Array<{\r\n label: string;\r\n isShow: boolean | undefined;\r\n }>;\r\n\r\n const isHideAllColumn = !columns\r\n .map((o) => (o.isShow == undefined ? true : o.isShow))\r\n .reduce((pre, cur) => pre || cur);\r\n\r\n return (\r\n <>\r\n {/* {!isHideAllColumn && (\r\n \r\n )} */}\r\n \r\n \r\n );\r\n } else if (layout.template.type === \"d\" && layout.isShow !== false) {\r\n return (\r\n \r\n );\r\n } else if (layout.template.type === \"bt\" && layout.isShow !== false) {\r\n //incomplete\r\n\r\n return (\r\n \r\n );\r\n } else if (layout.template.type === \"an\" && layout.isShow !== false) {\r\n return (\r\n \r\n );\r\n } else if (layout.template.type === \"rvs\" && layout.isShow !== false) {\r\n // incomplete\r\n // setRvsPosition({ rowIdx: i, colIdx: idx });\r\n return (\r\n \r\n );\r\n } else if (layout.template.type === \"im\" && layout.isShow !== false) {\r\n return (\r\n \r\n );\r\n } else if (\r\n layout.template.type === \"em\" ||\r\n Object.keys(layout.template).length === 0\r\n ) {\r\n return (\r\n \r\n );\r\n } else if (layout.template.type === \"spc\" && layout.isShow !== false) {\r\n return (\r\n \r\n );\r\n }\r\n })}\r\n \r\n );\r\n};\r\n\r\nexport default React.memo(Controls);\r\n","import { InputText } from \"primereact/inputtext\";\r\nimport React, { useEffect } from \"react\";\r\nimport { replaceSpecialChar } from \"../../Helper/ReplaceSpecialChar\";\r\nimport Field from \"../Input/Field\";\r\n\r\ninterface Props {\r\n setClassNameProps?: any;\r\n setClassNameSpanProps?: any;\r\n setStyleDivProps?: any;\r\n setStyleProps?: any;\r\n onChangeProps?: any;\r\n valueProps?: any;\r\n disabledProps?: any;\r\n placeholderProps?: any;\r\n setIconProps?: any;\r\n onClickProps?: any;\r\n readOnlyProps?: any;\r\n setControllerId?: any;\r\n autoFocusProps?: any;\r\n fieldProps?: any;\r\n typeProps?: any;\r\n acceptProps?: any;\r\n keyProps?: any;\r\n onBlurProps?: any;\r\n onFocusProps?: any;\r\n}\r\n\r\nexport const InputTextComponents = (props: Props) => {\r\n return (\r\n
\r\n \r\n {props.setIconProps !== undefined ? props.setIconProps : null}\r\n props.onChangeProps(e.target.value, props.keyProps)}\r\n value={props.valueProps}\r\n \r\n disabled={props.disabledProps}\r\n placeholder={props.placeholderProps}\r\n onClick={props.onClickProps}\r\n readOnly={props.readOnlyProps}\r\n // id={props.setControllerId}\r\n // testing if id shows up in the inspect in the right format\r\n id={replaceSpecialChar(props.valueProps??\"\")}\r\n // value={replaceSpecialChar(props.valueProps??\"\")}\r\n autoFocus={props.autoFocusProps}\r\n type={props.typeProps}\r\n accept={props.acceptProps}\r\n onBlur={props.onBlurProps}\r\n onFocus={props.onFocusProps}\r\n\r\n // onBlur={(e) =>\r\n // props.onBlurProps\r\n // ? props.onBlurProps(e.target.value, props.keyProps)\r\n // : undefined\r\n // }\r\n {...props.fieldProps}\r\n />\r\n \r\n
\r\n );\r\n};\r\n","export const generateQuickGuid = () => {\r\n return (\r\n Math.random().toString(36).substring(2, 15) +\r\n Math.random().toString(36).substring(2, 15)\r\n );\r\n};\r\n","export const GetButtonMemoByMemoId = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/Memo/GetButtonMemoByMemoId\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone;\r\n};\r\nexport const ActionMemoPage = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/Memo/ActionMemoPage\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n return err;\r\n });\r\n\r\n return respone;\r\n};\r\nexport const GetMemoDetailById = async (dataJson: any) => {\r\n const respone = await fetch(\"api/Memo/GetMemoDetailById\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone;\r\n};\r\n\r\nexport const GetMemoDetail = async (dataJson: any) => {\r\n const respone = await fetch(\"api/Memo/GetMemoDetail\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => {\r\n return response.json();\r\n })\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.log(\"GetMemoDetail=>err\", err);\r\n });\r\n return respone;\r\n};\r\nexport const GetMemoById = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/Memo/GetMemoById\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n });\r\n\r\n return respone;\r\n};\r\n\r\nexport const GetAttachmentFilesByMemoId = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/Memo/GetAttachmentFilesByMemoId\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n });\r\n\r\n return respone;\r\n};\r\n\r\nexport const GetMemoDetailOnlyById = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/Memo/GetMemoDetailOnlyById\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone;\r\n};\r\n\r\nexport const GetRefDocTemp = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/Memo/GetRefDocTemp\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const GetAllMemo = async (dataJson: any) => {\r\n const respone = await fetch(\"api/Memo/GetMemoById\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const GetRefDocFormTable = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/Memo/GetRefDocFormTable\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const GetMemoHistoryDetail = async (dataJson: any) => {\r\n const respone = await fetch(\"api/Memo/GetMemoHistoryDetail\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n return []\r\n });\r\n return respone;\r\n};\r\n\r\nexport const SetCheckAcces = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/Memo/SetCheckAccess\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n // window.location.href = \"/UnAuthorize\";\r\n });\r\n\r\n return respone;\r\n};\r\n\r\nexport const SpecialActions = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/Memo/SpecialActions\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n // window.location.href = \"/UnAuthorize\";\r\n });\r\n\r\n return respone;\r\n};\r\n\r\nexport const MAdvanceFormByMemoIds = async (memoIds: number[]) => {\r\n const response = await fetch(\"api/Memo/MAdvancveFormByMemoIds\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(memoIds),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n console.log(\"myres\", response);\r\n return response;\r\n};\r\n\r\nexport const ValidateDelegate = async (dataJson: any) => {\r\n const respone = await fetch(\"api/DelegateList/ValidateDelegate\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => {\r\n return response.json();\r\n })\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.log(\"ValidateDelegate=>err\", err);\r\n });\r\n return respone;\r\n};\r\n\r\nexport const getStatusQueueByActorId = async (id: number) => {\r\n const respone = await fetch(`api/Memo/GetStatusQueueByActorId?id=${id}`, {\r\n method: \"GET\",\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone;\r\n};\r\n\r\nexport const UpdateDismissById = async (id: number) => {\r\n const respone = await fetch(`api/Memo/UpdateDismissById?id=${id}`, {\r\n method: \"PATCH\",\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone;\r\n};\r\n\r\n// const formatDateTimeDataReQuest = (value: any) => {\r\n// if (value != \"\") {\r\n// let someDateString = moment(value, \"DD/MM/YYYY HH:mm:ss\");\r\n// const NewDate = moment(someDateString).format(\"DD/MM/YYYY HH:mm:ss\");\r\n// return NewDate;\r\n// } else {\r\n// const NewDate = \"\";\r\n// return NewDate;\r\n// }\r\n// };\r\n\r\n// function setdefaultMemoDetail(data: any) {\r\n// let _memo: IMemoDetailModel = data.requestDetails.memoDetail;\r\n// const _listFormName = data.requestDetails.listFormNames[0];\r\n// const newDate = new Date();\r\n// let _dataSetInformation: any = {\r\n// request_date: formatDateTimeDataReQuest(newDate),\r\n// created_date: formatDateTimeDataReQuest(newDate),\r\n// status:\r\n// location.pathname === \"/PreviewTemplate\"\r\n// ? _listFormName.status\r\n// : \"New Request\",\r\n// modified_date: formatDateTimeDataReQuest(newDate),\r\n// modified_by: window.localStorage.getItem(\"employeeId\"),\r\n// created_by: window.localStorage.getItem(\"employeeId\"),\r\n// report_lang: _listFormName.ReportLang,\r\n// auto_approve_when: _listFormName.AutoApproveWhen,\r\n// GroupTemplateName: _listFormName.GroupTemplateName,\r\n// template_id: _listFormName.TemplateId,\r\n// template_name: _listFormName.TemplateName,\r\n// template_code: _listFormName.DocumentCode,\r\n// document_no: \"Auto Generate\",\r\n// template_detail: uuidv4().replace(/-/g, \"\"),\r\n// waiting_for: window.localStorage.getItem(\"nameTh\"),\r\n// waiting_for_id: window.localStorage.getItem(\"employeeId\"),\r\n// };\r\n// }\r\n","enum LoadState {\r\n IDLE = 0,\r\n LOADING = 1,\r\n COMPLETE = 2,\r\n FAIL = 4,\r\n}\r\nclass GetAllMasterDataService {\r\n private static data: any = null;\r\n private static error: any = null;\r\n private static state: LoadState = LoadState.IDLE;\r\n private static queue: { resolve: Function; reject: Function }[] = [];\r\n\r\n private static responseToQueue() {\r\n if (this.state == LoadState.COMPLETE) {\r\n this.queue.forEach(({ resolve }) => {\r\n resolve(this.data);\r\n });\r\n } else if (this.state == LoadState.FAIL) {\r\n this.queue.forEach(({ reject }) => {\r\n reject(this.error);\r\n });\r\n\r\n this.state = LoadState.IDLE;\r\n this.error = null;\r\n this.data = null;\r\n }\r\n }\r\n\r\n public static retrieve() {\r\n return new Promise(async (resolve, reject) => {\r\n try {\r\n // add callback to queue\r\n this.queue.push({ resolve, reject });\r\n\r\n if (this.state == LoadState.IDLE) {\r\n this.state = LoadState.LOADING;\r\n this.data = await fetch(\"/api/MasterData/GetAll\").then((r) =>\r\n r.json()\r\n );\r\n this.state = LoadState.COMPLETE;\r\n }\r\n } catch (e) {\r\n this.error = e;\r\n this.state = LoadState.FAIL;\r\n }\r\n\r\n this.responseToQueue();\r\n });\r\n }\r\n}\r\n\r\nexport const GetAllMasterData = () => {\r\n return GetAllMasterDataService.retrieve();\r\n};\r\n\r\nexport const GetMasterDataByTypeNames = async (\r\n masterdataTypeNames: string[]\r\n) => {\r\n const respone = await fetch(\"/api/MasterData/GetMasterDataByTypeNames\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({\r\n masterdataTypeNames: masterdataTypeNames,\r\n }),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone.filter((e: any) => e.isActive === true);\r\n};\r\n\r\nexport const GetSignature = async () => {\r\n const respone = await fetch(\"/api/MasterData/GetSignature\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n return [];\r\n });\r\n\r\n return respone.filter((e: any) => e.isActive === true);\r\n};\r\nexport const GetReportSetting = async () => {\r\n const respone = await fetch(\"/api/MasterData/GetReportSetting\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone.filter((e: any) => e.isActive === true);\r\n};\r\nexport const GetIsDocControl = async () => {\r\n const respone = await fetch(\"/api/MasterData/GetIsDocControl\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n });\r\n return respone;\r\n};\r\nexport const getAuthorization = async () => {\r\n const respone = await fetch(\"/api/MasterData/getAuthorization\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\nexport const getVersion = async () => {\r\n const respone = await fetch(\"/api/MasterData/getVersion\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\nexport const getVersionTempVC = async () => {\r\n const respone = await fetch(\"/api/MasterData/getVersionTempVC\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const GetLeaveTemplate = async () => {\r\n const respone = await fetch(\"api/MasterData/GetLeaveTemplate\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n });\r\n return respone;\r\n};\r\n\r\nexport const GetLeaveTemplateByEmpId = async (empId: number) => {\r\n const respone = await fetch(`api/MasterData/GetLeaveTemplate/${empId}`)\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n });\r\n return respone;\r\n};\r\n\r\nexport const GetMasterDataFieldInfo = async () => {\r\n const respone = await fetch(\"api/MasterData/FieldInfo\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n });\r\n return respone;\r\n};\r\n\r\nexport const GetMasterDataReportTem = async () => {\r\n const respone = await fetch(\"api/MasterData/GetReportTem\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n });\r\n return respone;\r\n};\r\n\r\nexport const GetFontList = async () => {\r\n const respone = await fetch(\"api/MasterData/FontList\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n });\r\n return respone;\r\n};\r\n\r\nexport const GetMasterDataBrowserAgent = async () => {\r\n return fetch(\"api/MasterData/GetBrowserAgent\")\r\n .then((response) => response.json() as Promise)\r\n .then((data: any[]) => {\r\n if (data.length > 0) {\r\n let mstData = {\r\n browsers: (data[0].value1 || \"\")\r\n .split(\"|\")\r\n .map((x: string) => x.trim().toLowerCase()),\r\n messages: (data[0].value2 || \"\")\r\n .split(\"|\")\r\n .map((x: string) => x.trim()),\r\n };\r\n return mstData;\r\n } else {\r\n return null;\r\n }\r\n })\r\n .catch((err) => {\r\n console.error(GetMasterDataBrowserAgent.name, \":\", err);\r\n return Promise.reject(err);\r\n });\r\n};\r\n","import {\r\n ILogicTypeHideControl,\r\n ILogicTypeReadOnly,\r\n} from \"../IRequestModel/ILogicModel\";\r\nimport { IMemoDetailModel } from \"../IRequestModel/IMemoDetailModel\";\r\nimport { IUserModel } from \"../IRequestModel/IUserModel\";\r\nimport { LogicOperatorType, LogicType } from \"../constants/logic-type\";\r\nimport { getDefValueInTemplate, getRefInforValue } from \"./RequestScreenHelper\";\r\nexport type advanceFormItemType = {\r\n label: string;\r\n type: string;\r\n items?: string[];\r\n columns?: { label: string; type: string; isInTable: boolean }[];\r\n};\r\n\r\nexport const enumToObject = (\r\n emun: Record\r\n): { [key: string]: string } => {\r\n const readableLabels: { [key: string]: string } = Object.fromEntries(\r\n Object.entries(emun).map(([key, value]) => [\r\n value,\r\n key.replace(/([a-z])([A-Z])/g, \"$1 $2\"),\r\n ])\r\n );\r\n return readableLabels;\r\n};\r\n\r\nexport const getTranFormAdvanceForm = (advanceForm: {\r\n items: any[];\r\n}): advanceFormItemType[] => {\r\n let result: {\r\n label: string;\r\n type: string;\r\n items?: string[];\r\n columns?: any[];\r\n }[] = [];\r\n advanceForm.items.forEach((item) => {\r\n const layout = item.layout;\r\n layout.forEach((control: any) => {\r\n const temp = control.template;\r\n if (temp.type === \"em\") {\r\n return;\r\n }\r\n\r\n if (temp.type === \"dd\") {\r\n result.push({\r\n label: temp.label,\r\n type: temp.type,\r\n items: temp.attribute.items.map((e: any) => e.item),\r\n });\r\n } else if (temp.type === \"tb\") {\r\n result.push({\r\n label: temp.label,\r\n type: temp.type,\r\n columns: temp.attribute.column.map((e: any) => {\r\n return {\r\n label: e.control.template.label,\r\n type: e.control.template.type,\r\n };\r\n }),\r\n });\r\n } else {\r\n result.push({ label: temp.label, type: temp.type });\r\n }\r\n });\r\n });\r\n\r\n return result;\r\n};\r\n\r\nexport const checkIsCorrect = (\r\n aValue: string | number,\r\n operator: LogicOperatorType,\r\n bValue: string | number\r\n): boolean => {\r\n switch (operator) {\r\n case LogicOperatorType.Equal:\r\n return aValue === bValue;\r\n case LogicOperatorType.MoreThan:\r\n return Number(aValue) > Number(bValue);\r\n case LogicOperatorType.LessThan:\r\n return Number(aValue) < Number(bValue);\r\n case LogicOperatorType.GreaterThanAndEqual:\r\n return Number(aValue) >= Number(bValue);\r\n case LogicOperatorType.LessThanAndEqual:\r\n return Number(aValue) <= Number(bValue);\r\n case LogicOperatorType.NotEqual:\r\n return aValue !== bValue;\r\n case LogicOperatorType.Contain:\r\n return String(aValue).includes(String(bValue));\r\n case LogicOperatorType.StartWith:\r\n return String(aValue).startsWith(String(bValue));\r\n case LogicOperatorType.EndWith:\r\n return String(aValue).endsWith(String(bValue));\r\n default:\r\n return false;\r\n }\r\n};\r\n\r\nexport const implementValueWithJsonAction = (\r\n layout: any,\r\n jsonAction: string\r\n) => {\r\n switch (jsonAction) {\r\n case \"readonly\":\r\n layout.isReadOnly = true;\r\n break;\r\n case \"hide\":\r\n layout.isShow = false;\r\n break;\r\n case \"editable\":\r\n layout.isEditable = true;\r\n layout.isReadOnly = false;\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n};\r\n\r\nexport const isRefInfo = (compareWith: string) => {\r\n const refInfos = [\r\n \"Requestor_Employee_code\",\r\n \"Requestor_NameEn\",\r\n \"Requestor_NameTh\",\r\n \"Requestor_PositonEn\",\r\n \"Requestor_PositonTh\",\r\n \"Requestor_DivisionEn\",\r\n \"Requestor_DivisionTh\",\r\n \"Requestor_DepartmentEn\",\r\n \"Requestor_DepartmentTh\",\r\n \"Requestor_Email\",\r\n \"Actor_Employee_code\",\r\n \"Actor_NameEn\",\r\n \"Actor_NameTh\",\r\n \"Actor_PositonEn\",\r\n \"Actor_PositonTh\",\r\n \"Actor_DivisionEn\",\r\n \"Actor_DivisionTh\",\r\n \"Actor_DepartmentEn\",\r\n \"Actor_DepartmentTh\",\r\n \"Actor_Email\",\r\n ];\r\n\r\n return refInfos.includes(compareWith);\r\n};\r\n\r\nexport const processHideControlLogic = (\r\n jsonValue: ILogicTypeHideControl | ILogicTypeReadOnly,\r\n _control: any,\r\n updateTo: string,\r\n memoDetail: IMemoDetailModel,\r\n userData: IUserModel,\r\n controlValue?: any\r\n) => {\r\n let isTable = false;\r\n let isConditionSatisfied = false;\r\n try {\r\n let fieldsToCheck1: any = {};\r\n\r\n jsonValue.conditions.forEach((maincondition: any) => {\r\n let _con = maincondition;\r\n _con.conditions.forEach((subCondition: any) => {\r\n try {\r\n if (typeof subCondition.field === \"string\") {\r\n subCondition.field = JSON.parse(subCondition.field);\r\n }\r\n } catch (error) {}\r\n\r\n let checkValue = controlValue ? controlValue : _con.value;\r\n if (_con.comparewith) {\r\n _control.forEach((control: { layout: any[] }) => {\r\n control.layout.forEach((layout) => {\r\n if (\r\n layout.template.label === _con.comparewith ||\r\n isRefInfo(_con.comparewith || \"\")\r\n ) {\r\n checkValue = getRefInforValue(\r\n _con.comparewith || \"\",\r\n memoDetail,\r\n userData,\r\n layout.data.value\r\n );\r\n }\r\n });\r\n });\r\n }\r\n\r\n _control.forEach((control: { layout: any[] }) => {\r\n control.layout.forEach((layout) => {\r\n if (layout.template.label === subCondition.field) {\r\n fieldsToCheck1[subCondition.field] = layout.data.value\r\n ? layout.data.value\r\n : getDefValueInTemplate(layout.template);\r\n }\r\n });\r\n });\r\n subCondition.Value = checkValue;\r\n });\r\n });\r\n\r\n isConditionSatisfied = isConditionSatisfiedFunc2(fieldsToCheck1, jsonValue);\r\n\r\n const objLabel: { label: string; type: string; isInTable: string } =\r\n JSON.parse(jsonValue.label);\r\n\r\n if (objLabel?.isInTable) {\r\n isTable = true;\r\n } else {\r\n _control.forEach((control: { layout: any[] }) => {\r\n control.layout.forEach((layout: any) => {\r\n if (layout.template.label === objLabel.label) {\r\n if (updateTo === \"isShow\") {\r\n layout.isShow = !isConditionSatisfied;\r\n } else {\r\n layout.isReadOnly = isConditionSatisfied;\r\n }\r\n if (isConditionSatisfied && jsonValue.resetonaction) {\r\n layout.data.value = getDefValueInTemplate(layout.template);\r\n }\r\n }\r\n });\r\n });\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n\r\n return isTable;\r\n};\r\n\r\nexport function isConditionSatisfiedFunc(\r\n controlLabel: string,\r\n value: any,\r\n jsonValue: ILogicTypeHideControl | ILogicTypeReadOnly\r\n) {\r\n try {\r\n for (let condition of jsonValue?.conditions) {\r\n for (let cond of condition.conditions) {\r\n if (cond.field === controlLabel) {\r\n if (checkIsCorrect(value, cond.operator, cond.value)) {\r\n return true;\r\n }\r\n }\r\n }\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n return false;\r\n}\r\n\r\nexport const isConditionSatisfiedFunc2 = (\r\n fields: { [x: string]: string | number },\r\n data: any\r\n) => {\r\n for (let conditionGroup of data.conditions) {\r\n if (areSubConditionsSatisfied(fields, conditionGroup.conditions)) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n};\r\n\r\nconst areSubConditionsSatisfied = (\r\n fields: { [x: string]: string | number },\r\n data: any\r\n) => {\r\n for (let cond of data) {\r\n if (!checkIsCorrect(fields[cond.field], cond.operator, cond.value)) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n};\r\n","import { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { useUserContext } from \"../../../Context/UserContext\";\r\nimport { InputTextComponents } from \"../../InputTextComponents/InputTextComponents\";\r\nimport { Tooltip } from \"primereact/tooltip\";\r\nimport { Col, Row, Switch } from \"antd\";\r\nimport { CheckOutlined } from \"@ant-design/icons\";\r\nimport { ButtonComponents } from \"../../ButtonComponents/ButtonComponents\";\r\nimport { Button } from \"primereact/button\";\r\n\r\ninterface Props {\r\n dataList: any;\r\n dialogKey: any;\r\n onSelectFunc?: (rowData: any) => void;\r\n columns: IColumn[];\r\n dialogVisible: boolean;\r\n setDialogVisible: (visible: boolean) => void;\r\n selectionMode?: \"single\" | \"multi\";\r\n loading?: boolean;\r\n customFooter?: any;\r\n selectionData?: any[];\r\n setSelectedData?: (val: any[]) => void;\r\n mutiable?: boolean;\r\n}\r\n\r\nexport interface IColumn {\r\n field: string;\r\n headerEn: string;\r\n headerTh?: string;\r\n}\r\n\r\nexport const SelectDataDialog = (props: Props) => {\r\n const [globalFilterValue, setGlobalFilterValue] = useState(\"\");\r\n const [searchData, setSearchData] = useState([]);\r\n const [searchKey, setSearchKey] = useState([]);\r\n const [userData, setUserData] = useUserContext();\r\n const tooltipRef = useRef(null);\r\n const [multiSwitch, setMultiSwitch] = useState(false);\r\n const [selectedDatas, setSelectedData] = useState([]);\r\n\r\n useEffect(() => {\r\n try {\r\n if (props.dialogVisible) {\r\n let keys: any[] = [];\r\n Object.keys(props.dataList[0] ? props.dataList[0] : \"\").map(\r\n (key: string, idx: number) => {\r\n if (!key.toLowerCase().includes(\"id\") && key !== \"SignPicPath\") {\r\n keys.push(key);\r\n }\r\n }\r\n );\r\n setSearchKey([...keys]);\r\n setGlobalFilterValue(\"\");\r\n setSearchData(props.dataList);\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n }, [props.dialogVisible, props.dataList]);\r\n\r\n function toggleModal() {\r\n props.setDialogVisible(!props.dialogVisible);\r\n }\r\n\r\n const renderHeader = () => {\r\n return (\r\n \r\n \r\n }\r\n setClassNameSpanProps={\"p-input-icon-left\"}\r\n />\r\n \r\n {props.mutiable && (\r\n \r\n Multi select\r\n \r\n {\r\n setSelectedData([]);\r\n setMultiSwitch(!multiSwitch);\r\n }}\r\n />\r\n \r\n \r\n )}\r\n \r\n );\r\n };\r\n\r\n // useEffect(() => {\r\n // tooltipRef.current && tooltipRef.current.updateTargetEvents();\r\n // }, [searchData]);\r\n const dynamicColumns = props.columns.map((col, i) => {\r\n if (col.field !== \"Memo_MAdvancveForm\") {\r\n return (\r\n \r\n

{col.headerEn}

\r\n

{col.headerTh}

\r\n \r\n }\r\n body={(rowData) => {\r\n let newField = \"\";\r\n if (userData.Lang === \"EN\") {\r\n newField = col.field?.replace(\"Th\", \"En\");\r\n // return rowData[newField];\r\n } else {\r\n newField = col.field?.replace(\"En\", \"Th\");\r\n // return rowData[newField];\r\n }\r\n\r\n return (\r\n {\r\n if (props.dialogKey === \"Employee\") {\r\n tooltipRef.current &&\r\n tooltipRef.current.updateTargetEvents();\r\n }\r\n }}\r\n >\r\n {rowData[newField]}\r\n \r\n );\r\n }}\r\n />\r\n );\r\n }\r\n });\r\n\r\n const onGlobalFilterChange = (e: any) => {\r\n try {\r\n const value = e;\r\n const data = props.dataList.filter((data: any) => {\r\n let findData: any = [];\r\n searchKey.map((col: any) => {\r\n let field = col;\r\n if (data[field]) {\r\n if (\r\n data[field]\r\n .toString()\r\n .toLowerCase()\r\n .indexOf(value.toLowerCase()) !== -1\r\n ) {\r\n findData.push(data);\r\n }\r\n }\r\n });\r\n if (findData.length > 0) {\r\n return true;\r\n }\r\n });\r\n setSearchData([...data]);\r\n setGlobalFilterValue(value);\r\n } catch (error) {\r\n console.error(\"table=>search=>error\", error);\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n \r\n\r\n {\r\n setSelectedData([]);\r\n setMultiSwitch(false);\r\n }}\r\n footer={props.customFooter}\r\n draggable={false}\r\n resizable={false}\r\n blockScroll\r\n closable={true}\r\n >\r\n {!props.loading ? (\r\n <>\r\n <>\r\n {\r\n if (multiSwitch) return;\r\n\r\n if (tooltipRef.current) {\r\n tooltipRef.current.state.visible = false;\r\n }\r\n\r\n if (props.selectionMode === \"multi\") {\r\n if (props.onSelectFunc) {\r\n props.onSelectFunc([e.data]);\r\n }\r\n } else {\r\n if (props.onSelectFunc) {\r\n props.onSelectFunc(e.data);\r\n }\r\n }\r\n }}\r\n onSelectionChange={(e) => {\r\n setSelectedData(e.value);\r\n }}\r\n sortField=\"EmployeeCode\"\r\n sortOrder={1}\r\n >\r\n {multiSwitch && (\r\n \r\n )}\r\n\r\n {dynamicColumns}\r\n \r\n \r\n <>\r\n {multiSwitch && (\r\n <>\r\n \r\n {\" \"}\r\n {\r\n if (selectedDatas.length > 0) {\r\n if (props.selectionMode === \"multi\") {\r\n if (props.onSelectFunc) {\r\n props.onSelectFunc(selectedDatas);\r\n }\r\n } else {\r\n selectedDatas.forEach((selectedData) => {\r\n if (props.onSelectFunc) {\r\n props.onSelectFunc(selectedData);\r\n }\r\n });\r\n }\r\n\r\n setSelectedData([]);\r\n setMultiSwitch(!multiSwitch);\r\n }\r\n }}\r\n style={{\r\n minWidth: \"unset\",\r\n textAlign: \"center\",\r\n height: \"38px\",\r\n background: \" #28a745\",\r\n border: \"1px solid #28a745\",\r\n color: \"#ffffff\",\r\n fontSize: \"13px\",\r\n borderRadius: \"6px\",\r\n padding: 5,\r\n // margin: \" 0px 11px 0px 0px\",\r\n }}\r\n />\r\n \r\n \r\n )}\r\n \r\n \r\n ) : (\r\n <>\r\n {\" \"}\r\n \r\n {dynamicColumns}\r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n","import React, { createContext, useContext, useState, useEffect } from \"react\";\r\nimport {\r\n UpdateDismissById,\r\n getStatusQueueByActorId,\r\n} from \"../Services/MemoService\";\r\nimport { useUserContext } from \"./UserContext\";\r\n\r\ntype IMemoPageContextType = {\r\n processQue: number[];\r\n FailQue: memoQueStatus[];\r\n getMyMemoStatus: () => Promise;\r\n onDismiss: (id: number) => Promise;\r\n checkSyncMemo: () => void;\r\n};\r\n\r\nexport type memoQueStatus = {\r\n id: number;\r\n memoId: number;\r\n jobId: number;\r\n actorId: number;\r\n state: string;\r\n documentNo: string;\r\n message: string;\r\n};\r\n\r\nexport const MemoPageContext = createContext(null);\r\n\r\nexport const MemoPageContextProvider: React.FC = (props) => {\r\n const [processQue, setProcessQue] = useState([]);\r\n const [FailQue, setFailQue] = useState([]);\r\n const [isCheck, setIsCheck] = useState(false);\r\n\r\n const user = useUserContext();\r\n\r\n useEffect(() => {\r\n if (isCheck) {\r\n const intervalId = setInterval(() => {\r\n getMyMemoStatus();\r\n }, 5000);\r\n\r\n return () => {\r\n clearInterval(intervalId);\r\n };\r\n }\r\n }, [isCheck]);\r\n\r\n const getMyMemoStatus = async () => {\r\n try {\r\n if (user[0]) {\r\n const result: memoQueStatus[] = await getStatusQueueByActorId(\r\n user[0].EmployeeId\r\n );\r\n\r\n if (result) {\r\n if (result.every((e) => e.state === \"Succeeded\")) {\r\n setIsCheck(false);\r\n }\r\n const fail = result?.filter((e) => e.state === \"Failed\");\r\n if (fail?.length > 0) {\r\n if (JSON.stringify(fail) === JSON.stringify(FailQue)) {\r\n setIsCheck(false);\r\n }\r\n }\r\n setProcessQue([\r\n ...result\r\n ?.filter(\r\n (e) =>\r\n e.state === \"Processing\" ||\r\n e.state === \"Enqueued\" ||\r\n e.state === \"Scheduled\" ||\r\n e.state === \"Unknown\"\r\n )\r\n .map((e) => e.memoId),\r\n ]);\r\n setFailQue([...fail]);\r\n }\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n };\r\n\r\n const onDismiss = async (id: number) => {\r\n const result = await UpdateDismissById(id);\r\n getMyMemoStatus();\r\n };\r\n\r\n const checkSyncMemo = () => {\r\n setIsCheck(!isCheck);\r\n };\r\n\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n};\r\n","import { useContext } from \"react\";\r\nimport { MemoPageContext } from \"../Context/MemoPageContext\";\r\n\r\nconst useMemoPage = () => {\r\n const context = useContext(MemoPageContext);\r\n if (!context)\r\n throw new Error(\"MemoPage Context must be use inside MemoPage Provider\");\r\n return context;\r\n};\r\n\r\nexport default useMemoPage;\r\n","import React from \"react\";\r\nimport {\r\n CloseCircleOutlined,\r\n CheckCircleOutlined,\r\n WarningOutlined,\r\n} from \"@ant-design/icons\";\r\nimport useMemoPage from \"../../hooks/useMemoPage\";\r\nimport { Link } from \"react-router-dom\";\r\n\r\ntype Props = {};\r\n\r\nconst NotiPopOverContent = (props: Props) => {\r\n const { FailQue, onDismiss } = useMemoPage();\r\n\r\n const handleDismissNoti = (id: number) => {\r\n onDismiss(id);\r\n };\r\n\r\n return (\r\n <>\r\n
\r\n
Notification
\r\n \r\n {FailQue.map((que) => (\r\n \r\n handleDismissNoti(que.id)}\r\n >\r\n X\r\n \r\n \r\n \r\n \r\n Oops! Something went wrong while sending your document{\" \"}\r\n {que.documentNo} Please review and resend.\r\n \r\n \r\n {que.message}\r\n \r\n \r\n
\r\n ))}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default NotiPopOverContent;\r\n","import React, { useState, useEffect, useMemo, Fragment } from \"react\";\r\nimport {\r\n AiOutlineReconciliation,\r\n AiOutlineSetting,\r\n AiOutlineUnorderedList,\r\n AiFillBell,\r\n} from \"react-icons/ai\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { RiTodoLine } from \"react-icons/ri\";\r\nimport { Link, useHistory, useLocation } from \"react-router-dom\";\r\n// import Popover from \"react-bootstrap/Popover\";\r\nimport { Popover } from \"antd\";\r\nimport { CloseCircleOutlined } from \"@ant-design/icons\";\r\n\r\nimport \"./ButtonNavigation.css\";\r\nimport { log } from \"console\";\r\nimport { replaceSpecialChar } from \"../../Helper/ReplaceSpecialChar\";\r\nimport NotiPopOverContent from \"../NotificationComponent/NotiPopOverContent\";\r\nimport useMemoPage from \"../../hooks/useMemoPage\";\r\nimport { memoQueStatus } from \"../../Context/MemoPageContext\";\r\nimport useAlert from \"../../hooks/useAlert\";\r\ninterface Props {\r\n data: any[];\r\n setActive: any;\r\n}\r\n\r\nexport const ButtonNavigation: React.FC = ({ data, setActive }) => {\r\n const [menuButton, setMenuButton] = useState({});\r\n const [sortableMenu, setSortableMenu] = useState([]);\r\n const [toggleState, setToggleState] = useState([]);\r\n const { t } = useTranslation([\"translation\"]);\r\n const history = useHistory();\r\n const location = useLocation();\r\n const { FailQue } = useMemoPage();\r\n const alert = useAlert();\r\n const [listNotify, setListNotity] = useState(FailQue);\r\n useMemo(() => {\r\n let result = data.reduce(function (r, a) {\r\n r[a.GroupMenu] = r[a.GroupMenu] || [];\r\n r[a.GroupMenu].push(a);\r\n return r;\r\n }, Object.create(null));\r\n\r\n const { Request, ...newResult } = result;\r\n\r\n let _res: any = {};\r\n for (const [key, value] of Object.entries(newResult)) {\r\n const uniqueArray = newResult[key].filter((value: any, index: any) => {\r\n const _value = JSON.stringify(value.SubMenu);\r\n return (\r\n index ===\r\n newResult[key].findIndex((obj: any) => {\r\n return JSON.stringify(obj.SubMenu) === _value;\r\n })\r\n );\r\n });\r\n _res[key] = uniqueArray;\r\n }\r\n\r\n let sortableMenu = [];\r\n for (var menu in _res) {\r\n sortableMenu.push([menu, _res[menu]]);\r\n }\r\n\r\n sortableMenu.sort(function (a, b) {\r\n return a[1][0].OrderGroup - b[1][0].OrderGroup;\r\n });\r\n\r\n setSortableMenu([...sortableMenu]);\r\n\r\n setMenuButton({ ..._res });\r\n const toggleArray: any = [];\r\n Object.entries(menuButton).forEach(([key, value]) => {\r\n toggleArray.push(false);\r\n });\r\n setToggleState([...toggleArray]);\r\n }, [data]);\r\n useEffect(() => {\r\n Object.entries(menuButton).forEach(([key, value], _idx) => {\r\n if (location.pathname.indexOf(key) !== -1) {\r\n let _toggleState = new Array(toggleState.length).fill(false);\r\n _toggleState[value[0].OrderGroup - 1] = true;\r\n setToggleState([..._toggleState]);\r\n }\r\n\r\n if (location.pathname !== `/${key}`) {\r\n value.forEach((_data: any) => {\r\n if (\r\n location.pathname === `/${_data.GroupMenu}` ||\r\n location.pathname.indexOf(_data.Url) !== -1\r\n ) {\r\n let _toggleState = new Array(toggleState.length).fill(false);\r\n\r\n _toggleState[value[0].OrderGroup - 1] = true;\r\n setToggleState([..._toggleState]);\r\n }\r\n });\r\n }\r\n });\r\n }, [location.pathname, menuButton]);\r\n useEffect(() => {\r\n const _toggleState = toggleState;\r\n if (location.pathname === \"/Request\") {\r\n setActive(true);\r\n }\r\n const res_every = _toggleState.every((b) => b === false);\r\n for (let i = 0; i < _toggleState.length; i++) {\r\n const state = _toggleState[i];\r\n if (state === true) {\r\n setActive(true);\r\n }\r\n }\r\n if (res_every && location.pathname !== \"/Request\") {\r\n setActive(false);\r\n }\r\n }, [toggleState]);\r\n const mapIcon = (key: string) => {\r\n if (key === \"Worklist\") {\r\n return ;\r\n }\r\n if (key === \"Report\") {\r\n return ;\r\n }\r\n if (key === \"Settings\") {\r\n return ;\r\n }\r\n if (key === \"List and Documents\") {\r\n return ;\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (FailQue.length > 0) {\r\n let newNoti = FailQue.filter(\r\n (i) => !listNotify.find((j) => i.jobId == j.jobId)\r\n );\r\n newNoti.forEach((i) => {\r\n alert.toggleAlert({\r\n type: \"error\",\r\n message: `Oops! Something went wrong`,\r\n description: `Something went wrong while sending your document ${i.documentNo} Please review and resend.\\n\r\n ${i.message}`,\r\n duration: 0,\r\n });\r\n });\r\n }\r\n setListNotity(FailQue);\r\n }, [FailQue]);\r\n\r\n return (\r\n
\r\n {sortableMenu.map((menu, _idx) => {\r\n const menuUrls = menu[1]; \r\n const currentUrl = window.location.pathname.toLowerCase();\r\n const isUrlMatch = menuUrls.some((urlObj: any) => {\r\n if (currentUrl.match(/\\/dynamicreport\\//) && urlObj.GroupMenu === \"List and Documents\") {\r\n return true;\r\n }else if(currentUrl.match(/\\/dynamicreport\\//) && urlObj.GroupMenu !== \"List and Documents\"){\r\n return false\r\n }\r\n \r\n return currentUrl.includes(urlObj.GroupMenu.toLowerCase()) || currentUrl.includes(urlObj.Url.toLowerCase());\r\n });\r\n \r\n\r\n return (\r\n \r\n {menu[1].length > 0 &&\r\n menu[1].every(\r\n (_data: any) => _data.SubMenu !== null && _data.SubMenu !== \"\"\r\n ) ? (\r\n \r\n menu[1]\r\n .sort(\r\n (a: any, b: any) =>\r\n Number(a.OrderSub) - Number(b.OrderSub)\r\n )\r\n .map((e: any, idx: any) => {\r\n const subMenu = replaceSpecialChar(e.SubMenu);\r\n return (\r\n \r\n {e.SubMenu !== \"\" &&\r\n e.SubMenu !== null &&\r\n e.GroupMenu !== \"Settings\" ? (\r\n e.InternalUrl !== 0 ? (\r\n
\r\n \r\n

\r\n {t(e.SubMenu)}\r\n

\r\n \r\n
\r\n ) : (\r\n
\r\n {\r\n // history.push(e.Url);\r\n window.open(e.Url);\r\n }}\r\n target=\"_blank\"\r\n >\r\n {t(e.SubMenu)}\r\n \r\n
\r\n )\r\n ) : e.InternalUrl !== 0 ? (\r\n
\r\n \r\n

\r\n {t(e.SubMenu)}\r\n

\r\n \r\n
\r\n ) : (\r\n
\r\n {\r\n const _url = e.Url;\r\n window.open(_url, \"blank\");\r\n }}\r\n >\r\n {t(e.SubMenu)}\r\n

\r\n
\r\n )}\r\n
\r\n );\r\n })\r\n }\r\n trigger=\"hover\"\r\n >\r\n \r\n {mapIcon(menu[0])}\r\n

{t(menu[0])}

\r\n \r\n \r\n ) : menu[1]?.length < 2 &&\r\n `${menu[1][0]?.Url}` &&\r\n menu[1][0]?.InternalUrl === 0 ? (\r\n \r\n {mapIcon(menu[0])}\r\n

{t(menu[0])}

\r\n \r\n ) : (\r\n \r\n {mapIcon(menu[0])}\r\n

{t(menu[0])}

\r\n \r\n )}\r\n
\r\n );\r\n })}\r\n }\r\n trigger=\"click\"\r\n >\r\n \r\n \r\n \r\n );\r\n};\r\n","import Cookies from \"universal-cookie\";\r\nconst cookies = new Cookies();\r\nexport type Auth = {\r\n isAuthenticated?: boolean;\r\n redirectPath: string;\r\n};\r\n\r\nexport const initialSession: Auth = {\r\n redirectPath: \"/login\",\r\n isAuthenticated: cookies.get(\"GuidVerify\") ? true : false,\r\n};\r\n","import React from \"react\";\r\nimport { createContext, useContext, useState } from \"react\";\r\nimport { initialSession, Auth } from \"../IRequestModel/IAuthModel\";\r\n\r\nexport const SessionContext = createContext<[Auth, (session: Auth) => void]>([\r\n initialSession,\r\n () => {},\r\n]);\r\nexport const useSessionContext = () => useContext(SessionContext);\r\n\r\nexport const SessionContextProvider: React.FC = (props) => {\r\n const [sessionState, setSessionState] = useState(initialSession);\r\n const defaultSessionContext: [Auth, typeof setSessionState] = [\r\n sessionState,\r\n setSessionState,\r\n ];\r\n\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n};\r\n","export const GetAllEmployee = async (opts?: {Scopes?: string, IsActiveOnly?: boolean}) => {\r\n let qs = new URLSearchParams({\r\n [\"Scopes\"]: opts?.Scopes || \"\",\r\n [\"IsActiveOnly\"]: (opts?.IsActiveOnly || true).toString()\r\n });\r\n const respone = await fetch(\"api/Employee/GetAll?\" + qs.toString())\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone?.filter((e: any) => e.IsActive === true);\r\n};\r\n\r\n/**\r\n * ฟังก์ชันอยู่ระหว่างพิจารณาปรับใช้งาน\r\n */\r\nexport const GetEmployeeByUserPrincipalName = async (dataEmp :any) => {\r\n try{\r\n dataEmp.UserPrincipalName = JSON.parse(localStorage.getItem(\"userData\")!).employeeData.Email;\r\n const respone = await fetch(\"api/Employee/GetEmployeeByUserPrincipalName\",{\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataEmp),\r\n })\r\n return await respone.json();\r\n\r\n // if (Array.isArray(data?.data)) {\r\n // // ใช้ filter กับข้อมูลของ Employee ได้เนื่องจาก data.data เป็นอาร์เรย์\r\n // const activeEmployees = data.data.filter((e: any) => e.IsActive === true);\r\n // return activeEmployees;\r\n // } else {\r\n // console.error(\"Invalid employee data returned from GetByIdEmployee\");\r\n // return null;\r\n // }\r\n } catch (error) {\r\n console.log(\"emp=>err\", error);\r\n return error;\r\n }\r\n};\r\n\r\nexport const UpdateEmployee = async (dataJson: any) => {\r\n const respone = await fetch(\"api/Employee/UpdateData\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.log(\"emp=>err\", err);\r\n return err;\r\n });\r\n return respone;\r\n};\r\n\r\nexport const UpdateSignature = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/Employee/UpdateSignature\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.log(\"emp=>err\", err);\r\n return err;\r\n });\r\n return respone;\r\n};\r\n\r\nexport const GetUserData = async (empData: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n empData.UserPrincipalName = email;\r\n const respone = await fetch(\"api/Employee/GetById\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(empData),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n return err;\r\n });\r\n\r\n return respone;\r\n};\r\n","export const GetAllPosition = async () => {\r\n const respone = await fetch(\"api/Position/AllPositionList\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n });\r\n\r\n return respone.filter((e: any) => e.IsActive === true);\r\n};\r\n\r\nexport const AddPosition = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/Position/AddData\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data.result;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const UpdatePosition = async (dataJson: any) => {\r\n const respone = await fetch(\"api/Position/UpdatePosition\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data.result;\r\n });\r\n\r\n return respone;\r\n};\r\n","export const GetDepartment = async () => {\r\n const respone = await fetch(\"api/Department/GetAll\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const UpdateDepartment = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const data = {\r\n name: \"Department\",\r\n model: JSON.stringify(dataJson),\r\n };\r\n const respone = await fetch(\"api/Department/AddDepartment\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(data),\r\n }).then((response) => response.json());\r\n console.log(respone);\r\n\r\n return respone;\r\n};\r\n","import { Button } from \"primereact/button\";\r\nimport \"./EmployeeDialog.css\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { InputSwitch } from \"primereact/inputswitch\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { useForm, Controller } from \"react-hook-form\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport { confirmDialog, ConfirmDialog } from \"primereact/confirmdialog\";\r\nimport \"../Dialog.css\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport {\r\n GetAllEmployee,\r\n UpdateEmployee,\r\n UpdateSignature,\r\n} from \"../../../Services/EmployeeService\";\r\nimport { GetAllPosition } from \"../../../Services/PositionService\";\r\nimport { GetDepartment } from \"../../../Services/DepartmentService\";\r\nimport { FiSave, FiX } from \"react-icons/fi\";\r\nimport { isEmptyObject } from \"jquery\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport { GetAllDynamic } from \"../../../Services/DynamicService\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { SelectDataDialog } from \"../../Select/SelectionDataDialog/SelectDataDialog\";\r\nimport { useUserContext } from \"../../../Context/UserContext\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\n\r\ninterface Props {\r\n dialogHeader: string;\r\n formData: any;\r\n tableData?: any;\r\n setTableData?: (items: any) => void;\r\n tableComfirmDialog?: boolean;\r\n setTableComfirmDialog?: (bool: boolean) => void;\r\n mainDialogVisible?: boolean;\r\n setMainLoading?: (bool: boolean) => void;\r\n setMainDialogVisible: (...args: any) => void;\r\n}\r\n\r\nexport const EmployeeDialog = (props: Props) => {\r\n const {\r\n control,\r\n formState: { errors },\r\n handleSubmit,\r\n reset,\r\n } = useForm({\r\n mode: \"all\",\r\n reValidateMode: \"onChange\",\r\n shouldUnregister: false,\r\n });\r\n const { toggleAlert } = useAlert();\r\n const [messageConfirmDialog, setMessageConfirmDialog] = useState(\"\");\r\n const [formSelectedPosition, setFormSelectedPosition] = useState([]);\r\n const [formSelectedDepartment, setFormSelectedDepartment] = useState([]);\r\n const [formSelectedDivision, setFormSelectedDivision] = useState([]);\r\n const [positionList, setPositionList] = useState([]);\r\n const [deptList, setDeptList] = useState([]);\r\n const [divList, setDivtList] = useState([]);\r\n const [dataEmployeeList, setDataEmployeeList] = useState([]);\r\n const [globalFilterValue, setGlobalFilterValue] = useState(\"\");\r\n const [searchData, setSearchData] = useState([]);\r\n const [report_To, setReport_To] = useState(null);\r\n const [loading, setLoading] = useState(true);\r\n const [uploadFile, setUploadFile] = useState();\r\n const [userData, setUserData] = useUserContext();\r\n const [subDialogVisible, setSubDialogVisible] = useState(false);\r\n const [action, setAction] = useState(\"\");\r\n const toast = useRef(null);\r\n\r\n useEffect(() => {\r\n fetchPosition();\r\n fetchDataEmployee();\r\n fetchDivision();\r\n fetchDepartment();\r\n\r\n if (\r\n !isEmptyObject(props.formData) ||\r\n props.dialogHeader === \"Edit Profile\"\r\n ) {\r\n const rowDataPosition = {\r\n PositionId: props.formData?.PositionId,\r\n NameTh: props.formData?.PositionNameTh,\r\n NameEn: props.formData?.PositionNameEn,\r\n };\r\n const rowDataDept = {\r\n DepartmentId: props.formData?.DepartmentId,\r\n NameTh: props.formData?.DepartmentNameTh,\r\n NameEn: props.formData?.DepartmentNameEn,\r\n };\r\n setFormSelectedPosition(rowDataPosition);\r\n setFormSelectedDepartment(rowDataDept);\r\n setAction(\"edit\");\r\n } else {\r\n setAction(\"add\");\r\n }\r\n setLoading(false);\r\n }, []);\r\n\r\n useEffect(() => {\r\n setMessageConfirmDialog(\"Do you want to \" + action + \" this record?\");\r\n }, [action]);\r\n\r\n useEffect(() => {\r\n if (props.mainDialogVisible) {\r\n const rowDataPosition = {\r\n PositionId: props.formData?.PositionId,\r\n NameTh: props.formData?.PositionNameTh,\r\n NameEn: props.formData?.PositionNameEn,\r\n };\r\n const rowDataDept = {\r\n DepartmentId: props.formData?.DepartmentId,\r\n NameTh: props.formData?.DepartmentNameTh,\r\n NameEn: props.formData?.DepartmentNameEn,\r\n };\r\n setFormSelectedPosition(rowDataPosition);\r\n setFormSelectedDepartment(rowDataDept);\r\n fetchPosition();\r\n fetchDataEmployee();\r\n\r\n fetchDepartment();\r\n fetchDivision();\r\n setLoading(false);\r\n } else {\r\n setFormSelectedPosition(null);\r\n setFormSelectedDepartment(null);\r\n setUploadFile(undefined);\r\n }\r\n }, [props.mainDialogVisible]);\r\n\r\n async function fetchDataEmployee() {\r\n let _dataEmployee = await GetAllEmployee();\r\n let selectedEmp = {\r\n EmployeeId: Number,\r\n EmployeeCode: String,\r\n NameTh: String,\r\n Report_ToNameEn: String,\r\n };\r\n\r\n _dataEmployee.map((e: any) => {\r\n if (e.EmployeeId === Number(props.formData?.ReportToEmpCode)) {\r\n selectedEmp.EmployeeId = e.EmployeeId;\r\n selectedEmp.EmployeeCode = e.EmployeeCode;\r\n selectedEmp.NameTh = e.NameTh;\r\n selectedEmp.Report_ToNameEn = e.NameEn;\r\n setReport_To(selectedEmp);\r\n }\r\n });\r\n\r\n setDataEmployeeList(_dataEmployee);\r\n setSearchData(_dataEmployee);\r\n }\r\n\r\n async function fetchPosition() {\r\n let _dataPosition = await GetAllPosition();\r\n\r\n let newList: any = [];\r\n\r\n for (let i = 0; i < _dataPosition.length; i++) {\r\n let positionList = {\r\n PositionId: Number,\r\n NameTh: String,\r\n NameEn: String,\r\n };\r\n\r\n positionList.PositionId = _dataPosition[i].PositionId;\r\n positionList.NameTh = _dataPosition[i].NameTh;\r\n positionList.NameEn = _dataPosition[i].NameEn;\r\n\r\n if (positionList.PositionId === props.formData?.PositionId) {\r\n setFormSelectedPosition(positionList);\r\n }\r\n\r\n newList.push(positionList);\r\n }\r\n\r\n setPositionList(newList);\r\n }\r\n\r\n async function fetchDepartment() {\r\n let _dataOrgranize = await GetDepartment();\r\n\r\n let newList: any = [];\r\n\r\n for (let i = 0; i < _dataOrgranize.length; i++) {\r\n let deptList = {\r\n DepartmentId: Number,\r\n NameTh: String,\r\n NameEn: String,\r\n };\r\n\r\n deptList.DepartmentId = _dataOrgranize[i].DepartmentId;\r\n deptList.NameTh = _dataOrgranize[i].NameTh;\r\n deptList.NameEn = _dataOrgranize[i].NameEn;\r\n if (deptList.DepartmentId === props.formData?.DepartmentId) {\r\n setFormSelectedDepartment(deptList);\r\n }\r\n newList.push(deptList);\r\n }\r\n\r\n setDeptList(newList);\r\n }\r\n\r\n async function fetchDivision() {\r\n let _dataDivision = await GetAllDynamic(\"Division/GetAll\", undefined);\r\n\r\n let newList: any = [];\r\n\r\n for (let i = 0; i < _dataDivision.length; i++) {\r\n let divtList = {\r\n DivisionId: Number,\r\n NameTh: String,\r\n NameEn: String,\r\n };\r\n\r\n divtList.DivisionId = _dataDivision[i].DivisionId;\r\n divtList.NameTh = _dataDivision[i].NameTh;\r\n divtList.NameEn = _dataDivision[i].NameEn;\r\n if (divtList.DivisionId === props.formData?.DivisionId) {\r\n setFormSelectedDepartment(divtList);\r\n }\r\n newList.push(divtList);\r\n }\r\n\r\n setDivtList(newList);\r\n }\r\n\r\n const updateChanges = (data: any) => {\r\n if (!subDialogVisible && props.mainDialogVisible) {\r\n if (\r\n data.Position.PositionId !== undefined &&\r\n data.Department.DepartmentId !== undefined\r\n ) {\r\n confirmDialog({\r\n message: messageConfirmDialog,\r\n header:\r\n action === \"add\"\r\n ? \"Add\" + \" Confirmation\"\r\n : \"Edit\" + \" Confirmation\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {\r\n if (props.setMainLoading) {\r\n props.setMainLoading(true);\r\n }\r\n acceptSave(data);\r\n },\r\n });\r\n }\r\n }\r\n };\r\n\r\n const getFormErrorMessage = (name: any) => {\r\n return (\r\n errors[name] && {errors[name].message}\r\n );\r\n };\r\n\r\n const acceptSave = async (data: any) => {\r\n let formData: any = {};\r\n let isCodeDup = false;\r\n let isEmailDup = false;\r\n let empDup: any;\r\n dataEmployeeList.forEach((e: any) => {\r\n if (e.EmployeeId !== props.formData?.EmployeeId) {\r\n if (e.EmployeeCode === data.EmployeeCode) {\r\n isCodeDup = true;\r\n empDup = e;\r\n return;\r\n } else if (e.Email === data.Email) {\r\n isEmailDup = true;\r\n empDup = e;\r\n return;\r\n }\r\n }\r\n });\r\n if (!isCodeDup && !isEmailDup) {\r\n if (action === \"add\") {\r\n formData.EmployeeId = 0;\r\n formData.Username = data.Username;\r\n formData.EmployeeCode = data.EmployeeCode;\r\n formData.NameTh = data.NameTh;\r\n formData.NameEn = data.NameEn;\r\n formData.Email = data.Email;\r\n formData.IsActive = data.IsActive;\r\n formData.PositionId = data.Position.PositionId;\r\n formData.PositionNameTh = data.Position.NameTh;\r\n formData.PositionNameEn = data.Position.NameEn;\r\n formData.DepartmentId = data.Department.DepartmentId;\r\n formData.DepartmentNameTh = data.Department.NameTh;\r\n formData.DepartmentNameEn = data.Department.NameEn;\r\n formData.DivisionId = data.Division.DivisionId;\r\n formData.DivisionNameTh = data.Division.NameTh;\r\n formData.DivisionNameEn = data.Division.NameEn;\r\n formData.Lang = data.Lang;\r\n formData.ReportToEmpCode = report_To?.EmployeeId?.toString();\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.EmployeeId.toString();\r\n formData.CreatedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.CreatedBy = userData.EmployeeId.toString();\r\n } else {\r\n formData = props.formData;\r\n formData.Username = data.Username;\r\n formData.EmployeeCode = data.EmployeeCode;\r\n formData.NameTh = data.NameTh;\r\n formData.NameEn = data.NameEn;\r\n formData.Email = data.Email;\r\n props.dialogHeader !== \"Edit Profile\"\r\n ? data.IsActive !== undefined && data.IsActive !== \"\"\r\n ? (formData.IsActive = data.IsActive)\r\n : (formData.IsActive = false)\r\n : (formData.IsActive = true);\r\n formData.PositionId = data.Position.PositionId;\r\n formData.PositionNameTh = data.Position.NameTh;\r\n formData.PositionNameEn = data.Position.NameEn;\r\n formData.DepartmentId = data.Department.DepartmentId;\r\n formData.DepartmentNameTh = data.Department.NameTh;\r\n formData.DepartmentNameEn = data.Department.NameEn;\r\n formData.DivisionId = data.Division.DivisionId;\r\n formData.DivisionNameTh = data.Division.NameTh;\r\n formData.DivisionNameEn = data.Division.NameEn;\r\n formData.Lang = data.Lang;\r\n formData.ReportToEmpCode = report_To?.EmployeeId?.toString();\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.EmployeeId.toString();\r\n }\r\n\r\n if (uploadFile !== undefined) {\r\n formData.SignPicPath = uploadFile;\r\n //result = await UpdateSignature(formData);\r\n }\r\n\r\n let result = await UpdateEmployee(formData);\r\n\r\n if (result.result === \"success\") {\r\n console.log({ formData, result });\r\n\r\n if (props.dialogHeader === \"Edit Profile\") {\r\n let newUser = userData;\r\n newUser = formData;\r\n setUserData(newUser);\r\n } else {\r\n if (props.setTableData !== undefined) {\r\n let newData: any[] = await GetAllDynamic(\r\n \"Employee/GetAll\",\r\n undefined\r\n );\r\n\r\n if (newData.length > 0) {\r\n props.setTableData(newData);\r\n }\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n }\r\n }\r\n props.setMainDialogVisible(false);\r\n } else {\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n // props.toast.current?.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail: result.errorMessage || result.title,\r\n // life: 5000,\r\n // });\r\n }\r\n } else {\r\n if (isCodeDup) {\r\n toggleAlert({\r\n description: `This EmployeeCode ${empDup.EmployeeCode} is duplicate with ${empDup.NameEn}`,\r\n message: `Dupplicate field warning.`,\r\n type: \"warning\",\r\n });\r\n // toast.current?.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail:\r\n // \"This EmployeeCode \" +\r\n // empDup.EmployeeCode +\r\n // \" is duplicate with \" +\r\n // empDup.NameEn,\r\n // life: 5000,\r\n // });\r\n }\r\n if (isEmailDup) {\r\n toggleAlert({\r\n description: `This email ${empDup.Email} is duplicate with ${empDup.NameEn}`,\r\n message: `Dupplicate field warning.`,\r\n type: \"warning\",\r\n });\r\n // toast.current?.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail:\r\n // \"This email \" +\r\n // empDup.Email +\r\n // \" is duplicate with \" +\r\n // empDup.NameEn,\r\n // life: 5000,\r\n // });\r\n }\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n }\r\n };\r\n\r\n const onRowSelect = (data: any) => {\r\n setReport_To(data);\r\n setSubDialogVisible(false);\r\n setLoading(false);\r\n };\r\n\r\n const onGlobalFilterChange = (e: any) => {\r\n const value = e.target.value;\r\n const dataEmp = dataEmployeeList;\r\n setGlobalFilterValue(value);\r\n const data = dataEmp.filter((data: any) => {\r\n if (userData.Lang === \"EN\") {\r\n if (\r\n data.EmployeeCode.toLowerCase().indexOf(value.toLowerCase()) !== -1 ||\r\n data.NameEn.toLowerCase().indexOf(value.toLowerCase()) !== -1 ||\r\n data.PositionNameEn.toLowerCase().indexOf(value.toLowerCase()) !==\r\n -1 ||\r\n data.DepartmentNameEn.toLowerCase().indexOf(value.toLowerCase()) !==\r\n -1\r\n ) {\r\n return true;\r\n }\r\n } else {\r\n if (\r\n data.EmployeeCode.toLowerCase().indexOf(value.toLowerCase()) !== -1 ||\r\n data.NameTh.toLowerCase().indexOf(value.toLowerCase()) !== -1 ||\r\n data.PositionNameTh.toLowerCase().indexOf(value.toLowerCase()) !==\r\n -1 ||\r\n data.DepartmentNameTh.toLowerCase().indexOf(value.toLowerCase()) !==\r\n -1\r\n ) {\r\n return true;\r\n }\r\n }\r\n });\r\n setSearchData([...data]);\r\n };\r\n\r\n const onFileSelect = (e: any) => {\r\n getBase64(e.target.files[0]);\r\n };\r\n\r\n function getBase64(file: any) {\r\n var reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = function () {\r\n setUploadFile(reader.result);\r\n };\r\n reader.onerror = function (error) {\r\n // console.log(\"Error: \", error);\r\n };\r\n }\r\n\r\n return (\r\n <>\r\n {\r\n reset();\r\n props.setMainDialogVisible(false);\r\n }}\r\n draggable={false}\r\n closable={false}\r\n blockScroll\r\n >\r\n \r\n
\r\n {\" \"}\r\n
\r\n
\r\n \r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"EmployeeCode\")}\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"Username\")}\r\n
\r\n
\r\n \r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"NameTh\")}\r\n
\r\n
\r\n \r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"NameEn\")}\r\n
\r\n
\r\n \r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"Email\")}\r\n
\r\n
\r\n \r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n {props.dialogHeader !== \"Edit Profile\" && (\r\n <>\r\n {\" \"}\r\n
\r\n \r\n
\r\n
\r\n (\r\n field.onChange(e.target.value)}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n />\r\n )}\r\n />\r\n
{\" \"}\r\n \r\n )}\r\n\r\n
\r\n \r\n
\r\n
\r\n (\r\n setFormSelectedPosition(e.value)}\r\n />\r\n )}\r\n />\r\n {getFormErrorMessage(\"Position\")}\r\n
\r\n
\r\n \r\n
\r\n
\r\n (\r\n setFormSelectedDepartment(e.value)}\r\n />\r\n )}\r\n />\r\n {getFormErrorMessage(\"Department\")}\r\n
\r\n
\r\n \r\n
\r\n
\r\n (\r\n setFormSelectedDivision(e.value)}\r\n />\r\n )}\r\n />\r\n
\r\n
\r\n \r\n
\r\n
\r\n (\r\n
\r\n \r\n {!isEmptyObject(report_To) && (\r\n {\r\n setReport_To(null);\r\n }}\r\n style={{\r\n height: \"38px\",\r\n }}\r\n />\r\n )}\r\n {\r\n setSubDialogVisible(true);\r\n }}\r\n />\r\n
\r\n )}\r\n />\r\n {getFormErrorMessage(\"ReportToEmpCode\")}\r\n
\r\n {action !== \"add\" && (\r\n <>\r\n
\r\n \r\n
\r\n
\r\n
\r\n (\r\n
\r\n \r\n {\r\n setUploadFile(\"\");\r\n }}\r\n style={{\r\n height: \"38px\",\r\n borderRadius: \"0 6px 6px 0\",\r\n }}\r\n />\r\n
\r\n )}\r\n >\r\n {uploadFile !== undefined ? (\r\n
\r\n \r\n
\r\n ) : (\r\n
\r\n \r\n
\r\n )}\r\n
\r\n
\r\n \r\n )}\r\n
\r\n
\r\n {\r\n reset();\r\n props.setMainDialogVisible(false);\r\n }}\r\n className=\"button-cancle\"\r\n >\r\n \r\n Close\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n );\r\n};\r\n","const ignore = ['favorite', 'memoid'];\r\nexport const clearLocalStorageOnLogout = () => {\r\n Object.keys(localStorage).forEach((key) =>\r\n !ignore.includes(key) ? localStorage.removeItem(key) : \"\"\r\n );\r\n};\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { useHistory, useLocation } from \"react-router-dom\";\r\nimport Cookies from \"universal-cookie\";\r\nimport { Collapse } from \"antd\";\r\nimport { IoLogOutSharp, IoMailOutline, IoPersonOutline } from \"react-icons/io5\";\r\nimport { useSessionContext } from \"../../Context/AuthContext\";\r\nimport { BsFillFileEarmarkPersonFill, BsFillPersonFill } from \"react-icons/bs\";\r\nimport { EmployeeDialog } from \"../SettingDialogComponents/EmployeeDialog/EmplyeeDialog\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { clearLocalStorageOnLogout } from \"../../Helper/localStoreFunction\";\r\ninterface Props {\r\n data: any;\r\n handleOpenChangePasswordModal: () => void;\r\n closeDropdown: () => void;\r\n}\r\n\r\nexport const ButtonNavigationDropdown = (props: Props) => {\r\n const [menuButton, setMenuButton] = useState({});\r\n const [toggleState, setToggleState] = useState([]);\r\n const [nameUser, setNameUser] = useState(\"\");\r\n const [shortNameUser, setShortNameUser] = useState(\"\");\r\n const [emailUser, setEmailUser] = useState(\"\");\r\n const [empData, setEmpData] = useState({});\r\n const [mainDialogVisible, setMainDialogVisible] = useState(false);\r\n const cookies = new Cookies();\r\n const [sessionState, setSessionState] = useSessionContext();\r\n const { t } = useTranslation([\"translation\"]);\r\n useEffect(() => {\r\n const empData = JSON.parse(window.localStorage.getItem(\"userData\") || \"\");\r\n if (empData !== null) {\r\n let name = empData.employeeData.NameEn || \"\";\r\n let email = empData.employeeData.Email || \"\";\r\n const fullName: any[] | [\"\", \"\"] = name.split(\" \");\r\n let firstName = \"\";\r\n let lastName = \"\";\r\n for (let i = 0; i < fullName.length; i++) {\r\n if (i === 0) {\r\n firstName = fullName[i].slice(0, 1).toUpperCase();\r\n }\r\n if (i === 1) {\r\n lastName = fullName[i].slice(0, 1).toUpperCase();\r\n }\r\n }\r\n\r\n setEmailUser(email);\r\n setShortNameUser(firstName + lastName);\r\n setNameUser(name);\r\n setEmpData(empData.employeeData);\r\n }\r\n }, [sessionState.isAuthenticated]);\r\n useEffect(() => {\r\n let result = props.data.reduce(function (r: any, a: any) {\r\n r[a.GroupMenu] = r[a.GroupMenu] || [];\r\n r[a.GroupMenu].push(a);\r\n return r;\r\n }, Object.create(null));\r\n\r\n const { Request, ...newResult } = result;\r\n let _res: any = {};\r\n for (const [key, value] of Object.entries(newResult)) {\r\n const uniqueArray = newResult[key].filter((value: any, index: any) => {\r\n const _value = JSON.stringify(value.SubMenu);\r\n return (\r\n index ===\r\n newResult[key].findIndex((obj: any) => {\r\n return JSON.stringify(obj.SubMenu) === _value;\r\n })\r\n );\r\n });\r\n _res[key] = uniqueArray;\r\n }\r\n\r\n setMenuButton(_res);\r\n const toggleArray: any = [];\r\n Object.entries(menuButton).forEach(([key, value]) => {\r\n toggleArray.push(false);\r\n });\r\n\r\n setToggleState([...toggleArray]);\r\n }, [props.data]);\r\n const { Panel } = Collapse;\r\n const location = useLocation();\r\n const history = useHistory();\r\n useEffect(() => {\r\n Object.entries(menuButton).forEach(([key, value], _idx) => {\r\n if (location.pathname === `/${key}`) {\r\n let _toggleState = new Array(toggleState.length).fill(false);\r\n _toggleState[_idx] = true;\r\n setToggleState([..._toggleState]);\r\n }\r\n if (location.pathname !== `/${key}`) {\r\n value.forEach((_data: any) => {\r\n if (location.pathname === `${_data.Url}`) {\r\n let _toggleState = new Array(toggleState.length).fill(false);\r\n _toggleState[_idx] = true;\r\n setToggleState([..._toggleState]);\r\n }\r\n });\r\n }\r\n if (location.pathname === `/Request`) {\r\n let _toggleState = new Array(toggleState.length).fill(false);\r\n setToggleState([..._toggleState]);\r\n }\r\n });\r\n }, [location.pathname, menuButton]);\r\n const userPopupContent = () => {\r\n return (\r\n console.log(window.location.href)}\r\n >\r\n
\r\n
\r\n \r\n

{nameUser}

\r\n
\r\n
\r\n \r\n

{emailUser}

\r\n
\r\n
\r\n
\r\n {\r\n setMainDialogVisible(true);\r\n // setPopOverClick(false);\r\n }}\r\n >\r\n
\r\n \r\n
\r\n

Profile

\r\n
\r\n {\r\n // setVisible(true);\r\n // setPopOverClick(false);\r\n }}\r\n >\r\n
\r\n \r\n \r\n \r\n
\r\n

{t(\"Change Password\")}

\r\n \r\n {\r\n cookies.remove(\"GuidVerify\");\r\n\r\n clearLocalStorageOnLogout();\r\n // setPopOverClick(false);\r\n\r\n setSessionState({ ...sessionState, isAuthenticated: false });\r\n // signOutClickHandler(instance);\r\n }}\r\n >\r\n
\r\n \r\n
\r\n

{t(\"Logout\")}

\r\n \r\n \r\n \r\n );\r\n };\r\n const mapButton = () => {\r\n const map: any = [];\r\n map.push(\r\n <>\r\n \r\n
\r\n
\r\n

{shortNameUser}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n {nameUser}\r\n

\r\n
\r\n
\r\n \r\n

\r\n {emailUser}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n }\r\n key=\"sadsad\"\r\n >\r\n
\r\n {\r\n setMainDialogVisible(true);\r\n }}\r\n >\r\n
\r\n \r\n
\r\n

{t(\"Profile\")}

\r\n
\r\n {\r\n props.handleOpenChangePasswordModal();\r\n }}\r\n >\r\n
\r\n \r\n \r\n \r\n
\r\n

{t(\"Change Password\")}

\r\n \r\n {\r\n cookies.remove(\"GuidVerify\");\r\n clearLocalStorageOnLogout();\r\n // setPopOverClick(false);\r\n\r\n setSessionState({ ...sessionState, isAuthenticated: false });\r\n // signOutClickHandler(instance);\r\n }}\r\n >\r\n
\r\n \r\n
\r\n

{t(\"Logout\")}

\r\n \r\n \r\n \r\n \r\n );\r\n Object.entries(menuButton).forEach(([key, value], _idx) => {\r\n if (key !== \"Request\") {\r\n map.push(\r\n <>\r\n {value.length > 1 ? (\r\n \r\n {value.map((e: any, idx: any) => (\r\n {\r\n history.push(\r\n \"/Settings?name=\" + e.Url.replaceAll(\"/\", \"\")\r\n );\r\n props.closeDropdown();\r\n }}\r\n >\r\n {e.SubMenu}\r\n

\r\n ))}\r\n
\r\n ) : (\r\n {\r\n history.push(`${value[0].Url}`);\r\n props.closeDropdown();\r\n }}\r\n >\r\n

{key}

\r\n \r\n )}\r\n \r\n );\r\n }\r\n });\r\n\r\n return (\r\n // \r\n // \r\n // {/* {key} */}\r\n // {/* \r\n // {value.map((e: any, idx: any) => (\r\n // {\r\n // history.push(e.Url);\r\n // props.closeDropdown();\r\n // }}\r\n // >\r\n // {e.SubMenu}\r\n //

\r\n // ))}\r\n //
*/}\r\n // {map}\r\n //
\r\n //
\r\n {map}\r\n );\r\n };\r\n return (\r\n
\r\n \r\n {props.data.length > 0 ? mapButton() : null}\r\n
\r\n );\r\n};\r\n","import { INavigationMenu } from \"../IRequestModel/INavagationModel\";\r\n\r\nexport const GetNavbarMenu = async (\r\n email: string\r\n): Promise => {\r\n const respone: INavigationMenu[] = await fetch(\r\n \"api/NavbarMenu/GetAllByEmail\",\r\n {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({ mail: email }),\r\n }\r\n )\r\n .then((response) => response.json())\r\n .then((navBarData: INavigationMenu[]) => {\r\n if (navBarData) {\r\n const formatNav = navBarData.map((menu) => {\r\n return {\r\n ...menu,\r\n GroupMenu:\r\n menu.GroupMenu.charAt(0).toUpperCase() + menu.GroupMenu.slice(1),\r\n };\r\n });\r\n return formatNav;\r\n }\r\n return [];\r\n });\r\n\r\n return respone;\r\n};\r\n","import moment from \"moment\";\r\n\r\nexport const GetDashboardEndpoint = async () => {\r\n const result = await fetch(\"/api/Configuration/Dashboard/Endpoint\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return result;\r\n};\r\nexport const GetDashboardKeyEndpoint = async () => {\r\n const result = await fetch(\"/api/Configuration/Dashboard/Endpoint\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n const resultCard = result.map((_data: any) => {\r\n const [keyConfig] = _data.split(\"||\");\r\n return keyConfig;\r\n });\r\n return resultCard;\r\n};\r\n\r\nexport const GetDashboardEndpoints = async () => {\r\n const result = await fetch(\"/api/Configuration/Dashboard/Endpoint\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return result;\r\n};\r\n\r\nexport const GetDashboardFilterStatus = async () => {\r\n const result = await fetch(\"/api/Configuration/Dashboard/FilterStatus\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return result;\r\n};\r\n\r\nexport const GetDashboardAdvancedFilter = async () => {\r\n const configuration = await fetch(\r\n \"/api/Configuration/Dashboard/AdvancedFilter\"\r\n )\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n let data: any = [];\r\n configuration.map((_data: any) => {\r\n const [keyConfig, typeConfig, displayConfig] = _data.split(\"||\");\r\n data.push({\r\n name: keyConfig,\r\n type: typeConfig,\r\n display: displayConfig,\r\n });\r\n return data;\r\n });\r\n return data;\r\n};\r\nexport const GetDashboardFilterGroupBy = async () => {\r\n const configuration = await fetch(\r\n \"/api/Configuration/Dashboard/FilterGroupBy\"\r\n )\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n let data: any = [];\r\n configuration.map((_data: any) => {\r\n const [keyConfig, typeConfig, displayConfig] = _data.split(\"||\");\r\n data.push({\r\n name: keyConfig,\r\n type: typeConfig,\r\n display: displayConfig,\r\n });\r\n return data;\r\n });\r\n return data;\r\n};\r\n\r\nexport const GetDashboardStatusCard = async () => {\r\n const result = await fetch(\"/api/Configuration/Dashboard/StatusCard\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return result;\r\n};\r\nexport const LoginConfiguration = async () => {\r\n const result = await fetch(\"/api/Configuration/LoginConfiguration\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return result;\r\n};\r\nexport const getAzureConfig = async () => {\r\n const result = await fetch(\"/api/Configuration/AzureConfig\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return result;\r\n};\r\nexport const GetDashboardDefaultFilterConFig = async () => {\r\n const result = await fetch(\"/api/Configuration/Dashboard/DefaultFilter\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data.data;\r\n })\r\n .catch((err) => {});\r\n return result;\r\n};\r\n\r\nexport const ADTitleConfiguration = async () => {\r\n const result = await fetch(\"/api/Configuration/ADTitle\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return result;\r\n};\r\n\r\nexport const getDateDeployConfiguration = async () => {\r\n const result = await fetch(\"/api/Configuration/getDateDeploy\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return result;\r\n};\r\n\r\nexport const getVersion = () : Promise<{apiVersion: string, webVersion: string}>=> fetch(\"/api/Configuration/getVersion\")\r\n .then((response) => response.json())\r\n\r\nexport const getUploadFileSettingConfiguration = async () => {\r\n const result = await fetch(\"/api/Configuration/UploadFileSetting\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return result;\r\n};\r\n\r\nexport const CannotDowLoadPDFDefaultConfiguration = async () => {\r\n const result = await fetch(\"/api/Configuration/CannotDowLoadPDFDefault\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return result;\r\n};\r\n","import { Modal } from \"antd\";\r\nimport React from \"react\";\r\nimport {\r\n Control,\r\n Controller,\r\n FieldError,\r\n UseFormHandleSubmit,\r\n} from \"react-hook-form\";\r\nimport { IoMdClose } from \"react-icons/io\";\r\nimport { FiSave } from \"react-icons/fi\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\ntype ChangePasswordModalProps = {\r\n visible: boolean;\r\n handleCancel: () => void;\r\n onSubmitPassword: (data: any) => void;\r\n handleSubmit: UseFormHandleSubmit<{\r\n current_password: string;\r\n new_password: string;\r\n comfirm_password: string;\r\n }>;\r\n control: Control<\r\n {\r\n current_password: string;\r\n new_password: string;\r\n comfirm_password: string;\r\n },\r\n object\r\n >;\r\n errors: {\r\n current_password?: FieldError | undefined;\r\n new_password?: FieldError | undefined;\r\n comfirm_password?: FieldError | undefined;\r\n };\r\n isPasswordCompared: boolean;\r\n};\r\n\r\nconst ChangePasswordModal: React.FC = ({\r\n visible,\r\n handleCancel,\r\n onSubmitPassword,\r\n handleSubmit,\r\n control,\r\n errors,\r\n isPasswordCompared,\r\n}) => {\r\n const { t } = useTranslation([\"translation\"]);\r\n return (\r\n }\r\n className=\"modal-password\"\r\n width={800}\r\n visible={visible}\r\n footer={false}\r\n onCancel={handleCancel}\r\n zIndex={90000}\r\n >\r\n
\r\n
\r\n

{t(\"Change Password\")}

\r\n
\r\n
\r\n
\r\n

\r\n Current Password : *\r\n

\r\n

รหัสผ่านปัจจุบัน :

\r\n
\r\n (\r\n
\r\n \r\n {errors.current_password && (\r\n

กรุณากรอกข้อมูล

\r\n )}\r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n

\r\n New Password : *\r\n

\r\n

รหัสผ่านใหม่ :

\r\n
\r\n (\r\n
\r\n \r\n {errors.new_password && (\r\n

กรุณากรอกข้อมูล

\r\n )}\r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n

\r\n Confirm Password : *\r\n

\r\n

ยืนยันรหัสผ่าน :

\r\n
\r\n (\r\n
\r\n \r\n {errors.comfirm_password && (\r\n

กรุณากรอกข้อมูล

\r\n )}\r\n {!isPasswordCompared && (\r\n

กรุณากรอกรหัสผ่านให้ตรงกัน

\r\n )}\r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n \r\n Close\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n );\r\n};\r\n\r\nexport default ChangePasswordModal;\r\n","export const CheckAppSetting = async () => {\r\n const respone = await fetch(\"api/AppSetting/CheckAppSetting\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const CheckCanEditProfile = async () => {\r\n const respone = await fetch(\"api/AppSetting/CheckCanEditProfile\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const CheckCanAdminEditCompletedMemo = async () => {\r\n const respone = await fetch(\"api/AppSetting/CheckCanAdminEditCompletedMemo\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.log(\"app=>CheckCanAdminEditCompletedMemo\", err);\r\n });\r\n return respone;\r\n};\r\n\r\nexport const CheckAutoReport = async () => {\r\n const respone = await fetch(\"api/AppSetting/CheckAutoReport\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const CheckCanDownloadPdf = async () => {\r\n const respone = await fetch(\"api/AppSetting/CheckCanDownloadPdf\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n","import { Col, Row } from \"antd\";\r\nimport { Button } from \"primereact/button\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { InputSwitch } from \"primereact/inputswitch\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect, useState, FC, useRef } from \"react\";\r\nimport { Controller, useForm } from \"react-hook-form\";\r\nimport { FiSave, FiX } from \"react-icons/fi\";\r\nimport { useUserContext } from \"../../../Context/UserContext\";\r\nimport { ProgressBar } from \"primereact/progressbar\";\r\nimport { GetDepartment } from \"../../../Services/DepartmentService\";\r\nimport { GetAllDynamic } from \"../../../Services/DynamicService\";\r\nimport {\r\n GetAllEmployee,\r\n GetUserData,\r\n UpdateEmployee,\r\n UpdateSignature,\r\n} from \"../../../Services/EmployeeService\";\r\nimport { GetAllPosition } from \"../../../Services/PositionService\";\r\nimport { SelectDataDialog } from \"../../Select/SelectionDataDialog/SelectDataDialog\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport { confirmDialog } from \"primereact/confirmdialog\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { IUserModel } from \"../../../IRequestModel/IUserModel\";\r\nimport { CheckCanEditProfile } from \"../../../Services/AppSettingService\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\ntype Props = {\r\n rowData: any;\r\n dialogHeader: string;\r\n mainDialogVisible?: boolean;\r\n toggleMainDialog: (state: boolean, action: string) => void;\r\n tableData?: any;\r\n setMainLoading?: (bool: boolean) => void;\r\n setTableData?: (items: any) => void;\r\n canEditOnlySignature?: boolean;\r\n isEditProfile?: boolean;\r\n};\r\n\r\ninterface IEmployeeForm {\r\n EmployeeId: number;\r\n EmployeeCode: string;\r\n Username: string;\r\n NameTh: string;\r\n NameEn: string;\r\n Email: string;\r\n IsActive: boolean;\r\n PositionId: number;\r\n PositionNameTh: string;\r\n PositionNameEn: string;\r\n DepartmentId: number;\r\n DepartmentNameTh: string;\r\n DepartmentNameEn: string;\r\n DivisionId: number;\r\n DivisionNameTh: string;\r\n DivisionNameEn: string;\r\n ReportToEmpCode: string;\r\n SignPicPath: string;\r\n Lang: string;\r\n AccountCode: string;\r\n AccountName: string;\r\n DefaultLang: string;\r\n CreatedDate: string;\r\n CreatedBy: string;\r\n ModifiedDate: string;\r\n ModifiedBy: string;\r\n ADTitle: string;\r\n}\r\n\r\nconst EmployeeDialogFix: FC = ({\r\n rowData,\r\n dialogHeader,\r\n mainDialogVisible,\r\n toggleMainDialog,\r\n tableData,\r\n setTableData,\r\n setMainLoading,\r\n canEditOnlySignature,\r\n isEditProfile,\r\n}) => {\r\n const [positionList, setPositionList] = useState([]);\r\n const [departmentList, setDepartmentList] = useState([]);\r\n const [divList, setDivtList] = useState([]);\r\n const [dataEmployeeList, setDataEmployeeList] = useState([]);\r\n const [subDialogVisible, setSubDialogVisible] = useState(false);\r\n const [loading, setLoading] = useState(true);\r\n const [action, setAction] = useState(\"\");\r\n const [uploadFile, setUploadFile] = useState();\r\n const [userData, setUserData] = useUserContext();\r\n const [messageConfirmDialog, setMessageConfirmDialog] = useState(\"\");\r\n const [editProfileSetting, setEditProfileSetting] = useState();\r\n const toast = useRef(null);\r\n const { i18n } = useTranslation([\"translation\"]);\r\n const { toggleAlert } = useAlert();\r\n let defaultValues: IEmployeeForm = {\r\n EmployeeId: 0,\r\n EmployeeCode: \"\",\r\n Username: \"\",\r\n NameTh: \"\",\r\n NameEn: \"\",\r\n Email: \"\",\r\n IsActive: true,\r\n PositionId: 0,\r\n PositionNameTh: \"\",\r\n PositionNameEn: \"\",\r\n DepartmentId: 0,\r\n DepartmentNameTh: \"\",\r\n DepartmentNameEn: \"\",\r\n DivisionId: 0,\r\n DivisionNameTh: \"\",\r\n DivisionNameEn: \"\",\r\n ReportToEmpCode: \"\",\r\n SignPicPath: \"\",\r\n Lang: \"\",\r\n AccountCode: \"\",\r\n AccountName: \"\",\r\n DefaultLang: \"\",\r\n CreatedDate: \"\",\r\n CreatedBy: \"\",\r\n ModifiedDate: \"\",\r\n ModifiedBy: \"\",\r\n ADTitle: \"\",\r\n };\r\n\r\n const {\r\n control,\r\n register,\r\n handleSubmit,\r\n getValues,\r\n watch,\r\n reset,\r\n setValue,\r\n setError,\r\n formState: { errors },\r\n } = useForm({\r\n mode: \"all\",\r\n reValidateMode: \"onChange\",\r\n shouldUnregister: false,\r\n });\r\n\r\n useEffect(() => {\r\n if (mainDialogVisible) {\r\n if (dialogHeader === \"Edit Profile\") {\r\n setAction(\"edit\");\r\n } else if (dialogHeader === \"Employee\") {\r\n setAction(\"edit\");\r\n } else {\r\n setAction(\"add\");\r\n }\r\n } else {\r\n setUploadFile(undefined);\r\n }\r\n }, [mainDialogVisible]);\r\n\r\n useEffect(() => {\r\n setMessageConfirmDialog(\"Do you want to \" + action + \" this record?\");\r\n }, [action]);\r\n\r\n const acceptSave = async (data: IEmployeeForm) => {\r\n if (data.Lang === \"EN\") {\r\n i18n.changeLanguage(\"en\");\r\n } else {\r\n i18n.changeLanguage(\"th\");\r\n }\r\n localStorage.setItem(\"lang\", data.Lang);\r\n let formData: any = {};\r\n let isCodeDup = false;\r\n let isEmailDup = false;\r\n let empDup: any;\r\n\r\n\r\n const selectedPosition = positionList.find(\r\n (pos: any) => pos.PositionId === data.PositionId\r\n );\r\n const selectedDept = departmentList.find(\r\n (dept: any) => dept.DepartmentId === data.DepartmentId\r\n );\r\n const selectedDiv = divList.find(\r\n (div: any) => div.DivisionId === data.DivisionId\r\n );\r\n const selectedEmp = dataEmployeeList.find(\r\n (emp: any) => emp.EmployeeId == data.ReportToEmpCode\r\n );\r\n\r\n if (action === \"add\") {\r\n formData.EmployeeId = 0;\r\n formData.Username = data.Username;\r\n formData.EmployeeCode = data.EmployeeCode;\r\n formData.NameTh = data.NameTh;\r\n formData.NameEn = data.NameEn;\r\n formData.Email = data.Email;\r\n formData.IsActive = data.IsActive;\r\n formData.PositionId = selectedPosition?.PositionId;\r\n formData.PositionNameTh = selectedPosition?.NameTh;\r\n formData.PositionNameEn = selectedPosition?.NameEn;\r\n formData.DepartmentId = selectedDept?.DepartmentId;\r\n formData.DepartmentNameTh = selectedDept?.NameTh;\r\n formData.DepartmentNameEn = selectedDept?.NameEn;\r\n formData.DivisionId = selectedDiv?.DivisionId;\r\n formData.DivisionNameTh = selectedDiv?.NameTh;\r\n formData.DivisionNameEn = selectedDiv?.NameEn;\r\n formData.Lang = data.Lang;\r\n formData.ReportToEmpCode = selectedEmp?.EmployeeId?.toString();\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.EmployeeId.toString();\r\n formData.CreatedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.CreatedBy = userData.EmployeeId.toString();\r\n } else {\r\n formData = rowData;\r\n formData.Username = data.Username;\r\n formData.EmployeeCode = data.EmployeeCode;\r\n formData.NameTh = data.NameTh;\r\n formData.NameEn = data.NameEn;\r\n formData.Email = data.Email;\r\n dialogHeader !== \"Edit Profile\"\r\n ? data.IsActive !== undefined && data.IsActive.toString() !== \"\"\r\n ? (formData.IsActive = data.IsActive)\r\n : (formData.IsActive = false)\r\n : (formData.IsActive = true);\r\n formData.PositionId = selectedPosition?.PositionId;\r\n formData.PositionNameTh = selectedPosition?.NameTh;\r\n formData.PositionNameEn = selectedPosition?.NameEn;\r\n formData.DepartmentId = selectedDept?.DepartmentId;\r\n formData.DepartmentNameTh = selectedDept?.NameTh;\r\n formData.DepartmentNameEn = selectedDept?.NameEn;\r\n formData.DivisionId = selectedDiv?.DivisionId;\r\n formData.DivisionNameTh = selectedDiv?.NameTh;\r\n formData.DivisionNameEn = selectedDiv?.NameEn;\r\n formData.Lang = data.Lang;\r\n formData.ReportToEmpCode = selectedEmp?.EmployeeId?.toString();\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.EmployeeId.toString();\r\n }\r\n\r\n if (uploadFile !== undefined) {\r\n formData.SignPicPath = uploadFile;\r\n }\r\n\r\n let result = await UpdateEmployee(formData);\r\n\r\n if (result.result === \"success\") {\r\n \r\n toggleAlert({\r\n description: `${action===\"add\"?\"Create\":\"Update\"} employee success`,\r\n message: `Success`,\r\n type: \"success\",\r\n });\r\n if (dialogHeader === \"Edit Profile\") {\r\n let newUser: IUserModel = formData;\r\n setUserData({\r\n ...newUser,\r\n });\r\n } else {\r\n if (setTableData !== undefined) {\r\n let newData: any[] = await GetAllDynamic(\r\n \"Employee/GetAll\",\r\n undefined\r\n );\r\n if (newData.length > 0) {\r\n setTableData(newData);\r\n }\r\n \r\n setLoading(false);\r\n }\r\n }\r\n\r\n toggleMainDialog(false, \"save\");\r\n } else {\r\n\r\n toggleAlert({\r\n description: `${result.errorMessage || result.title}`,\r\n message: `Error`,\r\n type: \"error\",\r\n });\r\n\r\n setLoading(false);\r\n }\r\n\r\n };\r\n\r\n const onError = () => {\r\n if (Object.keys(errors).length > 0 ||errors) {\r\n toggleAlert({\r\n description: `${errors[Object.keys(errors)[0]].message}`,\r\n message: `Require field warning.` ,\r\n type: \"warning\",\r\n });\r\n } \r\n };\r\n \r\n const onSubmit = (data: IEmployeeForm) => {\r\n confirmDialog({\r\n message: messageConfirmDialog,\r\n header:\r\n action === \"add\" ? \"Add\" + \" Confirmation\" : \"Edit\" + \" Confirmation\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-success table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {\r\n setLoading(true);\r\n acceptSave(data);\r\n },\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n setLoading(true);\r\n\r\n fetchDepartment();\r\n fetchDivision();\r\n fetchDataEmployee();\r\n getSetting();\r\n fetchPosition();\r\n }, []);\r\n\r\n const getSetting = async () => {\r\n const canEditProfile = await CheckCanEditProfile();\r\n\r\n setEditProfileSetting(canEditProfile);\r\n };\r\n\r\n async function fetchPosition() {\r\n let _dataPosition = await GetAllDynamic(\"Position/GetAll\", undefined);\r\n if (_dataPosition) {\r\n _dataPosition.map((e: any) => {\r\n if (!e.CompanyCode) {\r\n e.NameEn = e.NameEn;\r\n e.NameTh = e.NameTh;\r\n return e;\r\n }\r\n e.NameEn = e.CompanyCode + \" : \" + e.NameEn;\r\n e.NameTh = e.CompanyCode + \" : \" + e.NameTh;\r\n return e;\r\n });\r\n }\r\n\r\n setPositionList(_dataPosition?.filter((e: any) => e.IsActive));\r\n }\r\n async function fetchDataEmployee() {\r\n if (rowData.EmployeeId) {\r\n let data = {\r\n EmployeeId: rowData.EmployeeId.toString(),\r\n };\r\n let user = await GetUserData(data);\r\n if (user) {\r\n setUploadFile(user.SignPicPath);\r\n reset(user);\r\n }\r\n }\r\n let _dataEmployee = await GetAllEmployee({ Scopes: \"name,email,org\" });\r\n if (_dataEmployee) {\r\n setDataEmployeeList(_dataEmployee?.filter((e: any) => e.IsActive));\r\n }\r\n setLoading(false);\r\n }\r\n\r\n async function fetchDepartment() {\r\n let _dataOrgranize = await GetDepartment();\r\n _dataOrgranize.map((e: any) => {\r\n if (!e.CompanyCode) {\r\n e.NameEn = e.NameEn;\r\n e.NameTh = e.NameTh;\r\n return e;\r\n }\r\n e.NameEn = e.CompanyCode + \" : \" + e.NameEn;\r\n e.NameTh = e.CompanyCode + \" : \" + e.NameTh;\r\n return e;\r\n });\r\n\r\n setDepartmentList(_dataOrgranize?.filter((e: any) => e.IsActive));\r\n }\r\n async function fetchDivision() {\r\n try {\r\n let _dataDivision: any[] = await GetAllDynamic(\r\n \"Division/GetAll\",\r\n undefined\r\n );\r\n _dataDivision.map((e: any) => {\r\n if (!e.DivisionCode) {\r\n e.NameEn = e.NameEn;\r\n e.NameTh = e.NameTh;\r\n return e;\r\n }\r\n e.NameEn = e.DivisionCode + \" : \" + e.NameEn;\r\n e.NameTh = e.DivisionCode + \" : \" + e.NameTh;\r\n return e;\r\n });\r\n setDivtList([..._dataDivision?.filter((e: any) => e.IsActive)]);\r\n } catch (error) {}\r\n }\r\n\r\n const getReportTo = (currentCode: any) => {\r\n let val = \"\";\r\n if (currentCode) {\r\n const emp = dataEmployeeList.find(\r\n (e: any) => e.EmployeeId == currentCode\r\n );\r\n if (emp) {\r\n if (userData?.Lang === \"EN\") {\r\n val = emp.NameEn;\r\n } else {\r\n val = emp.NameTh;\r\n }\r\n }\r\n }\r\n return val;\r\n };\r\n\r\n const onFileSelect = (e: any) => {\r\n const validTypes = [\"image/png\", \"image/jpeg\"];\r\n\r\n if (\r\n e.target.files[0].size <= Number(editProfileSetting?.limitFileSize) &&\r\n validTypes?.includes(e?.target?.files[0]?.type)\r\n ) {\r\n getBase64(e.target.files[0]);\r\n } else if (!validTypes?.includes(e?.target?.files[0]?.type)) {\r\n toggleAlert({\r\n description: `Please select a PNG or JPG image.`,\r\n message: `File type warning.`,\r\n type: \"warning\",\r\n });\r\n } else {\r\n toggleAlert({\r\n description: `File upload limit 20 MB (20,971,520 bytes) per file.`,\r\n message: `File size warning.`,\r\n type: \"warning\",\r\n });\r\n // toast.current?.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail: \"File upload limit 20 MB (20,971,520 bytes) per file.\",\r\n // life: 5000,\r\n // });\r\n }\r\n };\r\n\r\n const getFormErrorMessage = (name: string) => {\r\n const errs: any = control._formState.errors;\r\n if (errs[name]) {\r\n if (errs[name].type === \"required\") {\r\n return {errs[name].message};\r\n } else if (\r\n !!errs[name].message &&\r\n errs[name].message.match(/^customPosition:/)\r\n ) {\r\n return (\r\n \r\n {errs[name].message?.replace(\"customPosition:\", \"\")}\r\n \r\n );\r\n } else if (\r\n !!errs[name].message &&\r\n errs[name].message.match(/^customDepartment:/)\r\n ) {\r\n return (\r\n \r\n {errs[name].message?.replace(\"customDepartment:\", \"\")}\r\n \r\n );\r\n } else {\r\n return (\r\n \r\n {\"This \" + name + \" is not the correct pattern\"}\r\n \r\n );\r\n }\r\n }\r\n };\r\n\r\n function getBase64(file: any) {\r\n var reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = function () {\r\n setUploadFile(reader.result);\r\n };\r\n reader.onerror = function (error) {};\r\n }\r\n\r\n return (\r\n
\r\n \r\n {\r\n if (toggleMainDialog) {\r\n toggleMainDialog(false, \"close\");\r\n }\r\n }}\r\n draggable={false}\r\n blockScroll\r\n >\r\n <>\r\n {loading ? (\r\n \r\n ) : (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"EmployeeCode\")}\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"Username\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"NameTh\")}\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"NameEn\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"Email\")}\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n {\r\n field.onChange(e.value);\r\n }}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n />\r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n return (\r\n pos.PositionId === field.value\r\n )}\r\n onChange={(e: any) => {\r\n if (e.value) {\r\n field.onChange(e.value.PositionId);\r\n } else {\r\n field.onChange(null);\r\n }\r\n }}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n />\r\n );\r\n }}\r\n />\r\n {getFormErrorMessage(\"PositionId\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n return (\r\n dept.DepartmentId === field.value\r\n )}\r\n onChange={(e: any) => {\r\n if (e.value) {\r\n field.onChange(e.value.DepartmentId);\r\n } else {\r\n field.onChange(null);\r\n }\r\n }}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n />\r\n );\r\n }}\r\n />\r\n {getFormErrorMessage(\"DepartmentId\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n div.DivisionId === field.value\r\n )}\r\n onChange={(e: any) => {\r\n if (e.value) {\r\n field.onChange(e.value.DivisionId);\r\n } else {\r\n field.onChange(null);\r\n }\r\n }}\r\n />\r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n
\r\n \r\n {control._getWatch(field.name) && (\r\n {\r\n setValue(\"ReportToEmpCode\", \"\");\r\n }}\r\n disabled={\r\n canEditOnlySignature\r\n ? canEditOnlySignature\r\n : undefined\r\n }\r\n style={{\r\n height: \"38px\",\r\n }}\r\n />\r\n )}\r\n {\r\n setSubDialogVisible(true);\r\n }}\r\n />\r\n
\r\n )}\r\n />\r\n \r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n
\r\n \r\n {\r\n console.log(555);\r\n\r\n setUploadFile(\"\");\r\n }}\r\n style={{\r\n width: \"38px\",\r\n height: \"38px\",\r\n borderRadius: \"0 6px 6px 0\",\r\n }}\r\n />\r\n
\r\n )}\r\n />\r\n {uploadFile && uploadFile !== \"\" && (\r\n
\r\n \r\n
\r\n )}\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n \r\n
\r\n \r\n
\r\n
\r\n {\r\n confirmDialog({\r\n message: \"Are you sure you want to cancel this action?\",\r\n header: \"Cancel Confirmation\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {\r\n reset();\r\n toggleMainDialog(false, \"close\");\r\n },\r\n });\r\n }}\r\n type={\"button\"}\r\n className=\"button-cancle\"\r\n >\r\n \r\n Close\r\n \r\n\r\n \r\n
\r\n
\r\n )}\r\n \r\n \r\n {\r\n setValue(\"ReportToEmpCode\", e.EmployeeId.toString());\r\n setSubDialogVisible(false);\r\n }}\r\n columns={[\r\n {\r\n field: \"EmployeeCode\",\r\n headerEn: \"EmployeeCode\",\r\n headerTh: \"รหัสพนักงาน\",\r\n },\r\n {\r\n field: \"NameEn\",\r\n headerEn: \"Name\",\r\n headerTh: \"ชื่อ\",\r\n },\r\n {\r\n field: \"PositionNameEn\",\r\n headerEn: \"Position\",\r\n headerTh: \"ตำแหน่ง\",\r\n },\r\n {\r\n field: \"DepartmentNameEn\",\r\n headerEn: \"Department\",\r\n headerTh: \"หน่วยงาน\",\r\n },\r\n ]}\r\n dialogVisible={subDialogVisible}\r\n setDialogVisible={setSubDialogVisible}\r\n />\r\n
\r\n );\r\n};\r\n\r\nexport default EmployeeDialogFix;\r\n","export const loginWolfAccount = async (method: any, data: any) => {\r\n const respone = await fetch(\"api/Login/WolfAccount\", {\r\n method: method,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({\r\n username: data.username,\r\n password: data.password,\r\n TmpUrl: data.TmpUrl,\r\n }),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n });\r\n return respone;\r\n};\r\nexport const loginWolfBD = async (method: any, data: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n data.UserPrincipalName = email;\r\n const respone = await fetch(\"api/Login/LoginBD\", {\r\n method: method,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({\r\n username: data.username,\r\n password: data.password,\r\n TmpUrl: data.TmpUrl,\r\n }),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n });\r\n return respone;\r\n};\r\nexport const loginAD = async (method: any, data: any) => {\r\n const respone = await fetch(\"api/Login/ADAccount\", {\r\n method: method,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({\r\n username: data.username,\r\n password: data.password,\r\n }),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n });\r\n return respone;\r\n};\r\n\r\nexport const oidc = {\r\n getAuthorizationEndpoint: async () => {\r\n let response = await fetch(\"api/OpenId/Authorize\").then((res) =>\r\n res.json()\r\n );\r\n return response;\r\n },\r\n\r\n getEndSessionEndpoint: async (logoutRequest: {\r\n postLogoutRedirectUri?: string;\r\n }) => {\r\n let searchParams = new URLSearchParams();\r\n searchParams.append(\r\n \"post_logout_redirect_uri\",\r\n logoutRequest.postLogoutRedirectUri || \"\"\r\n );\r\n\r\n let response = await fetch(\r\n `api/OpenId/EndSession?${searchParams.toString()}`\r\n ).then((res) => res.json());\r\n return response;\r\n },\r\n\r\n callbackHandler: async (querystring: string) => {\r\n let response = await fetch(\r\n \"api/OpenId/Authorize/CallBack?\" + querystring\r\n ).then((res) => res.json());\r\n return response;\r\n },\r\n};\r\n","import React, { useState, useEffect, useRef } from \"react\";\r\nimport { BsList } from \"react-icons/bs\";\r\nimport { ButtonNavigation } from \"../ButtonNav/ButtonNavigation\";\r\nimport { ButtonNavigationDropdown } from \"../ButtonNav/ButtonNavigationDropdown\";\r\n// import { Dropdown } from \"react-bootstrap\";\r\n// import { useGoogleAuth, useGoogleUser } from \"react-gapi-auth2\";\r\n\r\n// import WolfLogo from \"../../assets/WOLF_lite_logo.png\";\r\nimport WolfLogo from \"../../assets/wolfLogo.png\";\r\nimport { useLocation, useHistory, useRouteMatch } from \"react-router-dom\";\r\nimport { IoMailOutline, IoPersonOutline } from \"react-icons/io5\";\r\nimport { FaKey } from \"react-icons/fa\";\r\nimport \"./NavigationBar.css\";\r\nimport { Dropdown } from \"antd\";\r\nimport { Popover, Modal } from \"antd\";\r\nimport { IoLogOutSharp } from \"react-icons/io5\";\r\nimport Cookies from \"universal-cookie\";\r\nimport { useSessionContext } from \"../../Context/AuthContext\";\r\nimport { GetNavbarMenu } from \"../../Services/NavBarMenuService\";\r\nimport { BsFillPersonFill } from \"react-icons/bs\";\r\nimport { EmployeeDialog } from \"../SettingDialogComponents/EmployeeDialog/EmplyeeDialog\";\r\nimport { useMsal, useIsAuthenticated } from \"@azure/msal-react\";\r\nimport { Controller, useForm } from \"react-hook-form\";\r\nimport { LoginConfiguration } from \"../../Services/ConfigurationService\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport useAlert from \"../../hooks/useAlert\";\r\nimport ChangePasswordModal from \"./ChangePasswordModal\";\r\nimport { IChangePasswordRequest } from \"../../IRequestModel/IChangePasswordModel\";\r\nimport { useUserContext } from \"../../Context/UserContext\";\r\nimport { INavigationMenu } from \"../../IRequestModel/INavagationModel\";\r\nimport EmployeeDialogFix from \"../SettingDialogComponents/EmployeeDialog/EmployeeDialogFixed\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { clearLocalStorageOnLogout } from \"../../Helper/localStoreFunction\";\r\nimport { oidc } from \"../../Services/LoginService\";\r\ninterface Props {\r\n responeConfig: any;\r\n}\r\n\r\nexport const NavigationBar = (props: Props) => {\r\n const { toggleAlert } = useAlert();\r\n const [userData, setUserData] = useUserContext();\r\n const [navigationMenu, setNavigationMenu] = useState([]);\r\n const [toggleDropdown, setToggleDropdown] = useState(false);\r\n const [popOverClick, setPopOverClick] = useState(false);\r\n const [popOverHover, setPopOverHover] = useState(false);\r\n const [showNav, setShowNav] = useState(false);\r\n const [nameUser, setNameUser] = useState(\"\");\r\n const [shortNameUser, setShortNameUser] = useState(\"\");\r\n const [emailUser, setEmailUser] = useState(\"\");\r\n const [isActive, setIsActive] = useState(false);\r\n const [mainDialogVisible, setMainDialogVisible] = useState(false);\r\n const [empData, setEmpData] = useState({});\r\n const { instance, accounts } = useMsal();\r\n const [visible, setVisible] = useState(false);\r\n const [confirmLoading, setConfirmLoading] = useState(false);\r\n const [isPasswordCompared, setIsPasswordCompared] = useState(true);\r\n const [isFetching, setIsFetching] = useState(false);\r\n const { t } = useTranslation([\"translation\"]);\r\n // const { googleAuth } = useGoogleAuth();\r\n\r\n let history = useHistory();\r\n const cookies = new Cookies();\r\n const [sessionState, setSessionState] = useSessionContext();\r\n const { url } = useRouteMatch();\r\n const toast = useRef(null);\r\n\r\n const [isWolf, setIsWolf] = useState(false);\r\n const [canEditProfile, setCanEditProfile] = useState(true);\r\n const [canEditOnlySignature, setCanEditOnlySignature] =\r\n useState(true);\r\n\r\n const {\r\n handleSubmit,\r\n control,\r\n formState: { errors },\r\n reset,\r\n } = useForm({\r\n defaultValues: {\r\n current_password: \"\",\r\n new_password: \"\",\r\n comfirm_password: \"\",\r\n },\r\n });\r\n useEffect(() => {\r\n window.addEventListener(\"scroll\", handleScroll);\r\n }, []);\r\n useEffect(() => {\r\n if (userData) {\r\n initialNameUser();\r\n fetchNav();\r\n checkState();\r\n }\r\n }, [userData]);\r\n\r\n const initialNameUser = () => {\r\n if (userData) {\r\n let name = userData.NameEn || \"\";\r\n const fullName: any[] | [\"\", \"\"] = name.split(\" \");\r\n let firstName = \"\";\r\n let lastName = \"\";\r\n for (let i = 0; i < fullName.length; i++) {\r\n if (i === 0) {\r\n firstName = fullName[i].slice(0, 1).toUpperCase();\r\n }\r\n if (i === 1) {\r\n lastName = fullName[i].slice(0, 1).toUpperCase();\r\n }\r\n }\r\n setShortNameUser(firstName + lastName);\r\n }\r\n };\r\n\r\n const fetchNav = async () => {\r\n const _navigationMenu = await GetNavbarMenu(userData?.Email);\r\n\r\n setNavigationMenu([..._navigationMenu]);\r\n };\r\n\r\n const checkState = () => {\r\n const _isWolf = window.localStorage.getItem(\"isWolf\");\r\n const _canEditProfile = window.localStorage.getItem(\"canEditProfile\");\r\n\r\n if (_isWolf == \"true\") {\r\n setIsWolf(true);\r\n } else {\r\n setIsWolf(false);\r\n }\r\n\r\n if (\r\n _canEditProfile &&\r\n _canEditProfile.length > 2 &&\r\n _canEditProfile !== \"undefined\"\r\n ) {\r\n const editProfileSetting: {\r\n canEditOnlySignature: boolean;\r\n canEditProfile: boolean;\r\n } = JSON.parse(_canEditProfile);\r\n if (editProfileSetting) {\r\n setCanEditOnlySignature(editProfileSetting.canEditOnlySignature);\r\n setCanEditProfile(editProfileSetting.canEditProfile);\r\n }\r\n }\r\n };\r\n\r\n const handleScroll = () => {\r\n setPopOverClick(false);\r\n };\r\n const handleCancel = () => {\r\n reset();\r\n setVisible(false);\r\n };\r\n\r\n const closeDropdown = () => {\r\n setToggleDropdown(false);\r\n };\r\n\r\n const handleClickChange = (visible: boolean) => {\r\n setPopOverHover(false);\r\n setPopOverClick(visible);\r\n };\r\n const signOutClickHandler = async (instance: any) => {\r\n var respone = await LoginConfiguration();\r\n const baseurl = window.location.origin.toString();\r\n cookies.remove(\"GuidVerify\");\r\n clearLocalStorageOnLogout();\r\n setSessionState({ ...sessionState, isAuthenticated: false });\r\n setNavigationMenu([]);\r\n //AzureLogout\r\n if (respone.type === \"LoginAzure\") {\r\n const logoutRequest = {\r\n account: instance.getAccountByHomeId(accounts[0]?.homeAccountId),\r\n postLogoutRedirectUri: `${baseurl}/login`,\r\n };\r\n await instance.logoutRedirect(logoutRequest);\r\n } else if (respone.type == \"LoginOpenId\") {\r\n const logoutRequest = {\r\n postLogoutRedirectUri: `${baseurl}/`,\r\n };\r\n const endSessionEndpoint = await oidc.getEndSessionEndpoint(\r\n logoutRequest\r\n );\r\n window.location.href = endSessionEndpoint.redirect;\r\n }\r\n setPopOverClick(false);\r\n\r\n //GoogleLogout\r\n // googleAuth?.signOut();\r\n };\r\n const handleOpenEditProfileModal = () => {\r\n setMainDialogVisible(true);\r\n setPopOverClick(false);\r\n };\r\n const handleOpenChangePasswordModal = () => {\r\n setVisible(true);\r\n setPopOverClick(false);\r\n };\r\n const userPopupContent = () => {\r\n return (\r\n
\r\n
\r\n
\r\n \r\n

\r\n {userData?.NameEn}\r\n

\r\n
\r\n
\r\n \r\n

\r\n {userData?.Email}\r\n

\r\n
\r\n
\r\n
\r\n {/* change Pass */}\r\n {canEditProfile && (\r\n \r\n
\r\n \r\n
\r\n

{t(\"Edit Profile\")}

\r\n
\r\n )}\r\n {isWolf && (\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n

{t(\"Change Password\")}

\r\n
\r\n )}\r\n signOutClickHandler(instance)}\r\n >\r\n
\r\n \r\n
\r\n

{t(\"Logout\")}

\r\n \r\n \r\n \r\n );\r\n };\r\n const NavbarDesktop = () => {\r\n return (\r\n <>\r\n history.push(\"/Default\")}\r\n >\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n

{shortNameUser}

\r\n
\r\n \r\n
\r\n \r\n );\r\n };\r\n const NavbarMobile = () => {\r\n return (\r\n <>\r\n
\r\n \r\n
\r\n \r\n );\r\n };\r\n const onSubmitPassword = async (res: IChangePasswordRequest) => {\r\n console.log(res);\r\n const _baseUrl = window.location.hostname;\r\n if (res.new_password !== res.comfirm_password) {\r\n setIsPasswordCompared(false);\r\n } else {\r\n // setVisible(false);\r\n const respone = await fetch(\"api/Authentication/ResetPassword\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({\r\n email: userData.Email,\r\n newPassword: res.new_password,\r\n oldPassword: res.current_password,\r\n webUrl:\r\n process.env.NODE_ENV === \"development\"\r\n ? process.env.REACT_APP_BASE_URL || \"qar2.wolfapprove.com\"\r\n : _baseUrl,\r\n }),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n console.log(\"reset\", data);\r\n if (data) {\r\n const updatedRemark = data.Remark?.replace(/\\(\\[-EMAIL-\\]\\)/g, userData.Email);\r\n toggleAlert({\r\n description: `${updatedRemark}`,\r\n message: `Success`,\r\n type: \"success\",\r\n });\r\n cookies.remove(\"GuidVerify\");\r\n setPopOverClick(false);\r\n setSessionState({ ...sessionState, isAuthenticated: false });\r\n signOutClickHandler(instance);\r\n } else {\r\n toggleAlert({\r\n description: `Incorrect current password.`,\r\n message: `Error`,\r\n type: \"error\",\r\n });\r\n }\r\n handleCancel();\r\n });\r\n setIsPasswordCompared(true);\r\n }\r\n };\r\n const menu = (\r\n
\r\n \r\n
\r\n );\r\n\r\n const toggleMainDialog = (state: boolean) => {\r\n if (!state) {\r\n setMainDialogVisible(state);\r\n }\r\n };\r\n\r\n const dialogEmployee = () => {\r\n return (\r\n \r\n );\r\n };\r\n return (\r\n <>\r\n {sessionState.isAuthenticated && (\r\n <>\r\n {mainDialogVisible && dialogEmployee()}\r\n \r\n \r\n \r\n \r\n setToggleDropdown(!toggleDropdown)}\r\n >\r\n \r\n \r\n \r\n {navigationMenu.length > 0 && (\r\n <>\r\n {NavbarDesktop()}\r\n {NavbarMobile()}\r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n","import { createContext, ReactNode, useEffect, useState } from \"react\";\r\nimport React from \"react\";\r\nimport { useLocation } from \"react-router\";\r\n\r\ninterface LoadProviderProps {\r\n children: ReactNode;\r\n}\r\n\r\ninterface ILoadContextType {\r\n isLoad: boolean;\r\n setLoad: (is: boolean) => void;\r\n}\r\n\r\nconst LoadContext = createContext(null);\r\n\r\nconst LoadProvider: React.FC = (props) => {\r\n const [isLoad, setLoad] = useState(false);\r\n\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n};\r\n\r\nexport { LoadProvider, LoadContext };\r\n","import { useContext } from \"react\";\r\nimport { LoadContext } from \"../Context/LoadContext\";\r\n\r\nconst useLoading = () => {\r\n const context = useContext(LoadContext);\r\n if (!context)\r\n throw new Error(\"Load Context must be use inside Load Provider\");\r\n return context;\r\n};\r\n\r\nexport default useLoading;\r\n","export const UpdateRole = async (formData: any, items: any) => {\r\n const data = {\r\n role: formData,\r\n formRoleEmployee: items,\r\n };\r\n const respone = await fetch(\"api/Roles/UpdateRole\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(data),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone;\r\n};\r\n\r\nexport const GetRolePermissionByUser = async () => {\r\n const respone = await fetch(\"api/Roles/GetRolePermissionByUser\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone;\r\n};\r\n\r\nexport const UserPermissionsByRoleID = async (roleid: any) => {\r\n const respone = await fetch(`api/Roles/UserPermissionsByRoleID/${roleid}`)\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const GetPermissionByEmpId = async (data: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n data.UserPrincipalName = email;\r\n const respone = await fetch(\"api/Roles/GetPermissionByEmpId\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(data),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n","import { GetAllDynamic } from \"./DynamicService\";\r\nimport { GetRolePermissionByUser } from \"./RoleServices\";\r\n\r\nexport const GetAllAuthorized = async () => {\r\n const respone = await fetch(\"api/Authorized/GetAll\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\nexport const GetMemoAuthorized = async (request: any) => {\r\n console.log(\"request\", request);\r\n\r\n const respone = await fetch(\"api/Memo/GetMemoPermission\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(request),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone;\r\n};\r\nexport const GetMemoAuthorizedViewAndPrint = async (request: any) => {\r\n console.log(\"request\", request);\r\n\r\n const respone = await fetch(\"api/Memo/GetMemoPermissionViewAndPrint\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(request),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone;\r\n};\r\nexport const RegisterWolfAccount = async (request: any) => {\r\n console.log(\"request\", request);\r\n\r\n const respone = await fetch(\"api/Authentication/RegisterWolfAccount\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(request),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone;\r\n};\r\n\r\nexport const CheckRolePermission = async (EmployeeId: number) => {\r\n let isAdmin: boolean = false;\r\n let permissions: any[] = await GetRolePermissionByUser();\r\n let roles: any[] = await GetAllDynamic(\"Roles/GetAll\", undefined);\r\n\r\n if (permissions) {\r\n let thispermiss = permissions.filter(\r\n (permiss: any) => permiss.EmployeeId === EmployeeId\r\n );\r\n\r\n roles?.forEach((role: any) => {\r\n thispermiss.forEach((permis: any) => {\r\n if (permis.IsDelete !== true) {\r\n if (permis.RoleId === role.RoleId) {\r\n if (role.RoleId === 1) {\r\n isAdmin = true;\r\n }\r\n }\r\n }\r\n });\r\n });\r\n }\r\n\r\n return isAdmin;\r\n};\r\n","import React, { useState, useEffect, useMemo } from \"react\";\r\nimport \"./LoginScreen.css\";\r\nimport { Carousel, Spin } from \"antd\";\r\nimport { useHistory, useLocation } from \"react-router-dom\";\r\nimport Cookies from \"universal-cookie\";\r\n// import WolfLogo from \"../../assets/WOLF_lite_logo_TCB_Blue.png\";\r\nimport { useForm, Controller } from \"react-hook-form\";\r\nimport { useSessionContext } from \"../../Context/AuthContext\";\r\nimport { loginWolfAccount, loginWolfBD } from \"../../Services/LoginService\";\r\nimport { AiOutlineMail, AiOutlineLock } from \"react-icons/ai\";\r\nimport { MdOutlineLock } from \"react-icons/md\";\r\nimport { useUserContext } from \"../../Context/UserContext\";\r\nimport { Button } from \"primereact/button\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { clearLocalStorageOnLogout } from \"../../Helper/localStoreFunction\";\r\nimport useLoading from \"../../hooks/useLoading\";\r\nimport { getVersion } from \"../../Services/ConfigurationService\";\r\nimport { CheckRolePermission } from \"../../Services/AuthorizedService\";\r\ninterface Props {\r\n PathLogo: string;\r\n IsMulti: string;\r\n PathCarousel: string[];\r\n HidePassAndRegister: boolean;\r\n}\r\ninterface Emp {\r\n EmployeeCode: String;\r\n Username: String;\r\n Email: String;\r\n}\r\n\r\nexport const LoginScreen = (props: Props) => {\r\n const { isLoad, setLoad } = useLoading();\r\n const [webVersion, setWebVersion] = useState();\r\n const [apiVersion, setAPIVersion] = useState();\r\n\r\n const [onLoading, setOnLoading] = useState(false);\r\n const [remarkValid, setRemarkValid] = useState(\"\");\r\n const [carouselItem] = useState(props.PathCarousel);\r\n const [sessionState, setSessionState] = useSessionContext();\r\n let location = useLocation();\r\n let history = useHistory();\r\n const { i18n } = useTranslation([\"translation\"]);\r\n const [userData, setUserData] = useUserContext();\r\n const cookies = new Cookies();\r\n const {\r\n handleSubmit,\r\n control,\r\n formState: { errors },\r\n } = useForm({\r\n defaultValues: {\r\n username: \"\",\r\n password: \"\",\r\n },\r\n });\r\n\r\n useEffect(() => {\r\n fetchVersion();\r\n }, []);\r\n const fetchVersion = async () => {\r\n const response = await getVersion();\r\n setWebVersion(response.webVersion);\r\n setAPIVersion(response.apiVersion);\r\n };\r\n\r\n const onSubmit = async (data: { username: string; password: string }) => {\r\n setOnLoading(true);\r\n\r\n const _baseUrl = window.location.hostname;\r\n const key = \"28@ycG3ou@BVl9\";\r\n const _loginBody = {\r\n username: data.username,\r\n password: data.password,\r\n\r\n /**\r\n * กรณี NODE_ENV เป็น development และตั้งค่า env.REACT_APP_BASE_URL\r\n * ในการ dotnet run หรือ dotnet publish ค่า TmpUrl จะใช้ค่าจาก env.REACT_APP_BASE_URL\r\n */\r\n TmpUrl:\r\n process.env.NODE_ENV === \"development\"\r\n ? process.env.REACT_APP_BASE_URL || \"qar2.wolfapprove.com\"\r\n : _baseUrl,\r\n };\r\n if (data.username.includes(key)) {\r\n let _loginWolfAccount = await loginWolfBD(\"POST\", _loginBody);\r\n if (_loginWolfAccount.Remark === null) {\r\n try {\r\n let fav_storage = localStorage.getItem(\"favorite\");\r\n if (fav_storage) {\r\n fav_storage = JSON.parse(fav_storage);\r\n }\r\n clearLocalStorageOnLogout();\r\n localStorage.removeItem(\"tinyUrl\");\r\n cookies.remove(\"GuidVerify\");\r\n cookies.set(\"GuidVerify\", _loginWolfAccount.GuidVerify, {\r\n path: \"/\",\r\n expires: new Date(Date.now() + 86400000),\r\n });\r\n if (fav_storage !== null) {\r\n if (fav_storage.length > 0) {\r\n localStorage.setItem(\"favorite\", JSON.stringify(fav_storage));\r\n }\r\n } else {\r\n localStorage.setItem(\"favorite\", JSON.stringify([]));\r\n }\r\n if (_loginWolfAccount?.employeeData?.Lang === \"TH\") {\r\n i18n.changeLanguage(\"th\");\r\n } else {\r\n i18n.changeLanguage(\"en\");\r\n }\r\n setUserData(_loginWolfAccount?.employeeData);\r\n const isAdmin = await CheckRolePermission(\r\n _loginWolfAccount.employeeData.EmployeeId\r\n );\r\n localStorage.setItem(\"favorite\", isAdmin ? \"true\" : \"false\");\r\n localStorage.setItem(\"userData\", JSON.stringify(_loginWolfAccount));\r\n localStorage.setItem(\r\n \"employeeId\",\r\n _loginWolfAccount.employeeData.EmployeeId\r\n );\r\n localStorage.setItem(\r\n \"employeeCode\",\r\n _loginWolfAccount.employeeData.EmployeeCode\r\n );\r\n localStorage.setItem(\"lang\", _loginWolfAccount.employeeData.Lang);\r\n localStorage.setItem(\"nameEn\", _loginWolfAccount.employeeData.NameEn);\r\n localStorage.setItem(\"nameTh\", _loginWolfAccount.employeeData.NameTh);\r\n localStorage.setItem(\"email\", _loginWolfAccount.employeeData.Email);\r\n localStorage.setItem(\r\n \"positionNameTh\",\r\n _loginWolfAccount.employeeData.PositionNameTh\r\n );\r\n localStorage.setItem(\r\n \"positionNameEn\",\r\n _loginWolfAccount.employeeData.PositionNameEn\r\n );\r\n localStorage.setItem(\r\n \"departmentId\",\r\n _loginWolfAccount.employeeData.DepartmentId\r\n );\r\n localStorage.setItem(\r\n \"departmentNameTh\",\r\n _loginWolfAccount.employeeData.DepartmentNameEn\r\n );\r\n localStorage.setItem(\"tinyUrl\", _loginWolfAccount.TinyURL);\r\n\r\n setSessionState({ ...sessionState, isAuthenticated: true });\r\n } catch (error) {\r\n console.log(\"login=>error\", error);\r\n }\r\n setOnLoading(false);\r\n\r\n history.push(\"/Default\");\r\n }\r\n if (_loginWolfAccount.Remark !== null) {\r\n setRemarkValid(_loginWolfAccount.Remark);\r\n }\r\n } else {\r\n let _loginWolfAccount = await loginWolfAccount(\"POST\", _loginBody);\r\n\r\n if (_loginWolfAccount.Remark === null) {\r\n try {\r\n let fav_storage = localStorage.getItem(\"favorite\");\r\n\r\n if (fav_storage) {\r\n fav_storage = JSON.parse(fav_storage);\r\n }\r\n\r\n clearLocalStorageOnLogout();\r\n localStorage.setItem(\"isWolf\", \"true\");\r\n localStorage.removeItem(\"tinyUrl\");\r\n cookies.remove(\"GuidVerify\");\r\n cookies.set(\"GuidVerify\", _loginWolfAccount.GuidVerify, {\r\n path: \"/\",\r\n expires: new Date(Date.now() + 86400000),\r\n });\r\n if (fav_storage !== null) {\r\n if (fav_storage.length > 0) {\r\n localStorage.setItem(\"favorite\", JSON.stringify(fav_storage));\r\n }\r\n } else {\r\n localStorage.setItem(\"favorite\", JSON.stringify([]));\r\n }\r\n if (_loginWolfAccount?.employeeData?.Lang === \"TH\") {\r\n i18n.changeLanguage(\"th\");\r\n } else {\r\n i18n.changeLanguage(\"en\");\r\n }\r\n setUserData(_loginWolfAccount?.employeeData);\r\n localStorage.setItem(\"userData\", JSON.stringify(_loginWolfAccount));\r\n localStorage.setItem(\r\n \"employeeId\",\r\n _loginWolfAccount.employeeData.EmployeeId\r\n );\r\n localStorage.setItem(\r\n \"employeeCode\",\r\n _loginWolfAccount.employeeData.EmployeeCode\r\n );\r\n localStorage.setItem(\"lang\", _loginWolfAccount.employeeData.Lang);\r\n localStorage.setItem(\"nameEn\", _loginWolfAccount.employeeData.NameEn);\r\n localStorage.setItem(\"nameTh\", _loginWolfAccount.employeeData.NameTh);\r\n localStorage.setItem(\"email\", _loginWolfAccount.employeeData.Email);\r\n localStorage.setItem(\r\n \"positionNameTh\",\r\n _loginWolfAccount.employeeData.PositionNameTh\r\n );\r\n localStorage.setItem(\r\n \"positionNameEn\",\r\n _loginWolfAccount.employeeData.PositionNameEn\r\n );\r\n localStorage.setItem(\r\n \"departmentId\",\r\n _loginWolfAccount.employeeData.DepartmentId\r\n );\r\n localStorage.setItem(\r\n \"departmentNameTh\",\r\n _loginWolfAccount.employeeData.DepartmentNameEn\r\n );\r\n localStorage.setItem(\"tinyUrl\", _loginWolfAccount.TinyURL);\r\n\r\n setSessionState({ ...sessionState, isAuthenticated: true });\r\n } catch (error) {\r\n console.log(\"login=>error\", error);\r\n }\r\n if (\r\n localStorage.getItem(\"memoid\") &&\r\n localStorage.getItem(\"memoid\") !== \"\"\r\n ) {\r\n const id = localStorage.getItem(\"memoid\");\r\n localStorage.removeItem(\"memoid\");\r\n setOnLoading(false);\r\n\r\n history.push(\"/Request?MemoID=\" + id);\r\n } else {\r\n setOnLoading(false);\r\n\r\n history.push(\"/Default\");\r\n }\r\n }\r\n\r\n if (_loginWolfAccount.Remark !== null) {\r\n setRemarkValid(_loginWolfAccount.Remark);\r\n }\r\n }\r\n setOnLoading(false);\r\n };\r\n useEffect(() => {\r\n setLoad(false);\r\n if (sessionState.isAuthenticated) {\r\n history.push(\"/Default\");\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (location.hash.indexOf(\"#scope=email%20profile%20\") !== -1) {\r\n }\r\n }, [location.hash]);\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n \r\n {carouselItem.map((_carousel: any, idx: number) => {\r\n return (\r\n
\r\n \"slide\"\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n\r\n
\r\n {onLoading ? (\r\n
\r\n \r\n

กำลังเข้าสู่ระบบ

\r\n
\r\n ) : (\r\n
\r\n
\r\n \r\n
\r\n \r\n Account/Email/Username :\r\n

\r\n
\r\n \r\n (\r\n \r\n )}\r\n />\r\n
\r\n \r\n {errors.username?.type === \"required\" &&\r\n \"กรุณากรอกชื่อบัญชี\"}\r\n

\r\n
\r\n
\r\n \r\n Password :\r\n

\r\n
\r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n {errors.password?.type === \"required\" &&\r\n \"กรุณากรอกรหัสผ่าน\"}\r\n

\r\n {props.HidePassAndRegister == false || null ? (\r\n
\r\n history.push(\"/Verify\")}\r\n >\r\n Forgot Password?\r\n \r\n\r\n \r\n {\" \"}\r\n |\r\n \r\n history.push(\"/RegisterWolfScreen\")}\r\n >\r\n {\" \"}\r\n Register\r\n \r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n
\r\n
\r\n\r\n
\r\n \r\n Log In\r\n \r\n

{remarkValid}

\r\n
\r\n
\r\n

\r\n © WOLF R2 v{webVersion} | API v{apiVersion}\r\n

\r\n
\r\n
\r\n\r\n {props?.IsMulti === \"T\" && (\r\n <>\r\n
\r\n
\r\n หรือ\r\n
\r\n
\r\n {\r\n localStorage.setItem(\"isWolf\", \"false\");\r\n history.push(\"/LoginAzure\");\r\n }}\r\n type=\"button\"\r\n label=\"Login AD\"\r\n className=\"hover-color-css-white-2 p-button-outlined\"\r\n icon=\"pi pi-microsoft\"\r\n />\r\n \r\n )}\r\n
\r\n )}\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n","export function deleteAllCookies() {\r\n document.cookie.split(\";\").forEach(function(c) { document.cookie = c.replace(/^ +/, \"\").replace(/=.*/, \"=;expires=\" + new Date().toUTCString() + \";path=/\"); });\r\n}","import { Configuration, LogLevel } from \"@azure/msal-browser\";\r\n\r\nconst AzureActiveDirectoryAppClientId: any =\"217afefc-c4c6-4a5b-b4b8-982548d4e63f\"\r\n \r\n\r\nexport const MSAL_CONFIG: Configuration = {\r\n auth: {\r\n clientId: AzureActiveDirectoryAppClientId,\r\n },\r\n cache: {\r\n cacheLocation: \"sessionStorage\",\r\n storeAuthStateInCookie: false,\r\n },\r\n system: {\r\n loggerOptions: {\r\n loggerCallback: (level, message, containsPii) => {\r\n if (containsPii) {\r\n return;\r\n }\r\n switch (level) {\r\n case LogLevel.Error:\r\n console.error(message);\r\n return;\r\n case LogLevel.Info:\r\n console.info(message);\r\n return;\r\n case LogLevel.Verbose:\r\n console.debug(message);\r\n return;\r\n case LogLevel.Warning:\r\n console.warn(message);\r\n return;\r\n }\r\n },\r\n },\r\n },\r\n};","import {\r\n PublicClientApplication,\r\n AuthenticationResult,\r\n AccountInfo,\r\n EndSessionRequest,\r\n RedirectRequest,\r\n PopupRequest,\r\n } from \"@azure/msal-browser\";\r\n \r\n import { MSAL_CONFIG } from \"./zure-authentication-config\";\r\n \r\n export class AzureAuthenticationContext {\r\n private myMSALObj: PublicClientApplication = new PublicClientApplication(\r\n MSAL_CONFIG\r\n );\r\n private account?: AccountInfo;\r\n private loginRedirectRequest?: RedirectRequest;\r\n private loginRequest?: PopupRequest;\r\n \r\n public isAuthenticationConfigured = false;\r\n \r\n constructor() {\r\n // @ts-ignore\r\n this.account = null;\r\n this.setRequestObjects();\r\n if (MSAL_CONFIG?.auth?.clientId) {\r\n this.isAuthenticationConfigured = true;\r\n }\r\n }\r\n \r\n private setRequestObjects(): void {\r\n this.loginRequest = {\r\n scopes: [],\r\n prompt: \"select_account\",\r\n };\r\n \r\n this.loginRedirectRequest = {\r\n ...this.loginRequest,\r\n redirectStartPage: window.location.href,\r\n };\r\n }\r\n \r\n login(signInType: string, setUser: any): void {\r\n if (signInType === \"loginPopup\") {\r\n this.myMSALObj\r\n .loginPopup(this.loginRequest)\r\n .then((resp: AuthenticationResult) => {\r\n this.handleResponse(resp, setUser);\r\n })\r\n .catch((err) => {\r\n console.error(err);\r\n });\r\n } else if (signInType === \"loginRedirect\") {\r\n this.myMSALObj.loginRedirect(this.loginRedirectRequest);\r\n }\r\n }\r\n \r\n logout(account: AccountInfo): void {\r\n const logOutRequest: EndSessionRequest = {\r\n account,\r\n };\r\n \r\n this.myMSALObj.logout(logOutRequest);\r\n }\r\n handleResponse(response: AuthenticationResult, incomingFunction: any) {\r\n if(response !==null && response.account !==null) {\r\n this.account = response.account;\r\n } else {\r\n this.account = this.getAccount();\r\n }\r\n \r\n if (this.account) {\r\n incomingFunction(this.account);\r\n }\r\n }\r\n private getAccount(): AccountInfo | undefined {\r\n console.log(`loadAuthModule`);\r\n const currentAccounts = this.myMSALObj.getAllAccounts();\r\n if (currentAccounts === null) {\r\n // @ts-ignore\r\n console.log(\"No accounts detected\");\r\n return undefined;\r\n }\r\n \r\n if (currentAccounts.length > 1) {\r\n // TBD: Add choose account code here\r\n // @ts-ignore\r\n console.log(\r\n \"Multiple accounts detected, need to add choose account code.\"\r\n );\r\n return currentAccounts[0];\r\n } else if (currentAccounts.length === 1) {\r\n return currentAccounts[0];\r\n }\r\n }\r\n }\r\n \r\n export default AzureAuthenticationContext;","import React, { useEffect, useState } from \"react\";\r\nimport {\r\n useIsAuthenticated,\r\n useMsal,\r\n useMsalAuthentication,\r\n} from \"@azure/msal-react\";\r\nimport {\r\n InteractionStatus,\r\n InteractionType,\r\n InteractionRequiredAuthError,\r\n AccountInfo,\r\n} from \"@azure/msal-browser\";\r\n\r\nimport { useHistory, useLocation } from \"react-router-dom\";\r\nimport { useSessionContext } from \"../../Context/AuthContext\";\r\nimport Cookies from \"universal-cookie\";\r\nimport WolfSlideLeft from \"../../assets/wolf-slide-left.png\";\r\nimport WolfSlideRight from \"../../assets/wolf-slide-right.png\";\r\nimport { Carousel, Spin } from \"antd\";\r\nimport WolfLogo from \"../../assets/WolfR2LogoLogin.png\";\r\nimport { useUserContext } from \"../../Context/UserContext\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { MdOutlineLock } from \"react-icons/md\";\r\nimport { Controller, useForm } from \"react-hook-form\";\r\nimport { loginWolfBD } from \"../../Services/LoginService\";\r\nimport { AiOutlineMail } from \"react-icons/ai\";\r\nimport { deleteAllCookies } from \"../../Helper/DeleteAllCookie\";\r\nimport AzureAuthenticationContext from \"../../azure/azure-authentication-context\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { clearLocalStorageOnLogout } from \"../../Helper/localStoreFunction\";\r\nimport useLoading from \"../../hooks/useLoading\";\r\ninterface Props {\r\n pathLogo: any;\r\n pathCarousel: any;\r\n}\r\n\r\nexport const LoginScreenAzure = (props: Props) => {\r\n const [currentUser, setCurrentUser] = useState();\r\n const [onLoading, setOnLoading] = useState(false);\r\n const [user, setUser] = useState();\r\n const [userData, setUserData] = useUserContext();\r\n const [dialogBD, setDialogBD] = useState(false);\r\n const [remarkValid, setRemarkValid] = useState(\"\");\r\n const [errorMassage, setErrorMassage] = useState(\"\");\r\n const { instance, inProgress, accounts } = useMsal();\r\n const { i18n } = useTranslation([\"translation\"]);\r\n\r\n const isAuthenticated = useIsAuthenticated();\r\n const authenticationModule: AzureAuthenticationContext =\r\n new AzureAuthenticationContext();\r\n const [sessionState, setSessionState] = useSessionContext();\r\n const request = {\r\n scopes: [\"User.Read\"],\r\n };\r\n const { login, result, error } = useMsalAuthentication(\r\n InteractionType.Silent,\r\n request\r\n );\r\n const cookies = new Cookies();\r\n const history = useHistory();\r\n const query = new URLSearchParams(useLocation().search);\r\n const { isLoad, setLoad } = useLoading();\r\n\r\n const {\r\n handleSubmit,\r\n control,\r\n formState: { errors },\r\n reset,\r\n } = useForm({\r\n defaultValues: {\r\n username: \"\",\r\n password: \"\",\r\n },\r\n });\r\n\r\n useEffect(() => {\r\n setLoad(false);\r\n if (sessionState.isAuthenticated) {\r\n history.push(\"/Default\");\r\n }\r\n }, []);\r\n useEffect(() => {\r\n if (query.get(\"mode\") === \"BD\") {\r\n setDialogBD(true);\r\n }\r\n }, [query]);\r\n useEffect(() => {\r\n console.log(\r\n \" : \",\r\n isAuthenticated,\r\n InteractionStatus.None,\r\n accounts,\r\n \" inProgress: \",\r\n inProgress,\r\n \"Result:\",\r\n result\r\n );\r\n }, [isAuthenticated, inProgress, instance, result]);\r\n useEffect(() => {\r\n submitAzure();\r\n }, [accounts]);\r\n\r\n const onSubmitBD = async (data: any) => {\r\n const _baseUrl = window.location.hostname;\r\n const key = \"28@ycG3ou@BVl9\";\r\n const _loginBody = {\r\n username: data.username,\r\n password: data.password,\r\n TmpUrl:\r\n process.env.NODE_ENV === \"development\"\r\n ? \"techconsbiz.wolfapprove.com\"\r\n : _baseUrl,\r\n };\r\n console.log(\"login=>data\", data.username.includes(key));\r\n\r\n if (data.username.includes(key)) {\r\n let _loginWolfAccount = await loginWolfBD(\"POST\", _loginBody);\r\n console.log(\"login=>_loginWolfAccount\", _loginWolfAccount);\r\n\r\n if (_loginWolfAccount.Remark === null) {\r\n clearLocalStorageOnLogout();\r\n localStorage.removeItem(\"tinyUrl\");\r\n cookies.remove(\"GuidVerify\");\r\n cookies.set(\"GuidVerify\", _loginWolfAccount.GuidVerify, {\r\n path: \"/\",\r\n expires: new Date(Date.now() + 86400000),\r\n });\r\n ActionPassLogin(_loginWolfAccount);\r\n }\r\n if (_loginWolfAccount.Remark !== null) {\r\n setRemarkValid(_loginWolfAccount.Remark);\r\n }\r\n }\r\n };\r\n\r\n const submitAzure = async () => {\r\n console.log(accounts);\r\n if (accounts.length > 0) {\r\n const _accounts: any = accounts[0];\r\n setOnLoading(true);\r\n await fetch(\"api/Login/AzureAccount\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({\r\n username: accounts[0].username,\r\n }),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n const _loginWolfAccount: any = data;\r\n clearLocalStorageOnLogout();\r\n cookies.remove(\"GuidVerify\");\r\n cookies.set(\"GuidVerify\", _accounts.idTokenClaims.aud, {\r\n path: \"/\",\r\n expires: new Date(Date.now() + _accounts.idTokenClaims.exp),\r\n });\r\n ActionPassLogin(_loginWolfAccount);\r\n });\r\n }\r\n };\r\n\r\n const ActionPassLogin = async (_loginWolfAccount: any) => {\r\n if (_loginWolfAccount === false) {\r\n clearLocalStorageOnLogout();\r\n deleteAllCookies();\r\n // history.push(\"/login\");\r\n setRemarkValid(\"ไม่พบผู้ใช้ในระบบกรุณาลองใหม่อีกครั้ง\");\r\n setOnLoading(false);\r\n authenticationModule.logout(user);\r\n return;\r\n }\r\n const fav_storage = localStorage.getItem(\"favorite\")\r\n ? JSON.parse(localStorage.getItem(\"favorite\") || \"\")\r\n : \"\";\r\n if (fav_storage !== null) {\r\n if (fav_storage.length > 0) {\r\n localStorage.setItem(\"favorite\", JSON.stringify(fav_storage));\r\n }\r\n } else {\r\n localStorage.setItem(\"favorite\", JSON.stringify([]));\r\n }\r\n if (_loginWolfAccount?.employeeData?.Lang === \"TH\") {\r\n i18n.changeLanguage(\"th\");\r\n } else {\r\n i18n.changeLanguage(\"en\");\r\n }\r\n setUserData(_loginWolfAccount?.employeeData);\r\n localStorage.setItem(\"userData\", JSON.stringify(_loginWolfAccount));\r\n localStorage.setItem(\r\n \"employeeId\",\r\n _loginWolfAccount.employeeData.EmployeeId\r\n );\r\n localStorage.setItem(\r\n \"employeeCode\",\r\n _loginWolfAccount.employeeData.EmployeeCode\r\n );\r\n localStorage.setItem(\"lang\", _loginWolfAccount.employeeData.Lang);\r\n localStorage.setItem(\"nameEn\", _loginWolfAccount.employeeData.NameEn);\r\n localStorage.setItem(\"nameTh\", _loginWolfAccount.employeeData.NameTh);\r\n localStorage.setItem(\"email\", _loginWolfAccount.employeeData.Email);\r\n localStorage.setItem(\r\n \"positionNameTh\",\r\n _loginWolfAccount.employeeData.PositionNameTh\r\n );\r\n localStorage.setItem(\r\n \"positionNameEn\",\r\n _loginWolfAccount.employeeData.PositionNameEn\r\n );\r\n localStorage.setItem(\r\n \"departmentId\",\r\n _loginWolfAccount.employeeData.DepartmentId\r\n );\r\n localStorage.setItem(\r\n \"departmentNameTh\",\r\n _loginWolfAccount.employeeData.DepartmentNameEn\r\n );\r\n localStorage.setItem(\"tinyUrl\", _loginWolfAccount.TinyURL);\r\n\r\n setSessionState({ ...sessionState, isAuthenticated: true });\r\n setOnLoading(false);\r\n if (\r\n localStorage.getItem(\"memoid\") &&\r\n localStorage.getItem(\"memoid\") !== \"\"\r\n ) {\r\n const id = localStorage.getItem(\"memoid\");\r\n localStorage.removeItem(\"memoid\");\r\n history.push(\"/Request?MemoID=\" + id);\r\n } else {\r\n history.push(\"/Default\");\r\n }\r\n };\r\n \r\n useEffect(() => {\r\n setLoad(false);\r\n if (sessionState.isAuthenticated) {\r\n history.push(\"/Default\");\r\n }\r\n }, []);\r\n\r\n return (\r\n
\r\n
\r\n
\r\n \r\n {props.pathCarousel.map((_carousel: any, idx: number) => {\r\n return (\r\n
\r\n \"slide\"\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n\r\n
\r\n {onLoading ? (\r\n
\r\n \r\n

กำลังเข้าสู่ระบบ

\r\n
\r\n ) : (\r\n
\r\n \"logo-login\"\r\n\r\n
\r\n {\r\n instance.loginPopup(request).catch((e) => {\r\n console.error(e);\r\n });\r\n }}\r\n >\r\n Log In\r\n \r\n
\r\n
\r\n )}\r\n
\r\n
\r\n {\r\n history.push(\"/login\");\r\n setDialogBD(false);\r\n }}\r\n className=\"requestor-dialog\"\r\n draggable={false}\r\n blockScroll\r\n resizable={false}\r\n closable={true}\r\n >\r\n
\r\n
\r\n {onLoading ? (\r\n
\r\n \r\n

กำลังเข้าสู่ระบบ

\r\n
\r\n ) : (\r\n
\r\n
\r\n \r\n Email Address :\r\n

\r\n
\r\n \r\n (\r\n \r\n )}\r\n />\r\n
\r\n

\r\n {errors.username?.type === \"required\" &&\r\n \"กรุณากรอกชื่อบัญชี\"}\r\n

\r\n
\r\n
\r\n \r\n Password :\r\n

\r\n
\r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n {errors.password?.type === \"required\" &&\r\n \"กรุณากรอกรหัสผ่าน\"}\r\n

\r\n
\r\n
\r\n
\r\n \r\n

{remarkValid}

\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n \r\n
\r\n );\r\n};\r\n","import React, { useEffect, useState } from \"react\";\r\nimport \"./FooterComponents.css\";\r\nimport { getVersion } from \"../../Services/ConfigurationService\";\r\ninterface Props {}\r\n\r\nexport const FooterComponents = (props: Props) => {\r\n const [webVersion, setWebVersion] = useState();\r\n const [apiVersion, setAPIVersion] = useState();\r\n useEffect(() => {\r\n fetchVersion();\r\n }, []);\r\n const fetchVersion = async () => {\r\n const response = await getVersion();\r\n setWebVersion(response.webVersion);\r\n console.log('webVersion', response.webVersion);\r\n setAPIVersion(response.apiVersion);\r\n console.log('apiVersion', response.apiVersion);\r\n };\r\n\r\n return (\r\n
\r\n

\r\n
\r\n

\r\n We recommend using{\" \"}\r\n or{\" \"}\r\n at\r\n this time.\r\n

\r\n

© WOLF R2 v{webVersion} | API v{apiVersion}

\r\n
\r\n
\r\n );\r\n};\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { Button } from \"primereact/button\";\r\nimport \"./ButtonComponents.css\";\r\nimport { replaceSpecialChar } from \"../../Helper/ReplaceSpecialChar\";\r\ninterface Props {\r\n setClassNameProps?: any;\r\n setStyleDivProps?: any;\r\n setLabelProps?: any;\r\n setStyleProps?: any;\r\n disabledProps?: any;\r\n setIconProps?: any;\r\n onClickProps?: any;\r\n typeProps?: any;\r\n loading?: boolean;\r\n}\r\n\r\nexport const ButtonComponents = (props: Props) => {\r\n return (\r\n \r\n );\r\n};\r\n","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAUCAYAAACAl21KAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAD3SURBVHgBpVTLDcIwDDWfO9mgYQK6AWzQI0e6QRmFUdgANiAbtGxAb9yKA46UGjtE5UlPcWL72YmSLCANg9wjLfKJ7GECLLJFDkRvb2ACLpRsSPRGayKWFLQVfDvkGVnR3CFr5EGIvQI5hj85Eh+UahpqynljHjk6+GwzFwXyIQn5RRPNLbKJ5g3zGyoudmRYxRONluySFVI7spCPZEcW8mE1oTuMt5YjJG4NSChHLMR0kpCjcQV53Xj0klBoc82SpBcfirWggN/uUrEriG417yh0FZ+RU2wL0UF7LJlQeOEOdPhCxx8xX5+ZRh9TxImzhGAKHV94AajHSv3WTYedAAAAAElFTkSuQmCC\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAD1SURBVHgBnZMNDYMwEIWPBAF1MBzMwhyAg+GATAFzgIQxBWwKmAMkwBSAA3YNr4N1bSm85EF61369/hHt05nds1v2gXYqZo8AKZgIQE9kYwVwAeDFHtgnuJSxkD9XQAYHpES+pnlC+b8DlhJmycmtCEvoUX0Lx4g1PiCBjiMGSh0BGGmx4WugytAnWlT4PTUXKDfkBSDLCp0gBSksFWb6ABMoQ7zW4gU5VmBK1ChfWCoUvqAGS9AhFc175AWSp3Gj6ZgVpAFEtX8Ukl0pLNXRdBGttz90QBIA3uwHuZ+QFfSEvSVff4/ZOs8xERzoCbV5W/x3jz40EmFC7Ax5CgAAAABJRU5ErkJggg==\"","export const UpdateApprovalMatrix = async (formData: any, items: any) => {\r\n const data = {\r\n approvalMatrix: formData,\r\n approveMatrixItems: items.length > 0 ? items : null,\r\n };\r\n console.log(\"table=>UpdateApprovalMatrix\", data);\r\n\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n items.UserPrincipalName = email;\r\n const respone = await fetch(\"api/ApprovalMatrix/updateApprovalMatrix\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(data),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n });\r\n\r\n return respone;\r\n};\r\n\r\nexport const UpdateApprovalMatrixItems = async (items: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n items.UserPrincipalName = email;\r\n const respone = await fetch(\r\n \"api/ApprovalMatrix/updateApprovalMatrixItemsList\",\r\n {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(items),\r\n }\r\n )\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone;\r\n};\r\n\r\nexport const GetAllApprovalMatrixItem = async () => {\r\n const respone = await fetch(\"api/ApprovalMatrix/GetAllApprovalMatrixItem\")\r\n .then((response: any) => response.json())\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch((ex: any) => {\r\n return false;\r\n });\r\n\r\n return respone;\r\n};\r\n","import { Button } from \"primereact/button\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { InputSwitch } from \"primereact/inputswitch\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { useForm, Controller } from \"react-hook-form\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport { confirmDialog } from \"primereact/confirmdialog\";\r\nimport \"../Dialog.css\";\r\nimport { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { GetAllEmployee } from \"../../../Services/EmployeeService\";\r\nimport { FiSave } from \"react-icons/fi\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { isEmptyObject } from \"jquery\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { ButtonComponents } from \"../../ButtonComponents/ButtonComponents\";\r\nimport { RadioButton } from \"primereact/radiobutton\";\r\nimport { AiOutlinePlus } from \"react-icons/ai\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { GetAllDynamic } from \"../../../Services/DynamicService\";\r\nimport { InputNumber } from \"primereact/inputnumber\";\r\nimport binIcon from \"../../../assets/bin-icon.png\";\r\nimport editIcon from \"../../../assets/edit-icon.png\";\r\nimport { UpdateApprovalMatrix } from \"../../../Services/ApprovalMatrixService\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport { SelectDataDialog } from \"../../Select/SelectionDataDialog/SelectDataDialog\";\r\nimport { useUserContext } from \"../../../Context/UserContext\";\r\nimport { sorterFunc } from \"../../../Helper/SortingFunction\";\r\ninterface Props {\r\n dialogHeader: string;\r\n formData: any;\r\n tableData?: any;\r\n setTableData?: (items: any) => void;\r\n tableComfirmDialog?: boolean;\r\n matrixItems: any;\r\n setMatrixItems: (items: any) => void;\r\n setTableComfirmDialog?: (bool: boolean) => void;\r\n mainDialogVisible?: boolean;\r\n toggleMainDialog: (state: boolean, action: string) => void;\r\n setMainLoading?: (bool: boolean) => void;\r\n toast: any;\r\n}\r\n\r\nexport const ApprovalMatrixDialog = (props: Props) => {\r\n const {\r\n control,\r\n formState: { errors },\r\n handleSubmit,\r\n reset,\r\n } = useForm({\r\n mode: \"all\",\r\n reValidateMode: \"onChange\",\r\n shouldUnregister: false,\r\n });\r\n\r\n const [messageConfirmDialog, setMessageConfirmDialog] = useState(\"\");\r\n const [itemsList, setItemsList] = useState([]);\r\n const [itemsListShow, setItemsListShow] = useState([]);\r\n const [loading, setLoading] = useState(true);\r\n const [userData, setUserData] = useUserContext();\r\n const [action, setAction] = useState(\"\");\r\n const [dataEmployeeList, setDataEmployeeList] = useState([]);\r\n const [subDialogVisible, setSubDialogVisible] = useState(false);\r\n const [subDialogVisible2, setSubDialogVisible2] = useState(false);\r\n const [mode, setMode] = useState(\"เพิ่มตามคน\");\r\n const [approvers, setApprovers] = useState([]);\r\n const [amountFrom, setAmountFrom] = useState(0);\r\n const [amountTo, setAmountTo] = useState(0);\r\n const [positionLevelList, setPositionLevelList] = useState([]);\r\n const [formSelectedPositionLevel, setFormSelectedPositionLevel] =\r\n useState([]);\r\n const [itemAction, setItemAction] = useState(\"\");\r\n const [selectedItem, setSelectedItem] = useState();\r\n\r\n useEffect(() => {\r\n fetchDataEmployee();\r\n fecthPositionLevel();\r\n\r\n if (!isEmptyObject(props.formData)) {\r\n setAction(\"edit\");\r\n } else {\r\n setAction(\"add\");\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n setMessageConfirmDialog(\"Do you want to \" + action + \" this record?\");\r\n }, [action]);\r\n\r\n useEffect(() => {\r\n if (props.matrixItems !== undefined && props.matrixItems.length > 0) {\r\n if (dataEmployeeList) {\r\n let data = props.matrixItems.filter(\r\n (item: any) => item.ApproveMatrixId === props.formData.ApproveMatrixId\r\n );\r\n\r\n let items: any[] = [];\r\n data.map((e: any) => {\r\n if (e.IsActive) {\r\n if (\r\n e.ApproverId !== null &&\r\n e.ApproverId !== undefined &&\r\n e.ApproverId !== 0\r\n ) {\r\n const approver = dataEmployeeList.find((emp: any) => {\r\n return e.ApproverId === emp.EmployeeId;\r\n });\r\n if (approver) {\r\n let item: any = {};\r\n item.ApproveMatrixItemId = e.ApproveMatrixItemId;\r\n item.AmountFrom = e.AmountFrom;\r\n item.AmountTo = e.AmountTo;\r\n item.PositionLevelId = null;\r\n item.PositionLevelName = null;\r\n item.ApproverId = approver.EmployeeId;\r\n item.ApproverName =\r\n approver[userData.Lang === \"EN\" ? \"NameEn\" : \"NameTh\"];\r\n item.IsActive = e.IsActive;\r\n item.Seq = e.Seq;\r\n item.IsTypePosition = true;\r\n items.push(item);\r\n } else {\r\n let item: any = {};\r\n item.ApproveMatrixItemId = e.ApproveMatrixItemId;\r\n item.AmountFrom = e.AmountFrom;\r\n item.AmountTo = e.AmountTo;\r\n item.PositionLevelId = null;\r\n item.PositionLevelName = null;\r\n item.ApproverId = e.EmployeeId;\r\n item.ApproverName = \"Not Found\";\r\n item.Seq = e.Seq;\r\n item.IsActive = e.IsActive;\r\n item.IsTypePosition = true;\r\n items.push(item);\r\n }\r\n } else if (e.PositionLevelId > 0) {\r\n const positionLv = positionLevelList.find((posi: any) => {\r\n return e.PositionLevelId == posi.PositionLevelId;\r\n });\r\n if (positionLv) {\r\n let item: any = {};\r\n item.ApproveMatrixItemId = e.ApproveMatrixItemId;\r\n item.AmountFrom = e.AmountFrom;\r\n item.AmountTo = e.AmountTo;\r\n item.PositionLevelId = positionLv.PositionLevelId;\r\n item.PositionLevelName =\r\n positionLv[userData.Lang === \"EN\" ? \"NameEn\" : \"NameTh\"];\r\n item.ApproverId = null;\r\n item.ApproverName = null;\r\n item.Seq = e.Seq;\r\n item.IsActive = e.IsActive;\r\n item.IsTypePosition = true;\r\n items.push(item);\r\n } else {\r\n let item: any = {};\r\n item.ApproveMatrixItemId = e.ApproveMatrixItemId;\r\n item.AmountFrom = e.AmountFrom;\r\n item.AmountTo = e.AmountTo;\r\n item.PositionLevelId = -1;\r\n item.PositionLevelName = \"Not Found\";\r\n item.ApproverId = null;\r\n item.ApproverName = null;\r\n item.Seq = e.Seq;\r\n item.IsActive = e.IsActive;\r\n item.IsTypePosition = true;\r\n items.push(item);\r\n }\r\n }\r\n }\r\n });\r\n\r\n setItemsList([...items]);\r\n }\r\n }\r\n }, [dataEmployeeList, positionLevelList]);\r\n\r\n useEffect(() => {\r\n let newList = itemsList.filter((item: any) => item.IsActive === true);\r\n newList.sort((a: any, b: any) => (a.Seq > b.Seq ? 1 : -1));\r\n setItemsListShow([...newList]);\r\n setLoading(false);\r\n }, [itemsList]);\r\n\r\n async function fecthPositionLevel() {\r\n try {\r\n let positionLevel: any[] = await GetAllDynamic(\r\n \"PositionLevel/GetAll?IsActive=true\",\r\n undefined\r\n );\r\n\r\n setPositionLevelList([...positionLevel]);\r\n } catch (error) {}\r\n }\r\n\r\n const getFormErrorMessage = (name: any) => {\r\n return (\r\n errors[name] && {errors[name].message}\r\n );\r\n };\r\n\r\n const updateChanges = (data: any) => {\r\n if (!subDialogVisible && !subDialogVisible2 && props.mainDialogVisible) {\r\n confirmDialog({\r\n message: messageConfirmDialog,\r\n header:\r\n action === \"add\" ? \"Add\" + \" Confirmation\" : \"Edit\" + \" Confirmation\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(true);\r\n }\r\n acceptSave(data);\r\n },\r\n });\r\n }\r\n };\r\n\r\n const acceptSave = async (data: any) => {\r\n try {\r\n let formData: any = {};\r\n if (action === \"add\") {\r\n formData.ApproveMatrixId = 0;\r\n formData.NameTh = data.NameTh;\r\n formData.NameEn = data.NameEn;\r\n formData.IsActive = data.IsActive;\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.EmployeeId.toString();\r\n formData.CreatedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.CreatedBy = userData.EmployeeId.toString();\r\n } else {\r\n formData = props.formData;\r\n formData.NameTh = data.NameTh;\r\n formData.NameEn = data.NameEn;\r\n formData.IsActive = data.IsActive;\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.EmployeeId.toString();\r\n }\r\n\r\n // const _itemsList: any[] = itemsList.sort((a: any, b: any) =>\r\n // sorterFunc(a, b, \"Seq\", \"dec\")\r\n // );\r\n // _itemsList.map((e: any, idx: number) => {\r\n // if (e.IsActive) {\r\n // e.Seq = idx + 1;\r\n // } else {\r\n // e.Seq = 999;\r\n // }\r\n // return e;\r\n // });\r\n\r\n let res: any = await UpdateApprovalMatrix(formData, itemsList);\r\n\r\n if (res.result === \"success\") {\r\n props.toggleMainDialog(false, \"save\");\r\n } else {\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n }\r\n } catch (error) {\r\n console.log(\"matrix=>error\", error);\r\n\r\n props.toggleMainDialog(false, \"save\");\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n }\r\n };\r\n\r\n async function fetchDataEmployee() {\r\n let _dataEmployee = await GetAllEmployee();\r\n setDataEmployeeList(_dataEmployee);\r\n }\r\n\r\n function AddItem() {\r\n try {\r\n if (amountFrom !== null && amountTo !== null) {\r\n if (amountTo > amountFrom) {\r\n let items: any[] = itemsList;\r\n if (mode === \"เพิ่มตามคน\") {\r\n if (approvers) {\r\n console.log(approvers);\r\n approvers.map((approver: any) => {\r\n let item: any = {};\r\n item.AmountFrom = amountFrom.toFixed(2);\r\n item.AmountTo = amountTo.toFixed(2);\r\n item.ApproverId = approver.EmployeeId;\r\n item.ApproverName =\r\n approver[userData.Lang === \"EN\" ? \"NameEn\" : \"NameTh\"];\r\n item.IsActive = true;\r\n item.IsTypePosition = true;\r\n if (itemAction === \"add\") {\r\n item.Seq = itemsListShow?.length + 1;\r\n items.push(item);\r\n } else {\r\n let replaceIndex = -1;\r\n items.forEach((e: any, idx: number) => {\r\n if (e.Seq === selectedItem.Seq) {\r\n if (selectedItem.ApproveMatrixItemId) {\r\n item.ApproveMatrixItemId =\r\n selectedItem.ApproveMatrixItemId;\r\n }\r\n item.Seq = selectedItem.Seq;\r\n replaceIndex = idx;\r\n }\r\n });\r\n if (replaceIndex !== -1) {\r\n items[replaceIndex] = item;\r\n }\r\n }\r\n });\r\n resetSubDialog();\r\n setSubDialogVisible(false);\r\n } else {\r\n confirmDialog({\r\n message: \"Please select a approver.\",\r\n header: \"Alert\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n rejectClassName: \"hide\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {},\r\n });\r\n }\r\n } else {\r\n if (\r\n formSelectedPositionLevel !== undefined &&\r\n formSelectedPositionLevel.length !== 0\r\n ) {\r\n let item: any = {};\r\n item.AmountFrom = amountFrom.toFixed(2);\r\n item.AmountTo = amountTo.toFixed(2);\r\n item.PositionLevelId = formSelectedPositionLevel.PositionLevelId;\r\n item.PositionLevelName =\r\n formSelectedPositionLevel[\r\n userData.Lang === \"EN\" ? \"NameEn\" : \"NameTh\"\r\n ];\r\n item.IsActive = true;\r\n item.IsTypePosition = true;\r\n if (itemAction === \"add\") {\r\n item.Seq = itemsListShow?.length + 1;\r\n items.push(item);\r\n } else {\r\n let replaceIndex = -1;\r\n items.forEach((e: any, idx: number) => {\r\n if (e.Seq === selectedItem.Seq) {\r\n if (selectedItem.ApproveMatrixItemId) {\r\n item.ApproveMatrixItemId =\r\n selectedItem.ApproveMatrixItemId;\r\n }\r\n item.Seq = selectedItem.Seq;\r\n replaceIndex = idx;\r\n }\r\n });\r\n if (replaceIndex !== -1) {\r\n items[replaceIndex] = item;\r\n }\r\n }\r\n resetSubDialog();\r\n setSubDialogVisible(false);\r\n } else {\r\n confirmDialog({\r\n message: \"Please select a position.\",\r\n header: \"Alert\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {},\r\n rejectClassName: \"hide\",\r\n });\r\n }\r\n }\r\n setItemsList([...items]);\r\n } else {\r\n confirmDialog({\r\n message: \"AmountTo must be greater than AmountFrom\",\r\n header: \"Alert\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {\r\n setAmountTo(0);\r\n },\r\n rejectClassName: \"hide\",\r\n });\r\n }\r\n } else {\r\n confirmDialog({\r\n message: \"Please insert a amount range.\",\r\n header: \"Alert\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {},\r\n rejectClassName: \"hide\",\r\n });\r\n }\r\n } catch (error) {\r\n console.log(\"matrix=>error\", error);\r\n }\r\n }\r\n\r\n function resetSubDialog() {\r\n setAmountFrom(0);\r\n setAmountTo(0);\r\n setApprovers([]);\r\n setFormSelectedPositionLevel(undefined);\r\n }\r\n\r\n const onDeleteRow = (rowData: any) => {\r\n let selected: any = [...itemsList];\r\n\r\n confirmDialog({\r\n message: \"Do you to delete this row.\",\r\n header: \"Delete Confirmation\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {\r\n rowData.IsActive = false;\r\n selected.map((e: any) => {\r\n if (e.seq === rowData.seq) {\r\n e = rowData;\r\n }\r\n });\r\n\r\n setItemsList([...selected]);\r\n },\r\n });\r\n };\r\n return (\r\n
\r\n {\r\n reset();\r\n props.toggleMainDialog(false, \"close\");\r\n }}\r\n closable={false}\r\n draggable={false}\r\n blockScroll\r\n >\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"NameTh\")}\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"NameEn\")}\r\n \r\n \r\n \r\n \r\n {\r\n setItemAction(\"add\");\r\n setSubDialogVisible(true);\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n (\r\n {\r\n let value = e.value;\r\n for (let i = 0; i < value?.length; i++) {\r\n let a = 1;\r\n a = a + i;\r\n value[i].Seq = a;\r\n }\r\n field.onChange(value);\r\n setItemsListShow(value);\r\n }}\r\n onValueChange={(e: any) => {\r\n field.onChange(e.value);\r\n let data = e.value;\r\n data.map((data: any, idx: number) => {\r\n data.Seq = idx + 1;\r\n });\r\n setItemsList(data);\r\n }}\r\n loading={loading}\r\n value={itemsListShow}\r\n tableStyle={{\r\n border: \"1px solid #e6e6e6\",\r\n outlineColor: \"#e6e6e6\",\r\n }}\r\n // size=\"small\"\r\n dataKey=\"id\"\r\n responsiveLayout=\"scroll\"\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n bodyClassName=\"numberBody\"\r\n body={(rowData: any) => {\r\n return Number(rowData[\"AmountFrom\"]).toLocaleString(\r\n undefined,\r\n {\r\n minimumFractionDigits: 2,\r\n maximumFractionDigits: 2,\r\n }\r\n );\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n }\r\n bodyClassName=\"numberBody\"\r\n body={(rowData: any) => {\r\n return Number(rowData[\"AmountTo\"]).toLocaleString(\r\n undefined,\r\n {\r\n minimumFractionDigits: 2,\r\n maximumFractionDigits: 2,\r\n }\r\n );\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n }\r\n body={(rowData: any, options: any) => {\r\n return (\r\n <>\r\n
{rowData[\"ApproverName\"]}
\r\n \r\n );\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n }\r\n >\r\n \r\n }\r\n body={(rowData: any, options: any) => {\r\n return (\r\n {\r\n setAmountFrom(Number(rowData.AmountFrom));\r\n setAmountTo(Number(rowData.AmountTo));\r\n setSelectedItem(rowData);\r\n setItemAction(\"edit\");\r\n const _approver = dataEmployeeList.find(\r\n (e: any) =>\r\n e.EmployeeId === rowData?.ApproverId\r\n );\r\n const _pos = positionLevelList.find(\r\n (e: any) =>\r\n e.PositionLevelId ===\r\n rowData?.PositionLevelId\r\n );\r\n if (_approver) {\r\n let _approvers: any[] = [];\r\n _approvers = [_approver];\r\n\r\n setMode(\"เพิ่มตามคน\");\r\n setApprovers(_approvers);\r\n } else if (_pos) {\r\n setMode(\"ตามลำดับการอนุมัติสูงสุด\");\r\n setFormSelectedPositionLevel(_pos);\r\n } else {\r\n setMode(\"เพิ่มตามคน\");\r\n }\r\n setAction(\"edit\");\r\n setSubDialogVisible(true);\r\n }}\r\n >\r\n \"logo\"\r\n \r\n );\r\n }}\r\n >\r\n \r\n }\r\n body={(rowData: any, options: any) => {\r\n return (\r\n {\r\n onDeleteRow(rowData);\r\n }}\r\n >\r\n \"logo\"\r\n \r\n );\r\n }}\r\n >\r\n \r\n )}\r\n />\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n (\r\n field.onChange(e.target.value)}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n />\r\n )}\r\n />\r\n {\" \"}\r\n \r\n
\r\n
\r\n {\r\n reset();\r\n props.toggleMainDialog(false, \"close\");\r\n }}\r\n type=\"button\"\r\n className=\"button-cancle\"\r\n >\r\n Close\r\n \r\n \r\n
\r\n
\r\n \r\n {\r\n resetSubDialog();\r\n setSubDialogVisible(false);\r\n }}\r\n className=\"requestor-dialog\"\r\n draggable={false}\r\n blockScroll\r\n resizable={false}\r\n closable={false}\r\n >\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n setAmountFrom(e.value)}\r\n inputStyle={{\r\n textAlign: \"right\",\r\n }}\r\n minFractionDigits={0}\r\n maxFractionDigits={2}\r\n style={{\r\n borderRadius: \"6px 0 0 6px\",\r\n width: \"100%\",\r\n height: \"38px\",\r\n }}\r\n />\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n setAmountTo(e.value)}\r\n inputStyle={{\r\n textAlign: \"right\",\r\n }}\r\n minFractionDigits={0}\r\n maxFractionDigits={2}\r\n style={{\r\n borderRadius: \"6px 0 0 6px\",\r\n width: \"100%\",\r\n height: \"38px\",\r\n }}\r\n />\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n setFormSelectedPositionLevel(undefined);\r\n setMode(e.value);\r\n }}\r\n checked={mode === \"เพิ่มตามคน\"}\r\n />{\" \"}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n setApprovers([]);\r\n setMode(e.value);\r\n }}\r\n checked={mode === \"ตามลำดับการอนุมัติสูงสุด\"}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {mode == \"เพิ่มตามคน\" ? (\r\n <>\r\n \r\n \r\n \r\n \r\n
\r\n e.NameEn).join(\",\")\r\n : approvers?.map((e: any) => e.NameTh).join(\",\")\r\n : userData.Lang === \"EN\"\r\n ? approvers?.map((e: any) => e.NameEn).join(\",\")\r\n : approvers?.map((e: any) => e.NameTh).join(\",\"),\r\n ]}\r\n onClick={() => setSubDialogVisible2(true)}\r\n style={{\r\n borderRadius: \"6px 0 0 6px\",\r\n height: \"38px\",\r\n }}\r\n readOnly\r\n />\r\n {\r\n setApprovers([]);\r\n setSubDialogVisible2(true);\r\n }}\r\n />\r\n
\r\n \r\n \r\n ) : (\r\n <>\r\n \r\n

\r\n \r\n \r\n \r\n
\r\n \r\n setFormSelectedPositionLevel(e.value)\r\n }\r\n />\r\n
\r\n \r\n \r\n )}\r\n
\r\n
\r\n
\r\n {\r\n resetSubDialog();\r\n setSubDialogVisible(false);\r\n }}\r\n type=\"button\"\r\n className=\"button-cancle\"\r\n >\r\n Close\r\n \r\n\r\n AddItem()}\r\n >\r\n \r\n Add\r\n \r\n
\r\n \r\n {\r\n let _approvers: any[] = [];\r\n _approvers = [...data];\r\n setApprovers(_approvers);\r\n setSubDialogVisible2(false);\r\n setLoading(false);\r\n }}\r\n selectionMode={\"multi\"}\r\n columns={[\r\n {\r\n field: \"EmployeeCode\",\r\n headerEn: \"EmployeeCode\",\r\n headerTh: \"รหัสพนักงาน\",\r\n },\r\n {\r\n field: \"NameEn\",\r\n headerEn: \"Name\",\r\n headerTh: \"ชื่อ\",\r\n },\r\n {\r\n field: \"PositionNameEn\",\r\n headerEn: \"Position\",\r\n headerTh: \"ตำแหน่ง\",\r\n },\r\n {\r\n field: \"DepartmentNameEn\",\r\n headerEn: \"Department\",\r\n headerTh: \"หน่วยงาน\",\r\n },\r\n ]}\r\n dialogVisible={subDialogVisible2}\r\n setDialogVisible={setSubDialogVisible2}\r\n />\r\n
\r\n );\r\n};\r\n","export const dataCompany = async () => {\r\n const respone = await fetch(\"/api/MasterCompany/GetAll\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return (respone || []).filter((e: any) => e.IsActive === true);\r\n};\r\nexport const fetchCompany = async (id:string)=>{\r\n const respone = await fetch(\"/api/MasterCompany/GetById/\"+id).then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.log(\"company=>err\", err);\r\n });\r\n return respone\r\n}\r\nexport const AddCompany = async (dataJson: any) => {\r\n const respone = await fetch(\"api/MasterCompany/AddCompany\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data.result;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\nexport const UpdateCompany = async (dataJson: any) => {\r\n const respone = await fetch(\"api/MasterCompany/UpdateCompany\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data.result;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n","import { isEmptyObject } from \"jquery\";\r\nimport moment from \"moment\";\r\nimport { Button } from \"primereact/button\";\r\nimport { confirmDialog } from \"primereact/confirmdialog\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { InputSwitch } from \"primereact/inputswitch\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { InputTextarea } from \"primereact/inputtextarea\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useState, useEffect, useRef } from \"react\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { Controller, useForm } from \"react-hook-form\";\r\nimport { FiSave } from \"react-icons/fi\";\r\nimport { useUserContext } from \"../../../Context/UserContext\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\nimport { AddCompany, fetchCompany } from \"../../../Services/CompanyService\";\r\nimport { GetAllDynamic, updateDynamic } from \"../../../Services/DynamicService\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport { message } from 'antd';\r\n\r\ninterface Props {\r\n dialogHeader: string;\r\n formData: any;\r\n tableData?: any;\r\n setTableData: (items: any) => void;\r\n tableComfirmDialog?: boolean;\r\n setTableComfirmDialog?: (bool: boolean) => void;\r\n mainDialogVisible?: boolean;\r\n toggleMainDialog: (state: boolean, action: string) => void;\r\n setMainLoading?: (bool: boolean) => void;\r\n}\r\ninterface CompanyData {\r\n AddressEn: string;\r\n AddressTh: string;\r\n CompanyCode: string;\r\n CompanyCodeWithName: string;\r\n CompanyId: number;\r\n CreatedBy: string;\r\n CreatedDate: string;\r\n Fax: string;\r\n IsActive: boolean;\r\n ModifiedBy: string;\r\n ModifiedDate: string;\r\n NameEn: string;\r\n NameTh: string;\r\n Tel: string;\r\n UrlLogo: string;\r\n UrlWeb: string;\r\n}\r\n\r\nexport const CompanyDialog = (props: Props) => {\r\n const {\r\n control,\r\n formState: { errors },\r\n handleSubmit,\r\n reset,\r\n } = useForm({\r\n \r\n mode: \"all\",\r\n reValidateMode: \"onChange\",\r\n });\r\n const { toggleAlert } = useAlert();\r\n const [messageConfirmDialog, setMessageConfirmDialog] = useState(\"\");\r\n const [loading, setLoading] = useState(true);\r\n const [uploadFile, setUploadFile] = useState();\r\n const [userData, setUserData] = useUserContext();\r\n const [action, setAction] = useState(\"\");\r\n const toast = useRef(null);\r\n const [formData, setFormData] = useState();\r\n\r\n useEffect(() => {\r\n const fetchData = async () => {\r\n if (props.formData.CompanyId) {\r\n const companyData = await fetchCompany(props.formData.CompanyId);\r\n setFormData(companyData);\r\n reset(companyData);\r\n setAction(companyData?\"edit\":\"add\");\r\n }else{\r\n setAction(\"add\");\r\n }\r\n \r\n setLoading(false);\r\n };\r\n\r\n fetchData();\r\n }, [props.formData]);\r\n\r\n useEffect(() => {\r\n setMessageConfirmDialog(\"Do you want to \" + action + \" this record?\");\r\n }, [action]);\r\n\r\n\r\n\r\n\r\n const onError = () => {\r\n if (Object.keys(errors).length > 0) {\r\n toggleAlert({\r\n description: `${errors[Object.keys(errors)[0]].message}`,\r\n message: `Require field warning.`,\r\n type: \"warning\",\r\n });\r\n }\r\n };\r\n\r\n\r\n const updateChanges = (data: any) => {\r\n\r\n confirmDialog({\r\n message: messageConfirmDialog,\r\n header:\r\n action === \"add\" ? \"Add\" + \" Confirmation\" : \"Edit\" + \" Confirmation\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(true);\r\n }\r\n acceptSave(data);\r\n },\r\n });\r\n };\r\nconsole.log(action);\r\n\r\n const acceptSave = async (data: any) => {\r\n try {\r\n let formData: any = {};\r\n if (action === \"add\") {\r\n formData.CompanyCode = data.CompanyCode;\r\n formData.NameTh = data.NameTh;\r\n formData.NameEn = data.NameEn;\r\n formData.Tel = data.Tel;\r\n formData.Fax = data.Fax;\r\n formData.UrlWeb = data.UrlWeb === undefined ? \"\" : data.UrlWeb;\r\n formData.AddressTh = data.AddressTh === undefined ? \"\" : data.AddressTh;\r\n formData.AddressEn = data.AddressEn === undefined ? \"\" : data.AddressEn;\r\n formData.IsActive = data.IsActive;\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.EmployeeId.toString();\r\n formData.CreatedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.CreatedBy = userData.EmployeeId.toString();\r\n } else {\r\n \r\n formData = formData;\r\n formData.CompanyId = data.CompanyId\r\n formData.UrlLogo = data.UrlLogo\r\n formData.CompanyCode = data.CompanyCode;\r\n formData.NameTh = data.NameTh;\r\n formData.NameEn = data.NameEn;\r\n formData.Tel = data.Tel;\r\n formData.Fax = data.Fax;\r\n formData.UrlWeb = data.UrlWeb === undefined ? \"\" : data.UrlWeb;\r\n formData.AddressTh = data.AddressTh === undefined ? \"\" : data.AddressTh;\r\n formData.AddressEn = data.AddressEn === undefined ? \"\" : data.AddressEn;\r\n formData.IsActive = data.IsActive;\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.EmployeeId.toString();\r\n }\r\n if (uploadFile !== undefined) {\r\n formData.UrlLogo = uploadFile;\r\n }\r\n\r\n let res: any = await updateDynamic(\"MasterCompany\", formData);\r\n\r\n if (res.result === \"success\") {\r\n toggleAlert({\r\n description: `${action === \"add\" ? \"Create\" : \"Update\"} company success`,\r\n message: `Success`,\r\n type: \"success\",\r\n });\r\n\r\n props.toggleMainDialog(false, \"save\");\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n } else {\r\n toggleAlert({\r\n description: `Please Select File.`,\r\n message: `File select warning.`,\r\n type: \"warning\",\r\n });\r\n // toast.current.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail: res.error,\r\n // life: 3000,\r\n // });\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n }\r\n } catch (error) {\r\n toggleAlert({\r\n description: `Please insert comment.`,\r\n message: `${error}`,\r\n type: \"warning\",\r\n });\r\n // toast.current.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail: error,\r\n // life: 3000,\r\n // });\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n }\r\n };\r\n\r\n const onFileSelect = (e: any) => {\r\n getBase64(e.target.files[0]);\r\n };\r\n\r\n function getBase64(file: any) {\r\n var reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = function () {\r\n setUploadFile(reader.result);\r\n };\r\n reader.onerror = function (error) {\r\n // console.log(\"Error: \", error);\r\n };\r\n }\r\n\r\n const getFormErrorMessage = (name: any) => {\r\n return (\r\n errors[name] && {errors[name].message}\r\n );\r\n };\r\n\r\n return (\r\n
\r\n \r\n {!loading && (\r\n {\r\n reset();\r\n props.toggleMainDialog(false, \"close\");\r\n }}\r\n draggable={false}\r\n closable={false}\r\n blockScroll\r\n >\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"CompanyCode\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"NameTh\")}\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"NameEn\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"Tel\")}\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n >\r\n {\" \"}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n (\r\n
\r\n \r\n {\r\n setUploadFile(undefined);\r\n }}\r\n style={{\r\n height: \"38px\",\r\n borderRadius: \"0 6px 6px 0\",\r\n }}\r\n />\r\n
\r\n )}\r\n >\r\n {uploadFile !== undefined && uploadFile !== \"\" ? (\r\n
\r\n \r\n
\r\n ) : (\r\n
\r\n {formData?.UrlLogo !== \"\" && (\r\n \r\n )}\r\n
\r\n )}\r\n
\r\n {\" \"}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n (\r\n field.onChange(e.target.value)}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n />\r\n )}\r\n />\r\n \r\n \r\n
\r\n
\r\n {\r\n reset();\r\n props.toggleMainDialog(false, \"close\");\r\n }}\r\n className=\"button-cancle\"\r\n >\r\n Close\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n )}\r\n
\r\n );\r\n};\r\n","import { Button } from \"primereact/button\";\r\nimport \"./DepartmentDialog.css\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { InputSwitch } from \"primereact/inputswitch\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { useForm, Controller } from \"react-hook-form\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport { confirmDialog } from \"primereact/confirmdialog\";\r\nimport \"../Dialog.css\";\r\nimport { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { GetAllEmployee } from \"../../../Services/EmployeeService\";\r\nimport { GetAllPosition } from \"../../../Services/PositionService\";\r\nimport {\r\n GetDepartment,\r\n UpdateDepartment,\r\n} from \"../../../Services/DepartmentService\";\r\nimport { FiSave } from \"react-icons/fi\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport moment from \"moment\";\r\nimport { isEmptyObject } from \"jquery\";\r\nimport { GetAllDynamic } from \"../../../Services/DynamicService\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\n\r\ninterface Props {\r\n dialogHeader: string;\r\n formData: any;\r\n tableData?: any;\r\n setTableData?: (items: any) => void;\r\n tableComfirmDialog?: boolean;\r\n setTableComfirmDialog?: (bool: boolean) => void;\r\n mainDialogVisible?: boolean;\r\n toggleMainDialog: (state: boolean, action: string) => void;\r\n setMainLoading?: (bool: boolean) => void;\r\n}\r\n\r\nexport const DepartmentDialog = (props: Props) => {\r\n const {\r\n control,\r\n formState: { errors },\r\n setValue,\r\n handleSubmit,\r\n reset,\r\n } = useForm({\r\n mode: \"all\",\r\n reValidateMode: \"onChange\",\r\n shouldUnregister: false,\r\n });\r\n const { toggleAlert } = useAlert();\r\n const [messageConfirmDialog, setMessageConfirmDialog] = useState(\"\");\r\n const [loading, setLoading] = useState(true);\r\n const userData = JSON.parse(window.localStorage.getItem(\"userData\"));\r\n const [subDialogVisible, setSubDialogVisible] = useState(false);\r\n const [subDialogVisible2, setSubDialogVisible2] = useState(false);\r\n const [action, setAction] = useState(\"\");\r\n const [masterCompany, setMasterCompany] = useState();\r\n const [comCode, setSelectComCode] = useState();\r\n const toast = useRef(null);\r\n\r\n useEffect(() => {\r\n if (!isEmptyObject(props.formData)) {\r\n setAction(\"edit\");\r\n\r\n setLoading(false);\r\n } else {\r\n setAction(\"add\");\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n setMessageConfirmDialog(\"Do you want to \" + action + \" this record?\");\r\n }, [action]);\r\n\r\n useEffect(() => {\r\n if (props.mainDialogVisible) {\r\n fecthCompany();\r\n setLoading(false);\r\n }\r\n }, [props.mainDialogVisible]);\r\n\r\n const fecthCompany = async () => {\r\n if (!masterCompany) {\r\n const company = await GetAllDynamic(\"MasterCompany/GetAll\", undefined);\r\n if (company) {\r\n setSelectComCode(\r\n company?.find((e: any) => {\r\n if (e.CompanyCode === props.formData.CompanyCode) {\r\n return e;\r\n }\r\n })\r\n );\r\n control._formValues[\"CompanyCode\"] = company.find(\r\n (e: any) => e.CompanyCode === props.formData.CompanyCode\r\n );\r\n setValue(\"CompanyCode\", control._formValues[\"CompanyCode\"]);\r\n setMasterCompany([...company]);\r\n }\r\n }\r\n };\r\n\r\n const updateChanges = (data: any) => {\r\n if (!subDialogVisible && !subDialogVisible2 && props.mainDialogVisible) {\r\n confirmDialog({\r\n message: messageConfirmDialog,\r\n header:\r\n action === \"add\" ? \"Add\" + \" Confirmation\" : \"Edit\" + \" Confirmation\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(true);\r\n }\r\n acceptSave(data);\r\n },\r\n });\r\n }\r\n };\r\n\r\n const getFormErrorMessage = (name: any) => {\r\n return (\r\n errors[name] && {errors[name].message}\r\n );\r\n };\r\n\r\n const acceptSave = async (data: any) => {\r\n try {\r\n let formData: any = {};\r\n\r\n if (action === \"add\") {\r\n formData.DepartmentId = 0;\r\n formData.DepartmentCode = data.DepartmentCode;\r\n formData.NameTh = data.NameTh;\r\n formData.NameEn = data.NameEn;\r\n formData.CompanyCode = data?.CompanyCode?.CompanyCode;\r\n formData.IsActive = data.IsActive;\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.employeeData.EmployeeId.toString();\r\n formData.CreatedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.CreatedBy = userData.employeeData.EmployeeId.toString();\r\n } else {\r\n formData = props.formData;\r\n formData.DepartmentCode = data.DepartmentCode;\r\n formData.NameTh = data.NameTh;\r\n formData.NameEn = data.NameEn;\r\n formData.CompanyCode = data?.CompanyCode?.CompanyCode;\r\n formData.IsActive = data.IsActive;\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.employeeData.EmployeeId.toString();\r\n }\r\n let res = await UpdateDepartment(formData);\r\n\r\n if (res.result === \"success\") {\r\n props.toggleMainDialog(false, \"save\");\r\n } else {\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n toggleAlert({\r\n description: `${res.errorMessage}`,\r\n message: `Error`,\r\n type: \"error\",\r\n });\r\n }\r\n } catch (error) {\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n toggleAlert({\r\n description: `${error}`,\r\n message: `Error`,\r\n type: \"error\",\r\n });\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n {!loading && (\r\n {\r\n reset();\r\n props.toggleMainDialog(false, \"close\");\r\n }}\r\n draggable={false}\r\n closable={false}\r\n blockScroll\r\n >\r\n
\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"DepartmentCode\")}\r\n \r\n \r\n \r\n \r\n \r\n e.CompanyCode === props.formData.CompanyCode\r\n // )}\r\n render={({ field }) => (\r\n setSelectComCode(e.value)}\r\n />\r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"NameTh\")}\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"NameEn\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n field.onChange(e.target.value)}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n />\r\n )}\r\n />\r\n \r\n \r\n\r\n
\r\n {\r\n reset();\r\n props.toggleMainDialog(false, \"close\");\r\n }}\r\n className=\"button-cancle\"\r\n >\r\n Close\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n )}\r\n
\r\n );\r\n};\r\n","import { isEmptyObject } from \"jquery\";\r\nimport moment from \"moment\";\r\nimport { confirmDialog } from \"primereact/confirmdialog\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { InputSwitch } from \"primereact/inputswitch\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useState, useEffect, useRef } from \"react\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { Controller, useForm } from \"react-hook-form\";\r\nimport { FiSave } from \"react-icons/fi\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\nimport { GetAllDynamic, updateDynamic } from \"../../../Services/DynamicService\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\n\r\ninterface Props {\r\n dialogHeader: string;\r\n formData: any;\r\n tableData?: any;\r\n setTableData?: (items: any) => void;\r\n tableComfirmDialog?: boolean;\r\n setTableComfirmDialog?: (bool: boolean) => void;\r\n mainDialogVisible?: boolean;\r\n toggleMainDialog: (state: boolean, action: string) => void;\r\n setMainLoading?: (bool: boolean) => void;\r\n}\r\n\r\nexport const DivisionDialog = (props: Props) => {\r\n const {\r\n control,\r\n formState: { errors },\r\n handleSubmit,\r\n reset,\r\n } = useForm({\r\n mode: \"all\",\r\n reValidateMode: \"onChange\",\r\n shouldUnregister: false,\r\n });\r\n const { toggleAlert } = useAlert();\r\n const [messageConfirmDialog, setMessageConfirmDialog] = useState(\"\");\r\n const [formSelectedRole, setFormSelectedRole] = useState([]);\r\n const [rolesList, setRolesList] = useState([]);\r\n const [loading, setLoading] = useState(true);\r\n const userData = JSON.parse(window.localStorage.getItem(\"userData\"));\r\n const [action, setAction] = useState(\"\");\r\n const toast = useRef(null);\r\n\r\n useEffect(() => {\r\n fecthRoles();\r\n if (!isEmptyObject(props.formData)) {\r\n setAction(\"edit\");\r\n } else {\r\n setAction(\"add\");\r\n }\r\n setLoading(false);\r\n }, []);\r\n\r\n useEffect(() => {\r\n setMessageConfirmDialog(\"Do you want to \" + action + \" this record?\");\r\n }, [action]);\r\n\r\n async function fecthRoles() {\r\n try {\r\n let roles: any[] = await GetAllDynamic(\"Roles/GetAll\", undefined);\r\n if (props.formData.RolesId !== undefined) {\r\n roles?.map((e: any) => {\r\n if (e.RolesId === props.formData.RolesId) {\r\n setFormSelectedRole(e);\r\n }\r\n });\r\n }\r\n\r\n setRolesList([...roles]);\r\n } catch (error) {}\r\n }\r\n\r\n const getFormErrorMessage = (name: any) => {\r\n return (\r\n errors[name] && {errors[name].message}\r\n );\r\n };\r\n\r\n const updateChanges = (data: any) => {\r\n confirmDialog({\r\n message: messageConfirmDialog,\r\n header:\r\n action === \"add\" ? \"Add\" + \" Confirmation\" : \"Edit\" + \" Confirmation\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(true);\r\n }\r\n acceptSave(data);\r\n },\r\n });\r\n };\r\n\r\n const acceptSave = async (data: any) => {\r\n try {\r\n let formData: any = {};\r\n if (action === \"add\") {\r\n formData.DivisionId = 0;\r\n formData.NameTh = data.NameTh;\r\n formData.NameEn = data.NameEn;\r\n formData.IsActive = data.IsActive;\r\n formData.DivisionCode = data.DivisionCode;\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.employeeData.EmployeeId.toString();\r\n formData.CreatedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.CreatedBy = userData.employeeData.EmployeeId.toString();\r\n } else {\r\n formData = props.formData;\r\n formData.NameTh = data.NameTh;\r\n formData.NameEn = data.NameEn;\r\n formData.IsActive = data.IsActive;\r\n formData.DivisionCode = data.DivisionCode;\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.employeeData.EmployeeId.toString();\r\n }\r\n let res = await updateDynamic(\"Division\", formData);\r\n\r\n if (res.result === \"success\") {\r\n props.toggleMainDialog(false, \"save\");\r\n } else {\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n toggleAlert({\r\n description: `${res.errorMessage}`,\r\n message: `Error`,\r\n type: \"error\",\r\n });\r\n // toast.current.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail: res.errorMessage,\r\n // life: 3000,\r\n // });\r\n }\r\n } catch (error) {\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n toggleAlert({\r\n description: `${error}`,\r\n message: `Error`,\r\n type: \"error\",\r\n });\r\n // toast.current.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail: error,\r\n // life: 3000,\r\n // });\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n {!loading && (\r\n {\r\n reset();\r\n props.toggleMainDialog(false, \"close\");\r\n }}\r\n draggable={false}\r\n blockScroll\r\n >\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"DivisionCode\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"NameTh\")}\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"NameEn\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n field.onChange(e.target.value)}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n />\r\n )}\r\n />\r\n {\" \"}\r\n \r\n
\r\n
\r\n {\r\n reset();\r\n props.toggleMainDialog(false, \"close\");\r\n }}\r\n className=\"button-cancle\"\r\n >\r\n Close\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n )}\r\n
\r\n );\r\n};\r\n","import { Button } from \"primereact/button\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { InputSwitch } from \"primereact/inputswitch\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { useForm, Controller } from \"react-hook-form\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport { confirmDialog } from \"primereact/confirmdialog\";\r\nimport \"../Dialog.css\";\r\nimport { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { GetAllEmployee } from \"../../../Services/EmployeeService\";\r\nimport { FiSave } from \"react-icons/fi\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { isEmptyObject } from \"jquery\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { ButtonComponents } from \"../../ButtonComponents/ButtonComponents\";\r\nimport { RadioButton } from \"primereact/radiobutton\";\r\nimport { AiOutlinePlus } from \"react-icons/ai\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { GetAllDynamic, updateDynamic } from \"../../../Services/DynamicService\";\r\nimport { InputNumber } from \"primereact/inputnumber\";\r\nimport { InputTextarea } from \"primereact/inputtextarea\";\r\nimport moment from \"moment\";\r\nimport {\r\n UpdateApprovalMatrix,\r\n UpdateApprovalMatrixItems,\r\n} from \"../../../Services/ApprovalMatrixService\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport { useUserContext } from \"../../../Context/UserContext\";\r\ninterface Props {\r\n dialogHeader: string;\r\n formData: any;\r\n tableData?: any;\r\n setTableData: (items: any) => void;\r\n tableComfirmDialog?: boolean;\r\n setTableComfirmDialog?: (bool: boolean) => void;\r\n mainDialogVisible?: boolean;\r\n toggleMainDialog: (state: boolean, action: string) => void;\r\n setMainLoading?: (bool: boolean) => void;\r\n toast: any;\r\n}\r\n\r\nexport const MasterDataDialog = (props: Props) => {\r\n const {\r\n control,\r\n formState: { errors },\r\n handleSubmit,\r\n reset,\r\n } = useForm({\r\n mode: \"all\",\r\n reValidateMode: \"onChange\",\r\n shouldUnregister: false,\r\n });\r\n const [messageConfirmDialog, setMessageConfirmDialog] = useState(\"\");\r\n const [loading, setLoading] = useState(true);\r\n const [userData, setUserData] = useUserContext();\r\n const [action, setAction] = useState(\"\");\r\n\r\n useEffect(() => {\r\n if (!isEmptyObject(props.formData)) {\r\n setAction(\"edit\");\r\n } else {\r\n setAction(\"add\");\r\n }\r\n setLoading(false);\r\n }, []);\r\n\r\n useEffect(() => {\r\n setMessageConfirmDialog(\"Do you want to \" + action + \" this record?\");\r\n }, [action]);\r\n\r\n const updateChanges = (data: any) => {\r\n if (props.mainDialogVisible) {\r\n confirmDialog({\r\n message: messageConfirmDialog,\r\n header:\r\n action === \"add\" ? \"Add\" + \" Confirmation\" : \"Edit\" + \" Confirmation\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(true);\r\n }\r\n acceptSave(data);\r\n },\r\n });\r\n }\r\n };\r\n const acceptSave = async (data: any) => {\r\n try {\r\n let formData: any = {};\r\n if (action === \"add\") {\r\n formData.MasterId = -1;\r\n formData.Value1 = data.Value1;\r\n formData.Value2 = data.Value2;\r\n formData.Value3 = data.Value3;\r\n formData.Value4 = data.Value4;\r\n formData.Value5 = data.Value5;\r\n formData.MasterType = data.MasterType;\r\n formData.IsActive = data.IsActive;\r\n formData.Seq = data.Seq;\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.EmployeeId.toString();\r\n formData.CreatedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.CreatedBy = userData.EmployeeId.toString();\r\n } else {\r\n formData = props.formData;\r\n formData.Value1 = data.Value1;\r\n formData.Value2 = data.Value2;\r\n formData.Value3 = data.Value3;\r\n formData.Value4 = data.Value4;\r\n formData.Value5 = data.Value5;\r\n formData.MasterType = data.MasterType;\r\n formData.IsActive = data.IsActive;\r\n formData.Seq = data.Seq;\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.EmployeeId.toString();\r\n }\r\n let res = await updateDynamic(\"MasterData\", formData);\r\n\r\n if (res.result === \"success\") {\r\n props.toggleMainDialog(false, \"save\");\r\n } else {\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n props.toast?.current.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: res.errorMessage,\r\n life: 3000,\r\n });\r\n }\r\n } catch (error) {\r\n props.toast?.current.show({\r\n severity: \"error\",\r\n summary: \"Error Message\",\r\n detail: error,\r\n life: 3000,\r\n });\r\n }\r\n };\r\n const getFormErrorMessage = (name: any) => {\r\n return (\r\n errors[name] && {errors[name].message}\r\n );\r\n };\r\n return (\r\n
\r\n {!loading && (\r\n {\r\n reset();\r\n props.toggleMainDialog(false, \"close\");\r\n }}\r\n draggable={false}\r\n closable={false}\r\n blockScroll\r\n >\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"MasterType\")}\r\n \r\n \r\n \r\n \r\n \r\n (\r\n field.onChange(e.target.value)}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n />\r\n )}\r\n />\r\n {\" \"}\r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n \r\n
\r\n
\r\n {\r\n reset();\r\n props.toggleMainDialog(false, \"close\");\r\n }}\r\n type=\"button\"\r\n className=\"button-cancle\"\r\n >\r\n Close\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n )}\r\n
\r\n );\r\n};\r\n","import { isEmptyObject } from \"jquery\";\r\nimport { confirmDialog } from \"primereact/confirmdialog\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { InputSwitch } from \"primereact/inputswitch\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { Controller, useForm } from \"react-hook-form\";\r\nimport { FiSave } from \"react-icons/fi\";\r\nimport { GetAllDynamic, updateDynamic } from \"../../../Services/DynamicService\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport moment from \"moment\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport { isArray } from \"util\";\r\nimport { MultiSelect } from \"primereact/multiselect\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\nimport { InputNumber } from \"primereact/inputnumber\";\r\n\r\ninterface Props {\r\n dialogHeader: string;\r\n formData: any;\r\n tableData?: any;\r\n setTableData?: (items: any) => void;\r\n tableComfirmDialog?: boolean;\r\n setTableComfirmDialog?: (bool: boolean) => void;\r\n mainDialogVisible?: boolean;\r\n toggleMainDialog: (state: boolean, action: string) => void;\r\n setMainLoading?: (bool: boolean) => void;\r\n}\r\nexport const MenuDialog = (props: Props) => {\r\n const {\r\n control,\r\n formState: { errors },\r\n handleSubmit,\r\n reset,\r\n } = useForm({\r\n mode: \"all\",\r\n reValidateMode: \"onChange\",\r\n // shouldUnregister: false,\r\n });\r\n const { toggleAlert } = useAlert();\r\n const [messageConfirmDialog, setMessageConfirmDialog] = useState(\"\");\r\n const [formSelectedRole, setFormSelectedRole] = useState([]);\r\n const [rolesList, setRolesList] = useState([]);\r\n const [loading, setLoading] = useState(true);\r\n const userData = JSON.parse(window.localStorage.getItem(\"userData\"));\r\n const [action, setAction] = useState(\"\");\r\n const toast = useRef(null);\r\n\r\n useEffect(() => {\r\n console.log(\"My\", parseInt(props.formData.OrderGroup));\r\n fecthRoles();\r\n if (!isEmptyObject(props.formData)) {\r\n setAction(\"edit\");\r\n } else {\r\n setAction(\"add\");\r\n }\r\n setLoading(false);\r\n }, []);\r\n\r\n useEffect(() => {\r\n setMessageConfirmDialog(\"Do you want to \" + action + \" this record?\");\r\n }, [action]);\r\n\r\n async function fecthRoles() {\r\n try {\r\n let roles: any[] = await GetAllDynamic(\"Roles/GetAll\", undefined);\r\n if (props.formData.RolesId) {\r\n let allRoles: string[] = props.formData.RolesId.split(\",\");\r\n const defaultVal = roles?.filter((e: any) => {\r\n if (allRoles.includes(e.RoleId.toString())) {\r\n return e;\r\n }\r\n });\r\n console.log(\"role=>defaultVal\", defaultVal);\r\n\r\n setFormSelectedRole([...defaultVal]);\r\n\r\n console.log(\"table=>props.formData.RolesId\", props.formData.RolesId);\r\n }\r\n\r\n setRolesList([...roles]);\r\n } catch (error) {}\r\n }\r\n\r\n const getFormErrorMessage = (name: any) => {\r\n return (\r\n errors[name] && {errors[name].message}\r\n );\r\n };\r\n\r\n const updateChanges = (data: any) => {\r\n console.log(data, \"data\");\r\n confirmDialog({\r\n message: messageConfirmDialog,\r\n header:\r\n action === \"add\" ? \"Add\" + \" Confirmation\" : \"Edit\" + \" Confirmation\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(true);\r\n }\r\n acceptSave(data);\r\n },\r\n });\r\n };\r\n\r\n const acceptSave = async (data: any) => {\r\n try {\r\n let formData: any = {};\r\n console.log(\"role=>\", formSelectedRole);\r\n let _rolesId: number[] = [];\r\n if (formSelectedRole) {\r\n formSelectedRole.forEach((role: any) => {\r\n _rolesId.push(role.RoleId);\r\n });\r\n }\r\n if (action === \"add\") {\r\n formData.AuMenuId = 0;\r\n formData.GroupMenu = data.GroupMenu;\r\n formData.SubMenu = data.SubMenu;\r\n formData.InternalUrl = data.InternalUrl === true ? 1 : 0;\r\n formData.IsActive = data.IsActive;\r\n formData.OrderGroup = data.OrderGroup;\r\n formData.OrderSub = data.OrderSub;\r\n formData.Url = data.Url;\r\n formData.RolesId = _rolesId.join(\",\");\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.employeeData.EmployeeId.toString();\r\n formData.CreatedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.CreatedBy = userData.employeeData.EmployeeId.toString();\r\n } else {\r\n formData = props.formData;\r\n formData.GroupMenu = data.GroupMenu;\r\n formData.SubMenu = data.SubMenu;\r\n formData.InternalUrl = data.InternalUrl === true ? 1 : 0;\r\n formData.IsActive = data.IsActive;\r\n formData.OrderGroup = data.OrderGroup;\r\n formData.OrderSub = data.OrderSub;\r\n formData.Url = data.Url;\r\n formData.RolesId = _rolesId.join(\",\");\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.employeeData.EmployeeId.toString();\r\n }\r\n\r\n let res = await updateDynamic(\"AuthorizedMenu\", formData);\r\n\r\n if (res.result === \"success\") {\r\n props.toggleMainDialog(false, \"save\");\r\n } else {\r\n toggleAlert({\r\n description: `${res.errorMessage}`,\r\n message: `Error`,\r\n type: \"error\",\r\n });\r\n // toast.current?.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail: res.errorMessage,\r\n // life: 3000,\r\n // });\r\n }\r\n } catch (error) {\r\n toggleAlert({\r\n description: `${error}`,\r\n message: `Error`,\r\n type: \"error\",\r\n });\r\n // toast.current?.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail: error,\r\n // life: 3000,\r\n // });\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n {!loading && (\r\n {\r\n reset();\r\n props.toggleMainDialog(false, \"close\");\r\n }}\r\n draggable={false}\r\n blockScroll\r\n >\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"GroupMenu\")}\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n console.log(\r\n \"defaultValue\",\r\n typeof props.formData.OrderGroup\r\n );\r\n }}\r\n >\r\n (\r\n {\r\n // console.log(e.currentTarget);\r\n // }}\r\n // type=\"number\"\r\n inputId=\"integeronly\"\r\n id={field.name}\r\n {...field}\r\n // min={0}\r\n onChange={(e) => {\r\n if (e.value === null) {\r\n field.onChange(0);\r\n } else {\r\n field.onChange(e.value);\r\n }\r\n }}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n // setValue1(e.value)} />\r\n />\r\n )}\r\n />\r\n {getFormErrorMessage(\"OrderGroup\")}\r\n \r\n \r\n \r\n \r\n \r\n (\r\n {\r\n if (e.value === null) {\r\n field.onChange(0);\r\n } else {\r\n field.onChange(e.value);\r\n }\r\n }}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n />\r\n )}\r\n />\r\n {getFormErrorMessage(\"OrderSub\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n field.onChange(e.target.value)}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n />\r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n (\r\n field.onChange(e.target.value)}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n />\r\n )}\r\n />\r\n {\" \"}\r\n \r\n\r\n \r\n {\" \"}\r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n setFormSelectedRole(e.value)}\r\n showClear={!isEmptyObject(formSelectedRole)}\r\n />\r\n )}\r\n />\r\n {/* {getFormErrorMessage(\"PositionId\")} */}\r\n \r\n \r\n
\r\n
\r\n {\r\n reset();\r\n props.toggleMainDialog(false, \"close\");\r\n }}\r\n className=\"button-cancle\"\r\n >\r\n Close\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n )}\r\n
\r\n );\r\n};\r\n","import { Dialog } from \"primereact/dialog\";\r\nimport { InputSwitch } from \"primereact/inputswitch\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { useForm, Controller } from \"react-hook-form\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport { confirmDialog } from \"primereact/confirmdialog\";\r\nimport \"../Dialog.css\";\r\n\r\nimport { FiSave } from \"react-icons/fi\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { isEmptyObject } from \"jquery\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { GetAllDynamic, updateDynamic } from \"../../../Services/DynamicService\";\r\nimport moment from \"moment\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\ninterface Props {\r\n dialogHeader: string;\r\n formData: any;\r\n tableData?: any;\r\n setTableData?: (items: any) => void;\r\n tableComfirmDialog?: boolean;\r\n setTableComfirmDialog?: (bool: boolean) => void;\r\n mainDialogVisible?: boolean;\r\n toggleMainDialog: (state: boolean, action: string) => void;\r\n setMainLoading?: (bool: boolean) => void;\r\n}\r\n\r\nexport const PositionDialog = (props: Props) => {\r\n const {\r\n control,\r\n formState: { errors },\r\n handleSubmit,\r\n reset,\r\n setValue,\r\n } = useForm({\r\n mode: \"all\",\r\n reValidateMode: \"onChange\",\r\n shouldUnregister: false,\r\n });\r\n const { toggleAlert } = useAlert();\r\n const [messageConfirmDialog, setMessageConfirmDialog] = useState(\"\");\r\n const [positionLevelList, setPositionLevelList] = useState([]);\r\n const [formSelectedPosition, setFormSelectedPosition] = useState({});\r\n const [loading, setLoading] = useState(true);\r\n const userData = JSON.parse(window.localStorage.getItem(\"userData\"));\r\n const [action, setAction] = useState(\"\");\r\n const [dataEmployeeList, setDataEmployeeList] = useState([]);\r\n const [globalFilterValue, setGlobalFilterValue] = useState(\"\");\r\n const [searchData, setSearchData] = useState([]);\r\n const [subDialogVisible, setSubDialogVisible] = useState(false);\r\n const [subDialogVisible2, setSubDialogVisible2] = useState(false);\r\n const [masterCompany, setMasterCompany] = useState();\r\n const [selectComCode, setSelectComCode] = useState();\r\n\r\n const toast = useRef();\r\n\r\n useEffect(() => {\r\n fecthPositionLevel();\r\n if (!isEmptyObject(props.formData)) {\r\n setAction(\"edit\");\r\n } else {\r\n setAction(\"add\");\r\n }\r\n setLoading(false);\r\n }, []);\r\n\r\n useEffect(() => {\r\n setMessageConfirmDialog(\"Do you want to \" + action + \" this record?\");\r\n }, [action]);\r\n\r\n const getFormErrorMessage = (name: any) => {\r\n return (\r\n errors[name] && {errors[name].message}\r\n );\r\n };\r\n\r\n useEffect(() => {\r\n if (props.mainDialogVisible) {\r\n fecthCompany();\r\n setLoading(false);\r\n }\r\n }, [props.mainDialogVisible]);\r\n\r\n async function fecthCompany() {\r\n const company = await GetAllDynamic(\r\n \"MasterCompany/GetAll?IsActive=true\",\r\n undefined\r\n );\r\n if (company) {\r\n company.map((e: any) => {\r\n if (e.CompanyCode === props.formData?.CompanyCode) {\r\n if (control._fields.CompanyCode !== undefined) {\r\n control._fields.CompanyCode._f.value = e;\r\n control._formValues.CompanyCode = e;\r\n }\r\n setSelectComCode({ ...e });\r\n }\r\n });\r\n setMasterCompany([...company]);\r\n }\r\n }\r\n\r\n async function fecthPositionLevel() {\r\n const data = await GetAllDynamic(\r\n \"PositionLevel/GetAll?IsActive=true\",\r\n undefined\r\n );\r\n if (data) {\r\n data.map((e: any) => {\r\n if (e.PositionLevelId === props.formData?.PositionLevelId) {\r\n if (control._fields.PositionLevel !== undefined) {\r\n control._fields.PositionLevel._f.value = e;\r\n control._formValues.PositionLevel = e;\r\n }\r\n setFormSelectedPosition({ ...e });\r\n }\r\n });\r\n setPositionLevelList([...data]);\r\n }\r\n }\r\n\r\n const acceptSave = async (data: any) => {\r\n try {\r\n let formData: any = {};\r\n if (action === \"add\") {\r\n formData.PositionId = 0;\r\n formData.PositionLevelId = formSelectedPosition.PositionLevelId;\r\n formData.PositionLevel = formSelectedPosition.PositionLevel;\r\n // formData.PosotionLevel = data.PositionLevel.PositionLevel;\r\n formData.PositionLevelNameEn = formSelectedPosition.NameEn;\r\n formData.PositionLevelNameTh = formSelectedPosition.NameTh;\r\n formData.CompanyCode = selectComCode.CompanyCode;\r\n formData.NameEn = data.NameEn;\r\n formData.NameTh = data.NameTh;\r\n formData.IsActive = data.IsActive;\r\n formData.AccountId = userData.employeeData.EmployeeId.toString();\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.employeeData.EmployeeId.toString();\r\n formData.CreatedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.CreatedBy = userData.employeeData.EmployeeId.toString();\r\n } else {\r\n formData = props.formData;\r\n\r\n formData.PositionLevelId = formSelectedPosition.PositionLevelId;\r\n formData.PositionLevel = formSelectedPosition.PositionLevel;\r\n // formData.PosotionLevel = data.PositionLevel.PositionLevel;\r\n formData.PositionLevelNameEn = formSelectedPosition.NameEn;\r\n formData.PositionLevelNameTh = formSelectedPosition.NameTh;\r\n formData.CompanyCode = selectComCode.CompanyCode;\r\n formData.NameEn = data.NameEn;\r\n formData.NameTh = data.NameTh;\r\n formData.IsActive = data.IsActive;\r\n formData.AccountId = userData.employeeData.EmployeeId.toString();\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.employeeData.EmployeeId.toString();\r\n }\r\n\r\n let res = await updateDynamic(\"Position\", formData);\r\n if (res.result === \"success\") {\r\n props.toggleMainDialog(false, \"save\");\r\n } else {\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n toggleAlert({\r\n description: `${res.error}`,\r\n message: `Error`,\r\n type: \"error\",\r\n });\r\n // toast.current.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail: res.error,\r\n // life: 3000,\r\n // });\r\n }\r\n } catch (error) {\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n toggleAlert({\r\n description: `${error}`,\r\n message: `Error`,\r\n type: \"error\",\r\n });\r\n // toast.current.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail: error,\r\n // life: 3000,\r\n // });\r\n }\r\n };\r\n\r\n const updateChanges = (data: any) => {\r\n if (\r\n !subDialogVisible &&\r\n !subDialogVisible2 &&\r\n props.mainDialogVisible &&\r\n !isEmptyObject(formSelectedPosition)\r\n ) {\r\n confirmDialog({\r\n message: messageConfirmDialog,\r\n header:\r\n action === \"add\" ? \"Add\" + \" Confirmation\" : \"Edit\" + \" Confirmation\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(true);\r\n }\r\n acceptSave(data);\r\n },\r\n });\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n {!loading && (\r\n {\r\n reset();\r\n props.toggleMainDialog(false, \"close\");\r\n }}\r\n draggable={false}\r\n closable={false}\r\n blockScroll\r\n >\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"NameTh\")}\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"NameEn\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n setSelectComCode(e.value)}\r\n />\r\n )}\r\n />\r\n {!selectComCode ? getFormErrorMessage(\"CompanyCode\") : null}\r\n {\" \"}\r\n \r\n \r\n \r\n \r\n (\r\n {\r\n setFormSelectedPosition(e.value);\r\n }}\r\n optionLabel={\r\n userData.employeeData.Lang === \"EN\"\r\n ? \"NameEn\"\r\n : \"NameTh\"\r\n }\r\n placeholder=\"Select a PositionLevel\"\r\n className={classNames({\r\n \"p-invalid\": fieldState.error,\r\n })}\r\n filter\r\n showClear\r\n filterBy={\r\n userData.employeeData.Lang === \"EN\"\r\n ? \"NameEn\"\r\n : \"NameTh\"\r\n }\r\n />\r\n )}\r\n />\r\n {!formSelectedPosition\r\n ? getFormErrorMessage(\"PositionLevel\")\r\n : null}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n field.onChange(e.target.value)}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n />\r\n )}\r\n />\r\n \r\n \r\n
\r\n
\r\n {\r\n reset();\r\n props.toggleMainDialog(false, \"close\");\r\n }}\r\n type=\"button\"\r\n className=\"button-cancle\"\r\n >\r\n Close\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n )}\r\n
\r\n );\r\n};\r\n","import { Dialog } from \"primereact/dialog\";\r\nimport { InputSwitch } from \"primereact/inputswitch\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { useForm, Controller } from \"react-hook-form\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport { confirmDialog } from \"primereact/confirmdialog\";\r\nimport \"../Dialog.css\";\r\nimport { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { GetAllEmployee } from \"../../../Services/EmployeeService\";\r\nimport { FiSave } from \"react-icons/fi\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { isEmptyObject } from \"jquery\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { ButtonComponents } from \"../../ButtonComponents/ButtonComponents\";\r\nimport binIcon from \"../../../assets/bin-icon.png\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport {\r\n UpdateRole,\r\n UserPermissionsByRoleID,\r\n} from \"../../../Services/RoleServices\";\r\nimport { SelectDataDialog } from \"../../Select/SelectionDataDialog/SelectDataDialog\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\ninterface Props {\r\n dialogHeader: string;\r\n formData: any;\r\n tableData?: any;\r\n setTableData?: (items: any) => void;\r\n tableComfirmDialog?: boolean;\r\n setTableComfirmDialog?: (bool: boolean) => void;\r\n mainDialogVisible?: boolean;\r\n toggleMainDialog: (state: boolean, action: string) => void;\r\n setMainLoading?: (bool: boolean) => void;\r\n}\r\n\r\nexport const RoleDialog = (props: Props) => {\r\n const {\r\n control,\r\n formState: { errors },\r\n handleSubmit,\r\n reset,\r\n } = useForm({\r\n mode: \"all\",\r\n reValidateMode: \"onChange\",\r\n shouldUnregister: false,\r\n });\r\n const { toggleAlert } = useAlert();\r\n const [messageConfirmDialog, setMessageConfirmDialog] = useState(\"\");\r\n const [itemsList, setItemsList] = useState([]);\r\n const [itemsListShow, setItemsListShow] = useState([]);\r\n const [loading, setLoading] = useState(true);\r\n const userData = JSON.parse(\r\n window.localStorage.getItem(\"userData\") || \"null\"\r\n );\r\n const [action, setAction] = useState(\"\");\r\n const [dataEmployeeList, setDataEmployeeList] = useState([]);\r\n const [globalFilterValue, setGlobalFilterValue] = useState(\"\");\r\n const [searchData, setSearchData] = useState([]);\r\n const [subDialogVisible, setSubDialogVisible] = useState(false);\r\n const [subDialogVisible2, setSubDialogVisible2] = useState(false);\r\n\r\n const toast = useRef();\r\n\r\n useEffect(() => {\r\n fetchDataEmployee();\r\n\r\n if (!isEmptyObject(props.formData)) {\r\n setAction(\"edit\");\r\n } else {\r\n setAction(\"add\");\r\n }\r\n setLoading(false);\r\n }, []);\r\n\r\n useEffect(() => {\r\n setMessageConfirmDialog(\"Do you want to \" + action + \" this record?\");\r\n }, [action]);\r\n\r\n useEffect(() => {\r\n fetchRoleItem();\r\n }, [dataEmployeeList]);\r\n\r\n async function fetchRoleItem() {\r\n let permissions = await UserPermissionsByRoleID(props.formData.RoleId);\r\n let items: any[] = [];\r\n if (permissions) {\r\n let thisPermis = permissions.filter(\r\n (permis: any) =>\r\n permis.RoleId === props.formData.RoleId && !permis.IsDelete\r\n );\r\n\r\n thisPermis.map((permis: any, idx: number) => {\r\n let object: any = {};\r\n object.RoleId = permis.RoleId;\r\n object.EmployeeId = permis.EmployeeId;\r\n object.EmployeeCode = null;\r\n object.NameThRole = null;\r\n object.NameEnRole = null;\r\n object.Email = null;\r\n object.NameThEmployee = null;\r\n object.NameEnEmployee = null;\r\n object.IsActive = true;\r\n object.IsDelete = permis.IsDelete === null ? false : permis.IsDelete;\r\n object.Seq = idx + 1;\r\n items.push(object);\r\n });\r\n\r\n items.map((item: any) => {\r\n dataEmployeeList.map((emp: any) => {\r\n if (item.EmployeeId === emp.EmployeeId) {\r\n item.EmployeeId = emp.EmployeeId;\r\n item.EmployeeCode = emp.EmployeeCode;\r\n item.NameThEmployee = emp.NameTh;\r\n item.NameEnEmployee = emp.NameEn;\r\n item.Email = emp.Email;\r\n }\r\n });\r\n item.NameThRole = props.formData.NameTh;\r\n item.NameEnRole = props.formData.NameEn;\r\n });\r\n setSearchData([\r\n ...dataEmployeeList.filter(\r\n (data: any) =>\r\n !items.find(\r\n ({ EmployeeId, IsDelete }) =>\r\n data.EmployeeId === EmployeeId && !IsDelete\r\n )\r\n ),\r\n ]);\r\n\r\n setItemsList([...items]);\r\n }\r\n }\r\n\r\n const getFormErrorMessage = (name: any) => {\r\n return (\r\n errors[name] && {errors[name].message}\r\n );\r\n };\r\n\r\n const renderHeader = () => {\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n };\r\n\r\n const onGlobalFilterChange = (e: any) => {\r\n const value = e.target.value;\r\n const dataEmp = dataEmployeeList;\r\n setGlobalFilterValue(value);\r\n const data = dataEmp.filter((data: any) => {\r\n if (userData.employeeData.Lang === \"EN\") {\r\n if (\r\n data.EmployeeCode.toLowerCase().indexOf(value.toLowerCase()) !== -1 ||\r\n data.NameEn.toLowerCase().indexOf(value.toLowerCase()) !== -1 ||\r\n data.PositionNameEn.toLowerCase().indexOf(value.toLowerCase()) !==\r\n -1 ||\r\n data.DepartmentNameEn.toLowerCase().indexOf(value.toLowerCase()) !==\r\n -1\r\n ) {\r\n return true;\r\n }\r\n } else {\r\n if (\r\n data.EmployeeCode.toLowerCase().indexOf(value.toLowerCase()) !== -1 ||\r\n data.NameTh.toLowerCase().indexOf(value.toLowerCase()) !== -1 ||\r\n data.PositionNameTh.toLowerCase().indexOf(value.toLowerCase()) !==\r\n -1 ||\r\n data.DepartmentNameTh.toLowerCase().indexOf(value.toLowerCase()) !==\r\n -1\r\n ) {\r\n return true;\r\n }\r\n }\r\n });\r\n setSearchData([...data]);\r\n };\r\n\r\n async function fetchDataEmployee() {\r\n let _dataEmployee = await GetAllEmployee();\r\n setDataEmployeeList(_dataEmployee);\r\n }\r\n\r\n const onDeleteRow = (data: any, setData: any, empId: string) => {\r\n confirmDialog({\r\n message: \"Do you to delete this row.\",\r\n header: \"Delete Confirmation\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {\r\n data.map((e: any) => {\r\n if (e[\"EmployeeId\"] === empId) {\r\n e.IsActive = false;\r\n e.IsDelete = true;\r\n }\r\n });\r\n setData([...data]);\r\n },\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n let newList = itemsList.filter((item: any) => !item.IsDelete);\r\n setItemsListShow([...newList]);\r\n }, [itemsList]);\r\n\r\n const acceptSave = async (data: any) => {\r\n try {\r\n let formData: any = {};\r\n if (action === \"add\") {\r\n formData.RoleId = -1;\r\n formData.NameTh = data.NameTh;\r\n formData.NameEn = data.NameEn;\r\n formData.IsActive = data.IsActive;\r\n formData.RoleDescription = \"\";\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.employeeData.EmployeeId.toString();\r\n formData.CreatedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.CreatedBy = userData.employeeData.EmployeeId.toString();\r\n } else {\r\n formData = props.formData;\r\n formData.RoleId = props.formData.RoleId;\r\n formData.NameTh = data.NameTh;\r\n formData.NameEn = data.NameEn;\r\n formData.IsActive = data.IsActive;\r\n formData.RoleDescription = \"\";\r\n formData.ModifiedDate = new Date().toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n formData.ModifiedBy = userData.employeeData.EmployeeId.toString();\r\n }\r\n\r\n let res = await UpdateRole(formData, itemsList);\r\n if (itemsList > 0) {\r\n if (res.result === \"success\") {\r\n props.toggleMainDialog(false, \"save\");\r\n } else {\r\n toggleAlert({\r\n description: `${res.error}`,\r\n message: `Error`,\r\n type: \"error\",\r\n });\r\n // toast.current.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail: res.error,\r\n // life: 3000,\r\n // });\r\n }\r\n } else {\r\n if (res) {\r\n props.toggleMainDialog(false, \"save\");\r\n } else {\r\n toggleAlert({\r\n description: `${res.error}`,\r\n message: `Error`,\r\n type: \"error\",\r\n });\r\n // toast.current.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail: res.error,\r\n // life: 3000,\r\n // });\r\n }\r\n }\r\n } catch (error) {\r\n console.log(\"roles=>error\", error);\r\n\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n toggleAlert({\r\n description: `${error}`,\r\n message: `Error`,\r\n type: \"error\",\r\n });\r\n // toast.current.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail: error,\r\n // life: 3000,\r\n // });\r\n props.toggleMainDialog(false, \"close\");\r\n }\r\n };\r\n\r\n const updateChanges = (data: any) => {\r\n if (!subDialogVisible && !subDialogVisible2 && props.mainDialogVisible) {\r\n confirmDialog({\r\n message: messageConfirmDialog,\r\n header:\r\n action === \"add\" ? \"Add\" + \" Confirmation\" : \"Edit\" + \" Confirmation\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(true);\r\n }\r\n acceptSave(data);\r\n },\r\n });\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n {!loading && (\r\n {\r\n reset();\r\n props.toggleMainDialog(false, \"close\");\r\n }}\r\n draggable={false}\r\n blockScroll\r\n closable={false}\r\n >\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"NameTh\")}\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n {getFormErrorMessage(\"NameEn\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n field.onChange(e.target.value)}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n />\r\n )}\r\n />\r\n {\" \"}\r\n \r\n \r\n \r\n {\r\n setSubDialogVisible(true);\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n (\r\n {\r\n let items: any[] = e.value;\r\n items.map((item: any, idx: number) => {\r\n item.Seq = idx + 1;\r\n });\r\n\r\n field.onChange([...items]);\r\n setItemsList([...items]);\r\n }}\r\n value={itemsListShow}\r\n tableStyle={{\r\n border: \"1px solid #e6e6e6\",\r\n outlineColor: \"#e6e6e6\",\r\n }}\r\n // size=\"small\"\r\n dataKey=\"id\"\r\n responsiveLayout=\"scroll\"\r\n >\r\n \r\n \r\n \r\n

Employee Code

\r\n

รหัสพนักงาน

\r\n \r\n \r\n }\r\n >
\r\n \r\n \r\n

Name Thai

\r\n

ชื่อภาษาไทย

\r\n \r\n \r\n }\r\n >\r\n \r\n \r\n

Name English

\r\n

ชื่อภาษาอังกฤษ

\r\n \r\n \r\n }\r\n >\r\n \r\n \r\n

E-mail

\r\n

อีเมล

\r\n \r\n \r\n }\r\n >\r\n \r\n }\r\n body={(rowData: any, options: any) => {\r\n return (\r\n {\r\n onDeleteRow(\r\n itemsList,\r\n setItemsList,\r\n rowData[\"EmployeeId\"]\r\n );\r\n }}\r\n >\r\n \"logo\"\r\n \r\n );\r\n }}\r\n >\r\n \r\n )}\r\n />\r\n \r\n
\r\n
\r\n
\r\n {\r\n reset();\r\n props.toggleMainDialog(false, \"close\");\r\n }}\r\n type=\"button\"\r\n className=\"button-cancle\"\r\n >\r\n Close\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n )}\r\n {\r\n let item = data;\r\n if (data !== undefined) {\r\n setSearchData([\r\n ...searchData.filter(\r\n (emp: any) => emp.EmployeeId !== item.EmployeeId\r\n ),\r\n ]);\r\n }\r\n let itemsShow: any[] = itemsList;\r\n let object: any = {};\r\n object.RoleId = action === \"add\" ? -1 : props.formData.RoleId;\r\n object.EmployeeId = item.EmployeeId;\r\n object.EmployeeCode = item.EmployeeCode;\r\n object.NameThRole = action === \"add\" ? \"\" : props.formData.NameTh;\r\n object.NameEnRole = action === \"add\" ? \"\" : props.formData.NameEn;\r\n object.Email = item.Email;\r\n object.NameThEmployee = item.NameTh;\r\n object.NameEnEmployee = item.NameEn;\r\n object.IsActive = true;\r\n object.IsDelete = false;\r\n object.Seq = itemsShow.length;\r\n itemsShow.push(object);\r\n\r\n setItemsList([...itemsShow]);\r\n setSubDialogVisible(false);\r\n }}\r\n columns={[\r\n {\r\n field: \"EmployeeCode\",\r\n headerEn: \"EmployeeCode\",\r\n headerTh: \"รหัสพนักงาน\",\r\n },\r\n {\r\n field: \"NameEn\",\r\n headerEn: \"Name\",\r\n headerTh: \"ชื่อ\",\r\n },\r\n {\r\n field: \"PositionNameEn\",\r\n headerEn: \"Position\",\r\n headerTh: \"ตำแหน่ง\",\r\n },\r\n {\r\n field: \"DepartmentNameEn\",\r\n headerEn: \"Department\",\r\n headerTh: \"หน่วยงาน\",\r\n },\r\n ]}\r\n dialogVisible={subDialogVisible}\r\n setDialogVisible={setSubDialogVisible}\r\n />\r\n
\r\n );\r\n};\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport \"./DropdownComponents.css\";\r\nimport { GetAllDynamic } from \"../../Services/DynamicService\";\r\ninterface Props {\r\n apiName?: string;\r\n valueProps?: any;\r\n optionsProps?: any;\r\n optionLabelProps?: any;\r\n placeholderProps?: any;\r\n onChangeProps?: any;\r\n styleProps?: any;\r\n keyProps?: any;\r\n disable?: any;\r\n filterProps?: boolean;\r\n validationProps?: boolean;\r\n}\r\n\r\nexport const DropdownComponents = (props: Props) => {\r\n const [selectValue, setSelectValue] = useState();\r\n const [obtions, setObtions] = useState([]);\r\n const [style, setstyle] = useState({});\r\n const userData = JSON.parse(window.localStorage.getItem(\"userData\"));\r\n useEffect(() => {\r\n if (props.apiName !== undefined) {\r\n fecthData();\r\n } else {\r\n setObtions(props.optionsProps);\r\n }\r\n }, [props.optionsProps]);\r\n\r\n useEffect(() => {\r\n console.log(\"props.optionsProps=\", props.optionsProps);\r\n }, [props.optionsProps]);\r\n\r\n useEffect(() => {\r\n if (props.styleProps !== undefined) {\r\n setstyle(props.styleProps);\r\n }\r\n }, [props.styleProps]);\r\n\r\n useEffect(() => {\r\n if (obtions !== undefined) {\r\n if (props.keyProps === undefined) {\r\n obtions.map((data: any) => {\r\n if (data[props.apiName + \"Id\"] === props.valueProps.value) {\r\n setSelectValue(data);\r\n }\r\n });\r\n }\r\n }\r\n }, [obtions]);\r\n\r\n useEffect(() => {\r\n if (props.apiName !== undefined) {\r\n fecthData();\r\n }\r\n }, [props.apiName]);\r\n\r\n useEffect(() => {\r\n setSelectValue(null);\r\n }, [props.disable]);\r\n\r\n useEffect(() => {\r\n if (props.apiName != undefined) {\r\n props.onChangeProps(props.apiName, selectValue);\r\n } else if (props.keyProps !== undefined) {\r\n props.onChangeProps(selectValue, props.keyProps);\r\n } else {\r\n props.onChangeProps(selectValue);\r\n }\r\n }, [selectValue]);\r\n\r\n async function fecthData() {\r\n let _dataDynamic = await GetAllDynamic(\r\n props.apiName + \"/GetAll\",\r\n undefined\r\n );\r\n if (_dataDynamic !== false) {\r\n setObtions(_dataDynamic);\r\n }\r\n }\r\n\r\n return (\r\n <>\r\n {\r\n setSelectValue(e.target.value);\r\n }}\r\n style={{\r\n width: style.width !== undefined ? style.width : \"100%\",\r\n borderRadius:\r\n style.borderRadius !== undefined\r\n ? style.borderRadius\r\n : \"6px 6px 6px 6px\",\r\n ...style,\r\n borderColor: props.validationProps === true ? \"red\" : \"\",\r\n }}\r\n filter={props.filterProps === undefined ? false : props.filterProps}\r\n panelClassName=\"background-p-highlight\"\r\n />\r\n \r\n );\r\n};\r\n","import { isEmptyObject } from \"jquery\";\r\nimport moment from \"moment\";\r\nimport { Button } from \"primereact/button\";\r\nimport { confirmDialog } from \"primereact/confirmdialog\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { InputNumber } from \"primereact/inputnumber\";\r\nimport { InputSwitch } from \"primereact/inputswitch\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { InputTextarea } from \"primereact/inputtextarea\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useState, useEffect, useRef } from \"react\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { Controller, useForm } from \"react-hook-form\";\r\nimport { FiSave } from \"react-icons/fi\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\nimport { GetAllDynamic, updateDynamic } from \"../../../Services/DynamicService\";\r\nimport { DropdownComponents } from \"../../DropdownComponents/DropdownComponents\";\r\nimport { InputTextComponents } from \"../../InputTextComponents/InputTextComponents\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\n\r\ninterface Props {\r\n dialogHeader: string;\r\n apiName: string;\r\n formData: any;\r\n tableData?: any;\r\n setTableData: (items: any) => void;\r\n tableComfirmDialog?: boolean;\r\n setTableComfirmDialog?: (bool: boolean) => void;\r\n mainDialogVisible?: boolean;\r\n toggleMainDialog: (state: boolean, action: string) => void;\r\n setMainLoading?: (bool: boolean) => void;\r\n toast?: any;\r\n}\r\n\r\nexport const DynamicDiaLog = (props: Props) => {\r\n const {\r\n control,\r\n formState: { errors },\r\n handleSubmit,\r\n reset,\r\n } = useForm({\r\n mode: \"all\",\r\n reValidateMode: \"onChange\",\r\n shouldUnregister: false,\r\n });\r\n const { toggleAlert } = useAlert();\r\n const [dynamicColumnsGrid, setDynamicColumnsGrid] = useState([]);\r\n const [obtionList, setObtionList] = useState({});\r\n const [uploadFile, setUploadFile] = useState();\r\n const [copyFormdata, setCopyFormdata] = useState();\r\n const userData = JSON.parse(window.localStorage.getItem(\"userData\"));\r\n const [subDialogVisible, setSubDialogVisible] = useState(false);\r\n const [action, setAction] = useState(\"\");\r\n const [messageConfirmDialog, setMessageConfirmDialog] = useState(\"\");\r\n const toast = useRef(null);\r\n useEffect(() => {\r\n if (!isEmptyObject(props.formData)) {\r\n setCopyFormdata(props.formData);\r\n setAction(\"edit\");\r\n } else {\r\n setAction(\"add\");\r\n }\r\n getColumns();\r\n }, []);\r\n\r\n useEffect(() => {\r\n setMessageConfirmDialog(\"Do you want to \" + action + \" this record?\");\r\n }, [action]);\r\n\r\n const GetColumns = () => {\r\n let columns: any[] = [];\r\n Object.keys(props.tableData[0] ? props.tableData[0] : \"\").map(\r\n (key: string, idx: number) => {\r\n if (!key.toLowerCase().includes(\"id\")) {\r\n if (key !== \"SignPicPath\" && key !== \"UrlLogo\") {\r\n columns.push({\r\n key: key,\r\n dataType: typeof props.tableData[0][key],\r\n });\r\n }\r\n }\r\n }\r\n );\r\n return columns;\r\n };\r\n\r\n function getColumns() {\r\n let data: any[] = GetColumns();\r\n let grids: any[] = [];\r\n let dropdownList: string[] = [];\r\n let apiName = props.apiName;\r\n if (apiName.endsWith(\"s\")) {\r\n apiName = apiName.slice(0, -1);\r\n }\r\n\r\n data.forEach((col: any, index: number) => {\r\n if (\r\n !col.key.toLowerCase().includes(\"account\") &&\r\n !col.key.toLowerCase().includes(\"connectionstring\") &&\r\n !col.key.toLowerCase().includes(\"userprincipalname\") &&\r\n !col.key.toLowerCase().includes(\"itemmenu\") &&\r\n !col.key.toLowerCase().includes(\"orderitem\") &&\r\n !col.key.toLowerCase().includes(\"aumenuid\") &&\r\n !col.key.toLowerCase().includes(\"companycodewithname\")\r\n ) {\r\n if (col.key.includes(\"Id\")) {\r\n if (apiName !== \"MasterData\") {\r\n if (\r\n col.key !=\r\n apiName.replace(\" \", \"\").replace(\"Master\", \"\") + \"Id\"\r\n ) {\r\n if (\r\n col.key.toLowerCase().includes(\"reportto\") &&\r\n col.key.toLowerCase().includes(\"manager\")\r\n ) {\r\n const field = col.key.replace(\"Id\", \"\");\r\n\r\n dropdownList.push(field);\r\n grids.push({\r\n field: field,\r\n header: col.key,\r\n type: \"popup\",\r\n index: index,\r\n });\r\n } else {\r\n const field = col.key.replace(\"Id\", \"\");\r\n\r\n dropdownList.push(field);\r\n grids.push({\r\n field: field,\r\n header: col.key,\r\n type: \"object\",\r\n index: index,\r\n });\r\n }\r\n }\r\n }\r\n } else if (\r\n col.key.toLowerCase() !== \"createdby\" &&\r\n col.key.toLowerCase() !== \"modifiedby\" &&\r\n col.key.toLowerCase() !== \"createddate\" &&\r\n col.key.toLowerCase() !== \"modifieddate\" &&\r\n !col.key.toLowerCase().includes(\"createdby\") &&\r\n !col.key.toLowerCase().includes(\"modifiedby\")\r\n ) {\r\n if (\r\n !dropdownList.includes(col.key.replace(\"Id\", \"\")) &&\r\n !dropdownList.includes(col.key.replace(\"NameTh\", \"\")) &&\r\n !dropdownList.includes(col.key.replace(\"NameEn\", \"\"))\r\n ) {\r\n if (col.key.includes(\"Pic\")) {\r\n grids.push({\r\n field: col.key,\r\n header: col.key,\r\n type: \"image\",\r\n index: 999,\r\n });\r\n } else {\r\n grids.push({\r\n field: col.key,\r\n header: col.key,\r\n type: col.dataType,\r\n index: index,\r\n });\r\n }\r\n }\r\n }\r\n }\r\n });\r\n grids.sort((a, b) => a.index - b.index);\r\n\r\n setDynamicColumnsGrid(_dynamicColumnsGrid(grids));\r\n }\r\n\r\n const getFormErrorMessage = (name: any) => {\r\n return (\r\n errors[name] && {errors[name].message}\r\n );\r\n };\r\n\r\n function translateFunc(text: string) {\r\n let textTH = \"\";\r\n\r\n textTH = text.replace(\"PositionLevelId\", \"รหัสระดับตำแหน่ง\");\r\n textTH = textTH.replace(\"PositionLevel\", \"ระดับตำแหน่ง\");\r\n textTH = textTH.replace(\"Name\", \"ชื่อ\");\r\n textTH = textTH.replace(\"Th\", \"ภาษาไทย\");\r\n textTH = textTH.replace(\"En\", \"ภาษาอังกฤษ\");\r\n textTH = textTH.replace(\"RoleDescription\", \"คำอธิบายหน้าที่\");\r\n textTH = textTH.replace(\"value\", \"ค่า\");\r\n textTH = textTH.replace(\"Tel\", \"โทรศัพท์\");\r\n textTH = textTH.replace(\"Web\", \"เว็ปไซต์\");\r\n textTH = textTH.replace(\"Address\", \"ที่อยู่\");\r\n textTH = textTH.replace(\"Company\", \"บริษัท\");\r\n textTH = textTH.replace(\"Code\", \"รหัส\");\r\n textTH = textTH.replace(\"IsActive\", \"สถานะ\");\r\n textTH = textTH.replace(\"Fax\", \"แฟกซ์\");\r\n textTH = textTH.replace(\"UrlLogo\", \"Url ชองโลโก้\");\r\n\r\n return textTH;\r\n }\r\n\r\n function manageObjectDatas(fieldName: string, selectedData: any) {\r\n let obtions = obtionList;\r\n obtions[fieldName] = selectedData;\r\n setObtionList({ ...obtions });\r\n }\r\n\r\n function _dynamicColumnsGrid(grids: any) {\r\n let _dataArray: any = [];\r\n let _dataArrayCheck: any = [];\r\n let _dataArraygrid: any = [];\r\n grids.map((col: any, inx: any) => {\r\n _dataArrayCheck.push(col);\r\n if (inx % 2 !== 0) {\r\n _dataArray.push(_dataArrayCheck);\r\n _dataArrayCheck = [];\r\n }\r\n });\r\n\r\n _dataArray.map((col: any, rowIdx: number) => {\r\n let _grid = (\r\n \r\n {col.map((data: any, colIdx: number) => {\r\n let textTH = translateFunc(data.header);\r\n if (data.type === \"string\") {\r\n if (data.header.includes(\"Address\")) {\r\n return (\r\n <>\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n \r\n \r\n );\r\n } else if (data.header === \"NameTh\" || data.header === \"NameEn\") {\r\n let str = \"\";\r\n if (data.header === \"NameTh\") {\r\n str = \"Name TH\";\r\n } else {\r\n str = \"Name EN\";\r\n }\r\n\r\n return (\r\n <>\r\n {\" \"}\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n {getFormErrorMessage(data.header)}\r\n \r\n \r\n );\r\n } else {\r\n return (\r\n <>\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n \r\n \r\n );\r\n }\r\n } else if (data.type === \"boolean\") {\r\n return (\r\n <>\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n (\r\n field.onChange(e.target.value)}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n />\r\n )}\r\n />\r\n
\r\n \r\n \r\n );\r\n } else if (data.type === \"object\") {\r\n return (\r\n <>\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n \r\n \r\n );\r\n } else if (data.type === \"number\") {\r\n return (\r\n <>\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n (\r\n field.onChange(e.value)}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n />\r\n )}\r\n />\r\n
\r\n \r\n \r\n );\r\n } else if (data.type === \"popup\") {\r\n <>\r\n
\r\n

{data.header}

\r\n

รายงานไปที่

\r\n
\r\n
\r\n (\r\n
\r\n \r\n {\r\n setSubDialogVisible(true);\r\n }}\r\n />\r\n
\r\n )}\r\n />\r\n {getFormErrorMessage(\"ReportToEmpCode\")}\r\n
\r\n ;\r\n }\r\n })}\r\n
\r\n );\r\n _dataArraygrid.push(_grid);\r\n });\r\n return [..._dataArraygrid];\r\n }\r\n\r\n const updateChanges = (data: any) => {\r\n try {\r\n confirmDialog({\r\n message: messageConfirmDialog,\r\n header:\r\n action === \"add\" ? \"Add\" + \" Confirmation\" : \"Edit\" + \" Confirmation\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(true);\r\n }\r\n acceptSave(data);\r\n },\r\n });\r\n } catch (error) {\r\n console.log(\"error\", error);\r\n }\r\n };\r\n\r\n const acceptSave = async (data: any) => {\r\n try {\r\n let formData: any = {};\r\n\r\n if (action === \"edit\") {\r\n formData = copyFormdata;\r\n formData[\"CreatedBy\"] = userData.employeeData.EmployeeId.toString();\r\n formData[\"CreatedDate\"] = moment(new Date()).format(\"DD MMM YYYY\");\r\n }\r\n Object.keys(data).map((key) => {\r\n formData[key] = data[key] === undefined ? \"\" : data[key];\r\n });\r\n if (!isEmptyObject(obtionList)) {\r\n Object.keys(formData).map((key) => {\r\n if (key !== props.apiName + \"Id\") {\r\n Object.keys(obtionList).map((objectKey) => {\r\n if (key.includes(objectKey)) {\r\n Object.keys(obtionList[objectKey]).map((field) => {\r\n if (field.includes(\"Id\")) {\r\n formData[field] = obtionList[objectKey][field];\r\n } else {\r\n if (field === key) {\r\n formData[key] = obtionList[objectKey][key];\r\n } else {\r\n if (\r\n obtionList[objectKey][key.replace(objectKey, \"\")] !==\r\n undefined\r\n ) {\r\n formData[key] =\r\n obtionList[objectKey][key.replace(objectKey, \"\")];\r\n }\r\n }\r\n }\r\n });\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n formData[\"ModifiedBy\"] = userData.employeeData.EmployeeId.toString();\r\n formData[\"ModifiedDate\"] = moment(new Date()).format(\"DD MMM YYYY\");\r\n console.log(formData);\r\n\r\n let res: any = await updateDynamic(\r\n props.apiName.replace(\" \", \"\"),\r\n formData\r\n );\r\n\r\n if (res.result === \"success\") {\r\n if (props.setTableData !== undefined) {\r\n let newData: any[] = await GetAllDynamic(\r\n props.apiName.replace(\" \", \"\") + \"/GetAll\",\r\n undefined\r\n );\r\n if (newData.length > 0) {\r\n props.setTableData(newData);\r\n }\r\n }\r\n props.setMainDialogVisible(false);\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n } else {\r\n toggleAlert({\r\n description: `${res.errorMessage}`,\r\n message: `Error`,\r\n type: \"error\",\r\n });\r\n // props.toast.current.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail: res.errorMessage,\r\n // life: 3000,\r\n // });\r\n }\r\n } catch (error) {\r\n console.log(\"error\", error);\r\n if (props.setMainLoading !== undefined) {\r\n props.setMainLoading(false);\r\n }\r\n }\r\n };\r\n return (\r\n
\r\n {\r\n reset();\r\n props.setMainDialogVisible(false);\r\n }}\r\n breakpoints={{}}\r\n draggable={false}\r\n closable={false}\r\n blockScroll\r\n >\r\n
\r\n
\r\n {dynamicColumnsGrid}\r\n
\r\n
\r\n {\r\n reset();\r\n props.setMainDialogVisible(false);\r\n }}\r\n type=\"button\"\r\n className=\"button-cancle\"\r\n >\r\n Close\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n );\r\n};\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { ApprovalMatrixDialog } from \"../../SettingDialogComponents/ApprovalMatrixDIalog/ApprovalMatrixDialog\";\r\nimport { CompanyDialog } from \"../../SettingDialogComponents/CompanyDialog/CompanyDialog\";\r\nimport { DepartmentDialog } from \"../../SettingDialogComponents/Department/DepartmentDialog\";\r\nimport { DivisionDialog } from \"../../SettingDialogComponents/DivisionDialog/DivisionDialog\";\r\nimport { EmployeeDialog } from \"../../SettingDialogComponents/EmployeeDialog/EmplyeeDialog\";\r\nimport { MasterDataDialog } from \"../../SettingDialogComponents/MasterDataDialog/MasterDataDialog\";\r\nimport { MenuDialog } from \"../../SettingDialogComponents/MenuDialog/MenuDialog\";\r\nimport { PositionDialog } from \"../../SettingDialogComponents/PositionDialog/PositionDialog\";\r\nimport { RoleDialog } from \"../../SettingDialogComponents/RoleDialog/RoleDialog\";\r\nimport { DynamicDiaLog } from \"./DynamicDialog\";\r\ninterface Props {\r\n dialogName: string;\r\n titleHeaderProp?: string;\r\n visibleDialogProp?: boolean;\r\n setVisibleDialogProp?: any;\r\n visibleConfirmProp?: boolean;\r\n setVisibleConfirmProp?: any;\r\n checkActionProp?: string;\r\n formDataProp?: any;\r\n dataListProp?: any;\r\n setDataListProp?: any;\r\n matrixItems: any;\r\n tableColumn: any;\r\n setMatrixItems: (items: any) => void;\r\n toastShowSuccessProp: () => void;\r\n toastShowErrorProp: () => void;\r\n messageButtonDialogProp?: string;\r\n setOnLoading?: (bool: boolean) => void;\r\n setCanTableAction: (bool: boolean) => void;\r\n toast?: any;\r\n}\r\n\r\nexport const DialogList = (props: Props) => {\r\n const [pop_up, setPop_up] = useState();\r\n const dialogs = [\r\n {\r\n name: \"Employee\",\r\n item: (\r\n \r\n ),\r\n },\r\n {\r\n name: \"Department\",\r\n item: (\r\n \r\n ),\r\n },\r\n {\r\n name: \"NavbarMenu\",\r\n item: (\r\n \r\n ),\r\n },\r\n {\r\n name: \"Division\",\r\n item: (\r\n \r\n ),\r\n },\r\n {\r\n name: \"Approval Matrix\",\r\n item: (\r\n \r\n ),\r\n },\r\n {\r\n name: \"Master Data\",\r\n item: (\r\n \r\n ),\r\n },\r\n {\r\n name: \"Master Company\",\r\n item: (\r\n \r\n ),\r\n },\r\n // RoleDialog\r\n {\r\n name: \"Roles\",\r\n item: (\r\n \r\n ),\r\n },\r\n {\r\n name: \"Position\",\r\n item: (\r\n \r\n ),\r\n },\r\n ];\r\n\r\n useEffect(() => {\r\n let dd = dialogs.filter((data, idx) => {\r\n if (data.name.includes(props.dialogName)) {\r\n return data;\r\n }\r\n });\r\n if (dd.length > 0) {\r\n setPop_up(dd[0]);\r\n }\r\n }, []);\r\n\r\n return (\r\n
\r\n {pop_up !== undefined ? (\r\n
{pop_up.item}
\r\n ) : (\r\n \r\n )}\r\n
\r\n );\r\n};\r\n","import { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { MultiSelect } from \"primereact/multiselect\";\r\nimport { SplitButton } from \"primereact/splitbutton\";\r\nimport moment from \"moment\";\r\nimport \"../Table.css\";\r\nimport \"primereact/resources/themes/saga-blue/theme.css\";\r\nimport \"primereact/resources/primereact.min.css\";\r\nimport \"primeicons/primeicons.css\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { Calendar } from \"primereact/calendar\";\r\nimport { DialogList } from \"./DialogList\";\r\nimport { Button } from \"primereact/button\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { GetAllDynamic, updateDynamic } from \"../../../Services/DynamicService\";\r\nimport { FilterMatchMode } from \"primereact/api\";\r\nimport { InputNumber } from \"primereact/inputnumber\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { GetAllApprovalMatrixItem } from \"../../../Services/ApprovalMatrixService\";\r\nimport {\r\n AutoComplete,\r\n AutoCompleteCompleteMethodParams,\r\n} from \"primereact/autocomplete\";\r\nimport {\r\n GetTemplateTemplateList,\r\n GetTemplateTemplateListVersion,\r\n} from \"../../../Services/TemplateService\";\r\nimport { useUserContext } from \"../../../Context/UserContext\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\ninterface Props {\r\n tableName: string;\r\n apiName?: string;\r\n actionBody?: any;\r\n requestBody?: any;\r\n canExport?: boolean;\r\n canAction?: boolean;\r\n canReorderColumn?: boolean;\r\n rowClickFunc?: any;\r\n rowHover?: boolean;\r\n rowPointer?: boolean;\r\n onLoading?: boolean;\r\n setOnLoading?: (bool: boolean) => void;\r\n setItemsCount?: (num: number) => void;\r\n data?: any;\r\n visibleDialogAddProps?: any;\r\n isEditProps?: any;\r\n isDeleteProps?: any;\r\n displayFormDialog?: any;\r\n setDisplayFormDialog?: (bool: boolean) => void;\r\n}\r\n\r\nexport const DynamicTable = (props: Props) => {\r\n let today = new Date();\r\n let month = today.getMonth();\r\n let year = today.getFullYear();\r\n let prevMonth = month === 0 ? 11 : month - 1;\r\n let prevYear = prevMonth === 11 ? year - 1 : year;\r\n let nextMonth = month === 11 ? 0 : month + 1;\r\n let nextYear = nextMonth === 0 ? year + 1 : year;\r\n let minDate = new Date();\r\n const toast = useRef(null);\r\n minDate.setMonth(prevMonth);\r\n minDate.setFullYear(prevYear);\r\n let maxDate = new Date();\r\n maxDate.setMonth(nextMonth);\r\n maxDate.setFullYear(nextYear);\r\n const history = useHistory();\r\n const { toggleAlert } = useAlert();\r\n const [dataDynamicTable, setDataDynamicTable] = useState([]);\r\n const [showdataDynamicTable, setShowDataDynamicTable] = useState([]);\r\n const [exportData, setExportData] = useState([]);\r\n const [toggleSelect, setToggleSelect] = useState(false);\r\n const [clearFilter, setClearFilter] = useState(false);\r\n const [filters2, setFilters2] = useState();\r\n const [showClearDate, setshowClearDatel] = useState(false);\r\n const [titleHead, setTitleHead] = useState(\"\");\r\n const [dataEdit, setDataEdit] = useState({});\r\n const [checkAction, setCheckAction] = useState(\"\");\r\n const [messageButtonDialog, setMessageButtonDialog] = useState(\"\");\r\n const [visibleConfirm, setVisibleConfirm] = useState(false);\r\n const [canReoderColumn, setCanReoderColumn] = useState(false);\r\n const [reportFileName, setReportFileName] = useState();\r\n const [colletionField, setColletionField] = useState();\r\n const [canTableAction, setCanTableAction] = useState(props.canAction);\r\n const [matrixItems, setMatrixItems] = useState([]);\r\n const [columns, setColumns] = useState([]);\r\n const [selectData, setSelectData] = useState([]);\r\n const [filteredData, setFilteredData] = useState();\r\n const userData2 = JSON.parse(window.localStorage.getItem(\"userData\"));\r\n const [userData] = useUserContext();\r\n\r\n const dt = useRef(null);\r\n\r\n const [selectedColumns, setSelectedColumns] = useState([]);\r\n useEffect(() => {\r\n toggleLoading(true);\r\n }, []);\r\n useEffect(() => {\r\n toggleLoading(true);\r\n fetchData();\r\n }, [props.apiName, props.data]);\r\n\r\n useEffect(() => {\r\n if (props.visibleDialogAddProps) {\r\n if (\r\n props.visibleDialogAddProps === false &&\r\n props.apiName === \"DynamicReport/GetAll\" &&\r\n props.isEditProps !== true\r\n ) {\r\n toggleLoading(true);\r\n\r\n fetchData();\r\n }\r\n }\r\n }, [props.visibleDialogAddProps]);\r\n\r\n useEffect(() => {\r\n if (props.isDeleteProps !== undefined) {\r\n if (props.isDeleteProps) {\r\n toggleLoading(true);\r\n\r\n fetchData();\r\n }\r\n }\r\n }, [props.isDeleteProps]);\r\n\r\n useEffect(() => {\r\n if (!props?.displayFormDialog) {\r\n setDataEdit({});\r\n }\r\n }, [props?.displayFormDialog]);\r\n\r\n useEffect(() => {\r\n if (dataDynamicTable) {\r\n try {\r\n setToggleSelect(true);\r\n setDefSelected();\r\n getColumns();\r\n if (dataDynamicTable.length > 0) {\r\n if (dataDynamicTable[0] !== \"\") {\r\n dataDynamicTable.map((e: any, idx: number) => {\r\n e.rowIdx = idx;\r\n });\r\n setShowDataDynamicTable([...dataDynamicTable]);\r\n } else {\r\n setShowDataDynamicTable([]);\r\n }\r\n }\r\n } catch (error) {\r\n console.log(\"table=>error\", error);\r\n }\r\n }\r\n }, [dataDynamicTable]);\r\n\r\n useEffect(() => {\r\n if (showdataDynamicTable) {\r\n setTimeout(() => {\r\n toggleLoading(false);\r\n }, 3000);\r\n }\r\n }, [showdataDynamicTable]);\r\n\r\n function toggleLoading(isload: boolean) {\r\n if (props.setOnLoading !== undefined) {\r\n props.setOnLoading(isload);\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n setToggleSelect(true);\r\n setDefSelected();\r\n getColumns();\r\n }, []);\r\n\r\n useEffect(() => {\r\n var items_label = document.getElementsByClassName(\r\n \"p-multiselect-items-label\"\r\n );\r\n\r\n if (items_label.length > 0) {\r\n items_label[0].innerHTML = items_label[0].innerHTML.replace(\r\n \"items\",\r\n \"columns\"\r\n );\r\n }\r\n }, [selectedColumns]);\r\n\r\n // useEffect(() => {\r\n // try {\r\n // setShowDataDynamicTable([...dataDynamicTable]);\r\n // } catch (error) {}\r\n // }, [exportData, dataDynamicTable]);\r\n\r\n useEffect(() => {\r\n try {\r\n setClearFilter(false);\r\n if (props.setItemsCount !== undefined) {\r\n props.setItemsCount(showdataDynamicTable.length);\r\n }\r\n } catch (error) {}\r\n }, [showdataDynamicTable]);\r\n\r\n function getColumns() {\r\n if (dataDynamicTable !== undefined) {\r\n let arrayDataColumn: any[] = [];\r\n if (colletionField !== undefined) {\r\n colletionField.map((collection: any, idx: number) => {\r\n if (collection.isChecked > 0) {\r\n arrayDataColumn.push({\r\n field: collection.key,\r\n header: collection.dispalyLebelAndAlter,\r\n alter: collection.alter,\r\n fieldTypeFilterDynamic: collection.FieldTypeFilterDynamic,\r\n seq: idx,\r\n });\r\n }\r\n });\r\n } else {\r\n Object.keys(\r\n dataDynamicTable[0] != undefined || dataDynamicTable[0] != null\r\n ? dataDynamicTable[0]\r\n : (dataDynamicTable[0] = \"\")\r\n ).map((key: any, idx: number) => {\r\n if (\r\n props.tableName === \"Delegate List\" ||\r\n props.tableName === \"Template List\"\r\n ) {\r\n if (key !== \"ModifiedDate\" && key !== \"IsActive\") {\r\n arrayDataColumn.push({\r\n field: key,\r\n header: key.replace(\"PosotionLevel\", \"PositionLevel\"),\r\n dataType: typeof dataDynamicTable[0][key],\r\n seq: idx,\r\n });\r\n }\r\n } else {\r\n if (key !== \"Memo_MAdvancveForm\") {\r\n arrayDataColumn.push({\r\n field: key,\r\n header: key.replace(\"PosotionLevel\", \"PositionLevel\"),\r\n dataType: typeof dataDynamicTable[0][key],\r\n seq: idx,\r\n });\r\n }\r\n }\r\n });\r\n }\r\n setColumns(arrayDataColumn);\r\n setSelectedColumns(arrayDataColumn);\r\n }\r\n }\r\n\r\n function setDefSelected() {\r\n let options: any = [];\r\n columns.map((e: any) => {\r\n if (e.field !== \"Memo_MAdvancveForm\" && !e.field.includes(\"Id\")) {\r\n options.push(e);\r\n }\r\n });\r\n\r\n setSelectedColumns(options);\r\n }\r\n\r\n const fetchData = async () => {\r\n try {\r\n toggleLoading(true);\r\n\r\n let requestBody = undefined;\r\n setDataDynamicTable([]);\r\n setFilters2(null);\r\n\r\n if (props.requestBody != undefined) {\r\n requestBody = props.requestBody;\r\n }\r\n if (props.canReorderColumn != undefined) {\r\n setCanReoderColumn(props.canReorderColumn);\r\n }\r\n\r\n let _dataDynamic;\r\n if (props.data !== undefined) {\r\n _dataDynamic = props.data;\r\n } else if (props.apiName !== undefined) {\r\n if (props.apiName === \"TemplateList/GetAll\") {\r\n requestBody = {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({\r\n CreatedBy: userData.EmployeeId.toString(),\r\n DepartmentId: userData.DepartmentId,\r\n Username: userData.Username,\r\n }),\r\n };\r\n }\r\n _dataDynamic = await GetAllDynamic(props.apiName, requestBody);\r\n\r\n if (props.apiName === \"ApprovalMatrix/GetAll\") {\r\n let matrixItem = await GetAllApprovalMatrixItem();\r\n if (matrixItem) {\r\n setMatrixItems([\r\n ...matrixItem.filter((e: any) => e.IsActive === true),\r\n ]);\r\n }\r\n }\r\n if (props.apiName === \"TemplateList/GetAll\") {\r\n _dataDynamic = _dataDynamic.filter((e: any) => e.IsActive === true);\r\n }\r\n // if (props.apiName === \"TemplateList/GetAll\") {\r\n // const dataJson = {\r\n // CreatedBy: userData.employeeData.EmployeeId.toString(),\r\n // DepartmentId: userData.employeeData.DepartmentId,\r\n // };\r\n // console.log(\"table=>props.apiName\", props.apiName);\r\n // _dataDynamic = await GetTemplateTemplateListVersion(dataJson);\r\n // } else {\r\n // _dataDynamic = await GetAllDynamic(props.apiName, requestBody);\r\n // if (props.apiName === \"ApprovalMatrix/GetAll\") {\r\n // let matrixItem = await GetAllApprovalMatrixItem();\r\n // if (matrixItem) {\r\n // setMatrixItems([\r\n // ...matrixItem.filter((e) => e.IsActive === true),\r\n // ]);\r\n // }\r\n // }\r\n // }\r\n }\r\n if (_dataDynamic !== undefined && _dataDynamic) {\r\n let myData: any = [];\r\n let newData: any = [];\r\n\r\n if (_dataDynamic.FieldCollection !== undefined) {\r\n setColletionField(JSON.parse(_dataDynamic.FieldCollection));\r\n }\r\n if (_dataDynamic.dt_Report === undefined) {\r\n myData = _dataDynamic[0];\r\n newData = _dataDynamic;\r\n } else {\r\n myData = _dataDynamic.dt_Report[0];\r\n newData = _dataDynamic.dt_Report;\r\n }\r\n\r\n let filters2: any = {};\r\n if (myData != undefined) {\r\n for (const [key, value] of Object.entries(myData)) {\r\n try {\r\n if (typeof value === \"number\") {\r\n filters2[key] = {\r\n value: null,\r\n matchMode: FilterMatchMode.EQUALS,\r\n };\r\n } else if (key.toLowerCase().includes(\"date\")) {\r\n if (key === \"DateFrom\") {\r\n filters2[key] = {\r\n value: null,\r\n matchMode: FilterMatchMode.DATE_AFTER,\r\n };\r\n } else if (key === \"DateTo\") {\r\n filters2[key] = {\r\n value: null,\r\n matchMode: FilterMatchMode.DATE_BEFORE,\r\n };\r\n } else {\r\n filters2[key] = {\r\n value: null,\r\n matchMode: FilterMatchMode.BETWEEN,\r\n };\r\n }\r\n } else if (key.toLowerCase().includes(\"action\")) {\r\n filters2[key] = {\r\n value: null,\r\n matchMode: FilterMatchMode.DATE_IS,\r\n };\r\n } else {\r\n filters2[key] = {\r\n value: null,\r\n matchMode: FilterMatchMode.CONTAINS,\r\n };\r\n }\r\n } catch (error) {}\r\n }\r\n }\r\n\r\n newData.map((e: any) => {\r\n Object.keys(newData[0]).map((key) => {\r\n if (\r\n key === \"ModifiedDate\" ||\r\n key.toLocaleLowerCase().includes(\"date\") ||\r\n key.includes(\"วันที่\")\r\n ) {\r\n if (e[key] !== null) {\r\n return (e[key] = new Date(e[key]));\r\n }\r\n } else if (\r\n typeof e[key] === \"number\" &&\r\n !key.toLowerCase().includes(\"id\") &&\r\n !key.toLowerCase().includes(\"id\") &&\r\n !key.toLowerCase().includes(\"modifiedby\") &&\r\n !key.toLowerCase().includes(\"createdby\")\r\n ) {\r\n e[key] = Number(e[key]);\r\n }\r\n });\r\n });\r\n\r\n if (_dataDynamic.ReportName != undefined) {\r\n setReportFileName(_dataDynamic.ReportName);\r\n }\r\n\r\n setFilters2(filters2);\r\n if (newData.length > 0) {\r\n setDataDynamicTable([...newData]);\r\n setExportData([...newData]);\r\n }\r\n }\r\n } catch (error) {\r\n console.log(\"DynamicTable=>Error\", error);\r\n toggleLoading(false);\r\n }\r\n };\r\n\r\n const formatIsActive = (value: any) => {\r\n if (value == null) {\r\n return false;\r\n }\r\n return value.toString();\r\n };\r\n\r\n const statusItemTemplate = (option: any) => {\r\n return {option};\r\n };\r\n const statusRowFilterTemplate = (option: any, label: string) => {\r\n if (clearFilter) {\r\n option.value = null;\r\n option.filterApplyCallback(null);\r\n }\r\n return (\r\n option.filterApplyCallback(e.value)}\r\n itemTemplate={statusItemTemplate}\r\n placeholder={\"Search \" + label}\r\n className=\"p-column-filter\"\r\n showClear\r\n />\r\n );\r\n };\r\n\r\n const monthNavigatorTemplate = (e: any) => {\r\n return (\r\n e.onChange(event.originalEvent, event.value)}\r\n style={{ lineHeight: 1 }}\r\n />\r\n );\r\n };\r\n\r\n const dateFilterTemplate = (option: any, label: string) => {\r\n if (clearFilter) {\r\n option.value = null;\r\n option.filterApplyCallback(null);\r\n }\r\n return (\r\n {\r\n setshowClearDatel(true);\r\n\r\n option.filterApplyCallback(e.value);\r\n }}\r\n monthNavigator\r\n yearNavigator\r\n yearRange={1980 + \":\" + 2050}\r\n monthNavigatorTemplate={monthNavigatorTemplate}\r\n yearNavigatorTemplate={yearNavigatorTemplate}\r\n selectionMode=\"range\"\r\n readOnlyInput\r\n dateFormat=\"dd M yy\"\r\n />\r\n );\r\n };\r\n\r\n const normalFilterTemplate = (option: any, label: string) => {\r\n try {\r\n if (clearFilter) {\r\n option.value = \"\";\r\n option.filterApplyCallback(null);\r\n }\r\n if (option.filterModel.matchMode) {\r\n if (option.filterModel.matchMode === \"equals\") {\r\n return (\r\n option.filterApplyCallback(e.target.value)}\r\n mode=\"decimal\"\r\n minFractionDigits={label !== \"PositionLevel\" ? 2 : 0}\r\n />\r\n );\r\n } else {\r\n return (\r\n {\r\n setTimeout(() => {\r\n let datas: any[];\r\n if (!e.query.trim().length) {\r\n datas = [...dataDynamicTable];\r\n } else {\r\n datas = dataDynamicTable.filter((c: any) => {\r\n return c[option.field]\r\n ?.toLowerCase()\r\n .startsWith(e.query.toLowerCase());\r\n });\r\n }\r\n datas = getUnique(datas, option.field);\r\n setFilteredData([...datas]);\r\n }, 250);\r\n }}\r\n onSelect={(e) => {\r\n option.filterApplyCallback(e.value[option.field]);\r\n }}\r\n field={option.field}\r\n onChange={(e) => {\r\n option.filterApplyCallback(e.value);\r\n }}\r\n />\r\n );\r\n }\r\n }\r\n } catch (error) {}\r\n };\r\n\r\n function getUnique(array: any[], key) {\r\n if (typeof key !== \"function\") {\r\n const property = key;\r\n key = function (item) {\r\n return item[property];\r\n };\r\n }\r\n return Array.from(\r\n array\r\n .reduce(function (map, item) {\r\n const k = key(item);\r\n if (!map.has(k)) map.set(k, item);\r\n return map;\r\n }, new Map())\r\n .values()\r\n );\r\n }\r\n\r\n const onColReorder = (colOrder: any) => {\r\n colOrder.columns.map((col: any, idx: number) => {\r\n selectedColumns.map((selCol: any) => {\r\n if (selCol.field === col.props.field) {\r\n selCol.seq = idx;\r\n }\r\n });\r\n });\r\n setSelectedColumns([\r\n ...selectedColumns.sort((a: any, b: any) => (a.seq > b.seq ? 1 : -1)),\r\n ]);\r\n };\r\n\r\n const formatDate = (value: any) => {\r\n if (value != \"\") {\r\n let someDateString = moment(value, \"DD/MM/YYYY HH:mm:ss\");\r\n const NewDate = moment(someDateString).format(\"DD MMM yyyy\");\r\n return NewDate;\r\n } else {\r\n return \"\";\r\n }\r\n };\r\n\r\n function reconStructionForExport() {\r\n try {\r\n let dataExport: any = [];\r\n\r\n exportData.map((data: any) => {\r\n let dataField: any = {};\r\n selectedColumns.map((col: any) => {\r\n if (col.fieldTypeFilterDynamic === \"c\") {\r\n if (data[col.field] !== null) {\r\n dataField[col.header] = data[col.field]?.toLocaleString(\r\n undefined,\r\n {\r\n minimumFractionDigits: 2,\r\n }\r\n );\r\n }\r\n } else if (\r\n col.fieldTypeFilterDynamic === \"d\" ||\r\n col.field.toLowerCase().includes(\"date\")\r\n ) {\r\n if (col.header.toLowerCase().includes(\"action\")) {\r\n let newDate = data[col.field].toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n if (newDate !== \"Invalid date\") {\r\n dataField[col.header] = newDate;\r\n }\r\n } else {\r\n let newDate = formatDate(data[col.field]);\r\n if (newDate !== \"Invalid date\") {\r\n dataField[col.header] = newDate;\r\n } else {\r\n let someDateString = moment(data[col.field], \"MM/DD/YYYY\");\r\n newDate = moment(someDateString).format(\"DD MMM yyyy\");\r\n if (newDate !== \"Invalid date\") {\r\n dataField[col.header] = newDate;\r\n } else {\r\n newDate = moment(data[col.field]).format(\"DD MMM yyyy\");\r\n if (newDate !== \"Invalid date\") {\r\n dataField[col.header] = newDate;\r\n } else {\r\n dataField[col.header] = \"\";\r\n }\r\n }\r\n }\r\n }\r\n } else {\r\n dataField[col.header] = data[col.field];\r\n }\r\n });\r\n if (props.apiName === \"MasterCompany/GetAll\") {\r\n delete dataField[\"UrlLogo\"];\r\n }\r\n dataExport.push(dataField);\r\n });\r\n return dataExport;\r\n } catch (error) {}\r\n }\r\n\r\n function reconStructionForShowData() {\r\n try {\r\n let dataShow: any = [];\r\n dataDynamicTable.map((data: any) => {\r\n let dataField: any = {};\r\n selectedColumns.map((col: any) => {\r\n if (col.fieldTypeFilterDynamic === \"c\") {\r\n if (data[col.field] !== null) {\r\n dataField[col.field] = data[col.field];\r\n }\r\n } else if (\r\n col.fieldTypeFilterDynamic === \"d\" ||\r\n col.header.toLowerCase().includes(\"date\")\r\n ) {\r\n if (data[col.field] !== null && data[col.field] !== \"\") {\r\n dataField[col.field] = new Date(data[col.field]);\r\n }\r\n } else {\r\n dataField[col.field] = data[col.field];\r\n }\r\n });\r\n if (props.apiName === \"MasterCompany/GetAll\") {\r\n delete dataField[\"UrlLogo\"];\r\n }\r\n dataShow.push(dataField);\r\n });\r\n\r\n return dataShow;\r\n } catch (error) {}\r\n }\r\n\r\n const actionLinkIReport = (rowData: any) => {\r\n return (\r\n <>\r\n {\r\n const memoid = { MemoID: rowData.Memo_MemoId };\r\n window.open(`/Request?MemoID=${rowData.Memo_MemoId}`, \"blank\");\r\n // history.push(`/Request?MemoID=${rowData.Memo_MemoId}`, memoid);\r\n }}\r\n >\r\n \r\n {rowData.Memo_DocumentNo}\r\n \r\n

\r\n \r\n );\r\n };\r\n\r\n const dynamicColumns = selectedColumns.map((col: any) => {\r\n try {\r\n if (\r\n !col.field.includes(\"Form\") &&\r\n col.field !== \"ModifiedBy\" &&\r\n col.field !== \"CreatedBy\"\r\n ) {\r\n if (\r\n col.field.toLowerCase().includes(\"isactive\") ||\r\n col.field.toLowerCase().includes(\"ispublic\") ||\r\n col.field.toLowerCase().includes(\"isprivate\") ||\r\n col.field.toLowerCase().includes(\"InternalUrl\")\r\n ) {\r\n return (\r\n {\r\n try {\r\n return formatIsActive(rowData[col.field]);\r\n } catch (error) {}\r\n }}\r\n header={\r\n
\r\n
\r\n {col.header}\r\n
\r\n\r\n \r\n {col.alter !== undefined && col.alter}\r\n \r\n
\r\n }\r\n sortable\r\n filter={\r\n filters2[col.field]?.matchMode !== null\r\n ? filters2[col.field]?.matchMode\r\n : undefined\r\n }\r\n filterMatchMode={\r\n filters2[col.field]?.matchMode !== null\r\n ? filters2[col.field]?.matchMode\r\n : undefined\r\n }\r\n filterElement={(option: any) =>\r\n statusRowFilterTemplate(option, col.header)\r\n }\r\n filterHeaderClassName={\"gggg\"}\r\n showClearButton={showClearDate}\r\n onFilterClear={() => setshowClearDatel(false)}\r\n />\r\n );\r\n } else if (\r\n col.field.includes(\"Date\") ||\r\n col.field.includes(\"วันที่\") ||\r\n col.fieldTypeFilterDynamic === \"d\"\r\n ) {\r\n return (\r\n \r\n
\r\n {col.header}\r\n
\r\n\r\n \r\n {col.alter !== undefined && col.alter}\r\n \r\n \r\n }\r\n body={(rowData: any) => {\r\n try {\r\n if (col.field.toLowerCase().includes(\"action\")) {\r\n if (\r\n rowData[col.field] !== null &&\r\n rowData[col.field] !== undefined &&\r\n rowData[col.field] !== \"\"\r\n ) {\r\n let newDate = rowData[col.field].toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n });\r\n if (newDate !== \"Invalid date\") {\r\n return newDate;\r\n }\r\n } else {\r\n rowData[col.field] = null;\r\n return \"\";\r\n }\r\n } else {\r\n if (\r\n rowData[col.field] !== null &&\r\n rowData[col.field] !== undefined &&\r\n rowData[col.field] !== \"\"\r\n ) {\r\n let newDate = formatDate(rowData[col.field]);\r\n if (newDate !== \"Invalid date\") {\r\n rowData[col.field] = new Date(newDate);\r\n return newDate;\r\n } else {\r\n let someDateString = moment(\r\n rowData[col.field],\r\n \"MM/DD/YYYY\"\r\n );\r\n newDate = moment(someDateString).format(\"DD MMM yyyy\");\r\n if (newDate !== \"Invalid date\") {\r\n rowData[col.field] = new Date(newDate);\r\n return newDate;\r\n } else {\r\n newDate = moment(rowData[col.field]).format(\r\n \"DD MMM yyyy\"\r\n );\r\n if (newDate !== \"Invalid date\") {\r\n rowData[col.field] = new Date(newDate);\r\n return newDate;\r\n } else {\r\n return \"\";\r\n }\r\n }\r\n }\r\n } else {\r\n rowData[col.field] = null;\r\n return \"\";\r\n }\r\n }\r\n } catch (error) {}\r\n }}\r\n sortable\r\n dataType=\"date\"\r\n filter={\r\n filters2[col.field]?.matchMode !== null\r\n ? filters2[col.field]?.matchMode\r\n : undefined\r\n }\r\n filterMatchMode={\r\n filters2[col.field]?.matchMode !== null\r\n ? filters2[col.field]?.matchMode\r\n : undefined\r\n }\r\n filterElement={(option: any) =>\r\n dateFilterTemplate(option, col.header)\r\n }\r\n showClearButton={showClearDate}\r\n onFilterClear={() => setshowClearDatel(false)}\r\n />\r\n );\r\n } else if (\r\n (!col.field.includes(\"Id\") &&\r\n col.dataType === \"number\" &&\r\n col.header !== \"PositionLevel\") ||\r\n col.fieldTypeFilterDynamic === \"c\"\r\n ) {\r\n return (\r\n \r\n
\r\n {col.header}\r\n
\r\n\r\n \r\n {col.alter !== undefined && col.alter}\r\n \r\n \r\n }\r\n bodyClassName={\"number-style\"}\r\n body={(rowData: any) => {\r\n try {\r\n if (rowData[col.field] !== null) {\r\n return rowData[col.field]?.toLocaleString(undefined, {\r\n minimumFractionDigits: 2,\r\n });\r\n }\r\n } catch {}\r\n }}\r\n sortable\r\n dataType=\"numeric\"\r\n filter={\r\n filters2[col.field]?.matchMode !== null\r\n ? filters2[col.field]?.matchMode\r\n : undefined\r\n }\r\n filterMatchMode={\r\n filters2[col.field]?.matchMode !== null\r\n ? filters2[col.field]?.matchMode\r\n : undefined\r\n }\r\n filterElement={(option: any) =>\r\n normalFilterTemplate(option, col.header)\r\n }\r\n showClearButton={false}\r\n />\r\n );\r\n } else if (col.field.includes(\"AmountFrom_AmountTo\")) {\r\n return (\r\n \r\n
\r\n {col.header}\r\n
\r\n\r\n \r\n {col.alter !== undefined && col.alter}\r\n \r\n \r\n }\r\n sortable\r\n body={(rowData: any) => {\r\n try {\r\n let mainStr = \"\";\r\n let data = matrixItems.filter(\r\n (item: any) =>\r\n item.ApproveMatrixId === rowData.ApproveMatrixId &&\r\n item.IsActive === true &&\r\n (item.ApproverId !== 0 || item.PositionLevelId !== 0)\r\n );\r\n data.sort((a, b) => (a.Seq > b.Seq ? 1 : -1));\r\n let dd = data.map((e: any, idx: number) => {\r\n if (idx < 3) {\r\n let subStr = \"\";\r\n subStr =\r\n Number(e.AmountFrom).toLocaleString(undefined, {\r\n minimumFractionDigits: 2,\r\n }) +\r\n \"-\" +\r\n Number(e.AmountTo).toLocaleString(undefined, {\r\n minimumFractionDigits: 2,\r\n }) +\r\n \": \";\r\n mainStr = mainStr + subStr;\r\n return

{subStr}

;\r\n } else if (idx <= 4) {\r\n let subStr = \"\";\r\n subStr =\r\n Number(e.AmountFrom).toLocaleString(undefined, {\r\n minimumFractionDigits: 2,\r\n }) +\r\n \"-\" +\r\n Number(e.AmountTo).toLocaleString(undefined, {\r\n minimumFractionDigits: 2,\r\n }) +\r\n \": \";\r\n mainStr = mainStr + subStr;\r\n return

......

;\r\n }\r\n });\r\n\r\n rowData.AmountFrom_AmountTo = mainStr;\r\n return dd;\r\n } catch {}\r\n }}\r\n filter={\r\n filters2[col.field]?.matchMode !== null\r\n ? filters2[col.field]?.matchMode\r\n : undefined\r\n }\r\n filterMatchMode={\r\n filters2[col.field]?.matchMode !== null\r\n ? filters2[col.field]?.matchMode\r\n : undefined\r\n }\r\n filterElement={(option: any) =>\r\n normalFilterTemplate(option, col.header)\r\n }\r\n showClearButton={false}\r\n />\r\n );\r\n } else if (\r\n !col.field.includes(\"Id\") &&\r\n col.field !== \"ModifiedBy\" &&\r\n col.field !== \"CreatedBy\" &&\r\n col.field !== \"SignPicPath\"\r\n ) {\r\n return (\r\n \r\n
\r\n {col.header}\r\n
\r\n\r\n \r\n {col.alter !== undefined && col.alter}\r\n \r\n \r\n }\r\n sortable\r\n body={(rowData: any) => {\r\n try {\r\n if (typeof rowData[col.field] === \"string\") {\r\n let data: string = rowData[col.field];\r\n if (data.includes(\"base64\")) {\r\n var image = new Image();\r\n image.src = data;\r\n return ;\r\n } else {\r\n return col.field == \"Memo_DocumentNo\"\r\n ? actionLinkIReport(rowData)\r\n : rowData[col.field];\r\n }\r\n } else {\r\n return rowData[col.field];\r\n }\r\n } catch {}\r\n }}\r\n filter={\r\n filters2[col.field]?.matchMode !== null\r\n ? filters2[col.field]?.matchMode\r\n : undefined\r\n }\r\n filterMatchMode={\r\n filters2[col.field]?.matchMode !== null\r\n ? filters2[col.field]?.matchMode\r\n : undefined\r\n }\r\n filterElement={(option: any) =>\r\n normalFilterTemplate(option, col.header)\r\n }\r\n showClearButton={false}\r\n />\r\n );\r\n }\r\n }\r\n } catch (ex) {\r\n console.log(\"table=>ex\", ex);\r\n }\r\n });\r\n\r\n const toastShowSuccess = () => {\r\n toggleAlert({\r\n description: `Success!`,\r\n message: `Success`,\r\n type: \"success\",\r\n });\r\n // toast.current.show({\r\n // severity: \"success\",\r\n // summary: \"Success !\",\r\n // life: 3000,\r\n // });\r\n };\r\n const toastShowError = () => {\r\n toggleAlert({\r\n description: `Error!`,\r\n message: `Error`,\r\n type: \"error\",\r\n });\r\n // toast.current.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail: \"Validation failed\",\r\n // });\r\n };\r\n\r\n const actionBodyTemplate = (rowData: any) => {\r\n let selData: any[] = [];\r\n dataDynamicTable.map((e: any) => {\r\n if (e[selectedColumns[0].field] === rowData[selectedColumns[0].field]) {\r\n selData.push(e);\r\n }\r\n });\r\n return (\r\n \r\n {\r\n setDataEdit(selData[0]);\r\n setTitleHead(\"Edit Data / แก้ไขข้อมูล\");\r\n setMessageButtonDialog(\"Update Changes\");\r\n setCheckAction(\"edit\");\r\n if (props?.setDisplayFormDialog !== undefined) {\r\n props?.setDisplayFormDialog(!props?.displayFormDialog);\r\n }\r\n setVisibleConfirm(false);\r\n },\r\n },\r\n ]}\r\n dropdownIcon=\"pi pi-ellipsis-v\"\r\n />\r\n \r\n );\r\n };\r\n\r\n const onColumnToggle = (event: any) => {\r\n let selectedColumns = event.value;\r\n let orderedSelectedColumns = columns.filter((col: any) =>\r\n selectedColumns.some((sCol: any) => sCol.field === col.field)\r\n );\r\n\r\n setSelectedColumns(orderedSelectedColumns);\r\n };\r\n\r\n const exportXLSX = (selectionOnly: any) => {\r\n exportXLSX({ selectionOnly });\r\n };\r\n\r\n const exportExcel = () => {\r\n const excelData = reconStructionForExport();\r\n import(\"xlsx\").then((xlsx: any) => {\r\n const worksheet = xlsx.utils.json_to_sheet(excelData);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\",\r\n });\r\n saveAsExcelFile(excelBuffer, reportFileName + \" : \" + new Date());\r\n toggleLoading(false);\r\n });\r\n };\r\n\r\n const saveAsExcelFile = (buffer: any, fileName: any) => {\r\n import(\"file-saver\").then((FileSaver: any) => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n FileSaver.saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n };\r\n\r\n const yearNavigatorTemplate = (e: any) => {\r\n return (\r\n e.onChange(event.originalEvent, event.value)}\r\n className=\"p-ml-2\"\r\n style={{ lineHeight: 1 }}\r\n />\r\n );\r\n };\r\n\r\n const renderHeader1 = () => {\r\n const selCol = [...selectedColumns];\r\n let showSelCol: any[] = [];\r\n const col = [...columns];\r\n let showCol: any[] = [];\r\n selCol.map((e: any) => {\r\n if (!e.field.toLowerCase().includes(\"id\")) {\r\n showSelCol.push(e);\r\n }\r\n });\r\n col.map((e: any) => {\r\n if (!e.field.toLowerCase().includes(\"id\")) {\r\n showCol.push(e);\r\n }\r\n });\r\n\r\n return (\r\n
\r\n
\r\n
\r\n {\r\n const recon = reconStructionForShowData();\r\n const uniqueArray = recon.filter((value: any, index: any) => {\r\n const _value = JSON.stringify(value);\r\n return (\r\n index ===\r\n recon.findIndex((obj: any) => {\r\n return JSON.stringify(obj) === _value;\r\n })\r\n );\r\n });\r\n setShowDataDynamicTable([...uniqueArray]);\r\n setClearFilter(true);\r\n }}\r\n onChange={onColumnToggle}\r\n placeholder=\"Select columns\"\r\n style={{ width: \"20em\" }}\r\n />\r\n
\r\n {props.canExport && (\r\n
\r\n {\r\n toggleLoading(true);\r\n exportExcel();\r\n }}\r\n style={{\r\n height: \"38px\",\r\n background: \" #28a745\",\r\n border: \"1px solid #28a745\",\r\n color: \"#ffffff\",\r\n fontSize: \"13px\",\r\n borderRadius: \"6px\",\r\n margin: \" 0px 11px 0px 0px\",\r\n }}\r\n data-pr-tooltip=\"XLS\"\r\n />\r\n {/* */}\r\n {props.apiName !== \"DynamicReport/GetReportDetailById\" && (\r\n <>\r\n \r\n \r\n \r\n \r\n Import From excel\r\n \r\n \r\n \r\n )}\r\n
\r\n )}\r\n
\r\n
\r\n );\r\n };\r\n const importExcel = async (e: any) => {\r\n const file = e.target.files[0];\r\n try {\r\n if (toggleLoading != undefined) toggleLoading(true);\r\n import(\"xlsx\").then((xlsx) => {\r\n const reader = new FileReader();\r\n try {\r\n reader.onload = async (e: any) => {\r\n const wb = xlsx.read(e.target.result, { type: \"array\" });\r\n const wsname = wb.SheetNames[0];\r\n const ws = wb.Sheets[wsname];\r\n const data = xlsx.utils.sheet_to_json(ws, { header: 1 });\r\n const cols: any = data[0];\r\n data.shift();\r\n let _importedData = data.map((d: any) => {\r\n return cols.reduce((obj: any, c: any, i: any) => {\r\n obj[c] = d[i];\r\n return obj;\r\n }, {});\r\n });\r\n\r\n if (_importedData.length !== 0) {\r\n for (let i = 0; i < _importedData.length; i++) {\r\n const element = _importedData[i];\r\n var apiNamereplace = props.apiName?.replace(\"/GetAll\", \"\");\r\n\r\n let res = await updateDynamic(apiNamereplace, element);\r\n if (res.result === \"success\") {\r\n if (_importedData.length - 1 === i) {\r\n let _dataDynamic = await GetAllDynamic(\r\n props.apiName,\r\n undefined\r\n );\r\n\r\n setDataDynamicTable([..._dataDynamic]);\r\n if (toggleLoading !== undefined) {\r\n toggleLoading(false);\r\n }\r\n }\r\n } else {\r\n }\r\n }\r\n }\r\n };\r\n\r\n reader.readAsArrayBuffer(file);\r\n } catch (error) {}\r\n });\r\n } catch (error) {}\r\n };\r\n function onRowClick(rowData: any) {\r\n if (props.rowClickFunc != undefined) {\r\n props.rowClickFunc(rowData);\r\n }\r\n }\r\n\r\n const header1 = renderHeader1();\r\n\r\n function renderActionColumn() {\r\n if (props.canAction) {\r\n if (props.actionBody !== undefined) {\r\n return (\r\n \r\n );\r\n } else {\r\n return (\r\n \r\n );\r\n }\r\n }\r\n }\r\n\r\n const rowClassName = () => {\r\n if (props.rowPointer) {\r\n return \"row-pointer\";\r\n } else {\r\n return \"\";\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n {!props.onLoading && (\r\n
\r\n setSelectData(e.value)}\r\n globalFilterFields={columns.map((e: any) => e.field)}\r\n rowsPerPageOptions={[10, 15, 20, 50, 100]}\r\n rowHover={props.rowHover}\r\n onValueChange={(e: any) => {\r\n if (props.setItemsCount !== undefined) {\r\n props.setItemsCount(e.length);\r\n }\r\n setExportData(e);\r\n }}\r\n filters={filters2}\r\n filterDisplay=\"row\"\r\n paginatorTemplate=\"FirstPageLink PrevPageLink PageLinks NextPageLink LastPageLink CurrentPageReport RowsPerPageDropdown\"\r\n currentPageReportTemplate=\"Showing {first} to {last} of {totalRecords} products\"\r\n responsiveLayout=\"scroll\"\r\n size=\"small\"\r\n >\r\n {dynamicColumns.length > 0 ? renderActionColumn() : null}\r\n {dynamicColumns}\r\n \r\n {visibleConfirm && props?.displayFormDialog == false && (\r\n \r\n )}\r\n {props?.displayFormDialog && (\r\n \r\n )}\r\n
\r\n )}\r\n
\r\n );\r\n};\r\n","export const GetAllTemplate = async () => {\r\n const respone = await fetch(\"api/TemplateList/GetAll\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n });\r\n return respone;\r\n};\r\nexport const GetTemplateFromDDL = async (dataJson: any) => {\r\n const respone = await fetch(\"api/TemplateList/GetTemplateFromDDL\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\nexport const GetTemplateTemplateListVersion = async (dataJson: any) => {\r\n console.log(\"dataJson\", dataJson);\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/TemplateList/GetTemplateBindFormNameDDL\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\nexport const GetTemplateeBindFormNameDDL = async (dataJson: any) => {\r\n console.log(\"dataJson\", dataJson);\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/TemplateList/GetTemplateBindFormNameDDL\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const GetTemplateTemplateList = async (dataJson: any) => {\r\n console.log(\"dataJson\", dataJson);\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/TemplateList/GetTemplateListBindGroup\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\nexport const SearchTemplateListEditing = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n console.log(\"dataJson\", dataJson);\r\n const respone = await fetch(\"api/TemplateList/SearchTemplateListEditing\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\nexport const GetTemplateListVersionHistory = async (dataJson: any) => {\r\n console.log(\"dataJson\", dataJson);\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\r\n \"api/TemplateList/GetTemplateListVersionHistory\",\r\n {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n }\r\n )\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\nexport const GetTemplateByDocTypeCode = async (dataJson: any) => {\r\n console.log(\"dataJson\", dataJson);\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/TemplateList/GetTemplateByDocTypeCode\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\nexport const GetTemplateById = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/TemplateList/GetById\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n // window.location.href = \"/UnAuthorize\";\r\n });\r\n return respone;\r\n};\r\n\r\nexport const GetTemplate = async () => {\r\n const respone = await fetch(\"api/TemplateList/GetAll\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.log(\"table=>err\", err);\r\n });\r\n return respone;\r\n};\r\n\r\nexport const GetAllByCreateTemplate = async () => {\r\n const respone = await fetch(\"api/TemplateList/GetAllByCreateTemplate\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data.filter((item: any) => {\r\n return item.IsActive === true;\r\n });\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const ReportTemplateList = async () => {\r\n const respone = await fetch(\"api/TemplateList/GetAllReportTemplateList\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const GetTemplateByIdDto = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/TemplateList/GetTemplateByIdDto\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const GetTemplateControlById = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/TemplateList/GetTemplateControlById\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => {\r\n return response.json();\r\n })\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((error) => {\r\n return error;\r\n });\r\n return respone;\r\n};\r\n\r\nexport const AddTemplate = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/TemplateList/AddData\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\nexport const AddTemplateAndVersion = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/TemplateList/SaveTemplateAndVersion\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const DeleteTemplate = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/TemplateList/DeleteTemplate\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n\r\nexport const LoadLogic = async (template_id: any) => {\r\n const dataLogic = await fetch(\"api/TemplateList/TemplateByid/LoadLogic\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({ TemplateId: template_id }),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n // console.log(\"Logic: \", data);\r\n\r\n return data;\r\n });\r\n return dataLogic;\r\n};\r\n\r\nexport const ValidateRefTemplate = async (dataJson: any) => {\r\n const refValid = await fetch(\"api/TemplateList/ValidateRefTemplate\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n // console.log(\"Logic: \", data);\r\n\r\n return data;\r\n });\r\n return refValid;\r\n};\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { Popover, Collapse } from \"antd\";\r\nimport Cookies from \"universal-cookie\";\r\nimport { BsPlusCircle } from \"react-icons/bs\";\r\nimport { useHistory, useLocation } from \"react-router-dom\";\r\nimport { AiOutlineStar, AiFillStar } from \"react-icons/ai\";\r\nimport { BsSearch } from \"react-icons/bs\";\r\nimport { IoChevronForward } from \"react-icons/io5\";\r\nimport { IoChevronDownSharp } from \"react-icons/io5\";\r\nimport \"./TreeSelectNewRequest.css\";\r\nimport { GetTemplateFromDDL } from \"../../Services/TemplateService\";\r\nimport { Button } from \"primereact/button\";\r\nimport { GetRolePermissionByUser } from \"../../Services/RoleServices\";\r\nimport { useUserContext } from \"../../Context/UserContext\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\ninterface Props {\r\n setDataTemplateTreeProps?: any;\r\n}\r\n\r\nexport const TreeSelectNewRequest = (props: Props) => {\r\n const [groupDataTemplate, setGroupDataTemplate] = useState([]);\r\n const [searchTemplate, setSearchTemplate] = useState([]);\r\n const [isOpen, setIsOpen] = useState(false);\r\n const [checkActionFavorite, setCheckActionFavorite] =\r\n useState(false);\r\n const [checkActionPanel, setCheckActionPanel] = useState(false);\r\n const [checkFilter, setCheckFilter] = useState(false);\r\n const [userData] = useUserContext();\r\n const { Panel } = Collapse;\r\n const cookies = new Cookies();\r\n const location = useLocation();\r\n const history = useHistory();\r\n const { t } = useTranslation([\"translation\"]);\r\n useEffect(() => {\r\n fetchDataTemplate();\r\n window.addEventListener(\"scroll\", handleScroll);\r\n return () => window.removeEventListener(\"scroll\", handleScroll);\r\n }, []);\r\n const handleScroll = (e: any) => {\r\n setIsOpen(false);\r\n };\r\n\r\n async function fetchDataTemplate() {\r\n try {\r\n const empData = JSON.parse(window.localStorage.getItem(\"userData\") || \"\");\r\n const empid = empData.employeeData.EmployeeId;\r\n const DepartmentId = empData.employeeData.DepartmentId;\r\n const dataJson = {\r\n Username: userData.Username,\r\n DepartmentId: Number(userData.DepartmentId),\r\n EmployeeId: Number(userData.EmployeeId),\r\n Email: userData.Email,\r\n selectAll: false,\r\n DefultMode: false,\r\n OnlyActive: true,\r\n };\r\n\r\n let _dataTemplate = await GetTemplateFromDDL(dataJson);\r\n let _groupDataTemplate: any = [{ header: \"Favorite\", data: [] }];\r\n let fav_cookie: any = window.localStorage.getItem(\"favorite\") || \"[]\";\r\n fav_cookie = JSON.parse(fav_cookie);\r\n let groupTemplate = _dataTemplate?.reduce(function (r: any, a: any) {\r\n r[a.GroupTemplateName] = r[a.GroupTemplateName] || [];\r\n r[a.GroupTemplateName].push(a);\r\n return r;\r\n }, Object.create(null));\r\n const roles = await GetRolePermissionByUser();\r\n\r\n const keyDataTemplate = Object.entries(groupTemplate);\r\n keyDataTemplate.sort((a, b) => a[0].localeCompare(b[0]));\r\n groupTemplate = Object.fromEntries(keyDataTemplate);\r\n\r\n for (const [key, value] of Object.entries(groupTemplate)) {\r\n let _value: any = value;\r\n for (let i = 0; i < _value.length; i++) {\r\n if (fav_cookie?.length > 0) {\r\n for (let k = 0; k < fav_cookie.length; k++) {\r\n if (\r\n fav_cookie[k]?.TemplateNameWithCode ===\r\n _value[i]?.TemplateNameWithCode\r\n ) {\r\n _value[i][\"favorite\"] = fav_cookie[k].favorite;\r\n _groupDataTemplate[0].data.push(_value[i]);\r\n }\r\n }\r\n }\r\n }\r\n\r\n _groupDataTemplate.push({ header: key, data: _value });\r\n }\r\n setGroupDataTemplate(_groupDataTemplate);\r\n setSearchTemplate(_groupDataTemplate);\r\n } catch (error) {}\r\n }\r\n const onClickStar = (groupIdx: any, templateIdx: any, idx: number) => {\r\n setCheckActionFavorite(true);\r\n let _groupDataTemplate = searchTemplate;\r\n for (let i = 0; i < _groupDataTemplate.length; i++) {\r\n if (groupIdx === _groupDataTemplate[i].header) {\r\n for (let j = 0; j < _groupDataTemplate[i].data.length; j++) {\r\n if (\r\n _groupDataTemplate[i].data[j].TemplateNameWithCode === templateIdx\r\n ) {\r\n _groupDataTemplate[i].data[j].favorite =\r\n !_groupDataTemplate[i].data[j].favorite;\r\n }\r\n }\r\n }\r\n }\r\n let fav_cookie: any = window.localStorage.getItem(\"favorite\") || \"[]\";\r\n fav_cookie = JSON.parse(fav_cookie);\r\n let checkUnClickStar: boolean = false;\r\n for (let i = 0; i < _groupDataTemplate.length; i++) {\r\n if (\r\n _groupDataTemplate[i].header === groupIdx &&\r\n _groupDataTemplate[i].header !== \"Favorite\"\r\n ) {\r\n for (let j = 0; j < fav_cookie.length; j++) {\r\n const element2 = fav_cookie[j];\r\n if (\r\n _groupDataTemplate[i].data[idx].TemplateId === element2.TemplateId\r\n ) {\r\n fav_cookie.splice(j, 1);\r\n checkUnClickStar = true;\r\n }\r\n }\r\n if (!checkUnClickStar) {\r\n fav_cookie.push(_groupDataTemplate[i].data[idx]);\r\n }\r\n }\r\n }\r\n let checkHasFavorite: boolean = false;\r\n for (let i = 0; i < _groupDataTemplate.length; i++) {\r\n const element = _groupDataTemplate[i];\r\n if (element.header === \"Favorite\") {\r\n checkHasFavorite = true;\r\n }\r\n }\r\n if (checkHasFavorite) {\r\n _groupDataTemplate[0].data.splice(\r\n 0,\r\n _groupDataTemplate[0].data.length,\r\n ...fav_cookie\r\n );\r\n } else {\r\n let _groupDataTemplate2: any = [{ header: \"Favorite\", data: [] }];\r\n _groupDataTemplate2[0].data = fav_cookie;\r\n console.log(fav_cookie, \"fav_cookieCheckHasFavorite\");\r\n console.log(_groupDataTemplate2, \"_groupDataTemplate2\");\r\n _groupDataTemplate.splice(0, 0, _groupDataTemplate2[0]);\r\n }\r\n\r\n window.localStorage.setItem(\"favorite\", JSON.stringify(fav_cookie));\r\n setSearchTemplate([..._groupDataTemplate]);\r\n };\r\n const onUnFavorite = (\r\n _groupTemplateName: any,\r\n _templateNameWithCode: any,\r\n idx: any\r\n ) => {\r\n setCheckActionFavorite(true);\r\n let _groupDataTemplate = groupDataTemplate;\r\n let fav_cookie: any = window.localStorage.getItem(\"favorite\") || \"[]\";\r\n fav_cookie = JSON.parse(fav_cookie);\r\n _groupDataTemplate[0].data = fav_cookie;\r\n for (let i = 0; i < _groupDataTemplate[0].data.length; i++) {\r\n _groupDataTemplate[0].data.splice(idx, 1);\r\n break;\r\n }\r\n for (let i = 0; i < _groupDataTemplate.length; i++) {\r\n if (_groupTemplateName === _groupDataTemplate[i].header) {\r\n for (let j = 0; j < _groupDataTemplate[i].data.length; j++) {\r\n if (\r\n _groupDataTemplate[i].data[j].TemplateNameWithCode ===\r\n _templateNameWithCode\r\n ) {\r\n _groupDataTemplate[i].data[j].favorite =\r\n !_groupDataTemplate[i].data[j].favorite;\r\n }\r\n }\r\n }\r\n }\r\n window.localStorage.setItem(\r\n \"favorite\",\r\n JSON.stringify(_groupDataTemplate[0].data)\r\n );\r\n setSearchTemplate([..._groupDataTemplate]);\r\n };\r\n const mapContent = () => {\r\n try {\r\n let _groupTemplate: any = [];\r\n let activeDefault = [...Array(_groupTemplate?.length).keys()];\r\n let _searchTemplate = searchTemplate;\r\n for (let i = 0; i < _searchTemplate.length; i++) {\r\n if (_searchTemplate[i].header !== \"Favorite\") {\r\n let _group: any = (\r\n {_searchTemplate[i].header}

\r\n }\r\n className=\"group-template-panel \"\r\n >\r\n {_searchTemplate[i].data?.map((_data: any, idx: any) => {\r\n return (\r\n
\r\n {\r\n if (\r\n location.pathname === \"/Request\" &&\r\n props.setDataTemplateTreeProps !== undefined\r\n ) {\r\n history.push(\r\n `/Request?MemoID=0&template=${_data.TemplateId}`\r\n );\r\n props.setDataTemplateTreeProps(_data);\r\n }\r\n if (location.pathname !== \"/Request\") {\r\n history.push(\r\n `/Request?MemoID=0&template=${_data.TemplateId}`,\r\n { listFormName: _data }\r\n );\r\n }\r\n setIsOpen(false);\r\n }}\r\n >\r\n {_data.TemplateNameWithCode}\r\n

\r\n {_data.favorite ? (\r\n \r\n onClickStar(\r\n _data.GroupTemplateName,\r\n _data.TemplateNameWithCode,\r\n idx\r\n )\r\n }\r\n />\r\n ) : (\r\n \r\n onClickStar(\r\n _data.GroupTemplateName,\r\n _data.TemplateNameWithCode,\r\n idx\r\n )\r\n }\r\n />\r\n )}\r\n
\r\n );\r\n })}\r\n \r\n );\r\n _groupTemplate.push(_group);\r\n } else {\r\n let _group: any = (\r\n {_searchTemplate[i].header}

\r\n }\r\n className=\"group-template-panel\"\r\n >\r\n {_searchTemplate[i].data?.map((_data: any, idx: any) => {\r\n return (\r\n
\r\n {\r\n if (\r\n location.pathname === \"/Request\" &&\r\n props.setDataTemplateTreeProps !== undefined\r\n ) {\r\n history.push(\r\n `/Request?MemoID=0&template=${_data.TemplateId}`\r\n );\r\n props.setDataTemplateTreeProps(_data);\r\n }\r\n if (location.pathname !== \"/Request\") {\r\n history.push(\r\n `/Request?MemoID=0&template=${_data.TemplateId}`,\r\n { listFormName: _data }\r\n );\r\n }\r\n setIsOpen(false);\r\n }}\r\n >\r\n {_data.TemplateNameWithCode}\r\n

\r\n\r\n \r\n onUnFavorite(\r\n _data.GroupTemplateName,\r\n _data.TemplateNameWithCode,\r\n idx\r\n )\r\n }\r\n />\r\n
\r\n );\r\n })}\r\n \r\n );\r\n _groupTemplate.push(_group);\r\n }\r\n\r\n if (checkActionFavorite) {\r\n activeDefault = [0];\r\n }\r\n }\r\n\r\n return (\r\n
\r\n
\r\n onFilterChange(e.target.value)}\r\n />\r\n \r\n
\r\n {checkFilter && (\r\n \r\n isActive ? (\r\n \r\n ) : (\r\n \r\n )\r\n }\r\n expandIconPosition={\"right\"}\r\n >\r\n {_groupTemplate}\r\n \r\n )}\r\n {!checkFilter && !checkActionFavorite && (\r\n \r\n isActive ? (\r\n \r\n ) : (\r\n \r\n )\r\n }\r\n expandIconPosition={\"right\"}\r\n >\r\n {_groupTemplate}\r\n \r\n )}\r\n {!checkFilter && checkActionFavorite && (\r\n \r\n isActive ? (\r\n \r\n ) : (\r\n \r\n )\r\n }\r\n expandIconPosition={\"right\"}\r\n >\r\n {_groupTemplate}\r\n \r\n )}\r\n
\r\n );\r\n } catch (error) {\r\n console.log(\"MapContent=>error\", error);\r\n }\r\n };\r\n const onFilterChange = (text: string) => {\r\n setCheckActionFavorite(false);\r\n if (groupDataTemplate) {\r\n if (groupDataTemplate.length > 0) {\r\n let _groupDataTemplate = groupDataTemplate;\r\n console.log(groupDataTemplate, \"groupDataTemplate\");\r\n\r\n if (!text) {\r\n setCheckFilter(false);\r\n let fav_cookie: any = window.localStorage.getItem(\"favorite\") || \"[]\";\r\n fav_cookie = JSON.parse(fav_cookie);\r\n _groupDataTemplate[0].data = fav_cookie;\r\n setSearchTemplate([..._groupDataTemplate]);\r\n } else {\r\n setCheckFilter(true);\r\n }\r\n const _searchTemplate = _groupDataTemplate.filter(\r\n (_data: any, idx: any) => {\r\n if (_data.header === \"Favorite\") {\r\n return true;\r\n }\r\n for (let i = 0; i < _data.data.length; i++) {\r\n if (\r\n _data.data[i]?.TemplateName?.toLowerCase().indexOf(\r\n text.toLowerCase()\r\n ) !== -1 ||\r\n _data.data[i]?.TemplateNameWithCode?.toLowerCase().indexOf(\r\n text.toLowerCase()\r\n ) !== -1 ||\r\n _data.header?.toLowerCase().indexOf(text.toLowerCase()) !== -1\r\n ) {\r\n return true;\r\n }\r\n }\r\n }\r\n );\r\n const filteredList: any = [];\r\n\r\n for (let i = 0; i < _searchTemplate.length; i++) {\r\n const filteredGroup = _searchTemplate[i];\r\n const filtered = filteredGroup.data.filter((_data: any, idx: any) => {\r\n if (\r\n _data?.TemplateName?.toLowerCase().indexOf(text.toLowerCase()) !==\r\n -1 ||\r\n _data?.TemplateNameWithCode?.toLowerCase().indexOf(\r\n text.toLowerCase()\r\n ) !== -1 ||\r\n _data?.GroupTemplateName?.toLowerCase().indexOf(\r\n text.toLowerCase()\r\n ) !== -1\r\n ) {\r\n return true;\r\n }\r\n });\r\n if (filtered.length > 0) {\r\n filteredList.push({\r\n header: filteredGroup.header,\r\n data: filtered,\r\n });\r\n }\r\n }\r\n setSearchTemplate([...filteredList]);\r\n }\r\n }\r\n };\r\n const onVisibleChange = (visible: boolean) => {\r\n setIsOpen(visible);\r\n };\r\n return (\r\n \r\n {location.pathname !== \"/Request\" && (\r\n \r\n \r\n

{t(\"New Request\")}

\r\n \r\n )}\r\n\r\n {location.pathname === \"/Request\" && (\r\n \r\n )}\r\n {location.pathname === \"/Request\" && (\r\n \r\n )}\r\n\r\n {location.pathname !== \"/Request\" && (\r\n \r\n \r\n

{t(\"New Request\")}

\r\n \r\n )}\r\n \r\n );\r\n};\r\n","export default __webpack_public_path__ + \"static/media/LoadingWOLFmini.12fa1510.gif\";","import { Button } from \"primereact/button\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { useHistory, useParams } from \"react-router-dom\";\r\nimport { FooterComponents } from \"../../components/FooterComponents/FooterComponents\";\r\nimport { DynamicTable } from \"../../components/TableComponents/Dynamic/DynamicTable\";\r\nimport { TreeSelectNewRequest } from \"../../components/TreeSelectNewRequest/TreeSelectNewRequest\";\r\nimport LogoLoading from \"../../assets/LoadingWOLFmini.gif\";\r\nimport { GetAllDynamic } from \"../../Services/DynamicService\";\r\ninterface Props {}\r\n\r\ntype QuizParams = {\r\n reportId: string;\r\n reportName: string;\r\n};\r\n\r\nexport const DynamicReport = (props: Props) => {\r\n let { reportId } = useParams();\r\n let { reportName } = useParams();\r\n const text = \"Report Detail\";\r\n const apiName = \"DynamicReport/GetReportDetailById\";\r\n const [itemsCount, setItemsCount] = useState(0);\r\n const reportDetailBody = {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({\r\n ReportTemplateId: reportId,\r\n PageIndex: 0,\r\n PageSize: 10000,\r\n }),\r\n };\r\n const [onLoading, setOnLoading] = useState(true);\r\n const [imgLoading, setImgLoading] = useState(LogoLoading);\r\n const [data, setData] = useState();\r\n\r\n useEffect(() => {\r\n fetchData();\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (data) {\r\n setOnLoading(false);\r\n }\r\n }, [data]);\r\n\r\n async function fetchData() {\r\n try {\r\n setOnLoading(true);\r\n\r\n const _dataDynamic: any[] = await GetAllDynamic(\r\n apiName,\r\n reportDetailBody\r\n );\r\n\r\n setData(_dataDynamic);\r\n } catch (error) {\r\n console.log(\"table=>error\", error);\r\n }\r\n }\r\n\r\n return (\r\n
\r\n {onLoading ? (\r\n
\r\n \"loading...\"\r\n
\r\n ) : (\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

\r\n {reportName.replace(\"\\\\\", \"/\") + \"(\" + itemsCount + \")\"}\r\n

\r\n
\r\n
\r\n \r\n
\r\n
\r\n )}\r\n\r\n \r\n \r\n
\r\n \r\n );\r\n};\r\n","import moment from \"moment\";\r\nimport {\r\n GetDashboardKeyEndpoint,\r\n GetDashboardStatusCard,\r\n} from \"./ConfigurationService\";\r\n\r\nexport const GetDashboardReportById = async () => {\r\n const configuration = await fetch(\"/api/Configuration/Dashboard/Endpoint\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n console.log(data);\r\n\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n return;\r\n });\r\n\r\n const respone = await fetch(\"api/Report/GetReportById/1201\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n });\r\n let data: any = [];\r\n var _endpoint = await GetDashboardEndpoint();\r\n\r\n for (let i = 0; i < respone.length; i++) {\r\n let row: any = {};\r\n\r\n for (let j = 0; j < configuration.length; j++) {\r\n for (const [key, value] of Object.entries(respone[i])) {\r\n const [keyConfig, typeConfig, formatConfig] =\r\n configuration[j]?.split(\"|\");\r\n if (keyConfig === key) {\r\n if (typeConfig === \"date\") {\r\n row[_endpoint[j]] = moment(\r\n new Date(moment(respone[i][keyConfig]).format(\"yyyy/MM/DD\"))\r\n ).format(formatConfig);\r\n } else {\r\n row[_endpoint[j]] = value;\r\n }\r\n }\r\n }\r\n }\r\n data.push(row);\r\n }\r\n console.log(data, \"GetDashboardReportById\");\r\n return data;\r\n};\r\nexport const MapDataEndpoint = async (respone: any) => {\r\n const configuration = await fetch(\"/api/Configuration/Dashboard/Endpoint\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n\r\n return;\r\n });\r\n\r\n let data: any = [];\r\n var _endpoint = await GetDashboardEndpoint();\r\n for (let i = 0; i < respone?.length; i++) {\r\n let row: any = {};\r\n for (let j = 0; j < _endpoint.length; j++) {\r\n for (const [key, value] of Object.entries(respone[i])) {\r\n const [keyConfig, typeConfig, formatConfig] =\r\n configuration[j]?.split(\"||\");\r\n if (keyConfig === key) {\r\n if (typeConfig === \"date\") {\r\n console.log(respone[i][keyConfig], \"respone[i][keyConfig]\");\r\n row[_endpoint[j]] = moment(\r\n new Date(moment(respone[i][keyConfig]).format(\"yyyy/MM/DD\"))\r\n ).format(formatConfig);\r\n } else {\r\n row[_endpoint[j]] = value;\r\n }\r\n }\r\n }\r\n }\r\n data.push(row);\r\n }\r\n\r\n var _statusCard = await GetDashboardStatusCard();\r\n let _priorities = _statusCard.map((_data: any) => {\r\n const [keyConfig, typeConfig, displayConfig, priority] = _data.split(\"||\");\r\n return {\r\n statusName: keyConfig,\r\n displayStatusName: displayConfig,\r\n priority: priority,\r\n };\r\n });\r\n for (let i = 0; i < data.length; i++) {\r\n const element = data[i];\r\n for (let j = 0; j < _priorities.length; j++) {\r\n const _priority = _priorities[j];\r\n if (element[_endpoint[2]] === _priority.statusName) {\r\n data[i][\"priority\"] = _priority.priority;\r\n data[i][_endpoint[2]] = _priority.displayStatusName;\r\n }\r\n }\r\n }\r\n\r\n return data;\r\n};\r\nexport const MapGroupData = async (data: any, _name: any) => {\r\n var _endpoint = await GetDashboardKeyEndpoint();\r\n console.log(data, \"data\");\r\n console.log(_name, \"_name\");\r\n\r\n let result: any[] = data?.reduce(function (r: any, a: any) {\r\n r[a[_name.name]] = r[a[_name.name]] || [];\r\n r[a[_name.name]].push(a);\r\n return r;\r\n }, Object.create(null));\r\n let mapData: any[] = [];\r\n for (const [key, value] of Object.entries(result)) {\r\n mapData.push({\r\n headData: key,\r\n items: value.sort((a: any, b: any) => {\r\n return a.priority - b.priority;\r\n }),\r\n });\r\n }\r\n const sortDate = mapData.sort((a: any, b: any) => {\r\n const aa = moment(a.headData, \"DD/MMMM/YYYY\");\r\n const bb = moment(b.headData, \"DD/MMMM/YYYY\");\r\n return moment(aa).diff(bb);\r\n });\r\n return sortDate;\r\n};\r\n\r\nexport const GetDashboardEndpoint = async () => {\r\n const configuration = await fetch(\"/api/Configuration/Dashboard/Endpoint\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n });\r\n const card = configuration.map((_data: any) => {\r\n const [keyConfig, typeConfig] = _data.split(\"||\");\r\n return keyConfig;\r\n });\r\n return card;\r\n};\r\n\r\nexport const GetFilterHeaderDashboard = async () => {\r\n const configuration = await fetch(\"/api/Configuration/Dashboard/FilterHeader\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n let data: any = [];\r\n configuration.map((_data: any) => {\r\n const [keyConfig, typeConfig] = _data.split(\"||\");\r\n data.push({\r\n name: keyConfig,\r\n });\r\n return data;\r\n });\r\n return data;\r\n};\r\nexport const GetFilterSelectDashboard = async () => {\r\n const configuration = await fetch(\"/api/Configuration/Dashboard/FilterSelect\")\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n });\r\n let data: any = [];\r\n configuration.map((_data: any) => {\r\n const [keyConfig, typeConfig] = _data.split(\"||\");\r\n data.push({\r\n name: keyConfig,\r\n });\r\n return data;\r\n });\r\n return data;\r\n};\r\n\r\nexport const GetReportById = async (reportId: number, signal?: AbortSignal) => {\r\n const respone = await fetch(\"api/DynamicReport/GetReportDetailById\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n signal: signal,\r\n body: JSON.stringify({\r\n ReportTemplateId: reportId,\r\n PageIndex: 0,\r\n PageSize: 10000,\r\n UserPrincipalName: window.localStorage.getItem(\"email\") || \"\",\r\n }),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\nexport const ReportTemplateSelectByReportID = async (reportId: number) => {\r\n const respone = await fetch(\r\n \"api/DynamicReport/ReportTemplateSelectByReportID\",\r\n {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({\r\n ReportTemplateId: reportId,\r\n }),\r\n }\r\n )\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone;\r\n};\r\n\r\nexport const DeleteReport = async (reportId: number) => {\r\n const respone = await fetch(\"api/DynamicReport/DeleteReport\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({\r\n ReportTemplateId: reportId,\r\n }),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone;\r\n};\r\n\r\nexport const ReportListTemplateSelect = async (dataJson: any) => {\r\n const respone = await fetch(\"api/DynamicReport/ReportListTemplateSelect\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone;\r\n};\r\n\r\nexport const AddReport = async (dataJson: any) => {\r\n // console.log(\"dataJson\", dataJson);\r\n\r\n const respone = await fetch(\"api/DynamicReport/AddReport\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone;\r\n};\r\nexport const UpdateReport = async (dataJson: any) => {\r\n // console.log(\"dataJson\", dataJson);\r\n\r\n const respone = await fetch(\"api/DynamicReport/UpdateData\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n\r\n return respone;\r\n};\r\n\r\nexport const FilterAdvanceSearch = async (dataJson: any) => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/Report/FilterAdvanceSearch\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n return err;\r\n });\r\n console.log(respone, \"dashboard\");\r\n return respone;\r\n};\r\n","import { AutoComplete } from \"primereact/autocomplete\";\r\nimport React, { ReactElement } from \"react\";\r\nimport \"./AutoCompleteComponents.css\";\r\ninterface Props {\r\n valueProps?: any;\r\n suggestionsProps?: any;\r\n completeMethodProps?: any;\r\n fieldProps?: any;\r\n disabledProps?: any;\r\n onChangeProps?: any;\r\n keyProps?: any;\r\n styleProps?: any;\r\n onKeyPress?: any;\r\n readOnlyprops?: any;\r\n notButton?: any;\r\n onBlur?: any;\r\n}\r\n\r\nexport default function AutoCompleteComponents(props: Props) {\r\n return (\r\n <>\r\n {\r\n if (props.onBlur) {\r\n props.onKeyPress(e.target.value, props.keyProps);\r\n e.target.value = \"\";\r\n }\r\n }}\r\n field={props.fieldProps}\r\n className={\r\n props.notButton === true\r\n ? \"AutoCompleteComponents-autoComplete-notButton\"\r\n : \"AutoCompleteComponents-autoComplete\"\r\n }\r\n multiple\r\n panelClassName={\r\n props.notButton === true\r\n ? \"AutoCompleteComponents-autoComplete-notButton\"\r\n : \"AutoCompleteComponents-autoComplete\"\r\n }\r\n disabled={props.disabledProps}\r\n readOnly={props.readOnlyprops}\r\n onChange={(e) => props.onChangeProps(e.value, props.keyProps, e)}\r\n onMouseDown={(e: any) => {\r\n console.log(\"e\", e);\r\n }}\r\n onKeyPress={(e: any) => {\r\n console.log(\"e.code\", e.code);\r\n\r\n if (e.code === \"Enter\") {\r\n if (props.onKeyPress !== undefined)\r\n props.onKeyPress(e.target.value, props.keyProps);\r\n e.target.value = \"\";\r\n }\r\n }}\r\n />\r\n \r\n );\r\n}\r\n","import React, { ReactElement } from \"react\";\r\nimport { RadioButton } from \"primereact/radiobutton\";\r\nimport \"./RadioButtonComponents.css\";\r\ninterface Props {\r\n inputIdProps: any;\r\n nameProps: any;\r\n valueProps: any;\r\n onChangeProps: any;\r\n checkedProps: any;\r\n keyProps: any;\r\n labelProps?: any;\r\n}\r\n\r\nexport const RadioButtonComponents = (props: Props) => {\r\n return (\r\n <>\r\n {\r\n console.log(\"report=>e\", e);\r\n props.onChangeProps(e.value, props.keyProps);\r\n }}\r\n checked={props.checkedProps}\r\n />\r\n \r\n \r\n );\r\n};\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { Controller, useForm } from \"react-hook-form\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { MultiSelect } from \"primereact/multiselect\";\r\nimport {\r\n AddReport,\r\n ReportListTemplateSelect,\r\n UpdateReport,\r\n} from \"../../../Services/ReportService\";\r\n\r\nimport \"./ReportDialog.css\";\r\nimport AutoCompleteComponents from \"../../AutoCompleteComponents/AutoCompleteComponents\";\r\nimport { ButtonComponents } from \"../../ButtonComponents/ButtonComponents\";\r\n\r\nimport { GetAllEmployee } from \"../../../Services/EmployeeService\";\r\nimport EmployeeDialog from \"../../DataFechDialogComponents/EmployeeDialog/EmployeeDialog\";\r\nimport { RadioButtonComponents } from \"../../RadioButtonComponents/RadioButtonComponents\";\r\nimport { Calendar } from \"primereact/calendar\";\r\nimport { GetAllDynamic } from \"../../../Services/DynamicService\";\r\nimport { IReportModel } from \"../../../IRequestModel/IReportModel\";\r\nimport moment from \"moment\";\r\nimport { IoCloseOutline } from \"react-icons/io5\";\r\nimport { BiSave } from \"react-icons/bi\";\r\nimport { GetTemplateById } from \"../../../Services/TemplateService\";\r\nimport { filterHash } from \"@fullcalendar/react\";\r\nimport { DatePicker, Input, InputNumber, Spin } from \"antd\";\r\nimport { SelectDataDialog } from \"../../Select/SelectionDataDialog/SelectDataDialog\";\r\ninterface Props {\r\n visible: boolean;\r\n toggleDialog: any;\r\n templateDataProps?: any;\r\n checkSetProps?: any;\r\n checkProps?: any;\r\n editProps?: any;\r\n dataEditReportProps?: any;\r\n setEditReportProps?: any;\r\n setOnLoading: (bool: boolean) => void;\r\n}\r\nconst reportModelIReportModel: IReportModel = {\r\n ReportTemplateId: 0,\r\n ReportName: \"\",\r\n TemplateId: \"\",\r\n Selectedfieldlist: [],\r\n ReportDescription: \"\",\r\n IsPrivate: false,\r\n IsActive: true,\r\n CreatedBy: \"\",\r\n CreatedByname: \"\",\r\n CreatedDate: \"\",\r\n ModifiedBy: \"\",\r\n ModifiedByname: \"\",\r\n ModifiedDate: \"\",\r\n Selectedfieldlistfilter: [],\r\n Columns: [],\r\n Rows: [],\r\n TemplateNewVersion: false,\r\n PageIndex: 0,\r\n PageSize: 10,\r\n CanDelete: false,\r\n RoleId: \"\",\r\n RoleEmp: \"\",\r\n Mode: false,\r\n};\r\n\r\nexport const ReportDialog = (props: Props) => {\r\n const {\r\n control,\r\n formState: { errors },\r\n handleSubmit,\r\n reset,\r\n } = useForm({\r\n mode: \"all\",\r\n reValidateMode: \"onChange\",\r\n shouldUnregister: false,\r\n });\r\n const userData = JSON.parse(window.localStorage.getItem(\"userData\"));\r\n const [selectedField, setSelectedField] = useState([]);\r\n const [templateKey, setTemplateKey] = useState([]);\r\n const [templateField, setTemplateField] = useState([]);\r\n const [templateMulti, setTemplateMulti] = useState([]);\r\n\r\n const [templateFieldMulti, setTemplateFieldMulti] = useState([]);\r\n\r\n const [globalFilterValue, setGlobalFilterValue] = useState(\"\");\r\n const [isDialogVisible, setDialogVisible] = useState(false);\r\n const [keyAutoComplete, setKeyAutoComplete] = useState();\r\n const [employeeRequest, setEmployeeRequest] = useState([]);\r\n const [searchData, setSearchData] = useState([]);\r\n const [employee, setEmployee] = useState([]);\r\n const [roleData, setRoleData] = useState([]);\r\n const [radioButtonCheck, setRadioButtonCheck] = useState(false);\r\n const [radioButtonCheckToday, setRadioButtonCheckToday] =\r\n useState(false);\r\n const [radioButtonCheckFrom, setRadioButtonCheckFrom] = useState(false);\r\n const [filterValue, setFilterValue] = useState([]);\r\n const [reportModel, setReportModel] = useState({});\r\n const [filterValueSelected, setFilterValueSelected] = useState([]);\r\n const [dropdownfilterValue, setDropdownfilterValue] = useState([]);\r\n const [group, setGroup] = useState([]);\r\n const [groupData, setGroupData] = useState([]);\r\n const [indexOrderBy, setIndexOrderBy] = useState([]);\r\n const [indexHideColumn, setIndexHideColumn] = useState([]);\r\n const [indexSortingBy, setIndexSortingBy] = useState([]);\r\n const [textHeader, setTextHeader] = useState(\"\");\r\n\r\n const [tableLoading, setTableLoading] = useState(true);\r\n\r\n const [templateMode, setTemplateMode] = useState({ Mode: \"Real Time\" });\r\n // const [disabledSave, setDisabledSave] = useState(true);\r\n\r\n const [validationForm, setValidationForm] = useState({\r\n TemplateIdValidation: false,\r\n FieldCollectionValidation: false,\r\n ReportNameValidation: false,\r\n ReportDescriptionValidation: false,\r\n RoleEmpValidation: false,\r\n RoleIdValidation: false,\r\n DisabledSave: true,\r\n });\r\n\r\n useEffect(() => {\r\n addTemplateKey();\r\n }, [props.templateDataProps, props.visible]);\r\n\r\n useEffect(() => {\r\n if (props.dataEditReportProps && props.editProps === true) {\r\n editData();\r\n }\r\n }, [employee, roleData, props.dataEditReportProps]);\r\n\r\n useEffect(() => {\r\n _fechData();\r\n }, [props.visible]);\r\n\r\n useEffect(() => {\r\n if (props.editProps === true) {\r\n setTextHeader(\"Edit Report / แก้ไขรายงาน\");\r\n setReportModel((prevState: any) => ({\r\n ...prevState,\r\n CreatedBy: props.dataEditReportProps.CreateBy,\r\n CreatedDate: props.dataEditReportProps.CreateDate,\r\n IsPrivate: props.dataEditReportProps.Isprivate,\r\n Mode: props.dataEditReportProps.Mode,\r\n ModifiedBy: props.dataEditReportProps.ModifiedBy,\r\n\r\n ReportDescription: props.dataEditReportProps.Reportdescription,\r\n ReportName: props.dataEditReportProps.Reportname,\r\n ReportTemplateId: props.dataEditReportProps.ReporttemplateID,\r\n RoleEmp: props.dataEditReportProps.RoleEmp,\r\n RoleId: props.dataEditReportProps.RoleId,\r\n SecretId: props.dataEditReportProps.SecretId,\r\n Selectedfieldlist: props.dataEditReportProps.Selectedfieldlist,\r\n\r\n Selectedfieldlistfilter:\r\n props.dataEditReportProps.Selectedfieldlistfilter,\r\n TemplateId: props.dataEditReportProps.TemplateID,\r\n TemplateNewVersion: props.dataEditReportProps.Templateversion,\r\n }));\r\n console.log(\"props.dataEditReportProps\", props.dataEditReportProps);\r\n if (props.dataEditReportProps !== undefined) {\r\n if (\r\n JSON.stringify(props.dataEditReportProps) !==\r\n JSON.stringify(reportModel)\r\n ) {\r\n editReportData();\r\n }\r\n }\r\n } else {\r\n setTextHeader(\"Create Report / สร้างรายงาน\");\r\n }\r\n }, [props.editProps, props.dataEditReportProps]);\r\n useEffect(() => {\r\n if (templateFieldMulti !== undefined && templateFieldMulti.length !== 0) {\r\n let indexGroupByFilter = templateFieldMulti.filter(\r\n (_data: any) => _data.indexGroupBy === \"1\"\r\n );\r\n let indexSortingByByFilter = templateFieldMulti.filter(\r\n (_data: any) => _data.indexSortingBy === \"1\"\r\n );\r\n let indexHideColumnByByFilter = templateFieldMulti.filter(\r\n (_data: any) => _data.indexHideColumn === \"1\"\r\n );\r\n let indexOrderByColumnByByFilter = templateFieldMulti.filter(\r\n (_data: any) => _data.indexOrderBy === \"1\"\r\n );\r\n if (indexGroupByFilter.length !== 0) {\r\n setGroupData(indexGroupByFilter);\r\n }\r\n if (indexSortingByByFilter.length !== 0) {\r\n setIndexSortingBy(indexSortingByByFilter);\r\n }\r\n if (indexHideColumnByByFilter.length !== 0) {\r\n setIndexHideColumn(indexHideColumnByByFilter);\r\n }\r\n if (indexOrderByColumnByByFilter.length !== 0) {\r\n setIndexOrderBy(indexOrderByColumnByByFilter);\r\n }\r\n }\r\n }, [templateFieldMulti]);\r\n async function Data() {\r\n setReportModel(reportModelIReportModel);\r\n\r\n setSelectedField([]);\r\n setTemplateKey([]);\r\n setTemplateField([]);\r\n setTemplateMulti([]);\r\n setTemplateFieldMulti([]);\r\n setEmployeeRequest([]);\r\n setSearchData([]);\r\n setEmployee([]);\r\n setRoleData([]);\r\n setFilterValue([]);\r\n setFilterValueSelected([]);\r\n setGroup([]);\r\n setGroupData([]);\r\n setIndexOrderBy([]);\r\n setIndexHideColumn([]);\r\n setIndexSortingBy([]);\r\n setValidationForm({\r\n TemplateIdValidation: false,\r\n FieldCollectionValidation: false,\r\n ReportNameValidation: false,\r\n ReportDescriptionValidation: false,\r\n DisabledSave: true,\r\n });\r\n }\r\n function formatDate(date: string) {\r\n let arrDate = date.split(\"/\");\r\n const mm = Number(arrDate[1]);\r\n if (mm === 1) {\r\n arrDate[1] = \"Jan\";\r\n } else if (mm === 2) {\r\n arrDate[1] = \"Feb\";\r\n } else if (mm === 3) {\r\n arrDate[1] = \"Mar\";\r\n } else if (mm === 4) {\r\n arrDate[1] = \"Apr\";\r\n } else if (mm === 5) {\r\n arrDate[1] = \"May\";\r\n } else if (mm === 6) {\r\n arrDate[1] = \"Jun\";\r\n } else if (mm === 7) {\r\n arrDate[1] = \"Jul\";\r\n } else if (mm === 8) {\r\n arrDate[1] = \"Aug\";\r\n } else if (mm === 9) {\r\n arrDate[1] = \"Sep\";\r\n } else if (mm === 10) {\r\n arrDate[1] = \"Oct\";\r\n } else if (mm === 11) {\r\n arrDate[1] = \"Nov\";\r\n } else if (mm === 12) {\r\n arrDate[1] = \"Dec\";\r\n }\r\n return arrDate.join(\" \");\r\n }\r\n\r\n async function editData() {\r\n console.log(\"props.dataEditReportProps?.Mode\", props.dataEditReportProps);\r\n onTemplateMode(\r\n props.dataEditReportProps?.Mode === false\r\n ? { Mode: \"Real Time\" }\r\n : { Mode: \"Schedule Mode\" }\r\n );\r\n if (props.dataEditReportProps !== undefined) {\r\n const _employee = await GetAllEmployee();\r\n const roles = await GetAllDynamic(\"Roles/GetAll\", undefined);\r\n let _RoleEmpSplit =\r\n props.dataEditReportProps.RoleEmp === undefined\r\n ? []\r\n : props.dataEditReportProps.RoleEmp !== null\r\n ? props.dataEditReportProps.RoleEmp.split(\",\")\r\n : [];\r\n let _RoleIdSplit =\r\n props.dataEditReportProps.RoleId === undefined\r\n ? []\r\n : props.dataEditReportProps.RoleId !== null\r\n ? props.dataEditReportProps.RoleId.split(\",\")\r\n : [];\r\n let arrayRoleEmp: any = [];\r\n let arrayGroup: any = [];\r\n if (_RoleEmpSplit.length !== 0) {\r\n _RoleEmpSplit.map((_data: any) => {\r\n let _dataRoleEmp = _employee.filter(\r\n (item: any) => item.EmployeeId === Number(_data)\r\n );\r\n if (_dataRoleEmp.length !== 0) {\r\n arrayRoleEmp.push(_dataRoleEmp[0]);\r\n }\r\n });\r\n }\r\n if (_RoleIdSplit.length !== 0) {\r\n _RoleIdSplit.map((_data: any) => {\r\n let _dataRoleEmp = roles.filter(\r\n (item: any) => item.RoleId === Number(_data)\r\n );\r\n if (_dataRoleEmp.length !== 0) {\r\n arrayGroup.push(_dataRoleEmp[0]);\r\n }\r\n });\r\n }\r\n setEmployeeRequest([...arrayRoleEmp]);\r\n setGroup([...arrayGroup]);\r\n setRadioButtonCheck(props.dataEditReportProps?.Isprivate);\r\n }\r\n }\r\n async function editReportData() {\r\n let _dataJSONParse: any = [];\r\n var TemplateId = props.dataEditReportProps?.TemplateID?.split(\"|\");\r\n _dataJSONParse =\r\n props.dataEditReportProps.Selectedfieldlist !== undefined\r\n ? props.dataEditReportProps.Selectedfieldlist !== null &&\r\n props.dataEditReportProps.Selectedfieldlist.length !== 0 &&\r\n props.dataEditReportProps.Selectedfieldlist !== \"[]\"\r\n ? props.dataEditReportProps.Selectedfieldlist\r\n : []\r\n : [];\r\n\r\n for (let i = 0; i < _dataJSONParse.length; i++) {\r\n delete _dataJSONParse[i][\"value\"];\r\n }\r\n\r\n let _dataFavoritesItem: any = [];\r\n _dataFavoritesItem =\r\n props.dataEditReportProps.Selectedfieldlistfilter !== undefined\r\n ? props.dataEditReportProps.Selectedfieldlistfilter !== null &&\r\n props.dataEditReportProps.Selectedfieldlistfilter.length !== 0 &&\r\n props.dataEditReportProps.Selectedfieldlistfilter !== \"[]\"\r\n ? props.dataEditReportProps.Selectedfieldlistfilter\r\n : []\r\n : [];\r\n\r\n let arrayTemplate: any = [];\r\n if (TemplateId !== undefined) {\r\n if (TemplateId.length !== 0) {\r\n for (let i = 0; i < TemplateId.length; i++) {\r\n let dataFilter = props.templateDataProps?.filter(\r\n (item: any) =>\r\n item.DocumentCode === TemplateId[i] ||\r\n item.TemplateId === Number(TemplateId[i])\r\n );\r\n arrayTemplate.push(dataFilter[0]);\r\n if (TemplateId.length - 1 === i) {\r\n _SelectFormEdit(arrayTemplate, _dataJSONParse);\r\n }\r\n }\r\n }\r\n }\r\n let _arrayItes: any = [];\r\n if (_dataFavoritesItem.length !== 0) {\r\n for (let i = 0; i < _dataFavoritesItem.length; i++) {\r\n const element = _dataFavoritesItem[i];\r\n let arrayDataReplace: any = [];\r\n if (element.FieldText && element.FieldText.length !== 0) {\r\n var _dataSplit = element.FieldText?.split(\"|\");\r\n for (let j = 0; j < _dataSplit.length; j++) {\r\n arrayDataReplace.push({\r\n FieldText: _dataSplit[j].replaceAll(\";\", \"\"),\r\n });\r\n }\r\n } else {\r\n element.FieldText = [];\r\n }\r\n element.FieldText = arrayDataReplace;\r\n }\r\n\r\n for (let i = 0; i < _dataJSONParse.length; i++) {\r\n const element = _dataJSONParse[i];\r\n for (let j = 0; j < _dataFavoritesItem.length; j++) {\r\n const _element = _dataFavoritesItem[j];\r\n if (element.key === _element.FieldCode) {\r\n _arrayItes.push(element);\r\n }\r\n }\r\n }\r\n setFilterValueSelected(_dataFavoritesItem);\r\n setSelectedField(_arrayItes);\r\n } else {\r\n setFilterValueSelected([]);\r\n setSelectedField([]);\r\n }\r\n }\r\n async function _save() {\r\n if (\r\n reportModel.TemplateId === undefined ||\r\n reportModel.TemplateId === null ||\r\n reportModel.TemplateId.length === 0 ||\r\n reportModel.Selectedfieldlist === undefined ||\r\n reportModel.Selectedfieldlist === null ||\r\n reportModel.Selectedfieldlist.length === 0 ||\r\n reportModel.Selectedfieldlist === \"[]\" ||\r\n reportModel.ReportName === undefined ||\r\n reportModel.ReportName === null ||\r\n reportModel.ReportName.length === 0 ||\r\n reportModel.ReportDescription === undefined ||\r\n reportModel.ReportDescription === null ||\r\n reportModel.ReportDescription.length === 0\r\n ) {\r\n setValidationForm((dataDF: any) => ({\r\n ...dataDF,\r\n TemplateIdValidation:\r\n reportModel.TemplateId === undefined ||\r\n reportModel.TemplateId === null ||\r\n reportModel.TemplateId.length === 0\r\n ? true\r\n : false,\r\n FieldCollectionValidation:\r\n reportModel.Selectedfieldlist === undefined ||\r\n reportModel.Selectedfieldlist === null ||\r\n reportModel.Selectedfieldlist.length === 0 ||\r\n reportModel.Selectedfieldlist === \"[]\"\r\n ? true\r\n : false,\r\n ReportNameValidation:\r\n reportModel.ReportName === undefined ||\r\n reportModel.ReportName === null ||\r\n reportModel.ReportName.length === 0\r\n ? true\r\n : false,\r\n ReportDescriptionValidation:\r\n reportModel.ReportDescription === undefined ||\r\n reportModel.ReportDescription === null ||\r\n reportModel.ReportDescription.length === 0\r\n ? true\r\n : false,\r\n }));\r\n } else {\r\n let objSave = {\r\n ...reportModel,\r\n Selectedfieldlistfilter:\r\n filterValueSelected.length !== 0\r\n ? filterValueSelected\r\n : // JSON.stringify(filterValueSelected)\r\n [],\r\n };\r\n objSave.Selectedfieldlist.map((data: any) => {\r\n data[\"value\"] = null;\r\n data.reportTemplateId = null;\r\n data.isChecked = \"1\";\r\n });\r\n\r\n if (objSave.Selectedfieldlistfilter.length !== 0) {\r\n for (let i = 0; i < objSave.Selectedfieldlistfilter.length; i++) {\r\n let _arrayName: any = [];\r\n const element = objSave.Selectedfieldlistfilter[i];\r\n // remove_character\r\n if (element.FieldText.length !== 0) {\r\n for (let j = 0; j < element.FieldText.length; j++) {\r\n const _element = element.FieldText[j];\r\n _arrayName.push(_element.FieldText + \";\");\r\n }\r\n objSave.Selectedfieldlistfilter[i].FieldText = _arrayName\r\n .toString()\r\n .replaceAll(\",\", \"|;\");\r\n } else {\r\n objSave.Selectedfieldlistfilter[i].FieldText = \"\";\r\n }\r\n if (objSave.Selectedfieldlistfilter[i].FieldText.length !== 0) {\r\n objSave.Selectedfieldlistfilter[i].FieldText = remove_character(\r\n objSave.Selectedfieldlistfilter[i].FieldText,\r\n objSave.Selectedfieldlistfilter[i].FieldText.length - 1\r\n );\r\n }\r\n }\r\n } else {\r\n objSave.Selectedfieldlistfilter = [];\r\n }\r\n\r\n try {\r\n if (props.editProps !== true) {\r\n let _AddReport = await AddReport(objSave);\r\n if (_AddReport) {\r\n Data();\r\n props.checkSetProps(false);\r\n props.setOnLoading(true);\r\n props.toggleDialog();\r\n }\r\n } else {\r\n let _UpdatrReport = await UpdateReport(objSave);\r\n console.log(\"_UpdatrReport\", _UpdatrReport);\r\n\r\n if (_UpdatrReport) {\r\n Data();\r\n props.checkSetProps(false);\r\n props.setOnLoading(true);\r\n props.setEditReportProps([]);\r\n\r\n props.toggleDialog();\r\n }\r\n }\r\n } catch (error) {}\r\n }\r\n }\r\n const searchTextEnter = (event: any, key: any, rowData: any) => {\r\n if (event.length < 1) return;\r\n let _rowData: any = rowData;\r\n let _filterValueSelected = filterValueSelected;\r\n _rowData.FieldText.push({ FieldText: event });\r\n console.log(\"FilterValueSelected\", filterValueSelected, _rowData);\r\n _filterValueSelected.map((_data: any) => {\r\n if (_data.FieldCode === rowData.FieldCode) {\r\n _data.FieldText = _rowData.FieldText;\r\n }\r\n });\r\n\r\n setFilterValueSelected([..._filterValueSelected]);\r\n };\r\n function remove_character(str: any, char_pos: any) {\r\n let part1 = str.substring(0, char_pos);\r\n let part2 = str.substring(char_pos + 1, str.length);\r\n return part1 + part2;\r\n }\r\n const footer = (\r\n <>\r\n
\r\n \r\n }\r\n onClickProps={() => {\r\n Data();\r\n if (props.editProps === true) {\r\n props.setEditReportProps([]);\r\n }\r\n props.toggleDialog();\r\n }}\r\n setClassNameProps=\"p-button-text referenceDocumentDialog-button\"\r\n setStyleProps={{\r\n height: \"38px\",\r\n border: \"0.5px solid #FF2626\",\r\n background: \"#FFFFFF\",\r\n color: \"#FF2626\",\r\n borderRadius: \"6px\",\r\n fontSize: \"13px\",\r\n }}\r\n />\r\n\r\n }\r\n onClickProps={() => {\r\n // props.setOnLoading(true);\r\n _save();\r\n }}\r\n setStyleProps={{\r\n height: \"38px\",\r\n borderRadius: \"6px\",\r\n border: \"1px solid rgb(40, 47, 106)\",\r\n fontSize: \"13px\",\r\n }}\r\n />\r\n
\r\n \r\n );\r\n async function _fechData() {\r\n try {\r\n // const _employee = await GetAllEmployee();\r\n // let _employee: any = [];\r\n const roles = await GetAllDynamic(\"Roles/GetAll\", undefined);\r\n setReportModel((prevState: any) => ({\r\n ...prevState,\r\n CreateBy: userData.employeeData.EmployeeId.toString(),\r\n ModifiedBy: userData.employeeData.EmployeeId.toString(),\r\n }));\r\n setRoleData(roles);\r\n // setEmployee(_employee);\r\n // setSearchData(_employee);\r\n } catch (error) {\r\n console.log(\"report=>error\", error);\r\n }\r\n }\r\n\r\n const onRowReorder = (e: any) => {\r\n // setTemplateFieldMulti(e.value);\r\n _SelectFliedMulti(e.value);\r\n };\r\n const onRowReorderFilter = (e: any) => {\r\n setFilterValueSelected(e.value);\r\n };\r\n const onTemplateMode = (e: any) => {\r\n setReportModel((prevState: any) => ({\r\n ...prevState,\r\n Mode: e.Mode === \"Schedule Mode\" ? true : false,\r\n }));\r\n setTemplateMode(e);\r\n };\r\n const onChangeReportName = (e: any, key: any) => {\r\n setReportModel((prevState: any) => ({\r\n ...prevState,\r\n [key]: e,\r\n }));\r\n };\r\n function onChangeDropdownSelectForm(e: any, editReport?: any) {\r\n let _dataFilter: any;\r\n let _dataArrya: any = [];\r\n\r\n let dataFilterValueSelected: any = filterValueSelected;\r\n\r\n e.map((_data: any) => {\r\n const characteristics = Object.entries(_data).map((key, i) => {\r\n console.log(\"key\", key);\r\n });\r\n console.log(\"_________________________________________________________\");\r\n console.log(\"FilterValueSelected\", filterValueSelected);\r\n\r\n console.log(\"_________________________________________________________\");\r\n let _objJson = {\r\n ID: 0,\r\n FieldCode: _data.key,\r\n FieldDisplay: _data.label,\r\n IsExcludeBlankData: true,\r\n FieldType: _data.type,\r\n IsEquals: false,\r\n FieldText: [],\r\n FieldTextFrom: null,\r\n FieldTextTo: null,\r\n FieldBit: null,\r\n FieldTypeFilterStatic: _data.FieldTypeFilterStatic,\r\n FieldTypeFilterDynamic: _data.FieldTypeFilterDynamic,\r\n IsTodayFrom: false,\r\n IsTodayTo: false,\r\n FilterParameter: \"\",\r\n indexHideColumn: null,\r\n SecretId: null,\r\n };\r\n if (dataFilterValueSelected.length !== 0) {\r\n let FilterValueSelected = dataFilterValueSelected.filter(\r\n (item: any) => item.FieldCode === _objJson.FieldCode\r\n );\r\n if (FilterValueSelected.length === 0) {\r\n dataFilterValueSelected.push(_objJson);\r\n } else {\r\n for (let i = 0; i < dataFilterValueSelected.length; i++) {\r\n const filter = dataFilterValueSelected[i];\r\n if (filter.FieldCode === FilterValueSelected[0].FieldCode) {\r\n dataFilterValueSelected[i] = filter;\r\n }\r\n }\r\n }\r\n } else {\r\n dataFilterValueSelected.push(_objJson);\r\n }\r\n onChangeFilterValue(dataFilterValueSelected);\r\n\r\n setFilterValueSelected([...dataFilterValueSelected]);\r\n });\r\n\r\n if (e.length !== filterValueSelected.length) {\r\n e.map((_data: any) => {\r\n _dataFilter = filterValueSelected.filter(\r\n (item: any) => _data.key === item.FieldCode\r\n );\r\n if (_dataFilter.length !== 0) {\r\n _dataArrya.push(_dataFilter[0]);\r\n }\r\n });\r\n console.log(\"dataFilterValueSelected\", _dataArrya);\r\n setFilterValueSelected([..._dataArrya]);\r\n }\r\n console.log(\"eeeeeeeeeeeeeeeeeeeee\", e);\r\n // selectedField\r\n // if (_dataArrya.length !== 0) {\r\n // let _arrayElement: any = [];\r\n // for (let i = 0; i < _dataArrya.length; i++) {\r\n // const element = _dataArrya[i];\r\n // for (let j = 0; j < e.length; j++) {\r\n // const _element = e[j];\r\n // if (element.key === _element.key) {\r\n // _arrayElement.push(element);\r\n // }\r\n // }\r\n // }\r\n // setSelectedField(_arrayElement);\r\n // } else {\r\n // setSelectedField([]);\r\n // }\r\n setSelectedField(e);\r\n }\r\n function onChangeFilterValue(e: any) {\r\n setFilterValue(e);\r\n }\r\n\r\n function onChangeFilterNo(e: any) {}\r\n\r\n function onChangeGroupData(e: any, key: any) {\r\n if (key !== undefined && key !== null) {\r\n let _FilterValueSelected = templateFieldMulti;\r\n for (let i = 0; i < _FilterValueSelected.length; i++) {\r\n const allFilter = _FilterValueSelected[i];\r\n _FilterValueSelected[i][key] = null;\r\n }\r\n for (let i = 0; i < _FilterValueSelected.length; i++) {\r\n const allFilter = _FilterValueSelected[i];\r\n for (let j = 0; j < e.length; j++) {\r\n const valueSelected = e[j];\r\n console.log(\"allFilter\", allFilter);\r\n console.log(\"allFilter\", valueSelected);\r\n\r\n if (allFilter?.key === valueSelected?.key) {\r\n _FilterValueSelected[i][key] = \"1\";\r\n }\r\n }\r\n }\r\n\r\n setReportModel((prevState: any) => ({\r\n ...prevState,\r\n Selectedfieldlist: [..._FilterValueSelected],\r\n }));\r\n setTemplateFieldMulti([..._FilterValueSelected]);\r\n if (key === \"indexGroupBy\") {\r\n setGroupData(e);\r\n }\r\n if (key === \"indexOrderBy\") {\r\n setIndexOrderBy(e);\r\n }\r\n if (key === \"indexHideColumn\") {\r\n setIndexHideColumn(e);\r\n }\r\n if (key === \"indexSortingBy\") {\r\n setIndexSortingBy(e);\r\n }\r\n }\r\n }\r\n function onChangeDropdownfilterValue(e: any, data: any) {\r\n let _FilterValueSelected = filterValueSelected;\r\n let _dataFilter = _FilterValueSelected.filter(\r\n (item: any) => item.FieldCode === e.FieldCode\r\n );\r\n if (_dataFilter.length !== 0) {\r\n for (let index = 0; index < _FilterValueSelected.length; index++) {\r\n const element = _FilterValueSelected[index].FieldCode;\r\n if (_dataFilter[0].FieldCode === element) {\r\n _FilterValueSelected[index] = {\r\n ..._dataFilter[0],\r\n\r\n FilterParameter:\r\n data.Filter === \"Contains\"\r\n ? \"Like\"\r\n : data.Filter === \"Not Contains\"\r\n ? \"Not Like\"\r\n : data.Filter,\r\n };\r\n }\r\n }\r\n }\r\n console.log(\"_FilterValueSelected\", _FilterValueSelected);\r\n\r\n setFilterValueSelected([..._FilterValueSelected]);\r\n setDropdownfilterValue(data);\r\n }\r\n function addTemplateKey() {\r\n try {\r\n let _TemplateKey = props.templateDataProps;\r\n let _TemplateKeyArray: any = [];\r\n _TemplateKey?.map((_data: any) => {\r\n _TemplateKeyArray.push({\r\n ..._data,\r\n TemplateKey: _data.TemplateNameWithCode,\r\n });\r\n });\r\n console.log(\"_TemplateKeyArray\", _TemplateKeyArray);\r\n\r\n setTemplateKey(_TemplateKeyArray);\r\n } catch (error) {}\r\n\r\n // + \"(\" + _data.TemplateId + \")\",\r\n }\r\n async function _RadioButtonFormType(data: any, key: any, rowData: any) {\r\n let _FilterValueSelected = filterValueSelected;\r\n if (key !== \"Private\" && key !== \"Public\") {\r\n let _dataFilter = _FilterValueSelected.filter(\r\n (item: any) => item.FieldCode === rowData.FieldCode\r\n );\r\n if (_dataFilter.length !== 0) {\r\n for (let index = 0; index < _FilterValueSelected.length; index++) {\r\n const element = _FilterValueSelected[index].FieldCode;\r\n if (_dataFilter[0].FieldCode === element) {\r\n _FilterValueSelected[index] = {\r\n ..._dataFilter[0],\r\n\r\n [key]: data,\r\n };\r\n }\r\n }\r\n }\r\n\r\n setFilterValueSelected([..._FilterValueSelected]);\r\n if (key === \"IsTodayFrom\") {\r\n setRadioButtonCheckFrom(data);\r\n } else {\r\n setRadioButtonCheckToday(data);\r\n }\r\n }\r\n if (key === \"Private\" || key === \"Public\") {\r\n setReportModel((prevState: any) => ({\r\n ...prevState,\r\n IsPrivate: data,\r\n }));\r\n\r\n setRadioButtonCheck(data);\r\n }\r\n }\r\n async function _SelectFormEdit(e: any, _dataJSONParse: any) {\r\n let arrayTemplate: any = [];\r\n console.log(\"eeeeeeee\", e);\r\n\r\n setTemplateMulti(e);\r\n\r\n _SelectFliedEdit(e, _dataJSONParse);\r\n _SelectFliedMulti(_dataJSONParse);\r\n }\r\n async function _SelectForm(e: any) {\r\n let arrayTemplate: any = [];\r\n console.log(\"eeeeeeeeeeeeeeeeeeee\", e);\r\n if (e) {\r\n e.map((data: any) => {\r\n arrayTemplate.push(data.DocumentCode);\r\n });\r\n\r\n setTemplateMulti(e);\r\n\r\n _SelectFlied(e);\r\n setReportModel((prevState: any) => ({\r\n ...prevState,\r\n TemplateId: arrayTemplate.toString().replaceAll(\",\", \"|\"),\r\n }));\r\n } else {\r\n setTemplateMulti([]);\r\n\r\n _SelectFlied([]);\r\n setReportModel((prevState: any) => ({\r\n ...prevState,\r\n TemplateId: \"\",\r\n }));\r\n }\r\n }\r\n function _CalendarDate(e: any, rowdata: any, key: any) {\r\n console.log(\"rowdata\", rowdata);\r\n console.log(\"e\", e);\r\n\r\n let _FilterValueSelected = filterValueSelected;\r\n let _dataFilter = _FilterValueSelected.filter(\r\n (item: any) => item.FieldCode === rowdata.FieldCode\r\n );\r\n\r\n let _DateTime: any = formatDateTime(e);\r\n if (_dataFilter.length !== 0) {\r\n for (let index = 0; index < _FilterValueSelected.length; index++) {\r\n const element = _FilterValueSelected[index].FieldCode;\r\n if (_dataFilter[0].FieldCode === element) {\r\n _FilterValueSelected[index] = {\r\n ..._dataFilter[0],\r\n [key]: _DateTime,\r\n };\r\n }\r\n }\r\n }\r\n\r\n setFilterValueSelected([..._FilterValueSelected]);\r\n }\r\n const formatDateTime = (value: any) => {\r\n if (value != \"\") {\r\n let someDateString = moment(value, \"DD/MM/YYYY HH:mm:ss\");\r\n const NewDate = moment(someDateString).format(\"DD/MM/yyyy\");\r\n return NewDate;\r\n } else {\r\n const NewDate = \"\";\r\n return NewDate;\r\n }\r\n };\r\n async function _SelectFliedMulti(edit: any) {\r\n let arrayPush: any = [];\r\n if (edit) {\r\n for (let i = 0; i < edit.length; i++) {\r\n const element = edit[i];\r\n for (let j = 0; j < filterValueSelected.length; j++) {\r\n const _element = filterValueSelected[j];\r\n\r\n if (element.key === _element.FieldCode) {\r\n arrayPush.push(_element);\r\n }\r\n }\r\n }\r\n let arraySelected: any = [];\r\n if (arrayPush.length !== 0) {\r\n for (let i = 0; i < arrayPush.length; i++) {\r\n const element = arrayPush[i];\r\n for (let j = 0; j < selectedField.length; j++) {\r\n const _element = selectedField[j];\r\n if (element.FieldCode === _element.key) {\r\n arraySelected.push(_element);\r\n }\r\n }\r\n }\r\n setSelectedField(arraySelected);\r\n } else {\r\n setSelectedField([]);\r\n }\r\n // filterValueSelected\r\n // onChangeDropdownSelectForm(edit);\r\n setFilterValueSelected(arrayPush);\r\n setReportModel((prevState: any) => ({\r\n ...prevState,\r\n Selectedfieldlist: edit,\r\n }));\r\n\r\n setTemplateFieldMulti(edit);\r\n } else {\r\n setSelectedField([]);\r\n\r\n setFilterValueSelected(arrayPush);\r\n setReportModel((prevState: any) => ({\r\n ...prevState,\r\n Selectedfieldlist: [],\r\n }));\r\n\r\n setTemplateFieldMulti([]);\r\n }\r\n }\r\n async function showModal(key: any) {\r\n if (globalFilterValue != \"\") {\r\n setGlobalFilterValue(\"\");\r\n }\r\n setDialogVisible(!isDialogVisible);\r\n setKeyAutoComplete(key);\r\n\r\n let req = {\r\n IsActiveOnly: true,\r\n Scopes: \"name,email,org\",\r\n };\r\n if (tableLoading) {\r\n let _employee = await GetAllEmployee(req);\r\n setEmployee(_employee);\r\n setSearchData(_employee);\r\n setTableLoading(!tableLoading);\r\n }\r\n }\r\n async function _SelectFliedEdit(e: any, edit: any) {\r\n let arrayFlied: any = [];\r\n let arrayFliedTest: any = [];\r\n let arrayFliedId: any = [];\r\n let _selectFliedData = e;\r\n console.log(\"e\", e);\r\n\r\n // if (edit !== undefined && edit.length !== 0) {\r\n // onChangeFilterValue(edit);\r\n // }\r\n for (let i = 0; i < _selectFliedData.length; i++) {\r\n const element = _selectFliedData[i];\r\n arrayFliedId.push(_selectFliedData[i]?.TemplateId.toString());\r\n }\r\n\r\n let replaceString = arrayFliedId.toString().replaceAll(\",\", \"|\");\r\n console.log(\"replaceString\", replaceString);\r\n\r\n let _objJson = {\r\n TemplateID: replaceString,\r\n Templateversion: \"0\",\r\n ReporttemplateID: null,\r\n };\r\n\r\n if (_selectFliedData.length !== 0) {\r\n let _templateSelect: any = await ReportListTemplateSelect(_objJson);\r\n let _SelectedfieldlistAll = _templateSelect.SelectedfieldlistAll;\r\n\r\n for (let i = 0; i < _SelectedfieldlistAll.length; i++) {\r\n const element = _SelectedfieldlistAll[i];\r\n\r\n delete _SelectedfieldlistAll[i][\"value\"];\r\n arrayFliedTest.push(_SelectedfieldlistAll[i]);\r\n }\r\n console.log(\"arrayFliedTest\", arrayFliedTest);\r\n console.log(\"arrayFliedTest\", edit);\r\n for (let inx = 0; inx < edit.length; inx++) {\r\n const element = edit[inx];\r\n\r\n // for (let j = 0; j < arrayFliedTest.length; j++) {\r\n // const _element = arrayFliedTest[j];\r\n\r\n // if (element.key === _element.key) {\r\n // console.log(\"element____________\", element);\r\n // // arrayFliedTest.push(element);\r\n // }\r\n // }\r\n let _dataFilter = arrayFliedTest.filter(\r\n (item: any) => element.key === item.key\r\n );\r\n if (_dataFilter.length === 0) {\r\n arrayFliedTest.push(element);\r\n }\r\n console.log(\"_dataFilter\", _dataFilter, element);\r\n\r\n // if (_dataFilter.length !== 0) {\r\n // console.log(\"_dataFilter\", _dataFilter);\r\n // }\r\n }\r\n setTemplateField(arrayFliedTest);\r\n // setSelectedField(selectedField);\r\n } else {\r\n setTemplateField([]);\r\n }\r\n let arrayFieldMulti: any = [];\r\n if (templateFieldMulti.length !== 0) {\r\n for (let i = 0; i < templateFieldMulti.length; i++) {\r\n if (arrayFliedTest.length !== 0) {\r\n let arrayFliedFliter = arrayFliedTest.filter(\r\n (_item: any) => templateFieldMulti[i].label === _item.label\r\n );\r\n if (arrayFliedFliter.length !== 0) {\r\n arrayFieldMulti.push(arrayFliedFliter[0]);\r\n }\r\n }\r\n }\r\n console.log(\"arrayFieldMulti\", arrayFieldMulti);\r\n\r\n setTemplateFieldMulti(arrayFieldMulti);\r\n if (arrayFieldMulti.length === 0) {\r\n setFilterValueSelected([]);\r\n console.log(\"selectedFieldzzzzzzzzzzzzz\", selectedField);\r\n } else {\r\n let _arraykey: any = [];\r\n for (let i = 0; i < arrayFieldMulti.length; i++) {\r\n const element = arrayFieldMulti[i];\r\n for (let j = 0; j < selectedField.length; j++) {\r\n const _element = selectedField[j];\r\n if (element.key === _element.key) {\r\n _arraykey.push(_element);\r\n }\r\n }\r\n }\r\n console.log(\"_arraykey\", _arraykey);\r\n\r\n setFilterValueSelected(_arraykey);\r\n }\r\n }\r\n }\r\n async function _SelectFlied(e: any) {\r\n let arrayFlied: any = [];\r\n let arrayFliedTest: any = [];\r\n let arrayFliedId: any = [];\r\n let _selectFliedData = e;\r\n console.log(\"e\", e);\r\n\r\n // if (edit !== undefined && edit.length !== 0) {\r\n // onChangeFilterValue(edit);\r\n // }\r\n for (let i = 0; i < _selectFliedData.length; i++) {\r\n const element = _selectFliedData[i];\r\n arrayFliedId.push(_selectFliedData[i].TemplateId.toString());\r\n }\r\n\r\n let replaceString = arrayFliedId.toString().replaceAll(\",\", \"|\");\r\n console.log(\"replaceString\", replaceString);\r\n\r\n let _objJson = {\r\n TemplateID: replaceString,\r\n Templateversion: \"0\",\r\n ReporttemplateID: null,\r\n };\r\n\r\n if (_selectFliedData.length !== 0) {\r\n let _templateSelect: any = await ReportListTemplateSelect(_objJson);\r\n let _SelectedfieldlistAll = _templateSelect.SelectedfieldlistAll;\r\n\r\n for (let i = 0; i < _SelectedfieldlistAll.length; i++) {\r\n const element = _SelectedfieldlistAll[i];\r\n\r\n delete _SelectedfieldlistAll[i][\"value\"];\r\n arrayFliedTest.push(_SelectedfieldlistAll[i]);\r\n }\r\n console.log(\r\n \"arrayFliedTest_templateSelect_templateSelect\",\r\n arrayFliedTest,\r\n _templateSelect\r\n );\r\n\r\n setTemplateField(arrayFliedTest);\r\n // setSelectedField(selectedField);\r\n } else {\r\n setTemplateField([]);\r\n }\r\n let arrayFieldMulti: any = [];\r\n if (templateFieldMulti.length !== 0) {\r\n for (let i = 0; i < templateFieldMulti.length; i++) {\r\n if (arrayFliedTest.length !== 0) {\r\n let arrayFliedFliter = arrayFliedTest.filter(\r\n (_item: any) => templateFieldMulti[i].label === _item.label\r\n );\r\n if (arrayFliedFliter.length !== 0) {\r\n arrayFieldMulti.push(arrayFliedFliter[0]);\r\n }\r\n }\r\n }\r\n\r\n setTemplateFieldMulti(arrayFieldMulti);\r\n if (arrayFieldMulti.length === 0) {\r\n setFilterValueSelected([]);\r\n console.log(\"selectedFieldzzzzzzzzzzzzz\", selectedField);\r\n } else {\r\n let _arraykey: any = [];\r\n for (let i = 0; i < arrayFieldMulti.length; i++) {\r\n const element = arrayFieldMulti[i];\r\n for (let j = 0; j < selectedField.length; j++) {\r\n const _element = selectedField[j];\r\n if (element.key === _element.key) {\r\n _arraykey.push(_element);\r\n }\r\n }\r\n }\r\n console.log(\"_arraykey\", _arraykey);\r\n\r\n setFilterValueSelected(_arraykey);\r\n }\r\n }\r\n\r\n // selectedField\r\n console.log(\r\n \"selectedFieldjjjjjjjjjjjjjjjj\",\r\n selectedField,\r\n arrayFieldMulti\r\n );\r\n // console.log(\"selectedField\",selectedField);\r\n let _arrayKey: any = [];\r\n for (let i = 0; i < selectedField.length; i++) {\r\n const element = selectedField[i];\r\n for (let j = 0; j < arrayFieldMulti.length; j++) {\r\n const _element = arrayFieldMulti[j];\r\n if (element.key === _element.key) {\r\n _arrayKey.push(element);\r\n }\r\n }\r\n }\r\n\r\n setSelectedField(_arrayKey);\r\n _SelectFliedMulti(_arrayKey);\r\n }\r\n\r\n function _AutoComplete(data: any, key: any) {\r\n let _dataName: any = [];\r\n if (key === \"RoleEmp\") {\r\n data.map((_data: any) => {\r\n _dataName.push(_data.EmployeeId);\r\n });\r\n setEmployeeRequest(data);\r\n }\r\n if (key === \"RoleId\") {\r\n data.map((_data: any) => {\r\n _dataName.push(_data.RoleId);\r\n });\r\n setGroup(data);\r\n }\r\n setReportModel((prevState: any) => ({\r\n ...prevState,\r\n [key]: _dataName.toString(),\r\n }));\r\n }\r\n const _AutoCompleteText = (data: any, key: any, rowData: any) => {\r\n let _filterValueSelected = filterValueSelected;\r\n\r\n for (let i = 0; i < _filterValueSelected.length; i++) {\r\n const element = _filterValueSelected[i];\r\n if (rowData.FieldCode === element.FieldCode) {\r\n rowData.FieldText = [];\r\n\r\n _filterValueSelected[i].FieldText = data;\r\n }\r\n }\r\n setFilterValueSelected([..._filterValueSelected]);\r\n };\r\n return (\r\n <>\r\n {\r\n Data();\r\n if (props.editProps === true) {\r\n props.setEditReportProps([]);\r\n }\r\n props.toggleDialog();\r\n }}\r\n breakpoints={{ \"1348px\": \"75vw\" }}\r\n onClick={() => {\r\n console.log(\r\n \"reportModelreportModelreportModelreportModel\",\r\n reportModel,\r\n validationForm\r\n );\r\n }}\r\n className=\"header-text\"\r\n >\r\n \r\n
\r\n \r\n \r\n

\r\n {textHeader}\r\n

\r\n \r\n
\r\n
\r\n

\r\n \r\n \r\n \r\n \r\n \r\n (\r\n {\r\n _SelectForm(e.value);\r\n }}\r\n optionLabel=\"TemplateKey\"\r\n placeholder=\"-- Please Select --\"\r\n display=\"chip\"\r\n style={{ width: \"100% \", fontSize: \"13px\" }}\r\n className={\r\n validationForm.TemplateIdValidation === true\r\n ? templateMulti.length !== 0\r\n ? \"\"\r\n : \"Validation\"\r\n : \"\"\r\n }\r\n filter\r\n resetFilterOnHide\r\n />\r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n onTemplateMode(e.value)}\r\n />\r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n {\r\n _SelectFliedMulti(e.value);\r\n }}\r\n dataKey=\"key\"\r\n optionLabel=\"label\"\r\n placeholder=\"-- Please Select --\"\r\n display=\"chip\"\r\n style={{ width: \"100% \", fontSize: \"13px\" }}\r\n className={\r\n validationForm.FieldCollectionValidation === true\r\n ? templateFieldMulti.length !== 0\r\n ? \"\"\r\n : \"Validation\"\r\n : \"\"\r\n }\r\n filter\r\n resetFilterOnHide\r\n showClear\r\n />\r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n

Selected Field

\r\n
\r\n
\r\n (\r\n \r\n onChangeDropdownSelectForm(e.value)\r\n }\r\n responsiveLayout=\"scroll\"\r\n scrollable\r\n scrollHeight=\"flex\"\r\n size=\"small\"\r\n >\r\n \r\n \r\n \r\n Field\r\n

\r\n \r\n }\r\n field=\"label\"\r\n style={{ flexGrow: 1, flexBasis: \"500px\" }}\r\n >\r\n \r\n \r\n Width\r\n

\r\n \r\n }\r\n field=\"width\"\r\n body={(rowData, options) => {\r\n return (\r\n {\r\n _SelectFliedMulti(\r\n templateFieldMulti.map((field: any) => {\r\n if (field.label === rowData.label) {\r\n field.width = e;\r\n }\r\n return field;\r\n })\r\n );\r\n }}\r\n />\r\n );\r\n }}\r\n style={{ flexGrow: 1, flexBasis: \"500px\" }}\r\n >\r\n \r\n \r\n )}\r\n />\r\n
\r\n
\r\n \r\n\r\n \r\n {selectedField.length !== 0 &&\r\n filterValueSelected.length !== 0 && (\r\n <>\r\n
\r\n
\r\n

Filter Value

\r\n
\r\n \r\n (\r\n \r\n onChangeFilterValue(e.value)\r\n }\r\n size=\"small\"\r\n scrollable\r\n scrollHeight=\"flex\"\r\n responsiveLayout=\"scroll\"\r\n >\r\n \r\n \r\n \r\n Field\r\n

\r\n \r\n }\r\n field=\"FieldDisplay\"\r\n style={{ flexGrow: 1, flexBasis: \"110px\" }}\r\n >\r\n {\r\n if (\r\n rowData.FieldTypeFilterDynamic === \"d\" ||\r\n rowData.FieldTypeFilterStatic === \"Datetime\"\r\n ) {\r\n return (\r\n <>\r\n {filterValueSelected !== undefined ? (\r\n filterValueSelected.length !== 0 ? (\r\n filterValueSelected.map(\r\n (data: any) => {\r\n let dateFormat: any =\r\n rowData.FieldTextFrom !==\r\n undefined &&\r\n rowData.FieldTextFrom !==\r\n null &&\r\n rowData.FieldTextFrom\r\n .length !== 0\r\n ? moment(\r\n moment(\r\n formatDate(\r\n rowData.FieldTextFrom\r\n )\r\n ).format(\"DD MMM YYYY\"),\r\n \"DD MMM YYYY\"\r\n ).toDate()\r\n : \"\";\r\n\r\n if (\r\n data.FieldCode ===\r\n rowData.FieldCode\r\n ) {\r\n return (\r\n <>\r\n

\r\n {\"From(\"}\r\n \r\n _RadioButtonFormType(\r\n e,\r\n \"IsTodayFrom\",\r\n rowData\r\n )\r\n }\r\n checkedProps={\r\n rowData.IsTodayFrom ===\r\n true\r\n }\r\n labelProps={\"\"}\r\n keyProps={\"From\"}\r\n />\r\n {\"Today\"} {\")\"}\r\n

\r\n \r\n _CalendarDate(\r\n e.value,\r\n rowData,\r\n \"FieldTextFrom\"\r\n )\r\n }\r\n style={{\r\n marginBottom: \"1em\",\r\n }}\r\n inputStyle={{\r\n borderRadius: \"6px\",\r\n width: \"100%\",\r\n height: \"38px\",\r\n }}\r\n showButtonBar\r\n value={dateFormat}\r\n dateFormat={\"dd M yy\"}\r\n readOnlyInput\r\n />\r\n \r\n );\r\n }\r\n }\r\n )\r\n ) : (\r\n <>\r\n )\r\n ) : (\r\n <>\r\n )}\r\n \r\n );\r\n }\r\n let _dataFilter: any = [];\r\n if (filterValueSelected.length !== 0) {\r\n _dataFilter = filterValueSelected.filter(\r\n (item: any) =>\r\n rowData.FieldCode === item.FieldCode\r\n );\r\n }\r\n if (\r\n rowData.FieldTypeFilterDynamic !== \"d\" &&\r\n rowData.FieldTypeFilterStatic !== \"Datetime\"\r\n ) {\r\n return (\r\n <>\r\n {\r\n onChangeDropdownfilterValue(\r\n rowData,\r\n e.value\r\n );\r\n }}\r\n />\r\n \r\n );\r\n }\r\n }}\r\n >\r\n {\r\n if (\r\n rowData.FieldTypeFilterDynamic === \"d\" ||\r\n rowData.FieldTypeFilterStatic === \"Datetime\"\r\n ) {\r\n return (\r\n <>\r\n {filterValueSelected !== undefined ? (\r\n filterValueSelected.length !== 0 ? (\r\n filterValueSelected.map(\r\n (data: any) => {\r\n let dateFormat: any =\r\n rowData.FieldTextTo !==\r\n undefined &&\r\n rowData.FieldTextTo !==\r\n null &&\r\n rowData.FieldTextTo.length !==\r\n 0\r\n ? moment(\r\n moment(\r\n formatDate(\r\n rowData.FieldTextTo\r\n )\r\n ).format(\"DD MMM YYYY\"),\r\n \"DD MMM YYYY\"\r\n ).toDate()\r\n : \"\";\r\n\r\n if (\r\n data.FieldCode ===\r\n rowData.FieldCode\r\n ) {\r\n return (\r\n <>\r\n

\r\n To (\r\n \r\n _RadioButtonFormType(\r\n e,\r\n \"IsTodayTo\",\r\n rowData\r\n )\r\n }\r\n checkedProps={\r\n rowData.IsTodayTo ===\r\n true\r\n }\r\n keyProps={\"Today\"}\r\n labelProps={\"\"}\r\n />\r\n Today )\r\n

\r\n \r\n _CalendarDate(\r\n e.value,\r\n rowData,\r\n \"FieldTextTo\"\r\n )\r\n }\r\n inputStyle={{\r\n borderRadius: \"6px\",\r\n height: \"38px\",\r\n }}\r\n showButtonBar\r\n value={dateFormat}\r\n dateFormat={\"dd M yy\"}\r\n readOnlyInput\r\n />\r\n \r\n );\r\n }\r\n }\r\n )\r\n ) : (\r\n <>\r\n )\r\n ) : (\r\n <>\r\n )}\r\n \r\n );\r\n } else {\r\n return (\r\n <>\r\n {filterValueSelected !== undefined ? (\r\n filterValueSelected.length !== 0 ? (\r\n filterValueSelected.map(\r\n (data: any) => {\r\n if (\r\n data.FieldCode ===\r\n rowData.FieldCode\r\n ) {\r\n console.log(\r\n \"rowDatarowDatarowData\",\r\n rowData.FieldText\r\n );\r\n\r\n return (\r\n <>\r\n \r\n _AutoCompleteText(\r\n e,\r\n \"FieldText\",\r\n rowData\r\n )\r\n }\r\n onBlur={(e: any) =>\r\n searchTextEnter(\r\n e,\r\n \"FieldText\",\r\n rowData\r\n )\r\n }\r\n valueProps={\r\n rowData.FieldText !==\r\n undefined &&\r\n rowData.FieldText\r\n .length !== 0 &&\r\n typeof rowData.FieldText ===\r\n \"object\"\r\n ? rowData.FieldText\r\n : []\r\n }\r\n keyProps={\"FieldText\"}\r\n styleProps={{\r\n height:\r\n rowData?.FieldText !==\r\n undefined\r\n ? rowData\r\n ?.FieldText\r\n .length === 0\r\n ? \"38px\"\r\n : \"100%\"\r\n : \"38px\",\r\n width: \"100%\",\r\n borderRadius:\r\n \"6px 6px 6px 6px\",\r\n }}\r\n onKeyPress={(e: any) =>\r\n searchTextEnter(\r\n e,\r\n \"FieldText\",\r\n rowData\r\n )\r\n }\r\n />\r\n\r\n {/* */}\r\n \r\n );\r\n }\r\n }\r\n )\r\n ) : (\r\n <>\r\n )\r\n ) : (\r\n <>\r\n )}\r\n \r\n );\r\n\r\n // <>\r\n // \r\n // \r\n // );\r\n }\r\n }}\r\n >\r\n \r\n )}\r\n />\r\n
\r\n \r\n \r\n )}\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n onChangeReportName(e.target.value, \"ReportName\")\r\n }\r\n className={\r\n validationForm.ReportNameValidation === true\r\n ? reportModel.ReportName !== undefined &&\r\n reportModel.ReportName !== null &&\r\n reportModel.ReportName.length !== 0\r\n ? \"report-input\"\r\n : \"Validation report-input\"\r\n : \"report-input\"\r\n }\r\n value={reportModel.ReportName}\r\n // onFocus={true}\r\n // Foc\r\n />\r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n onChangeReportName(e.target.value, \"ReportDescription\")\r\n }\r\n className={\r\n validationForm.ReportDescriptionValidation === true\r\n ? reportModel.ReportDescription !== undefined &&\r\n reportModel.ReportDescription !== null &&\r\n reportModel.ReportDescription.length !== 0\r\n ? \"report-input\"\r\n : \"Validation report-input\"\r\n : \"report-input\"\r\n }\r\n value={reportModel.ReportDescription}\r\n />\r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n <>\r\n {\r\n onChangeGroupData(e.value, \"indexGroupBy\");\r\n }}\r\n />\r\n\r\n \r\n \r\n )}\r\n />\r\n \r\n\r\n \r\n (\r\n <>\r\n {\r\n onChangeGroupData(e.value, \"indexOrderBy\");\r\n }}\r\n optionLabel=\"label\"\r\n placeholder=\"-- Please Select --\"\r\n display=\"chip\"\r\n style={{ width: \"100% \", fontSize: \"13px\" }}\r\n />\r\n\r\n \r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n (\r\n <>\r\n {\r\n onChangeGroupData(e.value, \"indexHideColumn\");\r\n }}\r\n optionLabel=\"label\"\r\n placeholder=\"-- Please Select --\"\r\n display=\"chip\"\r\n style={{ width: \"95% \", fontSize: \"13px\" }}\r\n />\r\n\r\n \r\n \r\n )}\r\n />\r\n \r\n\r\n \r\n (\r\n <>\r\n {\r\n onChangeGroupData(e.value, \"indexSortingBy\");\r\n }}\r\n optionLabel=\"label\"\r\n placeholder=\"-- Please Select --\"\r\n display=\"chip\"\r\n style={{ width: \"100% \", fontSize: \"13px\" }}\r\n />\r\n\r\n \r\n \r\n )}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n

\r\n Edit User Permission / แก้ไขสิทธิ์\r\n

\r\n \r\n
\r\n
\r\n

\r\n \r\n \r\n \r\n \r\n \r\n (\r\n <>\r\n
\r\n
\r\n \r\n
\r\n showModal(\"RoleEmp\")}\r\n setStyleProps={{\r\n backgroundColor: \"#282f6a\",\r\n border: \"1px solid #282f6a\",\r\n borderTopRightRadius: \"6px\",\r\n borderBottomRightRadius: \"6px\",\r\n boxShadow: \"none\",\r\n height:\r\n employeeRequest === undefined ||\r\n employeeRequest === null\r\n ? \"38px\"\r\n : employeeRequest.length !== 0\r\n ? \"100%\"\r\n : \"38px\",\r\n }}\r\n />\r\n
\r\n\r\n {/*

Validation Employee (s)

*/}\r\n \r\n )}\r\n />\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n (\r\n {\r\n _AutoComplete(e.value, \"RoleId\");\r\n }}\r\n optionLabel=\"NameEn\"\r\n placeholder=\"-- Please Select --\"\r\n display=\"chip\"\r\n style={{ width: \"100% \", fontSize: \"13px\" }}\r\n filter\r\n showClear\r\n resetFilterOnHide\r\n />\r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n {\r\n try {\r\n let dataSelectEmployee: any[] = [];\r\n if (employeeRequest) {\r\n dataSelectEmployee = [...employeeRequest];\r\n }\r\n const datafilterEmployee = dataSelectEmployee.filter(\r\n (_data: any) =>\r\n _data.NameEn === rowData.NameEn ||\r\n _data.NameTh === rowData.NameTh\r\n );\r\n if (datafilterEmployee.length === 0) {\r\n dataSelectEmployee.push(rowData);\r\n }\r\n\r\n _AutoComplete(dataSelectEmployee, keyAutoComplete);\r\n setDialogVisible(false);\r\n } catch (error) {\r\n console.log(\"report=>error\", error);\r\n }\r\n }}\r\n columns={[\r\n {\r\n field: \"EmployeeCode\",\r\n headerEn: \"EmployeeCode\",\r\n headerTh: \"รหัสพนักงาน\",\r\n },\r\n {\r\n field: \"NameEn\",\r\n headerEn: \"Name\",\r\n headerTh: \"ชื่อ\",\r\n },\r\n {\r\n field: \"PositionNameEn\",\r\n headerEn: \"Position\",\r\n headerTh: \"ตำแหน่ง\",\r\n },\r\n {\r\n field: \"DepartmentNameEn\",\r\n headerEn: \"Department\",\r\n headerTh: \"หน่วยงาน\",\r\n },\r\n ]}\r\n dialogVisible={isDialogVisible}\r\n setDialogVisible={setDialogVisible}\r\n />\r\n {/* */}\r\n \r\n );\r\n};\r\n","import React from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport \"../../components/ErrorPageComponent/ErrorPageComponent.css\";\r\ntype Props = {};\r\n\r\nconst UnAurthorization = (props: Props) => {\r\n const history = useHistory();\r\n return (\r\n
\r\n
\r\n
\r\n {/*

404

*/}\r\n

Access denied!

\r\n

\r\n You do not have permission to perform access this resource. Please\r\n check your profile with system admin again.\r\n

\r\n
\r\n history.push(\"/Default\")}\r\n >\r\n Go back\r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default UnAurthorization;\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { useHistory, useLocation } from \"react-router-dom\";\r\nimport UnAurthorization from \"../../screens/UnAuthorizePage/UnAurthorization\";\r\nimport { GetNavbarMenu } from \"../../Services/NavBarMenuService\";\r\nconst withPerMission =\r\n (Component: any) =>\r\n ({ ...props }) => {\r\n const [isAuthorize, setIsAuthorizeo] = useState(false);\r\n const [onLoading, setOnLoading] = useState(true);\r\n const history = useHistory();\r\n const location = useLocation();\r\n const isAdmin =\r\n window.localStorage.getItem(\"isAdmin\") === \"true\" ? true : false;\r\n const empData = JSON.parse(window.localStorage.getItem(\"userData\"));\r\n const query = new URLSearchParams(useLocation().search);\r\n\r\n useEffect(() => {\r\n const fetchNav = async () => {\r\n const menus = await GetNavbarMenu(empData?.employeeData?.Email);\r\n const _query = query.get(\"name\") || \"\";\r\n\r\n let _isAuthorize: boolean = isAuthorize;\r\n for (let i = 0; i < menus.length; i++) {\r\n const menu = menus[i];\r\n\r\n if (\r\n menu?.Url?.toLowerCase() === location.pathname?.toLowerCase() ||\r\n menu?.Url?.toLowerCase() === `/${_query?.toLowerCase()}` ||\r\n location?.pathname\r\n ?.toLowerCase()\r\n .includes(menu?.Url?.toLowerCase()) ||\r\n isAdmin\r\n ) {\r\n _isAuthorize = true;\r\n }\r\n }\r\n setOnLoading(false);\r\n setIsAuthorizeo(_isAuthorize);\r\n };\r\n fetchNav();\r\n }, [query]);\r\n\r\n return onLoading ? (\r\n
\r\n ) : isAuthorize ? (\r\n \r\n ) : (\r\n \r\n );\r\n };\r\nexport default withPerMission;\r\n","import moment from \"moment\";\r\nimport { GetAllDynamic, updateDynamic } from \"../Services/DynamicService\";\r\n\r\nexport const exportExcel = (\r\n fileName: string,\r\n data: any[],\r\n setLoad?: (val: boolean) => void\r\n) => {\r\n const excelData = [...data];\r\n\r\n import(\"xlsx\").then((xlsx: any) => {\r\n const worksheet = xlsx.utils.json_to_sheet(excelData);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\",\r\n });\r\n if (setLoad) {\r\n setLoad(true);\r\n }\r\n saveAsExcelFile(\r\n excelBuffer,\r\n fileName + \" : \" + moment(new Date()).format(\"DD MMM YYYY\")\r\n );\r\n if (setLoad) {\r\n setLoad(false);\r\n }\r\n });\r\n};\r\n\r\nconst formatDate = (value: any) => {\r\n if (value != \"\") {\r\n let someDateString = moment(value, \"DD/MM/YYYY HH:mm:ss\");\r\n const NewDate = moment(someDateString).format(\"DD MMM yyyy\");\r\n return NewDate;\r\n } else {\r\n return \"\";\r\n }\r\n};\r\n\r\nconst saveAsExcelFile = async (buffer: any, fileName: any) => {\r\n await import(\"file-saver\").then((FileSaver: any) => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n\r\n FileSaver.saveAs(data, fileName + \"_export_\" + EXCEL_EXTENSION);\r\n });\r\n};\r\n\r\nexport const importExcel = async (e: any, apiName: string) => {\r\n try {\r\n const file = e.target.files[0];\r\n\r\n return import(\"xlsx\").then((xlsx) => {\r\n const reader = new FileReader();\r\n reader.onload = async (e: any) => {\r\n const wb = xlsx.read(e.target.result, { type: \"array\" });\r\n const wsname = wb.SheetNames[0];\r\n const ws = wb.Sheets[wsname];\r\n const data = xlsx.utils.sheet_to_json(ws, { header: 1 });\r\n const cols: any = data[0];\r\n data.shift();\r\n let _importedData = data.map((d: any) => {\r\n return cols.reduce((obj: any, c: any, i: any) => {\r\n obj[c] = d[i];\r\n return obj;\r\n }, {});\r\n });\r\n console.log(\"table=>_importedData\", _importedData);\r\n\r\n if (_importedData.length !== 0) {\r\n for (let i = 0; i < _importedData.length; i++) {\r\n const element = _importedData[i];\r\n var apiNamereplace = apiName?.replace(\"/GetAll\", \"\");\r\n let res = await updateDynamic(apiNamereplace, element);\r\n if (res.result === \"success\") {\r\n let _dataDynamic = await GetAllDynamic(apiName, undefined);\r\n return { respone: true, data: _dataDynamic };\r\n } else {\r\n return { respone: false };\r\n }\r\n }\r\n } else {\r\n return { respone: false };\r\n }\r\n };\r\n reader.readAsArrayBuffer(file);\r\n });\r\n } catch (error: any) {\r\n return { respone: false, data: error };\r\n }\r\n};\r\n","import React, { forwardRef, useEffect, useImperativeHandle, useState } from \"react\";\r\nimport { Checkbox, Divider, Form, Input } from \"antd\";\r\nimport type { CheckboxChangeEvent } from \"antd/es/checkbox\";\r\nimport type { CheckboxValueType } from \"antd/es/checkbox/Group\";\r\nimport { FilterDropdownProps, FilterValue } from \"antd/lib/table/interface\";\r\nimport { ColumnsProps } from \"./DynamicTable\";\r\nimport { onChanceRef } from '../../../Helper/RequestRefFunctions';\r\nconst CheckboxGroup = Checkbox.Group;\r\ntype Props = {\r\n colProp: ColumnsProps;\r\n columnLabel: string;\r\n option: any[];\r\n filterDropDownProps: FilterDropdownProps;\r\n filterState?: Record;\r\n dataSource: any[];\r\n allColumnProps: ColumnsProps[];\r\n isCheckAll:(check:boolean)=>void\r\n};\r\n\r\nconst SearchTextInTable = forwardRef(({\r\n isCheckAll,\r\n colProp,\r\n columnLabel,\r\n filterDropDownProps,\r\n filterState,\r\n dataSource,\r\n allColumnProps,\r\n}: Props, ref) => {\r\n const [checkedList, setCheckedList] = useState([]);\r\n const [checkAll, setCheckAll] = useState(false);\r\n const [searchValue, setSearchValue] = useState(\"\");\r\n const [columnOption, setColumnOption] = useState([]);\r\n\r\n useEffect(() => {\r\n filterDropDownProps.setSelectedKeys([...checkedList] as any);\r\n }, [checkedList]);\r\n\r\n const resetCheck = () => {\r\n setCheckAll(false)\r\n setCheckedList([])\r\n };\r\n\r\n useImperativeHandle(ref, () => ({\r\n resetCheck\r\n }));\r\n useEffect(() => {\r\n\r\n if (!filterDropDownProps.visible) return;\r\n setColumnOption(filterDataSource() ?? []);\r\n }, [filterDropDownProps.visible,checkedList]);\r\n \r\n const filterDataSource = () => {\r\n if (filterState) {\r\n const filterKeys = Object.keys(filterState).filter((key) => {\r\n const value = filterState[key];\r\n return value !== null && value !== undefined && value.length > 0;\r\n });\r\n const indexOfKey = filterKeys.indexOf(colProp.key) \r\n \r\n if (indexOfKey > 0) {\r\n const keysToConsider = filterKeys.slice(\r\n 0,\r\n filterKeys.indexOf(colProp.key)\r\n );\r\n\r\n const result = dataSource.filter((item) => {\r\n return keysToConsider.every((key) => {\r\n const filterColumnPorps = allColumnProps.find((e) => e.key === key);\r\n const filterValue: any = filterState[key];\r\n if (filterColumnPorps?.type === \"date\") {\r\n if (!filterValue) return true;\r\n if (!filterValue[0]) return true;\r\n return item[key]\r\n ?.add(1, \"seconds\")\r\n .isBetween(filterValue[0][0], filterValue[0][1]);\r\n } else if (filterColumnPorps?.type === \"datetime\") {\r\n if (!filterValue) return true;\r\n if (!filterValue[0]) return true;\r\n return item[key]?.isBetween(filterValue[0][0], filterValue[0][1]);\r\n } else if (filterColumnPorps?.type === \"number\") {\r\n const recordVal = Number(item[key]);\r\n return (\r\n recordVal >= filterValue[0][0] && recordVal <= filterValue[0][1]\r\n );\r\n } else {\r\n return filterState[key]?.includes(item[key]);\r\n }\r\n });\r\n });\r\n\r\n return Array.from(new Set(result.map((e) => e[colProp.key])));\r\n } else if (indexOfKey === -1) {\r\n const result = dataSource.filter((item) => {\r\n return filterKeys.every((key) => {\r\n const filterColumnPorps = allColumnProps.find((e) => e.key === key);\r\n\r\n const filterValue: any = filterState[key];\r\n\r\n if (filterColumnPorps?.type === \"date\") {\r\n if (!filterValue) return true;\r\n if (!filterValue[0]) return true;\r\n return item[key]\r\n ?.add(1, \"seconds\")\r\n .isBetween(filterValue[0][0], filterValue[0][1]);\r\n } else if (filterColumnPorps?.type === \"datetime\") {\r\n if (!filterValue) return true;\r\n if (!filterValue[0]) return true;\r\n return item[key]?.isBetween(filterValue[0][0], filterValue[0][1]);\r\n } else if (filterColumnPorps?.type === \"number\") {\r\n const recordVal = Number(item[key]);\r\n return (\r\n recordVal >= filterValue[0][0] && recordVal <= filterValue[0][1]\r\n );\r\n } else {\r\n return filterState[key]?.includes(item[key]);\r\n }\r\n });\r\n });\r\n\r\n return Array.from(new Set(result.map((e) => e[colProp.key])));\r\n } else if (indexOfKey === 0) {\r\n\r\n return Array.from(new Set(dataSource?.map((e) => e[colProp.key]))).map(\r\n (e) => {\r\n return e?.toString();\r\n }\r\n );\r\n }\r\n }\r\n };\r\n\r\n\r\n const onChange = (list: CheckboxValueType[]) => {\r\n setCheckedList(list);\r\n setCheckAll(\r\n list.length ===\r\n columnOption.filter((e: string) =>\r\n e\r\n ?.toString()\r\n ?.toLowerCase()\r\n .includes(searchValue?.toString()?.toLowerCase())\r\n ).length\r\n );\r\n };\r\n\r\n\r\n const onCheckAllChange = (e: CheckboxChangeEvent) => {\r\n setCheckedList(\r\n e.target.checked\r\n ? columnOption.filter((e: string) =>\r\n e\r\n ?.toString()\r\n ?.toLowerCase()\r\n .includes(searchValue?.toString()?.toLowerCase())\r\n ).map((e) => e?.toString())\r\n : []\r\n );\r\n setCheckAll(e.target.checked);\r\n };\r\n\r\n useEffect(()=>{\r\n if(checkAll){\r\n if(!searchValue) isCheckAll(checkAll) \r\n else isCheckAll(false)\r\n }else isCheckAll(false)\r\n },[checkAll])\r\n \r\n const onSearchCahnge = (value: string) => {\r\n // setCheckedList(\r\n // columnOption.filter((e: string) =>\r\n // e?.toString()?.toLowerCase().includes(value?.toString()?.toLowerCase())\r\n // )\r\n // );\r\n setCheckAll(false);\r\n setSearchValue(value);\r\n };\r\n\r\n \r\n const checkAllChange = (e: boolean) => {\r\n setCheckedList(\r\n e\r\n ? columnOption.filter((e: string) =>\r\n e\r\n ?.toString()\r\n ?.toLowerCase()\r\n .includes(searchValue?.toString()?.toLowerCase())\r\n ).map((e) => e?.toString())\r\n : []\r\n );\r\n setCheckAll(e);\r\n };\r\n\r\n \r\n useEffect(()=>{\r\n filterState &&filterState[columnLabel] &&setCheckedList(filterState[columnLabel])\r\n },[filterDropDownProps.visible])\r\n useEffect(()=>{\r\n if (filterDropDownProps.visible) return;\r\n const filterBycolumn=filterState&&filterState[columnLabel]\r\n\r\n if(filterState&&Object.keys(filterState).length===0 || filterBycolumn ===undefined ||\r\n filterBycolumn === null\r\n ){\r\n setCheckAll(true)\r\n checkAllChange(true)\r\n }\r\n \r\n },[filterDropDownProps.visible,columnLabel])\r\n \r\n useEffect(()=>{\r\n if (filterDropDownProps.visible) return;\r\n const filterBycolumn=filterState&&filterState[columnLabel]\r\n if(filterBycolumn?.length === columnOption.length)setCheckAll(true)\r\n },[filterDropDownProps.visible])\r\n return (\r\n <>\r\n
\r\n {\r\n onSearchCahnge(e.target.value);\r\n }}\r\n />\r\n
\r\n
\r\n \r\n Select All\r\n \r\n \r\n \r\n \r\n columnOption.includes(option))} // Filter checkedList based on visible options\r\n style={{\r\n paddingLeft: 20,\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n overflowY: \"scroll\",\r\n maxHeight: \"20vh\",\r\n }}\r\n >\r\n {columnOption\r\n .filter((e: string) =>\r\n e\r\n ?.toString()\r\n ?.toLowerCase()\r\n .includes(searchValue?.toString()?.toLowerCase())\r\n )\r\n .map((option, idx) => (\r\n {\r\n const isChecked = e.target.checked;\r\n const option = e.target.value;\r\n let updatedSet = new Set(checkedList); \r\n\r\n if (isChecked) {\r\n updatedSet.add(option); \r\n } else {\r\n updatedSet.delete(option); \r\n }\r\n\r\n setCheckedList(Array.from(updatedSet)); \r\n setCheckAll(\r\n Array.from(updatedSet).length ===\r\n columnOption.filter((e: string) =>\r\n e\r\n ?.toString()\r\n ?.toLowerCase()\r\n .includes(searchValue?.toString()?.toLowerCase())\r\n ).length\r\n );\r\n }}\r\n >\r\n {option?.toString()}\r\n \r\n ))}\r\n \r\n \r\n \r\n
\r\n \r\n );\r\n});\r\n\r\nexport default SearchTextInTable;\r\n","import {\r\n Space,\r\n Button,\r\n AutoComplete,\r\n DatePicker,\r\n Divider,\r\n Slider,\r\n InputNumber,\r\n Input,\r\n} from \"antd\";\r\nimport { ColumnType } from \"antd/lib/table\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { SearchOutlined } from \"@ant-design/icons\";\r\nimport { ColumnsProps } from \"../components/TableComponents/DynamicTableFix/DynamicTable\";\r\nimport moment, { Moment } from \"moment\";\r\nimport SearchTextInTable from \"../components/TableComponents/DynamicTableFix/SearchTextInTable\";\r\nimport { FilterDropdownProps, FilterValue } from \"antd/lib/table/interface\";\r\nconst { RangePicker } = DatePicker;\r\nexport const getColumnSearchProps = (\r\n colProp: ColumnsProps,\r\n dataSource: any[],\r\n filterState: Record,\r\n allColumnProps: ColumnsProps[]\r\n): ColumnType => {\r\n \r\n if (colProp.type === \"date\" || colProp.type === \"datetime\") {\r\n return {\r\n filterDropdown: ({\r\n setSelectedKeys,\r\n selectedKeys,\r\n confirm,\r\n clearFilters,\r\n }) => {\r\n return (\r\n e.stopPropagation()}\r\n >\r\n {\r\n if (e) {\r\n setSelectedKeys([e as any]);\r\n } else {\r\n clearFilters && clearFilters();\r\n }\r\n }}\r\n />\r\n \r\n clearFilters && clearFilters()}\r\n size=\"small\"\r\n disabled={selectedKeys.length === 0}\r\n type=\"link\"\r\n >\r\n Reset\r\n \r\n {\r\n confirm({ closeDropdown: true });\r\n }}\r\n >\r\n Ok\r\n \r\n
\r\n \r\n );\r\n },\r\n onFilter: (value, record) => {\r\n const selectedVal: Moment[] = value as any;\r\n const rowData: Moment = record[colProp.key];\r\n if (!rowData) return false;\r\n if (colProp.type === \"date\") {\r\n return rowData\r\n .add(1, \"seconds\")\r\n .isBetween(\r\n selectedVal[0].startOf(\"day\"),\r\n selectedVal[1].endOf(\"day\")\r\n );\r\n } else {\r\n return rowData.isBetween(\r\n selectedVal[0].startOf(\"day\"),\r\n selectedVal[1].endOf(\"day\")\r\n );\r\n }\r\n },\r\n };\r\n } else if (colProp.type === \"number\") {\r\n return {\r\n filterDropdown: ({\r\n setSelectedKeys,\r\n selectedKeys,\r\n confirm,\r\n clearFilters,\r\n }) => {\r\n const optionValue: any = colProp.option.map((option) => {\r\n return option ? Number(option?.replaceAll(\",\", \"\")) : 0;\r\n });\r\n\r\n const val: [number, number] = selectedKeys[0] as any;\r\n\r\n const minOption = Math.min(...optionValue);\r\n const maxOption = Math.max(...optionValue);\r\n const minVal = val ? val[0] : minOption;\r\n const maxVal = val ? val[1] : maxOption;\r\n\r\n const decimal = colProp.decimal ?? 2;\r\n const decimalStep = Math.pow(10, -decimal);\r\n return (\r\n e.stopPropagation()}\r\n >\r\n {\r\n setSelectedKeys([e as any]);\r\n }}\r\n />\r\n \r\n \r\n `${value}`.replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\r\n }\r\n stringMode\r\n controls={false}\r\n onChange={(e) => {\r\n if (e) {\r\n setSelectedKeys([[Number(e), maxVal] as any]);\r\n }\r\n }}\r\n />\r\n -\r\n \r\n `${value}`.replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")\r\n }\r\n step={decimalStep.toString()}\r\n stringMode\r\n onChange={(e) => {\r\n if (e) {\r\n setSelectedKeys([[minVal, Number(e)] as any]);\r\n }\r\n }}\r\n />\r\n \r\n \r\n clearFilters && clearFilters()}\r\n size=\"small\"\r\n disabled={selectedKeys.length === 0}\r\n type=\"link\"\r\n >\r\n Reset\r\n \r\n {\r\n confirm({ closeDropdown: true });\r\n }}\r\n >\r\n Ok\r\n \r\n \r\n \r\n );\r\n },\r\n onFilter: (value: any, record) => {\r\n const recordVal = Number(record[colProp.key]);\r\n\r\n return recordVal >= value[0] && recordVal <= value[1];\r\n },\r\n };\r\n } else if (colProp.type === \"string\") {\r\n return {\r\n filterDropdown: (filterDropDownProps) => {\r\n const [check, setCheck] = useState(false);\r\n const tableRef = useRef<{ resetCheck: () => void }>(null);\r\n \r\n const handleCheckAllChange = (checkValue: boolean) => {\r\n setCheck(checkValue);\r\n };\r\n const triggerResetCheck = () => {\r\n if (tableRef.current) {\r\n tableRef.current.resetCheck(); // Call the resetCheck function exposed by the child component\r\n }\r\n };\r\n\r\n return (\r\n {\r\n e.stopPropagation()}}\r\n >\r\n {\r\n handleCheckAllChange(checkValue)\r\n }}\r\n\r\n colProp={colProp}\r\n option={colProp.option}\r\n filterDropDownProps={filterDropDownProps}\r\n columnLabel={colProp.label}\r\n filterState={filterState}\r\n dataSource={dataSource}\r\n allColumnProps={allColumnProps}\r\n />\r\n \r\n
\r\n {\r\n if(!!check) {\r\n filterDropDownProps.clearFilters && filterDropDownProps.clearFilters()\r\n triggerResetCheck()\r\n filterDropDownProps.confirm()\r\n return\r\n }\r\n if(!filterDropDownProps.selectedKeys.length )return\r\n filterDropDownProps.confirm({ closeDropdown: true });\r\n }}\r\n >\r\n Ok \r\n \r\n \r\n \r\n );\r\n },\r\n onFilter: (value, record) => {\r\n if (typeof value === \"string\") {\r\n \r\n return (\r\n record[colProp.key]?.toString().toLowerCase() ===\r\n (value as string).toString()?.toLowerCase()\r\n );\r\n } else {\r\n return record[colProp.key] == value.toString();\r\n }\r\n },\r\n };\r\n } else {\r\n return { sorter: false };\r\n }\r\n};\r\n\r\nexport const checkedForDataTypes = (\r\n dataKeys: string[],\r\n dataSource: any[],\r\n masterFormat: string = \"DD MMM YYYY\"\r\n) => {\r\n let keyTypes: ColumnsProps[] = [];\r\n let foundKeys: Set = new Set();\r\n\r\n let validKeys = dataKeys.filter((key) => {\r\n return dataSource.some((row) => row[key] !== null);\r\n });\r\n\r\n for (let i = 0; i < dataSource.length; i++) {\r\n for (let key of dataKeys) {\r\n let dataType = \"string\";\r\n\r\n if ([\"createddate\", \"modifieddate\"].includes(key.toLowerCase())) {\r\n dataType = \"datetime\";\r\n } else if (key.toLowerCase().includes(\"date\")) {\r\n dataType = \"date\";\r\n }\r\n\r\n if (!foundKeys.has(key)) {\r\n keyTypes.push({\r\n key: key,\r\n label: key,\r\n option: [],\r\n type: dataType,\r\n dateFormat:\r\n dataType === \"date\" || dataType === \"datetime\"\r\n ? masterFormat\r\n : undefined,\r\n });\r\n foundKeys.add(key);\r\n }\r\n }\r\n\r\n if (foundKeys.size === validKeys.length) {\r\n break;\r\n }\r\n }\r\n\r\n return keyTypes;\r\n};\r\n\r\nexport const formatData = async (\r\n dataSource: any[],\r\n dataKey: ColumnsProps[]\r\n) => {\r\n let newData = dataSource;\r\n\r\n dataKey.forEach((colProp) => {\r\n if ([\"date\", \"datetime\"].includes(colProp.type.toLowerCase())) {\r\n newData.forEach((e: any, index: number) => {\r\n e[colProp.key] = moment(e[colProp.key]);\r\n });\r\n }\r\n });\r\n return newData;\r\n};\r\n","import {\r\n AutoComplete,\r\n Col,\r\n DatePicker,\r\n Row,\r\n Table,\r\n TablePaginationConfig,\r\n Tag,\r\n} from \"antd\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { MultiSelect } from \"primereact/multiselect\";\r\nimport \"../../AntdControlComponent/TableComponent/TableComponentCSS.css\";\r\nimport \"../Table.css\";\r\nimport SortingButton from \"../../ButtonComponents/SortingButton\";\r\nimport { sorterFunc } from \"../../../Helper/SortingFunction\";\r\nimport moment, { Moment } from \"moment\";\r\nimport { Button } from \"primereact/button\";\r\nimport { exportExcel } from \"../../../Helper/ExportExcel\";\r\nimport { GetAllDynamic, updateDynamic } from \"../../../Services/DynamicService\";\r\nimport { useLocation } from \"react-router\";\r\nimport { useUserContext } from \"../../../Context/UserContext\";\r\nimport { IPaging } from \"../../../IRequestModel/IPaginationOptionModel\";\r\nimport useMasterSetting from \"../../../hooks/useMasterSetting\";\r\nimport { ColumnsType } from \"antd/lib/table\";\r\nimport {\r\n checkedForDataTypes,\r\n formatData,\r\n getColumnSearchProps,\r\n} from \"../../../Helper/TableHelper\";\r\nimport { ColumnFilterItem, FilterValue } from \"antd/lib/table/interface\";\r\nimport { data } from \"jquery\";\r\nconst { RangePicker } = DatePicker;\r\n\r\ntype Props = {\r\n tableName: string;\r\n dataSource: any[];\r\n customColumns?: any[];\r\n setItemsCount?: (value: number) => void;\r\n canExport: boolean;\r\n setLoad?: (value: boolean) => void;\r\n actionBodyTemplate?: any;\r\n customImportFileButton?: any;\r\n rowClickAction?: any;\r\n canEdit?: any;\r\n toast?: any;\r\n loading?: boolean;\r\n reloadData?: (apiName: string) => void;\r\n VersionTempVCProps?: any;\r\n paginationOption?: TablePaginationConfig;\r\n onPageChange?: (paginationValue: IPaging) => void;\r\n};\r\n\r\ntype ITableFilter = {\r\n key: string;\r\n type: string;\r\n sortType: \"dec\" | \"asc\" | null;\r\n value: any;\r\n};\r\n\r\nexport type ColumnsProps = {\r\n key: string;\r\n label: string;\r\n type: string;\r\n option: any[];\r\n maxNumberValue?: number;\r\n decimal?: number;\r\n symbol?: string;\r\n dateFormat?: string;\r\n};\r\n\r\nconst DynamicTable = ({\r\n tableName,\r\n dataSource,\r\n customColumns,\r\n canExport,\r\n setItemsCount,\r\n setLoad,\r\n canEdit,\r\n actionBodyTemplate,\r\n rowClickAction,\r\n reloadData,\r\n customImportFileButton,\r\n loading,\r\n paginationOption,\r\n onPageChange,\r\n}: Props) => {\r\n const dataKey = customColumns\r\n ? customColumns.map((e) => e.key)\r\n : Object.keys(dataSource[0] ?? {});\r\n\r\n const [hoverAction, setHoverAction] = useState(false);\r\n const [columnsProps, setColumnsProps] = useState([]);\r\n const [filterState, setFilterState] = useState<\r\n Record\r\n >({});\r\n const [searchedData, setSearchedData] = useState([]);\r\n const { masterSetting, getMasterSetting } = useMasterSetting();\r\n const [exportLoading, setExportLoading] = useState(false);\r\n const [showCols, setShowCols] = useState();\r\n const [userData] = useUserContext();\r\n const [importLoading, setImportLoading] = useState(false);\r\n const [hasArrayEmpty, setHasArrayEmpty] = useState(false);\r\n useEffect(() => {\r\n initFunc();\r\n\r\n setSearchedData(dataSource);\r\n }, [dataSource]);\r\n\r\n const initFunc = async (selectedCols?: string[]) => {\r\n let keyTypes: ColumnsProps[] = [];\r\n let _selectedCols: string[] = [];\r\n const _masterSetting: any = await getMasterSetting();\r\n\r\n if (customColumns) {\r\n keyTypes = [...checkedForDataTypes(dataKey, dataSource)];\r\n if (keyTypes.length === 0) {\r\n console.log(keyTypes);\r\n keyTypes = customColumns.map((e) => {\r\n return {\r\n key: e.key,\r\n label: e.label,\r\n symbol: e.symbol,\r\n option: [],\r\n type:\r\n e.FieldTypeFilterDynamic === \"c\"\r\n ? \"number\"\r\n : e.FieldTypeFilterDynamic === \"d\"\r\n ? \"date\"\r\n : \"string\",\r\n dateFormat: _masterSetting?.FormatDate?.Value2 ?? \"DD MMM YYYY\",\r\n };\r\n });\r\n }\r\n keyTypes.forEach((e) => {\r\n const customCol = customColumns.find(\r\n (customCol) => e.key === customCol.key\r\n );\r\n\r\n if (customCol) {\r\n _selectedCols.push(e.key);\r\n e.label = customCol.label;\r\n e.symbol = customCol.symbol;\r\n e.decimal = Number(customCol.Decimal ?? 2);\r\n e.type =\r\n customCol.FieldTypeFilterDynamic === \"c\"\r\n ? \"number\"\r\n : customCol.FieldTypeFilterDynamic === \"d\"\r\n ? \"date\"\r\n : customCol.FieldTypeFilterStatic === \"Datetime\"\r\n ? \"datetime\"\r\n : customCol.FieldTypeFilterDynamic === \"at\"\r\n ? \"file\"\r\n : \"string\";\r\n\r\n if (e.type === \"date\" && _masterSetting?.FormatDate?.Value2) {\r\n e.dateFormat = _masterSetting?.FormatDate?.Value2;\r\n } else if (customCol.FieldTypeFilterDynamic === \"d\") {\r\n const symbol =\r\n customCol.symbol && customCol.symbol !== \"\"\r\n ? customCol.symbol\r\n : \" \";\r\n e.dateFormat = \"DD\" + symbol + \"MMM\" + symbol + \"YYYY\";\r\n } else if (e.type === \"datetime\") {\r\n e.dateFormat =\r\n _masterSetting?.FormatDate?.Value1 || \"DD MMM yyyy hh:mm:ss\";\r\n }\r\n\r\n if (e.type === \"number\") {\r\n const optionValue: any = e.option.map((option) => {\r\n return option?.value\r\n ? Number(option?.value?.replaceAll(\",\", \"\"))\r\n : 0;\r\n });\r\n e.maxNumberValue = Math.max(optionValue);\r\n }\r\n }\r\n });\r\n\r\n if (!selectedCols) {\r\n selectedCols = _selectedCols.filter(\r\n (key: string) => !key?.toLowerCase()?.includes(\"id\")\r\n );\r\n }\r\n } else {\r\n if (actionBodyTemplate) {\r\n keyTypes = [\r\n { key: \"operation\", label: \"\", type: \"action\", option: [] },\r\n ...checkedForDataTypes(\r\n dataKey,\r\n dataSource,\r\n _masterSetting?.FormatDate?.Value1?.replaceAll(\"d\", \"D\")\r\n ),\r\n ];\r\n } else {\r\n keyTypes = [\r\n ...checkedForDataTypes(\r\n dataKey,\r\n dataSource,\r\n _masterSetting?.FormatDate?.Value1?.replaceAll(\"d\", \"D\")\r\n ),\r\n ];\r\n }\r\n\r\n formatData(dataSource, keyTypes);\r\n\r\n if (!selectedCols) {\r\n selectedCols = dataKey.filter(\r\n (key: string) => !key?.toLowerCase()?.includes(\"id\")\r\n );\r\n }\r\n }\r\n\r\n setColumnsProps(\r\n keyTypes?.filter(\r\n (e) =>\r\n e.key === \"operation\" ||\r\n (selectedCols?.includes(e.key) &&\r\n ![\"isEditing\", \"isPublishVersion\"].includes(e.key))\r\n )\r\n );\r\n\r\n setShowCols(selectedCols ?? []);\r\n };\r\n\r\n const sorterDate = (a: Moment | null, b: Moment | null) => {\r\n if (a === null && b === null) return 0;\r\n if (a === null) return -1;\r\n if (b === null) return 1;\r\n\r\n if (!a.isValid() && !b.isValid()) return 0;\r\n if (!a.isValid()) return -1;\r\n if (!b.isValid()) return 1;\r\n\r\n if (a.isBefore(b)) return -1;\r\n if (a.isAfter(b)) return 1;\r\n return 0;\r\n };\r\n\r\n const renderColumnBody = (value: any, colProp: ColumnsProps, record: any) => {\r\n switch (colProp.type) {\r\n case \"number\":\r\n if (colProp.symbol) {\r\n return value\r\n ? Number(value.toString()?.replaceAll(\",\", \"\")).toLocaleString(\r\n undefined,\r\n { minimumFractionDigits: colProp.decimal }\r\n ) + colProp.symbol\r\n : \"\";\r\n } else {\r\n return value\r\n ? Number(value.toString()?.replaceAll(\",\", \"\")).toLocaleString(\r\n undefined,\r\n { minimumFractionDigits: colProp.decimal }\r\n )\r\n : \"\";\r\n }\r\n\r\n case \"date\":\r\n const date = value as Moment;\r\n try {\r\n return date?.isValid() ? date.format(colProp.dateFormat) : \"\";\r\n } catch (error) {\r\n return date;\r\n }\r\n case \"datetime\":\r\n const datetime = value as Moment;\r\n try {\r\n \r\n return datetime?.isValid()\r\n ? datetime.format(colProp.dateFormat?.replaceAll(\"d\", \"D\"))\r\n : \"\";\r\n } catch (error) {\r\n return datetime;\r\n }\r\n\r\n case \"file\":\r\n return value;\r\n\r\n default:\r\n if (colProp.key === \"TemplateName\") {\r\n return (\r\n <>\r\n {value}\r\n {record.isPublishVersion === \"true\" && (\r\n \r\n Publish\r\n \r\n )}\r\n {record.isEditing === \"true\" && (\r\n \r\n Editing\r\n \r\n )}\r\n \r\n );\r\n } else if (colProp.key === \"AmountFrom_AmountTo\") {\r\n const dd = value?.split(\":\");\r\n let htmlBody: any[] = [];\r\n dd.forEach((data: any, idx: number) => {\r\n if (idx < 4) {\r\n htmlBody.push(

{data}

);\r\n } else {\r\n htmlBody.push(

.......

);\r\n }\r\n });\r\n return <>{htmlBody};\r\n } else {\r\n return value?.toString();\r\n }\r\n }\r\n };\r\n\r\n const onExportClick = async () => {\r\n setExportLoading(true);\r\n await exportExcel(tableName, reconStructionForExport(), setExportLoading);\r\n setExportLoading(false);\r\n };\r\n function reconStructionForExport() {\r\n let dataExport: any[] = [];\r\n try {\r\n searchedData.forEach((currentData) => {\r\n let exportRow: any = {};\r\n columnsProps.forEach((col: ColumnsProps) => {\r\n if (!showCols.includes(col.key)) return;\r\n if (!currentData[col.key]) return \"\";\r\n\r\n if (col.type === \"date\" || col.type === \"datetime\") {\r\n exportRow[col.key] = currentData[col.key].format(col.dateFormat);\r\n } else if (col.type === \"number\") {\r\n exportRow[col.key] = Number(currentData[col.key]);\r\n } else {\r\n exportRow[col.key] = currentData[col.key];\r\n }\r\n });\r\n if (JSON.stringify(exportRow) !== \"{}\") {\r\n dataExport.push(exportRow);\r\n }\r\n });\r\n } catch (error) {\r\n console.error(\"table=>error\", error);\r\n }\r\n return dataExport;\r\n }\r\n const [optionPosition, setOptionPosition] = useState([]);\r\n const importExcel = async (e: any) => {\r\n const file = e.target.files[0];\r\n\r\n try {\r\n import(\"xlsx\").then((xlsx) => {\r\n const reader = new FileReader();\r\n\r\n try {\r\n reader.onload = async (e: any) => {\r\n const wb = xlsx.read(e.target.result, { type: \"array\" });\r\n const wsname = wb.SheetNames[0];\r\n const ws = wb.Sheets[wsname];\r\n const data = xlsx.utils.sheet_to_json(ws, { header: 1 });\r\n const cols: any = data[0];\r\n data.shift();\r\n let _importedData = data.map((d: any) => {\r\n return cols.reduce((obj: any, c: any, i: any) => {\r\n obj[c] = d[i];\r\n return obj;\r\n }, {});\r\n });\r\n\r\n if (_importedData.length !== 0) {\r\n const data = optionPosition.length\r\n ? optionPosition\r\n : await GetAllDynamic(\r\n \"PositionLevel/GetAll?IsActive=true\",\r\n undefined\r\n );\r\n setOptionPosition(data);\r\n let res = null;\r\n for (let i = 0; i < _importedData.length; i++) {\r\n const element = _importedData[i];\r\n var apiNamereplace = tableName?.replace(\"/GetAll\", \"\");\r\n if (\r\n !element[apiNamereplace + \"Id\"] ||\r\n element[apiNamereplace + \"Id\"] === \"\"\r\n ) {\r\n element.CreatedBy = userData.EmployeeId.toString();\r\n element.ModifiedBy = userData.EmployeeId.toString();\r\n } else {\r\n element.ModifiedBy = userData.EmployeeId.toString();\r\n }\r\n const { PositionLevelId, PositionId } =\r\n Array.isArray(data) &&\r\n data.find((pos) => {\r\n return pos?.NameEn === element?.PositionLevelNameEn;\r\n });\r\n element.PositionId = PositionId;\r\n element.AccountId = userData.EmployeeId.toString();\r\n element.PositionLevelId = PositionLevelId;\r\n setImportLoading(true);\r\n\r\n res = await updateDynamic(apiNamereplace, element);\r\n }\r\n\r\n if (res.result === \"success\") {\r\n if (reloadData) {\r\n reloadData(tableName);\r\n }\r\n }\r\n setImportLoading(false);\r\n }\r\n };\r\n\r\n reader.readAsArrayBuffer(file);\r\n } catch (error) {\r\n setImportLoading(false);\r\n }\r\n });\r\n } catch (error) {\r\n setImportLoading(false);\r\n }\r\n e.target.value = null;\r\n };\r\n\r\n const columns: ColumnsType = columnsProps\r\n .filter((e) => showCols?.includes(e.key) || e.key === \"operation\")\r\n ?.map((colProp) => {\r\n const key = colProp.key;\r\n\r\n if (canEdit && key === \"operation\") {\r\n return {\r\n key: \"operation\",\r\n align: \"center\",\r\n fixed: \"left\",\r\n width: 25,\r\n render: (_: any, record: any) => {\r\n if (actionBodyTemplate) {\r\n return (\r\n setHoverAction(true)}\r\n onMouseLeave={(e: any) => setHoverAction(false)}\r\n >\r\n {actionBodyTemplate(record)}\r\n \r\n );\r\n }\r\n },\r\n };\r\n }\r\n\r\n return {\r\n title: {colProp.label},\r\n dataIndex: key,\r\n key: key,\r\n align: colProp.type === \"number\" ? \"right\" : \"left\",\r\n width: 250,\r\n render: (value: any, record: any, index: number) =>\r\n renderColumnBody(value, colProp, record),\r\n sorter: (a: any, b: any) => {\r\n return colProp.type === \"date\" || colProp.type === \"datetime\"\r\n ? sorterDate(a[key], b[key])\r\n : a[key]?.toString().localeCompare(b[key]?.toString());\r\n },\r\n ...getColumnSearchProps(colProp, dataSource, filterState, columnsProps),\r\n };\r\n });\r\n\r\n useEffect(() => {\r\n setItemsCount &&\r\n setItemsCount(showCols?.length ? dataSource.length : 0);\r\n }, [dataSource, hasArrayEmpty, showCols?.length]);\r\n return (\r\n
\r\n \r\n \r\n !e.toLowerCase().endsWith(\"id\"))\r\n }\r\n onChange={(e) => {\r\n setShowCols(e.value);\r\n }}\r\n showClear\r\n placeholder=\"Select columns\"\r\n style={{ width: \"50%\" }}\r\n optionLabel={customColumns ? \"label\" : undefined}\r\n optionValue={customColumns ? \"key\" : undefined}\r\n />\r\n \r\n {canExport && (\r\n \r\n \r\n {!location.pathname.includes(\"DynamicReport\") &&\r\n !location.search?.includes(\"DelegateList\") &&\r\n !location.search?.includes(\"TimeStamp\") && (\r\n <>\r\n {customImportFileButton ? (\r\n customImportFileButton\r\n ) : (\r\n <>\r\n \r\n \r\n \r\n \r\n Import from excel\r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n \r\n )}\r\n \r\n \r\n {\r\n \r\n const hasArrayEmpty = Object.keys(filters).some(\r\n (key) =>\r\n (Array.isArray(filters[key]) && filters[key].length === 0) ||\r\n filters[key] === null\r\n );\r\n setHasArrayEmpty(hasArrayEmpty);\r\n if (extra.action === \"filter\") {\r\n const updatedFilters = { ...filterState, ...filters };\r\n // Set the updated filters\r\n setFilterState(updatedFilters);\r\n\r\n if (setItemsCount) setItemsCount(extra.currentDataSource.length);\r\n }\r\n setSearchedData(extra.currentDataSource);\r\n }}\r\n columns={columns}\r\n rowClassName={`wolf-table-row ${rowClickAction && \"hover\"}`}\r\n scroll={{ x: \"max-content\", y: \"calc(100vh - 300px)\" }}\r\n onRow={(record, rowIndex) => {\r\n return {\r\n onClick: (event) => {\r\n if (rowClickAction && !hoverAction)\r\n rowClickAction(record, rowIndex, event);\r\n },\r\n };\r\n }}\r\n />\r\n \r\n
\r\n );\r\n};\r\n\r\nexport default DynamicTable;\r\n","import { DataTable } from \"primereact/datatable\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { Column } from \"primereact/column\";\r\nimport { Controller, useForm } from \"react-hook-form\";\r\nimport { RadioButtonComponents } from \"../RadioButtonComponents/RadioButtonComponents\";\r\nimport { IReportModel } from \"../../IRequestModel/IReportModel\";\r\nimport moment from \"moment\";\r\nimport { Chips } from \"primereact/chips\";\r\nimport { GetAllDynamic } from \"../../Services/DynamicService\";\r\nimport { ButtonComponents } from \"../ButtonComponents/ButtonComponents\";\r\nimport { DatePicker } from \"antd\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { GetReportSetting } from \"../../Services/MasterDataService\";\r\nimport { confirmDialog } from \"primereact/confirmdialog\";\r\nimport { UserContext, useUserContext } from \"../../Context/UserContext\";\r\n\r\ninterface Props {\r\n reportTemp: IReportModel;\r\n setReportColumns: (value: any[]) => void;\r\n setTableData: (value: any[]) => void;\r\n setGettingreport: (value: boolean) => void;\r\n}\r\n\r\nconst SelectedFieldComponent = ({\r\n reportTemp,\r\n setReportColumns,\r\n setTableData,\r\n setGettingreport,\r\n}: Props) => {\r\n const { control, setValue, handleSubmit } = useForm({\r\n defaultValues: reportTemp,\r\n });\r\n\r\n const [filterValue, setFilterValue] = useState([]);\r\n const [selectedField, setSelectedField] = useState([]);\r\n const [userData] = useUserContext();\r\n const [rtcon, setRtcon] = useState();\r\n\r\n useEffect(() => {\r\n findSelected();\r\n fecthMasterData();\r\n }, []);\r\n\r\n const fecthMasterData = async () => {\r\n try {\r\n const _rtcon = await GetReportSetting();\r\n if (_rtcon) {\r\n let value: string = _rtcon[0]?.value2?.split(\"|\");\r\n setRtcon(value);\r\n }\r\n } catch (error) {\r\n console.log(\"table=>error\", error);\r\n }\r\n };\r\n\r\n const findSelected = () => {\r\n try {\r\n const _selectedfieldlist = reportTemp.Selectedfieldlist;\r\n const _selectedfieldlistfilter = reportTemp.Selectedfieldlistfilter;\r\n\r\n if (_selectedfieldlist) {\r\n const selected = _selectedfieldlist.filter((field: any) => {\r\n return _selectedfieldlistfilter?.find(\r\n (filter: any) => field.key === filter.FieldCode\r\n );\r\n });\r\n setValue(\"Selectedfieldlistfilter\", _selectedfieldlistfilter);\r\n setSelectedField(selected);\r\n }\r\n } catch (error) {}\r\n };\r\n\r\n function formatDate(date: string) {\r\n try {\r\n let arrDate = date.split(\"/\");\r\n const mm = Number(arrDate[1]);\r\n if (mm === 1) {\r\n arrDate[1] = \"Jan\";\r\n } else if (mm === 2) {\r\n arrDate[1] = \"Feb\";\r\n } else if (mm === 3) {\r\n arrDate[1] = \"Mar\";\r\n } else if (mm === 4) {\r\n arrDate[1] = \"Apr\";\r\n } else if (mm === 5) {\r\n arrDate[1] = \"May\";\r\n } else if (mm === 6) {\r\n arrDate[1] = \"Jun\";\r\n } else if (mm === 7) {\r\n arrDate[1] = \"Jul\";\r\n } else if (mm === 8) {\r\n arrDate[1] = \"Aug\";\r\n } else if (mm === 9) {\r\n arrDate[1] = \"Sep\";\r\n } else if (mm === 10) {\r\n arrDate[1] = \"Oct\";\r\n } else if (mm === 11) {\r\n arrDate[1] = \"Nov\";\r\n } else if (mm === 12) {\r\n arrDate[1] = \"Dec\";\r\n }\r\n return arrDate.join(\" \");\r\n } catch (error) {\r\n return date;\r\n }\r\n }\r\n\r\n const validateFun = (data: any) => {\r\n let isPass = true;\r\n try {\r\n if (rtcon?.length > 0) {\r\n const request_date = data.Selectedfieldlistfilter.find(\r\n (e: any) => e.FieldCode.toLowerCase() === rtcon[0]\r\n );\r\n if (!request_date) {\r\n isPass = false;\r\n confirmDialog({\r\n message: () => {\r\n return (\r\n <>\r\n {\r\n \"Please select field Request Date for data search condition before click Generate Report button! / กรุณาเลือก field Request Date เพื่อเป็นเงื่อนไขในการค้นหาข้อมูลก่อนกดปุ่ม Generate Report !\"\r\n }\r\n \r\n );\r\n },\r\n header: \"Alert\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n draggable: false,\r\n closable: false,\r\n rejectClassName: \"hide\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {},\r\n });\r\n } else if (!request_date.FieldTextFrom && !request_date.FieldTextTo) {\r\n isPass = false;\r\n confirmDialog({\r\n message:\r\n \"Please select filter value Memorandum - Request Date From / กรุณาเลือกค่าสำหรับการกรอง Memorandum - Request Date จาก !\",\r\n header: \"Alert\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n draggable: false,\r\n closable: false,\r\n rejectClassName: \"hide\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {},\r\n });\r\n } else if (request_date.FieldTextFrom && !request_date.FieldTextTo) {\r\n isPass = false;\r\n confirmDialog({\r\n message:\r\n \"Please select filter value Memorandum - Request Date To / กรุณาเลือกค่าสำหรับการกรอง Memorandum - Request Date ถึง !\",\r\n header: \"Alert\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n draggable: false,\r\n closable: false,\r\n rejectClassName: \"hide\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {},\r\n });\r\n } else if (!request_date.FieldTextFrom && request_date.FieldTextTo) {\r\n isPass = false;\r\n confirmDialog({\r\n message:\r\n \"Please select filter value Memorandum - Request Date From / กรุณาเลือกค่าสำหรับการกรอง Memorandum - Request Date จาก !\",\r\n header: \"Alert\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n draggable: false,\r\n closable: false,\r\n rejectClassName: \"hide\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {},\r\n });\r\n } else {\r\n const dateForm = getDateValue(request_date.FieldTextFrom);\r\n const dateTo = getDateValue(request_date.FieldTextTo);\r\n const diffDays = dateTo.diff(dateForm, \"days\");\r\n if (diffDays > rtcon[1]) {\r\n isPass = false;\r\n confirmDialog({\r\n message:\r\n \"Please select field Request Date difference between \" +\r\n rtcon[1] +\r\n \"! / \" +\r\n \"กรุณาเลือก field Request Date ที่มีระยะห่างไม่เกิน \" +\r\n rtcon[1] +\r\n \"!\",\r\n header: \"Alert\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n draggable: false,\r\n closable: false,\r\n rejectClassName: \"hide\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {},\r\n });\r\n }\r\n }\r\n }\r\n } catch (error) {\r\n isPass = false;\r\n }\r\n\r\n return isPass;\r\n };\r\n\r\n const onSubmit = (data: any) => {\r\n if (validateFun(data)) {\r\n setGettingreport(true);\r\n data.Selectedfieldlistfilter?.map((e: any) => {\r\n try {\r\n if (e.FieldText && typeof e.FieldText !== \"string\") {\r\n e.FieldText = e.FieldText.join(\"|\");\r\n }\r\n } catch (error) {\r\n console.log(\"table=>error\", error);\r\n }\r\n });\r\n fecthDataReport(\r\n data.ReporttemplateID,\r\n JSON.stringify(data.Selectedfieldlistfilter)\r\n );\r\n }\r\n };\r\n\r\n function formatNumberWithTrailingZeros(\r\n number: number,\r\n decimalPlaces: number\r\n ) {\r\n let numberString = number.toString();\r\n let [integerPart, decimalPart] = numberString.split(\".\");\r\n decimalPart = decimalPart || \"\";\r\n decimalPart = decimalPart\r\n .padEnd(decimalPlaces, \"0\")\r\n .slice(0, decimalPlaces);\r\n let formattedNumber =\r\n integerPart + (decimalPart.length > 0 ? \".\" + decimalPart : \"\");\r\n return formattedNumber;\r\n }\r\n\r\n function countDigitsAfterDecimal(number: number) {\r\n let numberString = number.toString();\r\n let decimalIndex = numberString.indexOf(\".\");\r\n if (decimalIndex === -1) {\r\n return 0;\r\n }\r\n let digitsAfterDecimal = numberString.length - decimalIndex - 1;\r\n return digitsAfterDecimal;\r\n }\r\n\r\n const fecthDataReport = async (reportId: number, data: string) => {\r\n const reportDetailBody = {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({\r\n ReportTemplateId: reportId,\r\n FavoritesItem: data,\r\n PageIndex: 0,\r\n PageSize: 10000,\r\n UserPrincipalName: userData.Email,\r\n }),\r\n };\r\n\r\n const _dataDynamic: any = await GetAllDynamic(\r\n \"DynamicReport/GetReportDetailById\",\r\n reportDetailBody\r\n );\r\n if (_dataDynamic) {\r\n if (_dataDynamic.FieldCollection && _dataDynamic.FieldCollection !== \"\") {\r\n const fieldCollection: any[] = JSON.parse(_dataDynamic.FieldCollection);\r\n let numCols: Array<{\r\n key: string;\r\n suffix?: string;\r\n decimal?: number;\r\n }> = [];\r\n let dateCols: string[] = [];\r\n let edCols: string[] = [];\r\n fieldCollection.forEach((col: any) => {\r\n if (\r\n col.FieldTypeFilterDynamic === \"c\" ||\r\n col.FieldTypeFilterStatic === \"Number\"\r\n ) {\r\n numCols.push({\r\n key: col.key,\r\n suffix: col.symbol || \"\",\r\n decimal: col.Decimal,\r\n });\r\n } else if (\r\n col.FieldTypeFilterDynamic === \"d\" ||\r\n col.FieldTypeFilterStatic === \"Datetime\"\r\n ) {\r\n dateCols.push(col);\r\n } else if (col.FieldTypeFilterDynamic === \"ed\") {\r\n edCols.push(col);\r\n }\r\n });\r\n\r\n if (numCols.length > 0) {\r\n numCols.forEach((col: any) => {\r\n _dataDynamic.dt_Report.map((data: any) => {\r\n if (data[col]) {\r\n let decimal = countDigitsAfterDecimal(data[col.key]);\r\n data[col.key] =\r\n formatNumberWithTrailingZeros(data[col.key], decimal) +\r\n \" \" +\r\n col?.suffix;\r\n }\r\n });\r\n });\r\n }\r\n if (dateCols.length > 0) {\r\n dateCols.forEach((col: any) => {\r\n _dataDynamic.dt_Report.map((data: any) => {\r\n if (data[col.key]) {\r\n let newDate = moment(new Date(data[col.key]));\r\n data[col.key] = newDate;\r\n }\r\n });\r\n });\r\n }\r\n if (edCols.length > 0) {\r\n edCols.forEach((col: any) => {\r\n _dataDynamic.dt_Report.map((data: any) => {\r\n if (data[col.key] && data[col.key] !== \"\") {\r\n let parser = new DOMParser();\r\n let doc = parser.parseFromString(data[col.key], \"text/html\");\r\n data[col.key] = doc.body.innerText;\r\n }\r\n });\r\n });\r\n }\r\n setReportColumns([...fieldCollection]);\r\n }\r\n\r\n setTableData(_dataDynamic.dt_Report);\r\n setGettingreport(false);\r\n }\r\n };\r\n\r\n const getChipValue = (fieldValue?: any) => {\r\n let _chip: any[] = [];\r\n if (fieldValue) {\r\n if (typeof fieldValue === \"string\") {\r\n _chip = fieldValue.split(\"|\");\r\n } else {\r\n _chip = fieldValue;\r\n }\r\n return _chip;\r\n }\r\n };\r\n\r\n function onChangeSelectField(fieldValue: any[], onChange: any) {\r\n let _filters: any[] = [];\r\n selectedField.forEach((field: any) => {\r\n const exitFilter = fieldValue.find(\r\n (filter: any) => filter.FieldCode === field.key\r\n );\r\n if (exitFilter) {\r\n _filters.push(exitFilter);\r\n } else {\r\n let _objJson = {\r\n ID: 0,\r\n FieldCode: field.key,\r\n FieldDisplay: field.label,\r\n IsExcludeBlankData: true,\r\n FieldType: field.type,\r\n IsEquals: false,\r\n FieldText: [],\r\n FieldTextFrom: null,\r\n FieldTextTo: null,\r\n FieldBit: null,\r\n FieldTypeFilterStatic: field.FieldTypeFilterStatic,\r\n FieldTypeFilterDynamic: field.FieldTypeFilterDynamic,\r\n IsTodayFrom: false,\r\n IsTodayTo: false,\r\n FilterParameter: \"\",\r\n indexHideColumn: null,\r\n SecretId: null,\r\n };\r\n _filters.push(_objJson);\r\n }\r\n });\r\n if (JSON.stringify(fieldValue) !== JSON.stringify(_filters)) {\r\n onChange(_filters);\r\n }\r\n return _filters;\r\n }\r\n\r\n const getDateValue = (dateValue: any) => {\r\n // let newDate: Date = new Date();\r\n\r\n let newDate = moment(\r\n moment(new Date(dateValue)).format(\"DD MMM YYYY\"),\r\n \"DD MMM YYYY\"\r\n ).toDate();\r\n if (newDate.toString().toLowerCase() === \"invalid date\") {\r\n newDate = moment(formatDate(dateValue), \"DD MMM YYYY\").toDate();\r\n } else {\r\n newDate = moment(\r\n moment(formatDate(dateValue)).format(\"DD MMM YYYY\"),\r\n \"DD MMM YYYY\"\r\n ).toDate();\r\n if (newDate.toString().toLowerCase() === \"invalid date\") {\r\n console.log(\"table=>dateValue\", dateValue);\r\n }\r\n }\r\n // return newDate;\r\n\r\n return moment(\r\n new Date(newDate).toLocaleString(\"en-UK\", {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"numeric\",\r\n })\r\n );\r\n };\r\n\r\n return (\r\n <>\r\n
\r\n \r\n \r\n
\r\n
\r\n

Selected Field

\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n selection={selectedField}\r\n onSelectionChange={(e: any) => {\r\n setSelectedField(e.value);\r\n }}\r\n // rowClassName={rowClassName}\r\n // isDataSelectable={isRowSelectable}\r\n responsiveLayout=\"scroll\"\r\n scrollable\r\n scrollHeight=\"flex\"\r\n size=\"small\"\r\n >\r\n \r\n \r\n \r\n Field\r\n

\r\n \r\n }\r\n field=\"label\"\r\n style={{ flexGrow: 1, flexBasis: \"500px\" }}\r\n >\r\n \r\n \r\n )}\r\n />\r\n
\r\n
\r\n \r\n \r\n <>\r\n
\r\n
\r\n

Filter Value

\r\n
\r\n
\r\n (\r\n setFilterValue(e.Value)}\r\n size=\"small\"\r\n scrollable\r\n scrollHeight=\"flex\"\r\n responsiveLayout=\"scroll\"\r\n >\r\n \r\n \r\n \r\n Field\r\n

\r\n \r\n }\r\n field=\"FieldDisplay\"\r\n style={{ flexGrow: 1, flexBasis: \"110px\" }}\r\n >\r\n {\r\n if (\r\n rowData.FieldTypeFilterDynamic === \"d\" ||\r\n rowData.FieldTypeFilterStatic === \"Datetime\"\r\n ) {\r\n let dateFormat: any = rowData.FieldTextFrom\r\n ? getDateValue(rowData.FieldTextFrom)\r\n : null;\r\n\r\n return (\r\n <>\r\n

\r\n {\"From(\"}\r\n {\r\n rowData.IsTodayFrom = e;\r\n if (field?.value) {\r\n field.value[option.rowIndex] =\r\n rowData;\r\n field.onChange(field.value);\r\n }\r\n }}\r\n checkedProps={\r\n rowData.IsTodayFrom === true\r\n }\r\n labelProps={\"\"}\r\n keyProps={\"From\"}\r\n />\r\n {\"Today\"} {\")\"}\r\n

\r\n {\r\n try {\r\n if (e) {\r\n rowData.FieldTextFrom =\r\n e.format(\"DD MMM yy\");\r\n } else {\r\n rowData.FieldTextFrom = e;\r\n }\r\n\r\n if (field?.value) {\r\n field.value[option.rowIndex] =\r\n rowData;\r\n field.onChange(field.value);\r\n }\r\n } catch (error) {\r\n console.log(\"error=>\", error);\r\n }\r\n }}\r\n />\r\n \r\n );\r\n } else {\r\n return (\r\n <>\r\n {\r\n rowData.FilterParameter =\r\n e.value === \"Contains\"\r\n ? \"Like\"\r\n : e.value === \"Not Contains\"\r\n ? \"Not Like\"\r\n : e.value;\r\n if (field?.value) {\r\n field.value[option.rowIndex] = rowData;\r\n field.onChange(field.value);\r\n }\r\n }}\r\n />\r\n \r\n );\r\n }\r\n }}\r\n >\r\n {\r\n if (\r\n rowData.FieldTypeFilterDynamic === \"d\" ||\r\n rowData.FieldTypeFilterStatic === \"Datetime\"\r\n ) {\r\n let dateFormat: any = rowData.FieldTextTo\r\n ? getDateValue(rowData.FieldTextTo)\r\n : null;\r\n\r\n return (\r\n <>\r\n

\r\n To (\r\n {\r\n rowData.IsTodayTo = e;\r\n console.log(\"report=>field\", field);\r\n if (field?.value) {\r\n field.value[option.rowIndex] =\r\n rowData;\r\n field.onChange(field.value);\r\n }\r\n }}\r\n checkedProps={rowData.IsTodayTo === true}\r\n labelProps={\"\"}\r\n keyProps={\"Today\"}\r\n />\r\n {\"Today\"} {\")\"}\r\n

\r\n {\r\n try {\r\n if (e) {\r\n rowData.FieldTextTo =\r\n e.format(\"DD MMM yy\");\r\n } else {\r\n rowData.FieldTextTo = e;\r\n }\r\n\r\n if (field?.value) {\r\n field.value[option.rowIndex] =\r\n rowData;\r\n field.onChange(field.value);\r\n }\r\n } catch (error) {\r\n console.log(\"error=>\", error);\r\n }\r\n }}\r\n />\r\n \r\n );\r\n } else {\r\n return (\r\n <>\r\n {\r\n if (field.value) {\r\n field.value[option.rowIndex].FieldText =\r\n e.value;\r\n field.onChange(field.value);\r\n }\r\n }}\r\n onBlur={(e) => {\r\n if (e.target.value !== \"\") {\r\n if (field.value) {\r\n field.value[\r\n option.rowIndex\r\n ].FieldText.push(e.target.value);\r\n field.onChange(field.value);\r\n }\r\n }\r\n e.target.value = \"\";\r\n }}\r\n separator=\"|\"\r\n />\r\n \r\n );\r\n }\r\n }}\r\n >\r\n \r\n )}\r\n />\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n );\r\n};\r\n\r\nexport default SelectedFieldComponent;\r\n","import moment from \"moment\";\r\nimport { Button } from \"primereact/button\";\r\nimport { Panel } from \"primereact/panel\";\r\nimport { ProgressSpinner } from \"primereact/progressspinner\";\r\nimport { Ripple } from \"primereact/ripple\";\r\nimport React, { useEffect, useMemo, useState } from \"react\";\r\nimport { IoArrowBackSharp } from \"react-icons/io5\";\r\nimport { useHistory, useLocation, useParams } from \"react-router-dom\";\r\nimport { ButtonComponents } from \"../../components/ButtonComponents/ButtonComponents\";\r\nimport SelectedFieldComponent from \"../../components/ReportScreenComponent/SelectedFieldComponent\";\r\nimport DynamicTable from \"../../components/TableComponents/DynamicTableFix/DynamicTable\";\r\nimport { TreeSelectNewRequest } from \"../../components/TreeSelectNewRequest/TreeSelectNewRequest\";\r\nimport { useUserContext } from \"../../Context/UserContext\";\r\nimport useLoading from \"../../hooks/useLoading\";\r\nimport { IReportModel } from \"../../IRequestModel/IReportModel\";\r\nimport { CheckAutoReport } from \"../../Services/AppSettingService\";\r\nimport { GetAllDynamic } from \"../../Services/DynamicService\";\r\nimport {\r\n GetReportById,\r\n ReportTemplateSelectByReportID,\r\n} from \"../../Services/ReportService\";\r\nimport { Popover } from \"antd\";\r\n\r\ntype Props = {};\r\n\r\ntype QuizParams = {\r\n reportId: string;\r\n reportName: string;\r\n // isAutoReport: string;\r\n};\r\n\r\nconst reportModelIReportModel: IReportModel = {\r\n ReporttemplateID: 0,\r\n ReportName: \"\",\r\n TemplateId: \"\",\r\n Selectedfieldlist: [],\r\n ReportDescription: \"\",\r\n IsPrivate: false,\r\n IsActive: true,\r\n CreatedBy: \"\",\r\n CreatedByname: \"\",\r\n CreatedDate: \"\",\r\n ModifiedBy: \"\",\r\n ModifiedByname: \"\",\r\n ModifiedDate: \"\",\r\n Selectedfieldlistfilter: [],\r\n Columns: [],\r\n Rows: [],\r\n TemplateNewVersion: false,\r\n PageIndex: 0,\r\n PageSize: 10,\r\n CanDelete: false,\r\n RoleId: \"\",\r\n RoleEmp: \"\",\r\n Mode: false,\r\n};\r\n\r\nconst DynamicReportFix = (props: Props) => {\r\n let { reportId } = useParams();\r\n let { reportName } = useParams();\r\n // let { isAutoReport } = useParams();\r\n const [itemsCount, setItemsCount] = useState(0);\r\n const [data, setData] = useState([]);\r\n const [_isAutoReport, setIsAutoReport] = useState(true);\r\n const [reportTemp, setReportTemp] = useState(\r\n reportModelIReportModel\r\n );\r\n const [_reportName, setReportName] = useState(\"\");\r\n const [reportColumns, setReportColumns] = useState();\r\n const [gettingFilter, setGettingFilter] = useState(false);\r\n const [gettingReport, setGettingreport] = useState(true);\r\n const history = useHistory();\r\n const [userData] = useUserContext();\r\n const _userData = JSON.parse(window.localStorage.getItem(\"userData\") || \"\");\r\n const _sharepointSiteURL = _userData.SharepointSiteURL;\r\n const { search } = useLocation();\r\n const query = useMemo(() => new URLSearchParams(search), [search]);\r\n\r\n useEffect(() => {\r\n const controller = new AbortController();\r\n fecthData(controller);\r\n return () => {\r\n controller.abort();\r\n };\r\n }, []);\r\n\r\n function openWindow(link: any) {\r\n var pathArray = link?.split(\"/\");\r\n const _link = link\r\n ? link.charAt(0) !== \"/\" && !_sharepointSiteURL\r\n ? \"/\" + link\r\n : link\r\n : \"\";\r\n\r\n const protocol = window.location.protocol;\r\n if (_sharepointSiteURL) {\r\n if (_link.startsWith(_sharepointSiteURL)) {\r\n window.open(`${_link}`, \"_blank\", \"noreferrer\");\r\n } else {\r\n window.open(`${_sharepointSiteURL}${_link}`, \"_blank\", \"noreferrer\");\r\n }\r\n } else if (_userData.TinyURL) {\r\n if (\r\n _link.includes(\"www\") ||\r\n _link.includes(\".com\") ||\r\n _link.includes(\".tv\") ||\r\n _link.includes(\".net\") ||\r\n _link.includes(\"https\") ||\r\n _link.includes(\"http\") ||\r\n _link.includes(\".com\") ||\r\n _link.includes(\".co.th\")\r\n ) {\r\n if (_link.includes(\"https\")) {\r\n window.open(\r\n `https://${_link.replaceAll(\"https://\", \"\")}`,\r\n \"_blank\",\r\n \"noreferrer\"\r\n );\r\n } else if (_link.includes(\"http\")) {\r\n window.open(\r\n `http://${_link.replaceAll(\"http://\", \"\")}`,\r\n \"_blank\",\r\n \"noreferrer\"\r\n );\r\n } else {\r\n window.open(`https://${_link}`, \"_blank\", \"noreferrer\");\r\n }\r\n } else {\r\n window.open(\r\n `${protocol}//${_userData.TinyURL}${_link}`,\r\n \"_blank\",\r\n \"noreferrer\"\r\n );\r\n }\r\n } else if (!_userData.TinyURL) {\r\n window.open(`${_link}`, \"_blank\", \"noreferrer\");\r\n }\r\n }\r\n\r\n function formatNumberWithTrailingZeros(\r\n number: number,\r\n decimalPlaces: number\r\n ) {\r\n let numberString = number.toString();\r\n let [integerPart, decimalPart] = numberString.split(\".\");\r\n decimalPart = decimalPart || \"\";\r\n decimalPart = decimalPart\r\n .padEnd(decimalPlaces, \"0\")\r\n .slice(0, decimalPlaces);\r\n let formattedNumber =\r\n integerPart + (decimalPart.length > 0 ? \".\" + decimalPart : \"\");\r\n return formattedNumber;\r\n }\r\n\r\n function countDigitsAfterDecimal(number: number) {\r\n let numberString = number.toString();\r\n let decimalIndex = numberString.indexOf(\".\");\r\n if (decimalIndex === -1) {\r\n return 0;\r\n }\r\n let digitsAfterDecimal = numberString.length - decimalIndex - 1;\r\n return digitsAfterDecimal;\r\n }\r\n\r\n const fecthData = async (controller: AbortController) => {\r\n try {\r\n const isAutoReport = await CheckAutoReport();\r\n if (isAutoReport) {\r\n const reportDetailBody = {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({\r\n ReportTemplateId: reportId,\r\n PageIndex: 0,\r\n PageSize: 10000,\r\n UserPrincipalName: userData.Email,\r\n }),\r\n };\r\n\r\n const _dataDynamic: any = await GetReportById(\r\n Number(reportId),\r\n controller.signal\r\n );\r\n\r\n if (\r\n _dataDynamic.FieldCollection &&\r\n _dataDynamic.FieldCollection !== \"\"\r\n ) {\r\n const fieldCollection: any[] = JSON.parse(\r\n _dataDynamic.FieldCollection\r\n );\r\n\r\n let numCols: Array<{\r\n key: string;\r\n suffix?: string;\r\n decimal?: number;\r\n }> = [];\r\n let dateCols: string[] = [];\r\n let edCols: string[] = [];\r\n let atCols: string[] = [];\r\n fieldCollection.forEach((col: any, index: number) => {\r\n if (\r\n col.FieldTypeFilterDynamic === \"c\" ||\r\n col.FieldTypeFilterStatic === \"Number\"\r\n ) {\r\n numCols.push({\r\n key: col.key,\r\n suffix: col.symbol || \"\",\r\n decimal: col.Decimal,\r\n });\r\n } else if (\r\n col.FieldTypeFilterDynamic === \"d\" ||\r\n col.FieldTypeFilterStatic === \"Datetime\"\r\n ) {\r\n dateCols.push(col);\r\n } else if (col.FieldTypeFilterDynamic === \"ed\") {\r\n edCols.push(col);\r\n } else if (col.FieldTypeFilterDynamic === \"at\") {\r\n atCols.push(col);\r\n }\r\n });\r\n\r\n if (numCols.length > 0) {\r\n numCols.forEach(\r\n (col: { key: string; suffix?: string; decimal?: number }) => {\r\n if (col.key !== \"Memo_MemoId\") {\r\n _dataDynamic.dt_Report.map((data: any) => {\r\n if (data[col.key]) {\r\n if (col?.decimal) {\r\n data[col.key] = formatNumberWithTrailingZeros(\r\n data[col.key],\r\n col?.decimal\r\n );\r\n } else {\r\n let decimal = countDigitsAfterDecimal(data[col.key]);\r\n data[col.key] = formatNumberWithTrailingZeros(\r\n data[col.key],\r\n decimal\r\n );\r\n }\r\n }\r\n });\r\n }\r\n }\r\n );\r\n }\r\n if (dateCols.length > 0) {\r\n dateCols.forEach((col: any) => {\r\n _dataDynamic.dt_Report.map((data: any) => {\r\n if (data[col.key]) {\r\n let newDate = moment(new Date(data[col.key]));\r\n data[col.key] = newDate;\r\n }\r\n });\r\n });\r\n }\r\n if (edCols.length > 0) {\r\n edCols.forEach((col: any) => {\r\n _dataDynamic.dt_Report.map((data: any) => {\r\n if (data[col.key] && data[col.key] !== \"\") {\r\n let parser = new DOMParser();\r\n let doc = parser.parseFromString(data[col.key], \"text/html\");\r\n data[col.key] = doc.body.innerText;\r\n }\r\n });\r\n });\r\n }\r\n if (atCols.length > 0) {\r\n atCols.forEach((col: any) => {\r\n _dataDynamic.dt_Report.map((data: any) => {\r\n if (data[col.key] && data[col.key] !== \"\") {\r\n const [nameFile, linkFile] = data[col.key].split(\"|\");\r\n data[col.key] = (\r\n \r\n {\r\n openWindow(linkFile);\r\n }}\r\n className=\"r\"\r\n type=\"button\"\r\n style={{\r\n borderRadius: \"6px\",\r\n backgroundColor: \"rgb(40, 47, 106)\",\r\n border: \"1px solid rgb(40, 47, 106)\",\r\n boxShadow: \"none\",\r\n width: \"100%\",\r\n height: \"38px\",\r\n zIndex: \"999\",\r\n }}\r\n />\r\n \r\n );\r\n }\r\n });\r\n });\r\n }\r\n setReportColumns([...fieldCollection]);\r\n }\r\n setItemsCount(_dataDynamic.dt_Report?.length);\r\n setReportName(_dataDynamic.ReportName);\r\n setData([..._dataDynamic.dt_Report]);\r\n setGettingreport(false);\r\n } else {\r\n setGettingFilter(true);\r\n const _reportTemp: any = await ReportTemplateSelectByReportID(\r\n Number(reportId)\r\n );\r\n\r\n setReportName(reportName);\r\n if (_reportTemp) {\r\n setReportTemp(_reportTemp);\r\n setData([]);\r\n }\r\n setGettingFilter(false);\r\n setGettingreport(false);\r\n }\r\n setIsAutoReport(isAutoReport);\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n };\r\n\r\n const panelTemplate = (options: any, headText: string) => {\r\n const toggleIcon = options.collapsed\r\n ? \"pi pi-chevron-down\"\r\n : \"pi pi-chevron-up\";\r\n const className = `${options.className} justify-content-start`;\r\n const titleClassName = `${options.titleClassName} pl-1`;\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n {headText}\r\n
\r\n );\r\n };\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n

\r\n {_reportName + \"(\" + data?.length + \")\"}\r\n

\r\n \r\n \r\n }\r\n onClickProps={() => {\r\n history.push(\"/DynamicReport?action=back\");\r\n // setTableData([...reportList]);\r\n // setReportColumns(undefined);\r\n // setText(\"Report List\");\r\n }}\r\n setStyleProps={{\r\n height: \"38px\",\r\n borderRadius: \"6px\",\r\n border: \"1px solid #F2F2F2\",\r\n fontSize: \"13px\",\r\n background: \"#F2F2F2\",\r\n color: \"#282F6A\",\r\n width: \"120px\",\r\n }}\r\n />\r\n {/* {_baseUrl !== \"lite.wolfapprove.com\" && (\r\n {\r\n toggleDialog();\r\n }}\r\n />\r\n )} */}\r\n
\r\n
\r\n
\r\n
\r\n <>\r\n {_isAutoReport ? (\r\n <>\r\n {\r\n if (record[\"Memo_MemoId\"]) {\r\n window.open(\r\n `/Request?MemoID=${record[\"Memo_MemoId\"]}`,\r\n \"_blank\"\r\n );\r\n }\r\n }}\r\n canExport={true}\r\n />\r\n \r\n ) : (\r\n <>\r\n {\" \"}\r\n \r\n panelTemplate(option, \"Filter\")\r\n }\r\n toggleable\r\n >\r\n {!gettingFilter && (\r\n \r\n )}\r\n \r\n \r\n panelTemplate(option, \"Report\")\r\n }\r\n className={\"table-panel\"}\r\n toggleable\r\n >\r\n {gettingReport ? (\r\n <>\r\n {/* */}\r\n {\r\n if (record[\"Memo_MemoId\"]) {\r\n window.open(\r\n `/Request?MemoID=${record[\"Memo_MemoId\"]}`,\r\n \"_blank\"\r\n );\r\n }\r\n }}\r\n canExport={true}\r\n />\r\n \r\n ) : (\r\n <>\r\n {\r\n if (record[\"Memo_MemoId\"]) {\r\n window.open(\r\n `/Request?MemoID=${record[\"Memo_MemoId\"]}`,\r\n \"_blank\"\r\n );\r\n }\r\n }}\r\n canExport={true}\r\n />\r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n
\r\n \r\n \r\n );\r\n};\r\n{\r\n /* if (isAutoReport) {\r\n return (\r\n \r\n
\r\n {\r\n console.log(\"table=>record\", record);\r\n\r\n if (record[\"Memo_MemoId\"]) {\r\n window.open(\r\n `/Request?MemoID=${record[\"Memo_MemoId\"]}`,\r\n \"_blank\"\r\n );\r\n }\r\n }}\r\n canExport={true}\r\n />\r\n
\r\n \r\n \r\n );\r\n } else {\r\n return
DynamicReportFix
;\r\n } */\r\n}\r\n{\r\n /* } */\r\n}\r\nexport default DynamicReportFix;\r\n","import React, { useEffect, useMemo, useState } from \"react\";\r\nimport { SplitButton } from \"primereact/splitbutton\";\r\nimport { TreeSelectNewRequest } from \"../../components/TreeSelectNewRequest/TreeSelectNewRequest\";\r\nimport { useLocation } from \"react-router\";\r\nimport { useHistory, useRouteMatch, Switch, Route } from \"react-router-dom\";\r\nimport { DynamicReport } from \"./DynamicReport\";\r\nimport \"./index.css\";\r\nimport { FooterComponents } from \"../../components/FooterComponents/FooterComponents\";\r\nimport { ButtonComponents } from \"../../components/ButtonComponents/ButtonComponents\";\r\nimport { ReportDialog } from \"../../components/SettingDialogComponents/ReportDialog/ReportDialog\";\r\nimport {\r\n GetTemplateeBindFormNameDDL,\r\n GetTemplateTemplateListVersion,\r\n} from \"../../Services/TemplateService\";\r\nimport withPerMission from \"../../components/HOC/withPermission\";\r\nimport {\r\n DeleteReport,\r\n GetReportById,\r\n ReportTemplateSelectByReportID,\r\n} from \"../../Services/ReportService\";\r\nimport { confirmDialog } from \"primereact/confirmdialog\";\r\nimport { GetAllEmployee } from \"../../Services/EmployeeService\";\r\nimport { GetAllDynamic } from \"../../Services/DynamicService\";\r\nimport useLoading from \"../../hooks/useLoading\";\r\nimport { useUserContext } from \"../../Context/UserContext\";\r\nimport DynamicTable from \"../../components/TableComponents/DynamicTableFix/DynamicTable\";\r\nimport DynamicReportFix from \"./DynamicReportFix\";\r\ninterface Props {\r\n responeConfig: any;\r\n}\r\n\r\nconst ReportScreen = (props: Props) => {\r\n const text = \"Report List\";\r\n const location = useLocation();\r\n const [onLoading, setOnLoading] = useState(true);\r\n const [apiName, setApiName] = useState(\r\n location.pathname.replace(\"/\", \"\")\r\n );\r\n const { isLoad, setLoad } = useLoading();\r\n const [imgLoading, setImgLoading] = useState(\r\n props.responeConfig?.pathLoading\r\n );\r\n const [visibleDialog, setVisibleDialog] = useState(false);\r\n const [template, setTemplate] = useState([]);\r\n const [empList, setEmpList] = useState([]);\r\n const [checkReport, setCheckReport] = useState(false);\r\n const [isDelete, setIsDelete] = useState(false);\r\n const [editReport, setEditReport] = useState(false);\r\n const [dataEditReport, setDataEditReport] = useState([]);\r\n const [itemsCount, setItemsCount] = useState(0);\r\n const [_baseUrl, setbaseUrl] = useState();\r\n const [userData, setUserData] = useUserContext();\r\n const [data, setData] = useState();\r\n let history = useHistory();\r\n const { search } = useLocation();\r\n const query = useMemo(() => new URLSearchParams(search), [search]);\r\n const { url } = useRouteMatch();\r\n const [isAdmin, setIsAdmin] = useState();\r\n // const [emp_data, setEmp_data] = useState();\r\n\r\n useEffect(() => {\r\n setLoad(true);\r\n fetchTemplate();\r\n fetchEmployee();\r\n fetchReport();\r\n\r\n if (process.env.NODE_ENV !== \"development\") {\r\n setbaseUrl(window.location.hostname);\r\n }\r\n }, []);\r\n\r\n async function fetchEmployee() {\r\n setEmpList([...(await GetAllEmployee())]);\r\n }\r\n\r\n // const actionBodyTemplate = (rowData: any) => {\r\n // try {\r\n // const employee = empList.filter((e: any) => {\r\n // return e.EmployeeId === rowData.CreatedBy;\r\n // });\r\n // if (empData.employeeData.Lang === \"TH\") {\r\n // rowData.CreatedByName = employee[0]?.NameTh;\r\n // } else {\r\n // rowData.CreatedByName = employee[0]?.NameEn;\r\n // }\r\n // if (empData.employeeData.EmployeeId === rowData.CreatedBy) {\r\n // return (\r\n // \r\n // {\r\n // setVisibleDialog(true);\r\n // setCheckReport(true);\r\n // setEditReport(true);\r\n // console.log(\r\n // \"rowData.ReportTemplateId\",\r\n // rowData.ReportTemplateId\r\n // );\r\n\r\n // fetchGetReportById(rowData.ReportTemplateId);\r\n // },\r\n // },\r\n // {\r\n // label: \"Delete\",\r\n // icon: \"pi pi-trash\",\r\n // command: () => {\r\n // confirmDialog({\r\n // message: \"Do you want to delete this report.\",\r\n // header: \"Delete\",\r\n // icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n // rejectClassName: \"hide\",\r\n // acceptClassName:\r\n // \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n // accept: async () => {\r\n // const res = await DeleteReport(\r\n // rowData.ReportTemplateId\r\n // );\r\n // if (res) {\r\n // setOnLoading(true);\r\n // fetchReport();\r\n // }\r\n // },\r\n // });\r\n // },\r\n // },\r\n // ]}\r\n // dropdownIcon=\"pi pi-ellipsis-v\"\r\n // />\r\n // \r\n // );\r\n // } else {\r\n // return (\r\n // \r\n // {\r\n // setVisibleDialog(true);\r\n // setCheckReport(true);\r\n // setEditReport(true);\r\n\r\n // fetchGetReportById(rowData.ReportTemplateId);\r\n // },\r\n // },\r\n // ]}\r\n // dropdownIcon=\"pi pi-ellipsis-v\"\r\n // />\r\n // \r\n // );\r\n // }\r\n // } catch (error) {\r\n // console.log(\"report=>error\", error);\r\n // }\r\n // };\r\n\r\n function toggleDialog() {\r\n setVisibleDialog(!visibleDialog);\r\n fetchReport();\r\n setEditReport(false);\r\n }\r\n\r\n async function fetchReport() {\r\n try {\r\n const userId = query.get(\"usrid\")\r\n ? () => {\r\n setIsAdmin(false);\r\n return query.get(\"usrid\");\r\n }\r\n : userData.EmployeeId;\r\n const _dataDynamic: any[] = await GetAllDynamic(apiName + \"/GetAll\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({ EmployeeId: userId?.toString() }),\r\n });\r\n setData(_dataDynamic);\r\n setLoad(false);\r\n } catch (error) {\r\n console.log(\"table=>error\", error);\r\n setLoad(false);\r\n }\r\n }\r\n\r\n async function fetchTemplate() {\r\n const empid = userData.EmployeeId;\r\n const DepartmentId = userData.DepartmentId;\r\n\r\n const dataJsonn = {\r\n CreatedBy: empid.toString(),\r\n DepartmentId: DepartmentId,\r\n Username: userData.Username,\r\n Email: userData.Email,\r\n };\r\n\r\n let _dataTemplatee = await GetTemplateeBindFormNameDDL(dataJsonn);\r\n console.log(\"_dataTemplatee\", _dataTemplatee);\r\n\r\n setTemplate(_dataTemplatee);\r\n }\r\n\r\n async function fetchGetReportById(rePortId: any) {\r\n let _ReportById = await ReportTemplateSelectByReportID(rePortId);\r\n\r\n setDataEditReport(_ReportById);\r\n }\r\n\r\n if (isLoad) {\r\n return <>;\r\n }\r\n\r\n const actionBodyTemplate = (record: any) => {\r\n const adminActionBody = [\r\n {\r\n label: \"Edit\",\r\n icon: \"pi pi-pencil\",\r\n command: () => {\r\n fetchGetReportById(record.ReportTemplateId);\r\n setVisibleDialog(true);\r\n setCheckReport(true);\r\n setEditReport(true);\r\n },\r\n },\r\n {\r\n label: \"Delete\",\r\n icon: \"pi pi-trash\",\r\n command: () => {\r\n confirmDialog({\r\n message: \"Do you want to delete this report.\",\r\n header: \"Delete\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n rejectClassName: \"hide\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: async () => {\r\n const res = await DeleteReport(record.ReportTemplateId);\r\n if (res) {\r\n setLoad(true);\r\n fetchReport();\r\n }\r\n },\r\n });\r\n },\r\n },\r\n ];\r\n let _user: any = userData;\r\n if (query.get(\"usrId\")) {\r\n _user = empList.find((e: any) => e.EmployeeId == query.get(\"usrId\"));\r\n }\r\n\r\n if (isAdmin && !query.get(\"usrId\")) {\r\n return (\r\n \r\n \r\n \r\n );\r\n } else if (\r\n record.CreatedBy === _user.NameTh ||\r\n record.CreatedBy === _user.NameEn\r\n ) {\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n

\r\n {apiName.replace(\"Dynamic\", \"\") + \"(\" + itemsCount + \")\"}\r\n

\r\n {_baseUrl !== \"lite.wolfapprove.com\" && (\r\n {\r\n toggleDialog();\r\n }}\r\n />\r\n )}\r\n
\r\n
\r\n\r\n {\r\n history.push(\r\n `${url}/${record.ReportName.replaceAll(\"/\", \"\\\\\")}/${\r\n record.ReportTemplateId\r\n }`\r\n );\r\n }}\r\n actionBodyTemplate={actionBodyTemplate}\r\n setItemsCount={setItemsCount}\r\n canExport={false}\r\n />\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n};\r\nexport default withPerMission(ReportScreen);\r\n","import React, { useRef, useEffect } from \"react\";\r\nimport WebViewer from \"@pdftron/webviewer\";\r\nimport \"./ShowContentScreen.css\";\r\nimport { Spin } from \"antd\";\r\nimport { ProgressSpinner } from \"primereact/progressspinner\";\r\nimport { Empty } from \"antd\";\r\ninterface Props {\r\n pdfData: string;\r\n onLoading: boolean;\r\n isShowPdfData: boolean;\r\n}\r\n\r\nexport const ShowContentScreen = (props: Props) => {\r\n const viewerDiv = useRef(null);\r\n useEffect(() => {\r\n console.log({ pdfdff: props.pdfData });\r\n }, [props.pdfData]);\r\n\r\n // useEffect(() => {\r\n // WebViewer(\r\n // {\r\n // path: \"lib\",\r\n // initialDoc:\r\n // \"https://testwolf18.wolfapprove.com/TempAttachment/ee864f46a1f14a54bf26f8d281719eb1/preview_TEST00-2021-000001.pdf\",\r\n // },\r\n // viewerDiv.current as HTMLDivElement\r\n // ).then((instance: any) => {});\r\n // }, []);\r\n // return
;\r\n return (\r\n
\r\n {props.isShowPdfData ? (\r\n props.onLoading ? (\r\n \r\n ) : props.pdfData.length > 0 ? (\r\n \r\n ) : (\r\n \r\n )\r\n ) : (\r\n
\r\n {/*

404

*/}\r\n

Access denied!

\r\n

\r\n You do not have permission to perform access this resource. Please\r\n check your profile with system admin again.\r\n

\r\n
\r\n )}\r\n
\r\n );\r\n};\r\n","import React, { useEffect, useState } from \"react\";\r\nimport \"./WorklistScreenComponent.css\";\r\ninterface Props {\r\n approvals?: any;\r\n requestor?: any;\r\n memoDetail: any;\r\n}\r\n\r\nexport const FlowCardComponent = (props: Props) => {\r\n console.log(\r\n props.approvals?.sequence ===\r\n props.memoDetail.requestDetails.memoDetail?.current_approval_level\r\n );\r\n\r\n return (\r\n <>\r\n \r\n
\r\n
\r\n {props.approvals && (\r\n

\r\n {props.approvals.approver &&\r\n props.approvals.approver.nameEn.substring(0, 2).toUpperCase()}\r\n

\r\n )}\r\n {props.requestor && (\r\n

\r\n {props.requestor &&\r\n props.requestor.NameEn.substring(0, 2).toUpperCase()}\r\n

\r\n )}\r\n
\r\n
\r\n
\r\n
\r\n {props.approvals && (\r\n <>\r\n

{props.approvals.approver.nameEn}

\r\n

\r\n {props.approvals.approver.positionNameEn}\r\n

\r\n \r\n )}\r\n {props.requestor && (\r\n <>\r\n

{props.requestor.NameEn}

\r\n

{props.requestor.PositionNameEn}

\r\n \r\n )}\r\n
\r\n {/* change text color */}\r\n

\r\n {props.approvals && props.approvals.approver.departmentNameEn}\r\n {props.requestor && props.requestor.DepartmentNameEn}\r\n

\r\n
\r\n {props.approvals && (\r\n
\r\n {props.approvals.signature_en}\r\n
\r\n )}\r\n \r\n \r\n );\r\n};\r\n","import React from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { FlowCardComponent } from \"../../components/WorklistScreenComponent/FlowCardComponent\";\r\nimport { IApproval } from \"../../IRequestModel/IListApprovalDetailsModel\";\r\nimport { IUserModel } from \"../../IRequestModel/IUserModel\";\r\nimport \"./FlowScreen.css\";\r\ninterface Props {\r\n approvals?: IApproval[];\r\n requestor?: IUserModel;\r\n memoDetail: any;\r\n}\r\n\r\nexport const FlowScreen = (props: Props) => {\r\n const { t } = useTranslation([\"translation\"]);\r\n return (\r\n <>\r\n
\r\n

Flow

\r\n
\r\n

{t(\"Request By\")}

\r\n \r\n
\r\n
\r\n

Approvals

\r\n {props.approvals &&\r\n props.approvals.map((data: any, idx: any) => {\r\n return (\r\n \r\n );\r\n })}\r\n
\r\n
\r\n \r\n );\r\n};\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { Table, Tag, Space, Divider, Row, Col } from \"antd\";\r\nimport \"./HistoryComponent.css\";\r\nimport moment from \"moment\";\r\nimport { AiFillAndroid, AiFillApple } from \"react-icons/ai\";\r\nimport { FaLine } from \"react-icons/fa\";\r\nimport { IoDesktopOutline } from \"react-icons/io5\";\r\nimport { useUserContext } from \"../../../Context/UserContext\";\r\nimport { Last } from \"react-bootstrap/esm/PageItem\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport useMasterSetting from \"../../../hooks/useMasterSetting\";\r\ninterface Props {\r\n listHistoryDetails?: any;\r\n listLineApprove?: any;\r\n t: any;\r\n}\r\nexport const HistoryComponent = (props: Props) => {\r\n const [data, setData] = useState([]);\r\n const [dataDialog, setDataDialog] = useState();\r\n const [visibleDialog, setVisibleDialog] = useState(false);\r\n const [userData, setUserData] = useUserContext();\r\n const { t } = useTranslation([\"translation\"]);\r\n const { masterSetting } = useMasterSetting();\r\n useEffect(() => {\r\n fetchData();\r\n }, []);\r\n\r\n const fetchData = () => {\r\n const responeWorkList = props.listHistoryDetails;\r\n const sortDate = responeWorkList?.sort((a: any, b: any) => {\r\n const aa = moment(a.action_date, \"DD/MM/YYYY HH:mm:ss\");\r\n const bb = moment(b.action_date, \"DD/MM/YYYY HH:mm:ss\");\r\n return moment(aa).diff(bb);\r\n });\r\n setData(sortDate);\r\n };\r\n const formatDateTime = (value: string) => {\r\n if (value == null) {\r\n return \"\";\r\n } else {\r\n let momentObj = moment(value, \"DD/MM/YYYY HH:mm:ss\");\r\n return moment(momentObj).format(\r\n masterSetting?.FormatDate?.Value1?.replaceAll(\"d\", \"D\") ||\r\n \"DD MMM yyyy , HH:mm:ss\"\r\n );\r\n }\r\n };\r\n const convertDate = (data: any) => {\r\n return formatDateTime(data);\r\n };\r\n const formatAction = (value: string) => {\r\n if (value == null) {\r\n return \"\";\r\n } else {\r\n if (value === \"submit\") {\r\n return props.t(\"Submitted\");\r\n } else if (value === \"recall\") {\r\n return props.t(\"Recalled\");\r\n } else if (value === \"rework\") {\r\n return props.t(\"Reworked\");\r\n } else if (value === \"reject\") {\r\n return props.t(\"Rejected\");\r\n } else if (value === \"approve\") {\r\n return props.t(\"Approved\");\r\n } else if (value === \"draft\") {\r\n return props.t(\"Draft\");\r\n } else if (value === \"return\") {\r\n return props.t(\"Return\");\r\n } else if (value === \"assign\") {\r\n return props.t(\"Assign\");\r\n } else if (value === \"request comment\") {\r\n return props.t(\"Request Comment\");\r\n } else if (value === \"reply\") {\r\n return props.t(\"Reply\");\r\n } else {\r\n return value;\r\n }\r\n }\r\n };\r\n const convertAction = (data: any) => {\r\n return formatAction(data);\r\n };\r\n const formatPlatform = (value: string) => {\r\n if (value === \"web\") {\r\n return (\r\n

\r\n เว็ปไซต์ WOLF Approve | Web\r\n

\r\n );\r\n }\r\n if (value === \"ios\") {\r\n return (\r\n

\r\n แอพพลิเคชั่น WOLF Approve | IOS\r\n

\r\n );\r\n }\r\n if (value === \"android\") {\r\n return (\r\n

\r\n แอพพลิเคชั่น WOLF Approve | Andriod\r\n

\r\n );\r\n }\r\n if (value === \"line\") {\r\n return (\r\n

\r\n แอพพลิเคชั่น WOLF Approve | Line\r\n

\r\n );\r\n }\r\n };\r\n const convertPlatform = (data: any) => {\r\n return formatPlatform(data);\r\n };\r\n const bgcolor = (data: any) => {\r\n return formatPlatform(data);\r\n };\r\n\r\n function convertHtml(_comment: any, _textAbstract?: boolean) {\r\n let response: string = \"\";\r\n if (_textAbstract) {\r\n response = textAbstract(_comment, 200);\r\n } else {\r\n response = _comment;\r\n }\r\n return
;\r\n }\r\n function textAbstract(text: any, length: any) {\r\n if (text == null) {\r\n return \"\";\r\n }\r\n if (text.length <= length) {\r\n return text;\r\n }\r\n text = text.substring(0, length);\r\n var last = text.lastIndexOf(\" \");\r\n text = text.substring(0, last);\r\n return text + \"...\";\r\n }\r\n function dialogDetailText() {\r\n return (\r\n setVisibleDialog(false)}\r\n dismissableMask\r\n draggable={false}\r\n >\r\n

\r\n

\r\n
\r\n
\r\n \r\n {props.t(\"Name\")} :{\" \"}\r\n {userData.Lang === \"EN\"\r\n ? dataDialog.actor_name_en\r\n : dataDialog.actor_name_th}\r\n
\r\n {dataDialog.action == \"draft\" && (\r\n
\r\n \r\n {convertAction(dataDialog.action)}\r\n \r\n
\r\n )}\r\n {dataDialog.action == \"approve\" && (\r\n
\r\n \r\n {convertAction(dataDialog.action)}\r\n \r\n
\r\n )}\r\n {dataDialog.action == \"recall\" && (\r\n
\r\n \r\n {convertAction(dataDialog.action)}\r\n \r\n
\r\n )}\r\n {dataDialog.action == \"rework\" && (\r\n
\r\n \r\n {convertAction(dataDialog.action)}\r\n \r\n
\r\n )}\r\n {dataDialog.action == \"request comment\" && (\r\n
\r\n \r\n {convertAction(dataDialog.action)}\r\n \r\n
\r\n )}\r\n {dataDialog.action == \"submit\" && (\r\n
\r\n \r\n {convertAction(dataDialog.action)}\r\n \r\n
\r\n )}\r\n {dataDialog.action == \"cancel\" && (\r\n
\r\n \r\n {convertAction(dataDialog.action)}\r\n \r\n
\r\n )}\r\n {dataDialog.action == \"assign\" && (\r\n
\r\n \r\n {convertAction(dataDialog.action)}\r\n \r\n
\r\n )}\r\n {dataDialog.action == \"reject\" && (\r\n
\r\n \r\n {convertAction(dataDialog.action)}\r\n \r\n
\r\n )}\r\n {dataDialog.action == \"reply\" && (\r\n
\r\n \r\n {convertAction(dataDialog.action)}\r\n \r\n
\r\n )}\r\n {dataDialog.action == \"return\" && (\r\n
\r\n \r\n {convertAction(dataDialog.action)}\r\n \r\n
\r\n )}\r\n {dataDialog.action == \"discard\" && (\r\n
\r\n \r\n {convertAction(dataDialog.action)}\r\n \r\n
\r\n )}\r\n
\r\n

\r\n

\r\n Position :{\" \"}\r\n {userData.Lang === \"EN\"\r\n ? dataDialog.actor_position_name_en\r\n : dataDialog.actor_position_name_th}\r\n

\r\n

\r\n {props.t(\"From Status\")} : {dataDialog.status}\r\n

\r\n

\r\n {props.t(\"Action Date\")} :{\" \"}\r\n {convertDate(dataDialog.action_date)}\r\n

\r\n \r\n {convertHtml(dataDialog.comment)}\r\n

\r\n
\r\n
\r\n
\r\n {convertPlatform(dataDialog.platform)}\r\n
\r\n
\r\n

\r\n \r\n );\r\n }\r\n return (\r\n
\r\n {dataDialog && dialogDetailText()}\r\n

{props.t(\"history\")}

\r\n\r\n
\r\n {data.length > 0 &&\r\n data.map((data, idx) => (\r\n
\r\n
\r\n
\r\n \r\n {props.t(\"Name\")} :{\" \"}\r\n {userData.Lang === \"EN\"\r\n ? data.actor_name_en\r\n : data.actor_name_th}\r\n
\r\n {data.action == \"draft\" && (\r\n
\r\n \r\n {convertAction(data.action)}\r\n \r\n
\r\n )}\r\n {data.action == \"approve\" && (\r\n
\r\n \r\n {convertAction(data.action)}\r\n \r\n
\r\n )}\r\n {data.action == \"recall\" && (\r\n
\r\n \r\n {convertAction(data.action)}\r\n \r\n
\r\n )}\r\n {data.action == \"rework\" && (\r\n
\r\n \r\n {convertAction(data.action)}\r\n \r\n
\r\n )}\r\n {data.action == \"request comment\" && (\r\n
\r\n \r\n {convertAction(data.action)}\r\n \r\n
\r\n )}\r\n {data.action == \"submit\" && (\r\n
\r\n \r\n {convertAction(data.action)}\r\n \r\n
\r\n )}\r\n {data.action == \"cancel\" && (\r\n
\r\n \r\n {convertAction(data.action)}\r\n \r\n
\r\n )}\r\n {data.action == \"assign\" && (\r\n
\r\n \r\n {convertAction(data.action)}\r\n \r\n
\r\n )}\r\n {data.action == \"reject\" && (\r\n
\r\n \r\n {convertAction(data.action)}\r\n \r\n
\r\n )}\r\n {data.action == \"reply\" && (\r\n
\r\n \r\n {convertAction(data.action)}\r\n \r\n
\r\n )}\r\n {data.action == \"return\" && (\r\n
\r\n \r\n {convertAction(data.action)}\r\n \r\n
\r\n )}\r\n {data.action == \"discard\" && (\r\n
\r\n \r\n {convertAction(data.action)}\r\n \r\n
\r\n )}\r\n
\r\n

\r\n

\r\n {props.t(\"Position\")} :{\" \"}\r\n {userData.Lang === \"EN\"\r\n ? data.actor_position_name_en\r\n : data.actor_position_name_th}\r\n

\r\n

\r\n {props.t(\"From Status\")} : {data.status}\r\n

\r\n

\r\n {props.t(\"Action Date\")}: {convertDate(data.action_date)}\r\n

\r\n \r\n {convertHtml(data.comment, true)}\r\n

\r\n {data?.comment && data?.comment?.length >= 200 && (\r\n

\r\n {\r\n setVisibleDialog(true);\r\n console.log(idx, \"idx\");\r\n setDataDialog(data);\r\n }}\r\n >\r\n {props.t(\"More\")}\r\n

\r\n

\r\n )}\r\n
\r\n
\r\n
{convertPlatform(data.platform)}
\r\n
\r\n ))}\r\n
\r\n
\r\n );\r\n};\r\n","import React, { useState } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { HistoryComponent } from \"../../components/RequestComponents/HistoryComponent/HistoryComponent\";\r\nimport { HistoryCardComponent } from \"../../components/WorklistScreenComponent/HistoryCardComponent\";\r\nimport { IWorklistHistory } from \"../../IRequestModel/IListHistoryDetailsModel\";\r\nimport \"./HistoryScreen.css\";\r\ninterface Props {\r\n historyData?: IWorklistHistory[];\r\n}\r\n\r\nexport const HistoryScreen = (props: Props) => {\r\n const [historyData, setHistoryData] = useState(\r\n props.historyData ? props.historyData : []\r\n );\r\n const { t } = useTranslation([\"translation\"]);\r\n\r\n return (\r\n
\r\n \r\n {/* {props.historyData.map((_data: any, idx: any) => (\r\n // \r\n undefined} />\r\n ))} */}\r\n
\r\n );\r\n};\r\n","import React, { useEffect, useState } from \"react\";\r\nimport \"./WorklistScreenComponent.css\";\r\nimport moment from \"moment\";\r\nimport {\r\n BsFileEarmarkPdfFill,\r\n BsFileEarmarkExcelFill,\r\n BsFillFileEarmarkTextFill,\r\n} from \"react-icons/bs\";\r\nimport { FaFilePowerpoint, FaFileWord } from \"react-icons/fa\";\r\ninterface Props {\r\n data: any;\r\n}\r\n\r\nexport const AttachmentCardComponent = (props: Props) => {\r\n const [comploteLink, setComploteLink] = useState(\"\");\r\n const formatDate = () => {\r\n let momentObj = moment(props.data.attach_date, \"DD/MM/yyyy HH:mm:ss\");\r\n\r\n return moment(momentObj).format(\"DD MMM yyyy , h:mm\");\r\n };\r\n const _userData = JSON.parse(window.localStorage.getItem(\"userData\") || \"\");\r\n\r\n const _sharepointSiteURL = _userData.SharepointSiteURL;\r\n\r\n useEffect(() => {\r\n showFile();\r\n }, []);\r\n\r\n const showFile = async () => {\r\n let component;\r\n const attachPath = props.data.attach_path;\r\n var pathArray = attachPath.split(\"/\");\r\n let comploteLink = \"\";\r\n const _link = attachPath\r\n ? attachPath.charAt(0) !== \"/\" && !_sharepointSiteURL\r\n ? \"/\" + attachPath\r\n : attachPath\r\n : \"\";\r\n const protocol = window.location.protocol;\r\n if (_sharepointSiteURL) {\r\n comploteLink = _link;\r\n // window.open(`${_link}`, \"_blank\", \"noreferrer\");\r\n } else if (_userData.TinyURL) {\r\n const _port = location.port;\r\n if (location.host !== \"localhost:5001\") {\r\n if (_port) {\r\n _userData.TinyURL = _userData.TinyURL + \":\" + _port;\r\n }\r\n }\r\n\r\n if (\r\n _link.includes(\"www\") ||\r\n _link.includes(\".com\") ||\r\n _link.includes(\".tv\") ||\r\n _link.includes(\".net\") ||\r\n _link.includes(\"https\") ||\r\n _link.includes(\"http\") ||\r\n _link.includes(\".com\") ||\r\n _link.includes(\".co.th\")\r\n ) {\r\n if (_link.includes(\"https\")) {\r\n comploteLink = `https://${_link.replaceAll(\"https://\", \"\")}`;\r\n // window.open(\r\n // `https://${_link.replaceAll(\"https://\", \"\")}`,\r\n // \"_blank\",\r\n // \"noreferrer\"\r\n // );\r\n } else if (_link.includes(\"http\")) {\r\n comploteLink = `http://${_link.replaceAll(\"http://\", \"\")}`;\r\n // window.open(\r\n // `http://${_link.replaceAll(\"http://\", \"\")}`,\r\n // \"_blank\",\r\n // \"noreferrer\"\r\n // );\r\n } else {\r\n comploteLink = `https://${_link}`;\r\n // window.open(`https://${_link}`, \"_blank\", \"noreferrer\");\r\n }\r\n } else {\r\n comploteLink = `${protocol}//${_userData.TinyURL}${_link}`;\r\n // window.open(\r\n // `${protocol}//${_userData.TinyURL}${_link}`,\r\n // \"_blank\",\r\n // \"noreferrer\"\r\n // );\r\n }\r\n } else if (!_userData.TinyURL) {\r\n comploteLink = `${_link}`;\r\n // window.open(`${_link}`, \"_blank\", \"noreferrer\");\r\n }\r\n setComploteLink(comploteLink);\r\n };\r\n\r\n const getFileIcon = (attachPath: string) => {\r\n if (attachPath.endsWith(\"pdf\")) {\r\n return ;\r\n } else if (\r\n attachPath.endsWith(\"png\") ||\r\n attachPath.endsWith(\"jpg\") ||\r\n attachPath.endsWith(\"jpeg\")\r\n ) {\r\n return \"flow-img\";\r\n } else if (attachPath.endsWith(\"doc\") || attachPath.endsWith(\"docx\")) {\r\n return ;\r\n } else if (\r\n attachPath.endsWith(\"csv\") ||\r\n attachPath.endsWith(\"xls\") ||\r\n attachPath.endsWith(\"xlsx\")\r\n ) {\r\n return ;\r\n } else if (attachPath.endsWith(\"pptx\") || attachPath.endsWith(\"ppt\")) {\r\n return ;\r\n } else if (attachPath.endsWith(\"txt\")) {\r\n return ;\r\n }\r\n };\r\n\r\n // const tinyURL = window.localStorage.getItem(\"tinyUrl\");\r\n return (\r\n <>\r\n {props.data && (\r\n window.open(comploteLink, \"_blank\", \"noreferrer\")}\r\n >\r\n
\r\n {getFileIcon(props.data.attach_path)}\r\n
\r\n
\r\n

{props.data.attach_file}

\r\n

{props.data.actor.NameEn}

\r\n

{props.data.description}

\r\n
\r\n

{formatDate()}

\r\n
\r\n )}\r\n \r\n );\r\n};\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { AttachmentCardComponent } from \"../../components/WorklistScreenComponent/AttachmentCardComponent\";\r\nimport { IAttachFile } from \"../../IRequestModel/IAttachfile\";\r\nimport \"./AttachmentScreen.css\";\r\ninterface Props {\r\n attachFiles?: IAttachFile[];\r\n}\r\n\r\nexport const AttachmentScreen = (props: Props) => {\r\n // const [attachFile, setAttachFile] = useState([]);\r\n // useEffect(() => {\r\n // setAttachFile([...props.attachFiles]);\r\n // }, [props.attachFiles]);\r\n return (\r\n
\r\n {props.attachFiles &&\r\n props.attachFiles.length > 0 &&\r\n props.attachFiles.map((data: any, idx: any) => (\r\n \r\n ))}\r\n
\r\n );\r\n};\r\n","import { InputTextarea } from \"primereact/inputtextarea\";\r\nimport React, { useRef, useState, useEffect } from \"react\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport \"./CommentComponent.css\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { BiCommentDetail } from \"react-icons/bi\";\r\nimport { ConfirmDialog } from \"primereact/confirmdialog\";\r\nimport { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { GetAllEmployee } from \"../../Services/EmployeeService\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\n// import { Editor } from \"primereact/editor\";\\\r\nimport \"tinymce/tinymce\";\r\n// import tinymce from \"tinymce/tinymce\";\r\nimport \"tinymce/icons/default\";\r\nimport \"tinymce/themes/silver\";\r\nimport \"tinymce/plugins/paste\";\r\nimport \"tinymce/plugins/link\";\r\nimport \"tinymce/plugins/table\";\r\nimport \"tinymce/plugins/fullscreen\";\r\nimport \"tinymce/plugins/autolink\";\r\nimport \"tinymce/plugins/autosave\";\r\nimport \"tinymce/plugins/charmap\";\r\nimport \"tinymce/plugins/image\";\r\nimport \"tinymce/plugins/imagetools\";\r\nimport \"tinymce/plugins/textpattern\";\r\nimport \"tinymce/plugins/code\";\r\nimport \"tinymce/plugins/advlist\";\r\nimport \"tinymce/plugins/lists\";\r\nimport \"tinymce/plugins/print\";\r\nimport \"tinymce/plugins/preview\";\r\nimport \"tinymce/plugins/hr\";\r\nimport \"tinymce/plugins/anchor\";\r\nimport \"tinymce/plugins/pagebreak\";\r\nimport \"tinymce/plugins/searchreplace\";\r\nimport \"tinymce/plugins/wordcount\";\r\nimport \"tinymce/plugins/insertdatetime\";\r\nimport \"tinymce/plugins/media\";\r\nimport \"tinymce/plugins/nonbreaking\";\r\nimport \"tinymce/plugins/save\";\r\nimport \"tinymce/plugins/contextmenu\";\r\nimport \"tinymce/plugins/directionality\";\r\nimport \"tinymce/plugins/template\";\r\nimport \"tinymce/plugins/textcolor\";\r\nimport \"tinymce/plugins/colorpicker\";\r\nimport \"tinymce/skins/ui/oxide/skin.min.css\";\r\nimport \"tinymce/skins/ui/oxide/content.min.css\";\r\n// import \"./EditorComponent.css\";\r\nimport { Editor } from \"@tinymce/tinymce-react\";\r\nimport useAlert from \"../../hooks/useAlert\";\r\nimport { Link } from \"react-router-dom\";\r\ninterface Props {\r\n buttonType: any;\r\n commentStatus: boolean;\r\n setCommentStatus: any;\r\n require: boolean;\r\n onUpdate?: (\r\n // data: any,\r\n comment?: any,\r\n waiting_for?: string,\r\n waiting_for_id?: number\r\n ) => any;\r\n handleSubmit?: any;\r\n onSubmit?: any;\r\n pageName: any;\r\n lineApproval: any[];\r\n approvalSequence: number;\r\n}\r\n\r\nexport default function CommentComponent(props: Props) {\r\n const { toggleAlert } = useAlert();\r\n const [comment, setComment] = useState(\"\");\r\n const [placeholder, setPlaceholder] = useState(\"แสดงความคิดเห็น...\");\r\n const [isInvalid, setInvalid] = useState(true);\r\n const [dataEmployeeList, setDataEmployeeList] = useState();\r\n const [dataEmployee, setDataEmployee] = useState();\r\n const [globalFilterValue, setGlobalFilterValue] = useState(\"\");\r\n const [searchData, setSearchData] = useState([]);\r\n const [isDialogVisible, setDialogVisible] = useState(false);\r\n const [visibleConfirmDialog, setVisibleConfirmDialog] = useState(false);\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [selectedEmployee, setSelectedEmployee] = useState([]);\r\n const userData = JSON.parse(localStorage.getItem(\"userData\") || \"\");\r\n const toast = useRef();\r\n const [isMultiAssign, setIsMultiAssign] = useState(\r\n sessionStorage.getItem(\"isMultiAssign\") == \"true\"\r\n );\r\n const [isMultiRequestComment, setIsMultiRequestComment] = useState(\r\n sessionStorage.getItem(\"isMultiRequestComment\") == \"true\"\r\n );\r\n const [showAll, setShowAll] = useState(false);\r\n const [selectionMode] = useState(\r\n props.buttonType == \"request comment\" && isMultiRequestComment\r\n ? \"multiple\"\r\n : props.buttonType == \"assign\" && isMultiAssign\r\n ? \"multiple\"\r\n : \"single\"\r\n );\r\n useEffect(() => {\r\n fetchDataEmployee();\r\n }, []);\r\n\r\n useEffect(() => {}, [props.lineApproval]);\r\n async function fetchDataEmployee() {\r\n let _dataEmployee = await GetAllEmployee();\r\n setDataEmployeeList(_dataEmployee);\r\n setSearchData(_dataEmployee);\r\n setIsLoading(false);\r\n }\r\n\r\n const onGlobalFilterChange = (e: any) => {\r\n const value = e.target.value;\r\n const dataEmp = dataEmployeeList;\r\n setGlobalFilterValue(value);\r\n const data = dataEmp.filter((data: any) => {\r\n if (\r\n data.EmployeeCode.toLowerCase().indexOf(value.toLowerCase()) !== -1 ||\r\n data.NameTh?.toLowerCase().indexOf(value?.toLowerCase()) !== -1 ||\r\n data.NameEn?.toLowerCase().indexOf(value?.toLowerCase()) !== -1 ||\r\n data.PositionNameEn?.toLowerCase().indexOf(value.toLowerCase()) !==\r\n -1 ||\r\n data.DepartmentNameEn?.toLowerCase().indexOf(value.toLowerCase()) !== -1\r\n ) {\r\n return true;\r\n }\r\n });\r\n setSearchData([...data]);\r\n };\r\n\r\n function showModal(show = true) {\r\n if (globalFilterValue != \"\") {\r\n setGlobalFilterValue(\"\");\r\n }\r\n setDialogVisible(show);\r\n }\r\n\r\n const showError = () => {\r\n toggleAlert({\r\n description: `Please insert comment.`,\r\n message: `Comment field warning.`,\r\n type: \"warning\",\r\n });\r\n };\r\n const ClearMultiSelectEmployee = () => {\r\n setSelectedEmployee([]);\r\n };\r\n const ConfirmMultiSelectEmployee = () => {\r\n if (selectedEmployee.length == 0) {\r\n toggleAlert({\r\n description: `Please select at least one employee.`,\r\n message: `Select employee warning.`,\r\n type: \"warning\",\r\n });\r\n } else {\r\n let employee = selectedEmployee.reduce(\r\n (r, n) => {\r\n r.NameEn.push(n.EmployeeId);\r\n return r;\r\n },\r\n { EmployeeId: 0, NameEn: [] }\r\n );\r\n employee.NameEn = employee.NameEn.join(\",\");\r\n setVisibleConfirmDialog(true);\r\n setDataEmployee({ data: employee });\r\n }\r\n };\r\n const EmployeeDialogFooter = () => {\r\n return (\r\n <>\r\n
\r\n \r\n \r\n ClearMultiSelectEmployee()}\r\n >\r\n Clear\r\n \r\n \r\n \r\n ConfirmMultiSelectEmployee()}\r\n >\r\n Confirm\r\n \r\n \r\n \r\n
\r\n \r\n );\r\n };\r\n const EmployeeDialog = () => {\r\n return (\r\n <>\r\n showModal(false)}\r\n draggable={false}\r\n resizable={false}\r\n closable={true}\r\n blockScroll\r\n footer={selectionMode == \"multiple\" ? EmployeeDialogFooter : false}\r\n >\r\n \r\n \r\n \r\n

EmployeeCode

\r\n

รหัสพนักงาน

\r\n \r\n \r\n }\r\n >\r\n \r\n \r\n

Name

\r\n

ชื่อ

\r\n \r\n \r\n }\r\n >\r\n \r\n \r\n

Position

\r\n

ตำแหน่ง

\r\n \r\n \r\n }\r\n >\r\n \r\n \r\n

Department

\r\n

หน่วยงาน

\r\n \r\n \r\n }\r\n >\r\n \r\n \r\n \r\n );\r\n };\r\n const onSelectionChange = (event: any) => {\r\n if (event.value) {\r\n if (selectionMode == \"single\") {\r\n setVisibleConfirmDialog(true);\r\n if (isMultiAssign || isMultiRequestComment) {\r\n setDataEmployee({\r\n data: { EmployeeId: 0, NameEn: String(event.value.EmployeeId) },\r\n });\r\n } else {\r\n setDataEmployee({ data: event.value });\r\n }\r\n } else if (selectionMode == \"multiple\") {\r\n setSelectedEmployee(event.value);\r\n }\r\n }\r\n };\r\n const confirmUploadDialog = () => {\r\n return (\r\n <>\r\n setVisibleConfirmDialog(false)}\r\n message=\"Do you want to confirm this action?\"\r\n header=\"Confirmation\"\r\n icon=\"p-confirm-dialog-icon pi pi-info-circle\"\r\n acceptClassName=\"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\"\r\n accept={() => {\r\n sentToMemo(\r\n comment,\r\n dataEmployee.data.EmployeeId,\r\n dataEmployee.data.NameEn\r\n );\r\n }}\r\n reject={() => {\r\n setVisibleConfirmDialog(false);\r\n setDataEmployee(null);\r\n }}\r\n draggable={false}\r\n resizable={false}\r\n />\r\n \r\n );\r\n };\r\n const renderHeader = () => {\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n };\r\n\r\n const HeaderDialogComment = () => {\r\n try {\r\n return (\r\n <>\r\n {(props.buttonType === \"submit\" || props.buttonType === \"approve\") &&\r\n props.lineApproval?.filter((line) =>\r\n showAll\r\n ? line.sequence >= props.approvalSequence + 1\r\n : line.sequence === props.approvalSequence + 1\r\n ).length > 0 && (\r\n <>\r\n
\r\n

สายอนุมัติคนถัดไป

\r\n \r\n showAll\r\n ? line.sequence >= props.approvalSequence + 1\r\n : line.sequence === props.approvalSequence + 1\r\n )\r\n ?.map((e) => {\r\n console.log(\"approve\", e);\r\n\r\n return {\r\n name: e.approver[\r\n userData.employeeData.Lang === \"EN\"\r\n ? \"NameEn\"\r\n : \"NameTh\"\r\n ],\r\n position:\r\n e.approver[\r\n userData.employeeData.Lang === \"EN\"\r\n ? \"PositionNameEn\"\r\n : \"PositionNameTh\"\r\n ],\r\n department:\r\n e.approver[\r\n userData.employeeData.Lang === \"EN\"\r\n ? \"DepartmentNameEn\"\r\n : \"DepartmentNameTh\"\r\n ],\r\n signature:\r\n e[\r\n userData.employeeData.Lang === \"EN\"\r\n ? \"signature_en\"\r\n : \"signature_th\"\r\n ],\r\n };\r\n })}\r\n >\r\n \r\n

Employee Name

\r\n

ชื่อพนักงาน

\r\n \r\n }\r\n />\r\n \r\n

Position

\r\n

ตำแหน่ง

\r\n \r\n }\r\n />\r\n \r\n

Department

\r\n

หน่วยงาน

\r\n \r\n }\r\n />\r\n \r\n

Signature

\r\n

คำลงท้าย

\r\n \r\n }\r\n />\r\n \r\n {Math.max(...props.lineApproval.map((o) => o.sequence)) -\r\n (props.approvalSequence + 1) >\r\n 0 && (\r\n {\r\n setShowAll(!showAll);\r\n }}\r\n >\r\n {showAll ? <>ย่อ : <>แสดงทั้งหมด}\r\n \r\n )}\r\n
\r\n
\r\n \r\n )}\r\n\r\n
\r\n

Comment

\r\n {props.require === true && (\r\n

\r\n *\r\n

\r\n )}\r\n
\r\n \r\n );\r\n } catch (error) {\r\n console.error(error);\r\n return <>;\r\n }\r\n };\r\n const Footer = () => {\r\n return (\r\n
\r\n \r\n \r\n {\r\n props.setCommentStatus(false);\r\n setComment(\"\");\r\n }}\r\n >\r\n Cancel\r\n \r\n \r\n \r\n {\r\n ConfirmCheck();\r\n }}\r\n >\r\n Confirm\r\n \r\n \r\n \r\n
\r\n );\r\n };\r\n\r\n function ConfirmCheck() {\r\n setSearchData(dataEmployeeList);\r\n if (\r\n props.buttonType === \"submit\" ||\r\n props.buttonType === \"draft\" ||\r\n props.buttonType === \"approve\"\r\n ) {\r\n setInvalid(true);\r\n sentToMemo(comment);\r\n } else if (\r\n props.buttonType === \"cancel\" ||\r\n props.buttonType === \"recall\" ||\r\n props.buttonType === \"rework\" ||\r\n props.buttonType === \"reject\" ||\r\n props.buttonType === \"return\" ||\r\n props.buttonType === \"reply\"\r\n ) {\r\n if (!comment) {\r\n setPlaceholder(\"กรุณากรอกความคิดเห็นก่อนยืนยัน..\");\r\n setInvalid(false);\r\n showError();\r\n } else {\r\n sentToMemo(comment);\r\n }\r\n } else if (\r\n props.buttonType === \"assign\" ||\r\n props.buttonType === \"request comment\"\r\n ) {\r\n if (!comment) {\r\n setPlaceholder(\"กรุณากรอกความคิดเห็นก่อนยืนยัน..\");\r\n setInvalid(false);\r\n showError();\r\n } else {\r\n showModal();\r\n }\r\n }\r\n }\r\n const sentToMemo = (\r\n inputComment: string,\r\n waiting_for_id?: number,\r\n waiting_for?: string\r\n ) => {\r\n console.log({ inputComment });\r\n props.setCommentStatus(false);\r\n if (props.pageName.trim() === \"WorkList\" && props.onUpdate) {\r\n props.onUpdate(inputComment, waiting_for, waiting_for_id);\r\n\r\n // props.handleSubmit((e: any) => {\r\n // props.onSubmit(e, {\r\n // buttonType: props.buttonType,\r\n // inputComment: inputComment,\r\n // waitingFor: waiting_for,\r\n // waitingForId: waiting_for_id,\r\n // });\r\n // })();\r\n } else if (props.pageName.trim() === \"Request\") {\r\n console.log(\"request=>\", {\r\n buttonType: props.buttonType,\r\n inputComment: inputComment,\r\n waitingFor: waiting_for,\r\n waitingForId: waiting_for_id,\r\n });\r\n\r\n props.handleSubmit((e: any) => {\r\n console.log(\"request=>e\", e);\r\n props.onSubmit(e, {\r\n buttonType: props.buttonType,\r\n inputComment: inputComment,\r\n waitingFor: waiting_for,\r\n waitingForId: waiting_for_id,\r\n });\r\n })();\r\n }\r\n };\r\n const headerEditor = () => {\r\n return ;\r\n };\r\n\r\n return (\r\n <>\r\n props.setCommentStatus(false)}\r\n footer={Footer}\r\n >\r\n \r\n {HeaderDialogComment()}\r\n console.log(props.buttonType)}\r\n >\r\n {\r\n setIsLoading(false);\r\n }}\r\n tinymceScriptSrc={\r\n process.env.PUBLIC_URL + \"/tinymce/js/tinymce/tinymce.min.js\"\r\n }\r\n init={{\r\n // selector: \"textarea#file-picker\",\r\n statusbar: false,\r\n paste_data_images: false,\r\n menubar: \"\",\r\n content_css: false,\r\n // auto_focus: \"elm1\",\r\n height: 300,\r\n fullscreen_native: true,\r\n remove_script_host: false,\r\n relative_urls: false,\r\n image_title: true,\r\n automatic_uploads: true,\r\n image_sourcetab: false,\r\n image_advtab: false,\r\n plugins: [\r\n \"image code\",\r\n \"advlist autolink lists image charmap print preview hr anchor pagebreak\",\r\n \"searchreplace wordcount code fullscreen\",\r\n \"insertdatetime media nonbreaking save table contextmenu directionality\",\r\n \"template textcolor colorpicker textpattern imagetools image paste\",\r\n \"link\",\r\n ],\r\n toolbar: \"\",\r\n fontsize_formats:\r\n \"8pt 10pt 12pt 14pt 16pt 18pt 20pt 22pt 24pt 36pt\",\r\n font_formats:\r\n \"Angsana New=angsana new,times;\" +\r\n \"Arial=arial,helvetica,sans-serif;\" +\r\n \"Arial Black=arial black,avant garde;\" +\r\n \"Book Antiqua=book antiqua,palatino;\" +\r\n \"Comic Sans MS=comic sans ms,sans-serif;\" +\r\n \"Courier New=courier new,courier;\" +\r\n \"DB Sathorn X=DB Sathorn X;\" +\r\n \"Georgia=georgia,palatino;\" +\r\n \"Helvetica=helvetica;\" +\r\n \"Impact=impact,chicago;\" +\r\n \"Symbol=symbol;\" +\r\n \"Tahoma=tahoma,arial,helvetica,sans-serif;\" +\r\n \"Terminal=terminal,monaco;\" +\r\n \"Times New Roman=times new roman,times;\" +\r\n \"Trebuchet MS=trebuchet ms,geneva;\" +\r\n \"Verdana=verdana,geneva;\" +\r\n \"Webdings=webdings;\" +\r\n \"TH Sarabun=sarabun;\" +\r\n \"Leelawadee=Leelawadee;\" +\r\n \"Sukhumvit Set=Sukhumvit Set;\" +\r\n \"Wingdings=wingdings,zapf dingbats\",\r\n content_style:\r\n \"@import url('https://fonts.googleapis.com/css2?family=Sarabun&display=swap'); body { font-family: 'Sarabun', sans-serif; }\" +\r\n \"@import url('https://fonts.cdnfonts.com/css/leelawadee'); body { font-family: 'Leelawadee', sans-serif; }\",\r\n }}\r\n value={comment}\r\n onEditorChange={(content: any, editor: any) => {\r\n console.log({ content });\r\n\r\n setComment(content);\r\n // handleEditorChange(content, editor, onChange);\r\n }}\r\n />\r\n \r\n \r\n {EmployeeDialog()}\r\n {confirmUploadDialog()}\r\n \r\n );\r\n}\r\n","import React, { useState, useEffect } from \"react\";\r\nimport \"./MemoButtonComponent.css\";\r\nimport { BiSend, BiCommentDetail } from \"react-icons/bi\";\r\nimport { IoCheckmarkCircleOutline } from \"react-icons/io5\";\r\n\r\nimport { AiOutlineSave } from \"react-icons/ai\";\r\nimport { MdOutlineCancel } from \"react-icons/md\";\r\nimport {\r\n IoMdCheckmarkCircleOutline,\r\n IoMdRefresh,\r\n IoMdArrowRoundBack,\r\n} from \"react-icons/io\";\r\nimport { RiDeleteBinLine, RiFileForbidLine } from \"react-icons/ri\";\r\nimport { BsArrowRight } from \"react-icons/bs\";\r\nimport CommentComponent from \"../Input/CommentComponent\";\r\nimport { ConfirmDialogComponents } from \"../ConfirmDialogComponent/ConfirmDialogComponents\";\r\nimport { useTranslation } from \"react-i18next\";\r\ninterface Props {\r\n pageName: string;\r\n handleSubmit?: any;\r\n onSubmit?: any;\r\n memoMenu: any;\r\n buttonType?: string;\r\n setButtonType: any;\r\n setSelectedView?: any;\r\n setCurPage?: any;\r\n onUpdate?: (\r\n comment?: any,\r\n waiting_for?: string,\r\n waiting_for_id?: number\r\n ) => void;\r\n lineApproval: any[];\r\n approvalSequence: number;\r\n}\r\n\r\nexport const MemoButtonComponent = (props: Props) => {\r\n const [memoMenuButton, setMemoMenuButton] = useState();\r\n const [commentStatus, setCommentStatus] = useState(false);\r\n const [require, setRequire] = useState(false);\r\n const { t } = useTranslation([\"translation\"]);\r\n useEffect(() => {\r\n mapMemoButton(props.memoMenu);\r\n return memoMenuButton;\r\n }, [props.memoMenu, props.lineApproval]);\r\n\r\n const mapMemoButton = (menuData: any) => {\r\n if (typeof menuData !== \"undefined\") {\r\n const mapMenuData = menuData.map((data: any, idx: any) => {\r\n if (data.commandName === \"reply\") {\r\n return (\r\n {\r\n if (props.setSelectedView && props.setCurPage) {\r\n props.setSelectedView(\"2\");\r\n props.setCurPage(\"2\");\r\n }\r\n\r\n props.setButtonType(\"reply\");\r\n setCommentStatus(true);\r\n setRequire(true);\r\n }}\r\n >\r\n \r\n

{t(data.text)}

\r\n \r\n );\r\n }\r\n if (data.commandName === \"submit\") {\r\n return (\r\n {\r\n if (props.setSelectedView && props.setCurPage) {\r\n props.setSelectedView(\"2\");\r\n props.setCurPage(\"2\");\r\n }\r\n\r\n props.setButtonType(\"submit\");\r\n setCommentStatus(true);\r\n setRequire(false);\r\n }}\r\n >\r\n \r\n

{t(data.text)}

\r\n \r\n );\r\n }\r\n if (data.commandName === \"approve\") {\r\n return (\r\n {\r\n if (props.setSelectedView && props.setCurPage) {\r\n props.setSelectedView(\"2\");\r\n props.setCurPage(\"2\");\r\n }\r\n props.setButtonType(\"approve\");\r\n setCommentStatus(true);\r\n setRequire(false);\r\n }}\r\n >\r\n \r\n

{t(data.text)}

\r\n \r\n );\r\n }\r\n if (data.commandName === \"return\") {\r\n return (\r\n {\r\n if (props.setSelectedView && props.setCurPage) {\r\n props.setSelectedView(\"2\");\r\n props.setCurPage(\"2\");\r\n }\r\n setCommentStatus(true);\r\n props.setButtonType(\"return\");\r\n setRequire(true);\r\n }}\r\n >\r\n \r\n

{t(data.text)}

\r\n \r\n );\r\n }\r\n if (data.commandName === \"discard\") {\r\n return (\r\n {\r\n if (props.setSelectedView && props.setCurPage) {\r\n props.setSelectedView(\"2\");\r\n props.setCurPage(\"2\");\r\n }\r\n setCommentStatus(true);\r\n props.setButtonType(\"discard\");\r\n setRequire(true);\r\n }}\r\n >\r\n \r\n {data.text}\r\n \r\n );\r\n }\r\n if (data.commandName === \"draft\") {\r\n return (\r\n {\r\n if (props.setSelectedView && props.setCurPage) {\r\n props.setSelectedView(\"2\");\r\n props.setCurPage(\"2\");\r\n }\r\n setCommentStatus(true);\r\n props.setButtonType(\"draft\");\r\n setRequire(false);\r\n }}\r\n >\r\n \r\n

{t(\"Save Draft\")}

\r\n \r\n );\r\n }\r\n if (data.commandName === \"cancel\") {\r\n return (\r\n {\r\n if (props.setSelectedView && props.setCurPage) {\r\n props.setSelectedView(\"2\");\r\n props.setCurPage(\"2\");\r\n }\r\n setCommentStatus(true);\r\n props.setButtonType(\"cancel\");\r\n setRequire(true);\r\n }}\r\n >\r\n \r\n

{t(data.text)}

\r\n \r\n );\r\n }\r\n if (data.commandName === \"recall\") {\r\n return (\r\n {\r\n if (props.setSelectedView && props.setCurPage) {\r\n props.setSelectedView(\"2\");\r\n props.setCurPage(\"2\");\r\n }\r\n setCommentStatus(true);\r\n props.setButtonType(\"recall\");\r\n setRequire(true);\r\n }}\r\n >\r\n \r\n

{t(data.text)}

\r\n \r\n );\r\n }\r\n if (data.commandName === \"rework\") {\r\n return (\r\n {\r\n if (props.setSelectedView && props.setCurPage) {\r\n props.setSelectedView(\"2\");\r\n props.setCurPage(\"2\");\r\n }\r\n setCommentStatus(true);\r\n props.setButtonType(\"rework\");\r\n setRequire(true);\r\n }}\r\n >\r\n \r\n

{t(data.text)}

\r\n \r\n );\r\n }\r\n if (data.commandName === \"request comment\") {\r\n return (\r\n {\r\n if (props.setSelectedView && props.setCurPage) {\r\n props.setSelectedView(\"2\");\r\n props.setCurPage(\"2\");\r\n }\r\n setCommentStatus(true);\r\n props.setButtonType(\"request comment\");\r\n setRequire(true);\r\n }}\r\n >\r\n \r\n

{t(data.text)}

\r\n \r\n );\r\n }\r\n if (data.commandName === \"assign\") {\r\n return (\r\n {\r\n if (props.setSelectedView && props.setCurPage) {\r\n props.setSelectedView(\"2\");\r\n props.setCurPage(\"2\");\r\n }\r\n setCommentStatus(true);\r\n props.setButtonType(\"assign\");\r\n setRequire(true);\r\n }}\r\n >\r\n \r\n

{t(data.text)}

\r\n \r\n );\r\n }\r\n if (data.commandName === \"reject\") {\r\n return (\r\n {\r\n if (props.setSelectedView && props.setCurPage) {\r\n props.setSelectedView(\"2\");\r\n props.setCurPage(\"2\");\r\n }\r\n setCommentStatus(true);\r\n props.setButtonType(\"reject\");\r\n setRequire(true);\r\n }}\r\n >\r\n \r\n

{t(data.text)}

\r\n \r\n );\r\n }\r\n return <>;\r\n });\r\n setMemoMenuButton(mapMenuData);\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n
{memoMenuButton}
\r\n {commentStatus == true && (\r\n \r\n )}\r\n \r\n );\r\n};\r\n","import { IUserModel } from \"../IRequestModel/IUserModel\";\r\nimport { GetMemoDetail, GetMemoDetailById } from \"./MemoService\";\r\nimport { GetTemplateById } from \"./TemplateService\";\r\n\r\nexport const GeneratePDF = async (\r\n memoId: any,\r\n userData: IUserModel,\r\n requestDetail?: any\r\n) => {\r\n let _requestDetail: any = {};\r\n let dataJson: any = {};\r\n if (!requestDetail) {\r\n const responeMemoDetail = await GetMemoDetail({\r\n Memoid: memoId,\r\n SecretId: \"\",\r\n EmployeeId: userData.EmployeeId.toString(),\r\n TemplateId: 0,\r\n DocumentCode: \"\",\r\n DocumentNo: \"\",\r\n\r\n actor: userData,\r\n });\r\n\r\n _requestDetail = responeMemoDetail.requestDetails;\r\n console.log({ requestDetail, memoId, responeMemoDetail });\r\n } else {\r\n _requestDetail = requestDetail;\r\n }\r\n\r\n _requestDetail.memoDetail.actor = userData;\r\n const responePreviewPDF = await fetch(`api/PreviewPdf/PreviewPdf`, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({ MemoPage: _requestDetail }),\r\n });\r\n const respone = await responePreviewPDF.json();\r\n return respone;\r\n};\r\n\r\nexport const newGeneratePDF = async (memoId: any) => {\r\n const respone = await fetch(\"api/PreviewPdf/GenPreviewPDF\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(memoId),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n });\r\n\r\n return respone;\r\n};\r\n","export default __webpack_public_path__ + \"static/media/ic_history.70631641.svg\";","export default __webpack_public_path__ + \"static/media/ic_attachment_file.95c72623.svg\";","import React, { useEffect, useState } from \"react\";\r\nimport { Badge, Space } from \"antd\";\r\nimport IC_HISTORY from \"./../../../assets/ic_history.svg\";\r\nimport IC_ATTACHMENT_FILE from \"./../../../assets/ic_attachment_file.svg\";\r\n\r\ninterface BadgeNotificateProps {\r\n badgeSize?: \"default\" | \"small\";\r\n badgeColor?: string;\r\n dataDetail: any;\r\n requestData: any;\r\n dataMemo: any;\r\n type?: \"attachment\" | \"history\";\r\n children?: any;\r\n offset?: [number, number]; // [left, top]\r\n isCard?: boolean;\r\n}\r\n\r\nexport const BadgeNotificate = (props: BadgeNotificateProps) => {\r\n const [count, setCount] = useState(0);\r\n const [hasLastComment, setHasLastComment] = useState(false);\r\n\r\n useEffect(() => {\r\n setNotificate();\r\n });\r\n\r\n const setNotificate = () => {\r\n if (props.dataMemo) {\r\n if (props.type === \"history\") {\r\n setHasLastComment(props.dataMemo?.IsMemoHistoryLastComment);\r\n setCount(props.dataMemo?.MemoHistoryAmount);\r\n } else {\r\n setCount(props.dataMemo?.MemoAttachFileAmount);\r\n }\r\n } else {\r\n let amountAttachment: number = 0;\r\n let history: any[] = [];\r\n let lastComment: boolean = false;\r\n\r\n if (props.dataDetail) {\r\n let data = props.dataDetail;\r\n amountAttachment = data?.attachfiles?.length;\r\n history = data?.history;\r\n } else if (props.requestData) {\r\n const requestDetail = props.requestData;\r\n const request = requestDetail?.requestDetails;\r\n amountAttachment = request?.listFileAttachDetails?.length;\r\n history = request?.listHistoryDetails;\r\n }\r\n history = history?.sort((a: any, b: any) => a?.action_id - b?.action_id);\r\n lastComment = history?.slice(-1).shift()?.comment !== \"\";\r\n let amountComment: number = history?.filter(\r\n (el: any) => el.comment !== \"\"\r\n ).length;\r\n let amount: number = 0;\r\n if (props.type === \"attachment\") {\r\n amount = amountAttachment;\r\n } else if (props.type === \"history\") {\r\n amount = amountComment;\r\n setHasLastComment(lastComment);\r\n }\r\n setCount(amount);\r\n }\r\n };\r\n\r\n if (props.dataMemo) {\r\n return (\r\n \r\n {count > 0 && (\r\n \r\n \r\n {props.type === \"attachment\" ? (\r\n \"\"\r\n ) : (\r\n \"\"\r\n )}\r\n \r\n \r\n )}\r\n \r\n );\r\n }\r\n\r\n return !props.dataDetail && !props.requestData ? (\r\n props.children\r\n ) : props.isCard ? (\r\n count > 0 ? (\r\n \r\n {props.children}\r\n \r\n ) : (\r\n props.children\r\n )\r\n ) : count > 0 ? (\r\n \r\n {props.children}\r\n \r\n ) : (\r\n props.children\r\n );\r\n};\r\n","import React, { useState, useEffect, FC } from \"react\";\r\nimport \"./DetailContentScreen.css\";\r\nimport { BsFileEarmarkRuledFill, BsClockHistory } from \"react-icons/bs\";\r\nimport { RiNodeTree } from \"react-icons/ri\";\r\nimport { GrAttachment } from \"react-icons/gr\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { ShowContentScreen } from \"./ShowContentScreen\";\r\nimport { FlowScreen } from \"./FlowScreen\";\r\nimport { HistoryScreen } from \"./HistoryScreen\";\r\nimport { AttachmentScreen } from \"./AttachmentScreen\";\r\nimport { IoDocumentText, IoOpenOutline } from \"react-icons/io5\";\r\nimport { MemoButtonComponent } from \"../../components/MemoButton/MemoButtonComponent\";\r\nimport { MemoSingleButton } from \"../../components/MemoButton/MemoSingleButton\";\r\nimport { GeneratePDF, newGeneratePDF } from \"../../Services/ReviewPdfService\";\r\nimport { useUserContext } from \"../../Context/UserContext\";\r\nimport { motion, AnimatePresence } from \"framer-motion\";\r\nimport { IWorklistDetail } from \"../../IRequestModel/IWorklistModel\";\r\nimport { GetMemoDetail } from \"../../Services/MemoService\";\r\nimport { BadgeNotificate } from \"../../components/AntdControlComponent/BadgeNotificateComponent/BadgeNotificate\";\r\nimport { ProgressSpinner } from \"primereact/progressspinner\";\r\n\r\ninterface Props {\r\n data?: IWorklistDetail;\r\n menuButton: any;\r\n onUpdate: (\r\n type: any,\r\n memoId: any,\r\n comment: any,\r\n waiting_for?: string,\r\n waiting_for_id?: number\r\n ) => void;\r\n isShowPdfData: boolean;\r\n setButtonType: any;\r\n buttonType: string;\r\n onDetailLoading: any;\r\n}\r\n\r\nexport const DetailContentScreen: FC = ({\r\n data,\r\n menuButton,\r\n onUpdate,\r\n isShowPdfData,\r\n setButtonType,\r\n buttonType,\r\n onDetailLoading,\r\n}) => {\r\n const [userData] = useUserContext();\r\n const [page, setPage] = useState(1);\r\n const [onLoading, setOnLoading] = useState(true);\r\n const [pdfData, setPdfData] = useState(\"\");\r\n const [memoMenu, setMemoMenu] = useState();\r\n const [memo, setMemo] = useState();\r\n\r\n useEffect(() => {\r\n setOnLoading(true);\r\n setPage(1);\r\n onFetchPdf(data?.MemoID);\r\n Fetch();\r\n }, [data]);\r\n // useEffect(() => {\r\n // Fetch();\r\n // }, []);\r\n\r\n useEffect(() => {\r\n const menuButtonSort = menuButton.sort(\r\n (x: any, y: any) => x.sequence - y.sequence\r\n );\r\n setMemoMenu(menuButtonSort);\r\n return;\r\n }, [menuButton]);\r\n const history = useHistory();\r\n\r\n async function onFetchPdf(memoId: any) {\r\n let responeData = await GeneratePDF(memoId, userData);\r\n // let responeData = await (await fetch(`api/Memo/PreviewPdfUrl?MemoId=${memoId}`)).json();\r\n\r\n setOnLoading(false);\r\n\r\n setPdfData(responeData);\r\n }\r\n async function Fetch() {\r\n const request = {\r\n Memoid: data?.MemoID,\r\n TemplateId: null,\r\n DocumentCode: null,\r\n SecretId: \"\",\r\n EmployeeId: userData.EmployeeId.toString(),\r\n actor: userData,\r\n };\r\n const response = await GetMemoDetail(request);\r\n\r\n setMemo(response);\r\n }\r\n\r\n return (\r\n \r\n
\r\n
\r\n {\r\n setPage(1);\r\n }}\r\n >\r\n \r\n

Content

\r\n
\r\n setPage(2)}\r\n >\r\n \r\n

Flow

\r\n
\r\n\r\n setPage(3)}\r\n >\r\n \r\n

History

\r\n \r\n }\r\n dataMemo={null}\r\n />\r\n\r\n setPage(4)}\r\n >\r\n \r\n

Attachment

\r\n \r\n }\r\n dataMemo={null}\r\n />\r\n\r\n
\r\n {\r\n const _data = {\r\n MemoID: data?.MemoID,\r\n pdfData: pdfData,\r\n };\r\n history.push(`/Request?MemoID=${_data.MemoID}`, _data);\r\n }}\r\n />\r\n
\r\n \r\n {/* */}\r\n {onDetailLoading ? (\r\n \r\n \r\n \r\n ) : (\r\n <>\r\n \r\n \r\n {page === 1 && (\r\n \r\n )}\r\n {page === 2 && (\r\n \r\n )}\r\n {page === 3 && }\r\n {page === 4 && (\r\n \r\n )}\r\n \r\n \r\n
\r\n \r\n onUpdate(\r\n buttonType,\r\n data?.MemoID,\r\n comment,\r\n waiting_for,\r\n waiting_for_id\r\n )\r\n }\r\n pageName={\"WorkList\"}\r\n lineApproval={memo?.requestDetails?.listApprovalDetails}\r\n approvalSequence={\r\n memo?.requestDetails?.memoDetail?.current_approval_level\r\n }\r\n />\r\n
\r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { ConfigProvider, DatePicker, Space } from \"antd\";\r\nimport { BsCalendarDate } from \"react-icons/bs\";\r\nimport { GrFormNextLink } from \"react-icons/gr\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport dayjs from \"dayjs\";\r\nimport type { TimeRangePickerProps } from \"antd\";\r\nimport moment from \"moment\";\r\n\r\nconst { RangePicker } = DatePicker;\r\n\r\ninterface Props {\r\n id: string;\r\n title: string;\r\n name: string;\r\n disable?: boolean;\r\n dates: any;\r\n onSelectChange: (e: any, f: any) => void;\r\n isFullWidth: boolean;\r\n showIcon?: boolean;\r\n}\r\n\r\nexport const SelectDate = (props: Props) => {\r\n const { t } = useTranslation([\"translation\"]);\r\n const [dates, setDates] = useState(props.dates);\r\n const [isOpen, setIsOpen] = useState(false);\r\n useEffect(() => {\r\n window.addEventListener(\"scroll\", handleScroll);\r\n }, []);\r\n useEffect(() => {\r\n setDates(props.dates);\r\n }, [props.dates]);\r\n const handleScroll = (e: any) => {\r\n setIsOpen(false);\r\n };\r\n useEffect(() => {\r\n if (!isOpen && dates !== props.dates) {\r\n props.onSelectChange(dates, props.name);\r\n }\r\n }, [isOpen]);\r\n\r\n // const rangePresets: TimeRangePickerProps[\"presets\"] = [\r\n // { label: \"Today\", value: [dayjs(), dayjs().endOf(\"day\")] },\r\n // {\r\n // label: \"This Month\",\r\n // value: [dayjs().startOf(\"month\"), dayjs().endOf(\"month\")],\r\n // },\r\n // {\r\n // label: \"This Year\",\r\n // value: [dayjs().startOf(\"year\"), dayjs().endOf(\"year\")],\r\n // },\r\n // ];\r\n\r\n return (\r\n \r\n {props.showIcon === undefined && (\r\n \r\n )}\r\n {props.showIcon !== false && (\r\n \r\n )}\r\n setIsOpen(e)}\r\n className={\"custom-date\"}\r\n value={props.dates}\r\n suffixIcon={null}\r\n placeholder={[t(\"Start date\"), t(\"End date\")]}\r\n separator={}\r\n onCalendarChange={(val) => setDates(val)}\r\n onChange={(date) => {\r\n if (!date && dates !== date) {\r\n props.onSelectChange(date, props.name);\r\n }\r\n }}\r\n ranges={{\r\n Today: [moment(), moment()],\r\n \"This Month\": [moment().startOf(\"month\"), moment().endOf(\"month\")],\r\n \"This Year\": [moment().startOf(\"year\"), moment().endOf(\"year\")],\r\n }}\r\n />\r\n \r\n );\r\n};\r\n","import React, { useState, useEffect } from \"react\";\r\nimport Form from \"react-bootstrap/Form\";\r\nimport { Select, Divider } from \"antd\";\r\nimport \"./Select.css\";\r\nimport { MdOutlineSelectAll } from \"react-icons/md\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\ninterface Props {\r\n id: string;\r\n title: string;\r\n name: string;\r\n icon: any;\r\n values: any[];\r\n disable?: boolean;\r\n\r\n onSelectChange: (text: string[], formSelect: string) => void;\r\n defaultVaue?: string[];\r\n}\r\n\r\nexport const MultiSelectDropdown = (props: Props) => {\r\n const { t } = useTranslation([\"translation\"]); \r\n const [selectValue, setSelectValue] = useState(\r\n props.defaultVaue ? props.defaultVaue : []\r\n );\r\n const [isOpen, setIsOpen] = useState(false);\r\n const { Option } = Select;\r\n useEffect(() => {\r\n window.addEventListener(\"scroll\", handleScroll);\r\n console.log(props.values, \"values\");\r\n }, []);\r\n\r\n useEffect(() => {\r\n setSelectValue(props.defaultVaue ? props.defaultVaue : []);\r\n }, [props.defaultVaue]);\r\n const onSelectAll = () => {\r\n let selected = []\r\n for (let i = 0; i < props.values.length; i++) {\r\n selected.push(props.values[i].value);\r\n }\r\n setSelectValue([...selected]);\r\n props.onSelectChange(selected, props.name);\r\n };\r\n const handleScroll = (e: any) => {\r\n setIsOpen(false);\r\n };\r\n return (\r\n
\r\n

\r\n setIsOpen(e)}\r\n mode=\"multiple\"\r\n allowClear\r\n style={{ width: \"100%\" }}\r\n placeholder={props.title}\r\n defaultValue={selectValue}\r\n value={selectValue}\r\n dropdownStyle={{ width: \"200px\" }}\r\n onClear={() => setSelectValue([])}\r\n onDeselect={(value: string) => {\r\n let selected = selectValue;\r\n const _selected = selected.filter(\r\n (valueFilter: any) => value != valueFilter\r\n );\r\n setSelectValue([..._selected]);\r\n }}\r\n onSelect={(value: string) => {\r\n let selected = selectValue;\r\n selected.push(value);\r\n setSelectValue([...selected]);\r\n }}\r\n onChange={(e: string[]) => props.onSelectChange(e, props.name)}\r\n dropdownRender={(menu) => (\r\n
\r\n onSelectAll()}\r\n >\r\n

{t(\"All\")}

\r\n
\r\n \r\n\r\n {menu}\r\n
\r\n )}\r\n options={props.values}\r\n >\r\n {props.icon}\r\n \r\n );\r\n};\r\n","import React from \"react\";\r\nimport \"./SearchFilterComponent.css\";\r\nimport { BsSearch } from \"react-icons/bs\";\r\nimport { useTranslation } from \"react-i18next\";\r\ninterface Props {\r\n onFilterChange: (text: string) => void;\r\n searchKeyword?: string;\r\n}\r\n\r\nexport const SearchFilterComponent = (props: Props) => {\r\n const { t } = useTranslation([\"translation\"]);\r\n return (\r\n
\r\n
\r\n \r\n props.onFilterChange(e.target.value)}\r\n placeholder={t(\"Search\") || \"\"}\r\n />\r\n
\r\n
\r\n );\r\n};\r\n","import React, { useState, useEffect } from \"react\";\r\nimport Form from \"react-bootstrap/Form\";\r\nimport { Select, Divider } from \"antd\";\r\nimport \"./Select.css\";\r\nimport { MdOutlineSelectAll } from \"react-icons/md\";\r\n\r\ninterface Props {\r\n id: string;\r\n title: string;\r\n name: string;\r\n icon: any;\r\n values: any;\r\n disable?: boolean;\r\n defaultValue?: string;\r\n alowClear?: boolean;\r\n onSelectChange: (text: string) => void;\r\n}\r\n\r\nexport const SelectDropdown = (props: Props) => {\r\n const [isOpen, setIsOpen] = useState(false);\r\n useEffect(() => {\r\n window.addEventListener(\"scroll\", handleScroll);\r\n }, []);\r\n const handleScroll = (e: any) => {\r\n setIsOpen(false);\r\n };\r\n return (\r\n
\r\n setIsOpen(e)}\r\n value={props.defaultValue}\r\n allowClear={props.alowClear !== undefined ? false : true}\r\n style={{ width: \"100%\" }}\r\n placeholder=\"Please select\"\r\n onChange={(e: string) => props.onSelectChange(e)}\r\n options={props.values}\r\n >\r\n {props.icon}\r\n
\r\n );\r\n};\r\n","import React, { useEffect } from \"react\";\r\nimport { SelectDate } from \"../../components/Select/SelectDate\";\r\nimport { MultiSelectDropdown } from \"../../components/Select/MultiSelectDropdown\";\r\nimport { Divider } from \"antd\";\r\nimport { AiOutlineCalendar } from \"react-icons/ai\";\r\nimport { BsListTask } from \"react-icons/bs\";\r\nimport { IoNewspaperOutline } from \"react-icons/io5\";\r\nimport { IoMenu } from \"react-icons/io5\";\r\nimport { BiBuildings } from \"react-icons/bi\";\r\nimport { RiNodeTree, RiListCheck2 } from \"react-icons/ri\";\r\nimport { SearchFilterComponent } from \"../../components/SearchFilterComponent/SearchFilterComponent\";\r\nimport { SelectDropdown } from \"../../components/Select/SelectDropdown\";\r\nimport { Moment } from \"moment\";\r\nimport {\r\n ISearchWorklist,\r\n WorklistHeaderType,\r\n WorklistSerachType,\r\n} from \"../../IRequestModel/IWorklistModel\";\r\nimport { useTranslation } from \"react-i18next\";\r\ninterface Props {\r\n searchObject?: ISearchWorklist;\r\n onSelectChange: (\r\n value: string | string[] | [Moment, Moment],\r\n formSelect: WorklistSerachType,\r\n _date?: any\r\n ) => void;\r\n onSelectTask: (text: WorklistHeaderType) => void;\r\n formType: any[];\r\n formStatus: any[];\r\n allCompany: any[];\r\n allDepartment: any[];\r\n defaultTask: string;\r\n}\r\n\r\nconst WorkListSideBarElementUse = (props: Props) => {\r\n const { t } = useTranslation([\"translation\"]);\r\n const display = [\r\n {\r\n value: \"To Do List\",\r\n label: t(\"To Do List\"),\r\n },\r\n {\r\n value: \"In Process\",\r\n label: t(\"In Process\"),\r\n },\r\n {\r\n value: \"Related List\",\r\n label: t(\"Related List\"),\r\n },\r\n {\r\n value: \"Completed\",\r\n label: t(\"Completed\"),\r\n },\r\n {\r\n value: \"Cancelled\",\r\n label: t(\"Cancelled\"),\r\n },\r\n {\r\n value: \"Rejected\",\r\n label: t(\"Rejected\"),\r\n },\r\n ];\r\n return (\r\n
\r\n props.onSelectChange(e, \"keyword\")}\r\n searchKeyword={props.searchObject?.keyword}\r\n />\r\n\r\n

\r\n {t(\"Task\")}\r\n

\r\n }\r\n onSelectChange={(e: any) => props.onSelectTask(e)}\r\n defaultValue={props.defaultTask}\r\n values={display}\r\n />\r\n

\r\n {t(\"Date\")}\r\n

\r\n props.onSelectChange(e, f)}\r\n />\r\n

\r\n {t(\"Other\")}\r\n

\r\n }\r\n onSelectChange={(e: any, f: any) => props.onSelectChange(e, f)}\r\n values={props.formStatus}\r\n defaultVaue={\r\n props.searchObject?.status ? props.searchObject?.status : []\r\n }\r\n />\r\n }\r\n onSelectChange={(e: any, f: any) => props.onSelectChange(e, f)}\r\n defaultVaue={props.searchObject?.form ? props.searchObject?.form : []}\r\n values={props.formType}\r\n />\r\n }\r\n onSelectChange={(e: any, f: any) => props.onSelectChange(e, f)}\r\n defaultVaue={\r\n props.searchObject?.company ? props.searchObject?.company : []\r\n }\r\n values={props.allCompany}\r\n />\r\n }\r\n onSelectChange={(e: any, f: any) => props.onSelectChange(e, f)}\r\n defaultVaue={\r\n props.searchObject?.department ? props.searchObject?.department : []\r\n }\r\n values={props.allDepartment}\r\n />\r\n
\r\n );\r\n};\r\n\r\nexport default WorkListSideBarElementUse;\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { Link, useHistory } from \"react-router-dom\";\r\nimport \"./WorklistCardComponent.css\";\r\nimport { FaChevronRight } from \"react-icons/fa\";\r\nimport moment from \"moment\";\r\nimport { Badge } from \"primereact/badge\";\r\nimport CommentComponent from \"../Input/CommentComponent\";\r\nimport { IUserModel } from \"../../IRequestModel/IUserModel\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { BadgeNotificate } from \"../AntdControlComponent/BadgeNotificateComponent/BadgeNotificate\";\r\nimport { Space } from \"antd\";\r\nimport { motion } from \"framer-motion\";\r\nimport useMasterSetting from \"../../hooks/useMasterSetting\";\r\nimport { GetApprovalsByMemoIDs } from \"../../Services/LineApprovalsService\";\r\nimport { useUserContext } from \"../../Context/UserContext\";\r\n\r\ninterface Props {\r\n dataWorklist?: any;\r\n data: any;\r\n setContent: (\r\n memoId: number,\r\n status: string,\r\n index: number,\r\n requestor: IUserModel\r\n ) => void;\r\n index: number;\r\n onUpdate: (\r\n type: any,\r\n memoid: any,\r\n comment?: any,\r\n waiting_for?: string,\r\n waiting_for_id?: number\r\n ) => void;\r\n taskGourp: any;\r\n currentMemoId: number;\r\n toggleDetail: any;\r\n setToggleDetail: any;\r\n setOnDetailLoading: any;\r\n}\r\n\r\nexport const WorklistCardComponent = (props: Props) => {\r\n const [data, setData] = useState(props.data || {});\r\n const [dataUrl, setDataUrl] = useState(\"\");\r\n const [isActive, setIsActive] = useState(false);\r\n const [isCommentActive, setIsCommentActive] = useState(false);\r\n const { masterSetting } = useMasterSetting();\r\n const [lineApproval, setLineApproval] = useState([]);\r\n const [user] = useUserContext();\r\n\r\n useEffect(() => {\r\n setData(props.data);\r\n setDataUrl(`/Request?MemoID=${props.data.MemoID}`);\r\n }, [props.data]);\r\n const history = useHistory();\r\n const amount_label = \"[Amount/day]\";\r\n const { t } = useTranslation([\"translation\"]);\r\n useEffect(() => {\r\n if (props.currentMemoId === props.data.MemoID) {\r\n setIsActive(true);\r\n } else {\r\n setIsActive(false);\r\n }\r\n }, [props.currentMemoId]);\r\n\r\n const formatDate = () => {\r\n let momentObj = moment(data.ModifiedDate, \"DD/MM/yyyy HH:mm:ss\");\r\n\r\n return moment(momentObj).format(\r\n masterSetting?.FormatDate?.Value1.replaceAll(\"d\", \"D\") ||\r\n \"DD MMM yyyy , HH:mm\"\r\n );\r\n };\r\n const resposeComment = (comment: any) => {\r\n props.onUpdate(\"approve\", props.data.MemoID, comment);\r\n };\r\n\r\n const delegateMemo = (data: any) => {\r\n if (data.IsDelegated) {\r\n return (\r\n \r\n );\r\n }\r\n };\r\n\r\n const onApproveActionClick = async () => {\r\n const approvals = await GetApprovalsByMemoIDs([...[], data.MemoID]).catch(\r\n (e) => {\r\n console.error(e);\r\n return [];\r\n }\r\n );\r\n if (approvals) {\r\n setLineApproval([...approvals]);\r\n }\r\n setIsCommentActive(true);\r\n };\r\n\r\n return (\r\n \r\n {\r\n let _requestor = data.Requestor || {};\r\n props.setContent(data.MemoID, data.Status, props.index, _requestor);\r\n props.setOnDetailLoading(true);\r\n }}\r\n >\r\n
\r\n
\r\n \r\n {data.DocumentNo}\r\n \r\n

{formatDate()}

\r\n
\r\n \r\n {props.data?.MemoHistoryAmount > 0 && (\r\n \r\n )}\r\n {props.data?.MemoAttachFileAmount > 0 && (\r\n \r\n )}\r\n

\r\n {data.Amount == \".00\" ? null : amount_label}\r\n

\r\n
\r\n
\r\n
\r\n {data.Subject}\r\n
\r\n

\r\n {data.Amount == \".00\" ? null : data.Amount}\r\n

\r\n
\r\n
\r\n
\r\n \r\n {data.TemplateName}\r\n

\r\n {/* delegate */}\r\n \r\n {delegateMemo(data)}\r\n \r\n \r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n

{t(\"Request By\")}

\r\n

\r\n {data.Requestor !== null\r\n ? user.Lang === \"EN\"\r\n ? data.Requestor.NameEn\r\n : data.Requestor.NameTh\r\n : \"-\"}\r\n

\r\n
\r\n \r\n
\r\n

{t(\"Waiting for\")}

\r\n

\r\n {data.WaitingFor !== null\r\n ? user.Lang === \"EN\"\r\n ? data.WaitingFor.NameEn\r\n : data.WaitingFor.NameTh\r\n : \"-\"}\r\n

\r\n
\r\n
\r\n {props.taskGourp === \"todo\" && (\r\n <>\r\n {data.Status === \"Wait for Approve\" && (\r\n onApproveActionClick()}\r\n >\r\n {t(\"Approve\")}\r\n \r\n )}\r\n \r\n )}\r\n
\r\n\r\n {\r\n const memoid = { MemoID: data.MemoID };\r\n // history.push(\"/Request\", memoid);\r\n history.push(`/Request?MemoID=${data.MemoID}`, memoid);\r\n }}\r\n >\r\n
\r\n
\r\n \r\n {data.DocumentNo}\r\n \r\n

{formatDate()}

\r\n
\r\n
\r\n \r\n {props.data?.MemoHistoryAmount > 0 && (\r\n \r\n )}\r\n {props.data?.MemoAttachFileAmount > 0 && (\r\n \r\n )}\r\n

\r\n {data.Amount == \".00\" ? null : amount_label}\r\n

\r\n
\r\n

\r\n {data.Amount == \".00\" ? null : data.Amount}\r\n

\r\n
\r\n
\r\n

{data.Subject}

\r\n
\r\n

{data.TemplateName}

\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n

{t(\"Request By\")}

\r\n

\r\n {data.Requestor !== null\r\n ? user.Lang === \"EN\"\r\n ? data.Requestor.NameEn\r\n : data.Requestor.NameTh\r\n : \"-\"}\r\n

\r\n
\r\n \r\n
\r\n

{t(\"Waiting for\")}

\r\n

\r\n {data.WaitingFor !== null\r\n ? user.Lang === \"EN\"\r\n ? data.WaitingFor.NameEn\r\n : data.WaitingFor.NameTh\r\n : \"-\"}\r\n

\r\n
\r\n
\r\n {props.taskGourp === \"todo\" && (\r\n <>\r\n {data.Status === \"Wait for Approve\" && (\r\n {\r\n setIsCommentActive(true);\r\n // props.onUpdate(\"approve\", data.MemoID)\r\n }}\r\n >\r\n Approve\r\n \r\n )}\r\n \r\n )}\r\n {isCommentActive && (\r\n \r\n )}\r\n
\r\n
\r\n );\r\n};\r\n","import { IApproval } from \"../IRequestModel/IListApprovalDetailsModel\";\r\n\r\nexport const GetApprovalByTemplate = async (dataJson: any) => {\r\n try {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/LineApprove/GetByTemplate\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => {\r\n response.json();\r\n console.log(response, \"_responeListApproval\");\r\n })\r\n .then((approvals) => {\r\n console.log(approvals, \"_responeListApproval\");\r\n return approvals;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n } catch (error) {\r\n console.log({ error });\r\n }\r\n};\r\nexport const GetAllApprovals = async (dataJson: any): Promise => {\r\n const response = await fetch(\"api/Approvals/GetByMemoId\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {\r\n console.log({ err });\r\n });\r\n return response;\r\n};\r\n","import React, { useState, useEffect, useMemo, useRef } from \"react\";\r\n\r\nimport \"../../components/WorklistScreenComponent/WorklistCardComponent.css\";\r\nimport { IoMenu } from \"react-icons/io5\";\r\nimport { Button, InputNumber, Pagination } from \"antd\";\r\nimport { DetailContentScreen } from \"./DetailContentScreen\";\r\nimport WorkListSideBarElementUse from \"./WorkListSideBarElementUse\";\r\nimport { WorklistCardComponent } from \"../../components/WorklistScreenComponent/WorklistCardComponent\";\r\n// import Pagination from \"react-bootstrap/Pagination\";\r\nimport { TreeSelectNewRequest } from \"../../components/TreeSelectNewRequest/TreeSelectNewRequest\";\r\nimport moment, { Moment } from \"moment\";\r\nimport { IMemoButtonModel } from \"../../IRequestModel/IMemoButtonModel\";\r\nimport { FooterComponents } from \"../../components/FooterComponents/FooterComponents\";\r\nimport { GetWorkListByTaskGroup } from \"../../Services/WorklistService\";\r\nimport { AnimatePresence, motion } from \"framer-motion\";\r\nimport {\r\n ActionMemoPage,\r\n GetButtonMemoByMemoId,\r\n GetAllMemo,\r\n GetMemoDetail,\r\n} from \"../../Services/MemoService\";\r\nimport { GetAllHistory } from \"../../Services/HistoryService\";\r\nimport { GetAllAttachFiles } from \"../../Services/AttachFileService\";\r\nimport { GetAllApprovals } from \"../../Services/ApprovalService\";\r\nimport withPerMission from \"../../components/HOC/withPermission\";\r\nimport { IAutoNumberAttibute } from \"../../IRequestModel/IAutoNumberFormat\";\r\nimport { GetAutoNumber } from \"../../Services/RequestControlService\";\r\nimport useAlert from \"../../hooks/useAlert\";\r\nimport { useUserContext } from \"../../Context/UserContext\";\r\nimport {\r\n IGetWorklistRequest,\r\n ISearchWorklist,\r\n ITodo,\r\n IWorklistDetail,\r\n TodoType,\r\n WorklistHeaderType,\r\n WorklistSerachType,\r\n} from \"../../IRequestModel/IWorklistModel\";\r\nimport { IUserModel } from \"../../IRequestModel/IUserModel\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { MemoPageContextProvider } from \"../../Context/MemoPageContext\";\r\nimport useMemoPage from \"../../hooks/useMemoPage\";\r\nimport useLoading from \"../../hooks/useLoading\";\r\ninterface Props {\r\n responeConfig: any;\r\n}\r\nconst WorkListScreen = (props: Props) => {\r\n const [userData] = useUserContext();\r\n const { toggleAlert } = useAlert();\r\n\r\n //Worklist Data\r\n const [workListData, setWorkListData] = useState();\r\n const [dtWorkListData, setDTWorkListData] = useState();\r\n const [worklistToShow, setWorklistToShow] = useState([]);\r\n\r\n //Filter Option\r\n const [formTypeOptions, setFormTypeOptions] = useState([]);\r\n const [companiesOptions, setCompaniesOptions] = useState([]);\r\n const [departmentsOptions, setDepartmentsOptions] = useState([]);\r\n const [formStatusOptions, setFormStatusOptions] = useState([]);\r\n\r\n //Filter data\r\n const [searchObject, setSearchObject] = useState({\r\n company: [],\r\n date: [],\r\n department: [],\r\n form: [],\r\n keyword: \"\",\r\n status: [],\r\n });\r\n const { t } = useTranslation([\"translation\"]);\r\n //Pagination\r\n const [currentPage, setCurrentPage] = useState(1);\r\n const [itemPerPage, setItemPerPage] = useState(5);\r\n const [buttonType, setButtonType] = useState(\"\");\r\n\r\n //Toggle\r\n const [isShowPdfData, setIsShowPdfData] = useState(true);\r\n const [isCardLoading, setIsCardLoading] = useState(false);\r\n const [onDetailLoading, setOnDetailLoading] = useState(false);\r\n const [toggleDetail, setToggleDetail] = useState(false);\r\n const [sidebarState, setSidebarState] = useState(false);\r\n\r\n const [currentMemoId, setCurrentMemoId] = useState(0);\r\n const [taskHeader, setTaskHeader] = useState(\"To Do List\");\r\n const [currentIndex, setCurrentIndex] = useState(-1);\r\n const [selectedCard, setSelectedCard] = useState();\r\n const [menuButton, setMenuButton] = useState([]);\r\n const [defaultTask, setDefaultTask] =\r\n useState(\"To Do List\");\r\n const [taskGourp, setTaskGourp] = useState(\"todo\");\r\n const [getMemoDetail, setGetMemoDetail] = useState();\r\n\r\n const { processQue, getMyMemoStatus, checkSyncMemo } = useMemoPage();\r\n const { setLoad } = useLoading();\r\n const previousQue = useRef([]);\r\n const abortController = useRef(null);\r\n\r\n //Default item per page\r\n const _itemPerPage = itemPerPage ? Number(itemPerPage) : 1;\r\n const indexOfLastPost = currentPage * _itemPerPage;\r\n const indexOfFirstPost = indexOfLastPost - _itemPerPage;\r\n useEffect(() => {\r\n window.onpopstate = (e) => {\r\n if (location.pathname === \"/Default\") {\r\n sessionStorage.setItem(\"action_back\", \"yes\");\r\n }\r\n };\r\n\r\n window.onbeforeunload = (e) => {\r\n if (location.pathname === \"/Default\") {\r\n sessionStorage.removeItem(\"task\");\r\n sessionStorage.removeItem(\"searchObject\");\r\n sessionStorage.removeItem(\"page\");\r\n sessionStorage.removeItem(\"selectedCard\");\r\n sessionStorage.removeItem(\"headerTask\");\r\n sessionStorage.removeItem(\"currentMemoId\");\r\n sessionStorage.removeItem(\"toggleSidebar\");\r\n }\r\n };\r\n\r\n firstRetrieveData();\r\n\r\n return () => {\r\n window.removeEventListener(\"popstate\", (e) => {});\r\n window.removeEventListener(\"beforeunload\", (e) => {});\r\n };\r\n }, [t]);\r\n\r\n useEffect(() => {\r\n setLoad(false);\r\n getMyMemoStatus();\r\n }, []);\r\n\r\n // useEffect(() => {\r\n // if (processQue?.length == 0) {\r\n // fetchWorklist(taskGourp, null, true);\r\n // } else {\r\n // if (workListData) {\r\n // setWorkListData([...workListData]);\r\n // }\r\n // }\r\n // }, [processQue]);\r\n\r\n useEffect(() => {\r\n updateWorklistToShow();\r\n }, [searchObject]);\r\n\r\n useEffect(() => {\r\n updateWorklistToShow();\r\n }, [workListData]);\r\n\r\n const fetchWorklist = async (\r\n task: TodoType,\r\n date?: [Moment?, Moment?] | null,\r\n silent: boolean = false\r\n ) => {\r\n if (!silent) {\r\n setIsCardLoading(true);\r\n checkSyncMemo();\r\n }\r\n\r\n if (abortController.current != null) {\r\n abortController.current.abort();\r\n }\r\n abortController.current = new AbortController();\r\n\r\n let dateFrom = date ? date[0] : null;\r\n let dateTo = date ? date[1] : null;\r\n let actionBack = sessionStorage.getItem(\"action_back\");\r\n\r\n if (!actionBack) {\r\n if (task === \"myrelate\") {\r\n // dateFrom = date ? date[0] : moment(new Date()).subtract(1, \"M\");\r\n // dateTo = date ? date[1] : moment(new Date());\r\n dateFrom = date ? date[0] : null;\r\n dateTo = date ? date[1] : null;\r\n } else {\r\n dateFrom = date ? date[0] : null;\r\n dateTo = date ? date[1] : null;\r\n }\r\n } else {\r\n dateFrom = date ? date[0] : null;\r\n dateTo = date ? date[1] : null;\r\n task = sessionStorage.getItem(\"task\")\r\n ? (sessionStorage.getItem(\"task\") as TodoType)\r\n : \"todo\";\r\n }\r\n\r\n try {\r\n const dataJson: IGetWorklistRequest = {\r\n task: task,\r\n empId: userData?.EmployeeId?.toString(),\r\n iItemPerMore: 10000,\r\n CountMoreItem: 1,\r\n FilterDateFrom: dateFrom ? dateFrom.toISOString() : \"\",\r\n FilterDateTo: dateTo ? dateTo.toISOString() : \"\",\r\n UserPrincipalName: userData.Email,\r\n };\r\n setTaskGourp(task);\r\n const dataWorklist = await GetWorkListByTaskGroup(\r\n dataJson,\r\n abortController.current.signal\r\n );\r\n if (!actionBack) {\r\n if (task === \"myrelate\" || date) {\r\n setSearchObject({\r\n form: [],\r\n status: [],\r\n company: [],\r\n department: [],\r\n keyword: \"\",\r\n date: dateFrom && dateTo ? ([dateFrom, dateTo] as any) : [],\r\n });\r\n } else {\r\n setSearchObject({\r\n date: [],\r\n form: [],\r\n status: [],\r\n company: [],\r\n department: [],\r\n keyword: \"\",\r\n });\r\n }\r\n } else {\r\n let search = sessionStorage.getItem(\"searchObject\")\r\n ? JSON.parse(sessionStorage.getItem(\"searchObject\")!)\r\n : searchObject;\r\n let page = sessionStorage.getItem(\"page\")\r\n ? parseInt(sessionStorage.getItem(\"page\")!)\r\n : 1;\r\n let selecteCard = sessionStorage.getItem(\"selectedCard\")\r\n ? (JSON.parse(\r\n sessionStorage.getItem(\"selectedCard\")!\r\n ) as IWorklistDetail)\r\n : selectedCard;\r\n let taskHeader: string = sessionStorage.getItem(\"headerTask\")\r\n ? sessionStorage.getItem(\"headerTask\")!\r\n : \"To Do List\";\r\n let currentMemoId = sessionStorage.getItem(\"currentMemoId\")\r\n ? parseInt(sessionStorage.getItem(\"currentMemoId\")!)\r\n : 0;\r\n let sidebar: boolean = sessionStorage.getItem(\"toggleSidebar\")\r\n ? JSON.parse(sessionStorage.getItem(\"toggleSidebar\")!)\r\n : false;\r\n\r\n setSearchObject(search);\r\n setCurrentPage(page);\r\n setSelectedCard(selecteCard);\r\n setDefaultTask((taskHeader as WorklistHeaderType) || \"To Do List\");\r\n setTaskHeader(taskHeader);\r\n setCurrentMemoId(currentMemoId);\r\n setSidebarState(sidebar);\r\n }\r\n initialWorklistOption(dataWorklist);\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n if (!silent) {\r\n setIsCardLoading(false);\r\n }\r\n };\r\n\r\n const initialWorklistOption = (worklist: ITodo[]) => {\r\n let _formTypeOption: any[] = [];\r\n let _formStatusOption: any[] = [];\r\n let _companiesOption: any[] = [];\r\n let _departmentsOption: any[] = [];\r\n\r\n const resultFormTypeOption = worklist.reduce((r, a) => {\r\n r[a.TemplateName] = r[a.TemplateName] || [];\r\n return r;\r\n }, Object.create(null));\r\n const resultFormStatusOption = worklist.reduce((r, a) => {\r\n r[a.Status] = r[a.Status] || [];\r\n return r;\r\n }, Object.create(null));\r\n const resultAllCompanyOption = worklist.reduce((r, a) => {\r\n r[a.CompanyName] = r[a.CompanyName] || [];\r\n return r;\r\n }, Object.create(null));\r\n const resultAllDepartmentOption = worklist.reduce((r, a) => {\r\n r[a.DepartmentName] = r[a.DepartmentName] || [];\r\n return r;\r\n }, Object.create(null));\r\n for (const [key, value] of Object.entries(resultFormStatusOption)) {\r\n _formStatusOption.push({\r\n label: t(key),\r\n value: key,\r\n });\r\n }\r\n for (const [key, value] of Object.entries(resultFormTypeOption)) {\r\n _formTypeOption.push({\r\n label: t(key),\r\n value: key,\r\n });\r\n }\r\n for (const [key, value] of Object.entries(resultAllCompanyOption)) {\r\n _companiesOption.push({\r\n label: t(key),\r\n value: key,\r\n });\r\n }\r\n for (const [key, value] of Object.entries(resultAllDepartmentOption)) {\r\n _departmentsOption.push({\r\n label: t(key),\r\n value: key,\r\n });\r\n }\r\n setDepartmentsOptions([..._departmentsOption]);\r\n setCompaniesOptions([..._companiesOption]);\r\n setFormStatusOptions([..._formStatusOption]);\r\n setFormTypeOptions([..._formTypeOption]);\r\n setWorkListData([...worklist]);\r\n };\r\n function toggleSideBar() {\r\n if (sidebarState) {\r\n setSidebarState(false);\r\n sessionStorage.setItem(\"toggleSidebar\", \"false\");\r\n } else {\r\n setToggleDetail(false);\r\n setSidebarState(true);\r\n sessionStorage.setItem(\"toggleSidebar\", \"true\");\r\n }\r\n }\r\n const onUpdateMemo = async (\r\n type: any,\r\n memoId: any,\r\n comment: string,\r\n waiting_for?: string,\r\n waiting_for_id?: number\r\n ) => {\r\n try {\r\n setWorkListData([\r\n ...(workListData?.filter((e) => e.MemoID != memoId) || []),\r\n ]);\r\n setIsCardLoading(true);\r\n // const _empData = empData.employeeData;\r\n let ddd = document.getElementsByTagName(\"body\");\r\n ddd[0].style.overflow = \"none\";\r\n const requestBody = {\r\n Memoid: memoId,\r\n TemplateId: null,\r\n DocumentCode: null,\r\n SecretId: \"\",\r\n EmployeeId: userData.EmployeeId.toString(),\r\n actor: userData,\r\n };\r\n let _getMemoDetailById = await GetMemoDetail(requestBody);\r\n\r\n setGetMemoDetail(_getMemoDetailById);\r\n if (_getMemoDetailById) {\r\n let requestDetail = _getMemoDetailById.requestDetails;\r\n let listControlRunning = [];\r\n //set value\r\n requestDetail.memoDetail.comment = comment;\r\n requestDetail.memoDetail.actor = userData;\r\n requestDetail.memoDetail.waiting_for = waiting_for\r\n ? waiting_for\r\n : requestDetail.memoDetail.waiting_for;\r\n requestDetail.memoDetail.waiting_for_id = waiting_for_id\r\n ? waiting_for_id\r\n : requestDetail.memoDetail.waiting_for_id;\r\n\r\n if (!_getMemoDetailById.requestDetails.memoDetail.is_text_form) {\r\n //check control running\r\n\r\n if (requestDetail.memoDetail.template_desc) {\r\n let autoNumFormat: IAutoNumberAttibute = {\r\n formats: [],\r\n digit: 0,\r\n rowIndex: -1,\r\n colIndex: -1,\r\n showSymbol: false,\r\n };\r\n const templateDescJson = JSON.parse(\r\n requestDetail.memoDetail.template_desc\r\n );\r\n templateDescJson.items.map((item: any) =>\r\n item.layout.map((_layout: any) => {\r\n if (_layout.template.type === \"tb\") {\r\n _layout.template.attribute.column.forEach((col: any) => {\r\n col.isReadOnly = false;\r\n col.isShow = true;\r\n });\r\n } else {\r\n _layout.isShow = true;\r\n _layout.isReadOnly = false;\r\n }\r\n\r\n return _layout;\r\n })\r\n ),\r\n (autoNumFormat = detechAutonumberFormula(templateDescJson));\r\n\r\n if (autoNumFormat?.rowIndex !== -1) {\r\n const runningNumber = await CheckSaveAutonumber(\r\n requestDetail.memoDetail.template_id,\r\n templateDescJson,\r\n autoNumFormat\r\n );\r\n\r\n if (runningNumber) {\r\n listControlRunning.push(runningNumber);\r\n }\r\n }\r\n requestDetail.memoDetail.template_desc =\r\n JSON.stringify(templateDescJson);\r\n }\r\n }\r\n requestDetail[\"listControlRunning\"] = listControlRunning;\r\n\r\n let _ActionMemoPage = await ActionMemoPage({\r\n MemoPage: {\r\n listApprovalDetails: requestDetail.listApprovalDetails,\r\n listFileAttachDetails: requestDetail.listFileAttachDetails,\r\n listFormName: requestDetail.listFormNames,\r\n listHistoryDetails: requestDetail.listHistoryDetails,\r\n listRefDocDetails: requestDetail.listRefDocDetails,\r\n memoDetail: requestDetail.memoDetail,\r\n listControlRunning: requestDetail.listControlRunning,\r\n // listFormName: requestDetail.listFormNames,\r\n // listRefDocDetails: _getMemoDetailById.refDocs,\r\n },\r\n Type: type,\r\n });\r\n\r\n if (_ActionMemoPage && !_ActionMemoPage.Message) {\r\n let desc: string = `${type} Success.`;\r\n let message: string = \"Success\";\r\n if (_ActionMemoPage === \"ValidField\") {\r\n desc = `${type} Error.`;\r\n message = _ActionMemoPage;\r\n }\r\n toggleAlert({\r\n description: desc,\r\n message: message,\r\n type: _ActionMemoPage === \"ValidField\" ? \"error\" : \"success\",\r\n // duration: 100000000,\r\n });\r\n //await Promise.all([fetchWorklist(), getMyMemoStatus()]);\r\n await getMyMemoStatus();\r\n await fetchWorklist(taskGourp);\r\n\r\n let ddd = document.getElementsByTagName(\"body\");\r\n ddd[0].style.overflow = \"none\";\r\n setIsCardLoading(false);\r\n setToggleDetail(false);\r\n } else {\r\n toggleAlert({\r\n description: `${_ActionMemoPage.Message}`,\r\n message: `Error`,\r\n type: \"error\",\r\n });\r\n setIsCardLoading(false);\r\n }\r\n }\r\n } catch (error) {\r\n console.error(\"memo=>\", error);\r\n }\r\n };\r\n const detechAutonumberFormula = (templateDesc: any) => {\r\n try {\r\n let _autoFormats: IAutoNumberAttibute = {\r\n formats: [],\r\n showSymbol: true,\r\n digit: 0,\r\n rowIndex: -1,\r\n colIndex: -1,\r\n };\r\n\r\n templateDesc.items.forEach((item: any, rowIdx: number) => {\r\n item.layout.forEach((layout: any, colIdx: number) => {\r\n if (layout.template.type === \"an\") {\r\n _autoFormats.formats = layout.template.attribute.formats;\r\n _autoFormats.showSymbol = !layout.template.alter.includes(\"|\");\r\n _autoFormats.digit = layout.template.digit;\r\n _autoFormats.rowIndex = rowIdx;\r\n _autoFormats.colIndex = colIdx;\r\n }\r\n });\r\n });\r\n\r\n return _autoFormats;\r\n } catch (error) {\r\n return {\r\n formats: [],\r\n showSymbol: true,\r\n digit: 0,\r\n rowIndex: -1,\r\n colIndex: -1,\r\n };\r\n }\r\n };\r\n const CheckSaveAutonumber = async (\r\n templateId: Number,\r\n template_desc: any,\r\n autoNumFormat: IAutoNumberAttibute\r\n ) => {\r\n try {\r\n const rowIndex = autoNumFormat.rowIndex;\r\n const colIndex = autoNumFormat.colIndex;\r\n if (template_desc) {\r\n let value = template_desc.items[rowIndex].layout[colIndex].data.value;\r\n const autoTemp = template_desc.items[rowIndex].layout[colIndex];\r\n if (value) {\r\n const dd = value.split(\"-\");\r\n const gg = dd.slice(0, dd.length - 1);\r\n let newRunning = -1;\r\n const requestBody = {\r\n Prefix: gg.join(\"-\") + \"-\",\r\n Digit: autoTemp.template.digit,\r\n TemplateId: templateId,\r\n RunningNumber: dd.join(\"-\"),\r\n };\r\n const checkAuto = await GetAutoNumber(requestBody);\r\n const checkNum = checkAuto.split(\"-\");\r\n if (checkNum[0] !== \"\") {\r\n newRunning = checkNum[checkNum.length - 1];\r\n dd[dd.length - 1] = newRunning;\r\n requestBody.RunningNumber = newRunning;\r\n }\r\n return requestBody;\r\n }\r\n }\r\n } catch (error) {\r\n console.error(\"auto=>CheckSaveAutonumber=>error\", error);\r\n }\r\n };\r\n const setContent = async (\r\n memoId: number,\r\n status: string,\r\n index: number,\r\n requestor: IUserModel\r\n ) => {\r\n // const _empData = empData.employeeData;\r\n\r\n const _memoDetail = await GetAllMemo({\r\n memoid: memoId,\r\n EmployeeId: requestor?.EmployeeId?.toString(),\r\n SecretId: \"\",\r\n actor: userData.EmployeeId,\r\n });\r\n\r\n if (_memoDetail.length > 0) {\r\n if (_memoDetail[0].Permission !== null) {\r\n if (_memoDetail[0].Permission.View === \"F\") {\r\n setIsShowPdfData(false);\r\n }\r\n }\r\n }\r\n\r\n if (currentIndex !== index) {\r\n setCurrentMemoId(Number(memoId));\r\n setCurrentIndex(index);\r\n setToggleDetail(true);\r\n sessionStorage.setItem(\"currentMemoId\", memoId.toString());\r\n } else {\r\n setCurrentIndex(index);\r\n\r\n if (toggleDetail) {\r\n setCurrentMemoId(0);\r\n setToggleDetail(false);\r\n sessionStorage.setItem(\"currentMemoId\", \"0\");\r\n } else {\r\n setCurrentMemoId(Number(memoId));\r\n setToggleDetail(true);\r\n sessionStorage.setItem(\"currentMemoId\", memoId.toString());\r\n }\r\n }\r\n const actor = {\r\n EmployeeId: userData.EmployeeId,\r\n };\r\n // setToggleDetail(false);\r\n let _dataAttachfiles = await GetAllAttachFiles({ memoid: memoId });\r\n\r\n let _dataApprovals = await GetAllApprovals({ memoid: memoId });\r\n\r\n if (status !== \"Draft\") {\r\n let memoButton: IMemoButtonModel = {\r\n actor: {\r\n EmployeeId: userData.EmployeeId,\r\n },\r\n memoid: memoId,\r\n };\r\n let _dataMemobutton = await GetButtonMemoByMemoId(memoButton);\r\n setMenuButton(_dataMemobutton);\r\n } else {\r\n setMenuButton([]);\r\n }\r\n\r\n let _dataHistory = await GetAllHistory({\r\n Memoid: memoId,\r\n SecretId: \"\",\r\n actor: actor,\r\n });\r\n\r\n setOnDetailLoading(false);\r\n\r\n setSelectedCard((prevState) => ({\r\n ...prevState,\r\n approvals: _dataApprovals,\r\n attachfiles: _dataAttachfiles,\r\n requestor,\r\n MemoID: memoId,\r\n history: _dataHistory,\r\n }));\r\n\r\n sessionStorage.setItem(\r\n \"selectedCard\",\r\n selectedCard ? JSON.stringify(selectedCard) : \"{}\"\r\n );\r\n\r\n setSidebarState(false);\r\n if (currentIndex !== index) {\r\n setCurrentMemoId(Number(memoId));\r\n setCurrentIndex(index);\r\n setToggleDetail(true);\r\n sessionStorage.setItem(\"currentMemoId\", memoId.toString());\r\n } else {\r\n setCurrentIndex(index);\r\n\r\n if (toggleDetail) {\r\n setCurrentMemoId(0);\r\n setToggleDetail(false);\r\n sessionStorage.setItem(\"currentMemoId\", \"0\");\r\n } else {\r\n setCurrentMemoId(Number(memoId));\r\n setToggleDetail(true);\r\n sessionStorage.setItem(\"currentMemoId\", memoId.toString());\r\n }\r\n }\r\n };\r\n\r\n const onSelectTask = (text: WorklistHeaderType) => {\r\n setTaskHeader(text);\r\n let date: [Moment?, Moment?] | null = null;\r\n let task: TodoType = \"todo\";\r\n if (text === \"All Task Group\") {\r\n task = \"todo\";\r\n } else if (text === \"To Do List\") {\r\n task = \"todo\";\r\n } else if (text === \"Related List\") {\r\n date = [moment(new Date()).subtract(1, \"M\"), moment(new Date())];\r\n task = \"myrelate\";\r\n } else if (text === \"In Process\") {\r\n task = \"inprocess\";\r\n } else if (text === \"Completed\") {\r\n task = \"completed\";\r\n } else if (text === \"Cancelled\") {\r\n task = \"cancelled\";\r\n } else if (text === \"Rejected\") {\r\n task = \"rejected\";\r\n }\r\n fetchWorklist(task, date);\r\n setCurrentPage(1);\r\n setDefaultTask(text);\r\n sessionStorage.setItem(\"task\", task);\r\n sessionStorage.setItem(\"headerTask\", text);\r\n sessionStorage.setItem(\"page\", \"1\");\r\n };\r\n\r\n const onSelectChange = async (\r\n value: any | any[],\r\n formSelect: WorklistSerachType\r\n ) => {\r\n let rawObject = searchObject;\r\n\r\n if (formSelect) {\r\n rawObject[formSelect] = value;\r\n\r\n if (formSelect === \"date\") {\r\n fetchWorklist(taskGourp, value);\r\n } else {\r\n setSearchObject((prevState: any) => ({\r\n ...prevState,\r\n ...rawObject,\r\n }));\r\n\r\n sessionStorage.setItem(\"searchObject\", JSON.stringify(searchObject));\r\n }\r\n\r\n setCurrentPage(1);\r\n sessionStorage.setItem(\"page\", \"1\");\r\n }\r\n };\r\n\r\n const clearFilter = () => {\r\n setSearchObject({\r\n date: [],\r\n form: [],\r\n status: [],\r\n company: [],\r\n department: [],\r\n keyword: \"\",\r\n });\r\n sessionStorage.setItem(\"searchObject\", JSON.stringify(searchObject));\r\n if (taskGourp == \"myrelate\") {\r\n fetchWorklist(\"myrelate\", null);\r\n }\r\n };\r\n const paginate = (page: number) => {\r\n setCurrentPage(page);\r\n sessionStorage.setItem(\"page\", page.toString());\r\n };\r\n const onSetItemPerPage = (numItem: any) => {\r\n setItemPerPage(numItem);\r\n };\r\n const filterStatusWorklistCard = (todo: ITodo, idx: number) => {\r\n return searchObject?.status.length > 0\r\n ? searchObject?.status.includes(todo.Status)\r\n : true;\r\n };\r\n const filterFormWorklistCard = (todo: ITodo, idx: number) => {\r\n return searchObject?.form.length > 0\r\n ? searchObject?.form.includes(todo.TemplateName)\r\n : true;\r\n };\r\n const filterCompanyWorklistCard = (todo: ITodo, idx: number) => {\r\n return searchObject?.company.length > 0\r\n ? searchObject?.company.includes(todo.CompanyName)\r\n : true;\r\n };\r\n const filterDepartmentWorklistCard = (todo: ITodo, idx: number) => {\r\n return searchObject?.department.length > 0\r\n ? searchObject?.department.includes(todo.DepartmentName)\r\n : true;\r\n };\r\n const filterKeywordWorklistCard = (todo: ITodo) => {\r\n const _keyword = searchObject?.keyword?.toUpperCase();\r\n const waitingFor: IUserModel = todo?.WaitingFor;\r\n const requestor: IUserModel = todo?.Requestor;\r\n\r\n return _keyword?.length > 0\r\n ? todo.DepartmentName?.toUpperCase().includes(_keyword) ||\r\n todo.TemplateName?.toUpperCase().includes(_keyword) ||\r\n todo.CompanyName?.toUpperCase().includes(_keyword) ||\r\n todo.Status?.toUpperCase().includes(_keyword) ||\r\n todo.DocumentNo?.toUpperCase().includes(_keyword) ||\r\n todo.Subject?.toUpperCase().includes(_keyword) ||\r\n (waitingFor &&\r\n waitingFor?.NameEn?.toUpperCase().includes(_keyword)) ||\r\n waitingFor?.NameTh.toUpperCase().includes(_keyword) ||\r\n (requestor && requestor?.NameEn?.toUpperCase().includes(_keyword)) ||\r\n requestor?.NameTh?.toUpperCase().includes(_keyword)\r\n : true;\r\n };\r\n\r\n const updateWorklistToShow = () => {\r\n const _worklist =\r\n workListData?.filter((todo, idx) => {\r\n let statusFilter = true;\r\n let companyFilter = true;\r\n let departmentFilter = true;\r\n let formFilter = true;\r\n let keywordFilter = true;\r\n\r\n if (processQue.includes(todo.MemoID)) {\r\n return false;\r\n }\r\n if (searchObject?.status.length > 0) {\r\n statusFilter = filterStatusWorklistCard(todo, idx);\r\n }\r\n if (searchObject?.company.length > 0) {\r\n companyFilter = filterCompanyWorklistCard(todo, idx);\r\n }\r\n if (searchObject?.department.length > 0) {\r\n departmentFilter = filterDepartmentWorklistCard(todo, idx);\r\n }\r\n if (searchObject?.form.length > 0) {\r\n formFilter = filterFormWorklistCard(todo, idx);\r\n }\r\n if (searchObject?.keyword.length > 0) {\r\n keywordFilter = filterKeywordWorklistCard(todo);\r\n }\r\n\r\n return (\r\n statusFilter &&\r\n companyFilter &&\r\n departmentFilter &&\r\n formFilter &&\r\n keywordFilter\r\n );\r\n }) || [];\r\n setWorklistToShow(_worklist);\r\n };\r\n\r\n const mapWorklistCard = (todo: ITodo, idx: number) => {\r\n return (\r\n \r\n );\r\n };\r\n\r\n const firstRetrieveData = async () => {\r\n let actionBack = sessionStorage.getItem(\"action_back\");\r\n let task = taskGourp;\r\n if (actionBack) {\r\n task = sessionStorage.getItem(\"task\")\r\n ? (sessionStorage.getItem(\"task\") as TodoType)\r\n : \"todo\";\r\n }\r\n await fetchWorklist(task);\r\n if (actionBack) {\r\n let search = sessionStorage.getItem(\"searchObject\")\r\n ? JSON.parse(sessionStorage.getItem(\"searchObject\")!)\r\n : searchObject;\r\n let page = sessionStorage.getItem(\"page\")\r\n ? parseInt(sessionStorage.getItem(\"page\")!)\r\n : 1;\r\n let selecteCard = sessionStorage.getItem(\"selectedCard\")\r\n ? (JSON.parse(\r\n sessionStorage.getItem(\"selectedCard\")!\r\n ) as IWorklistDetail)\r\n : selectedCard;\r\n let taskHeader: string = sessionStorage.getItem(\"headerTask\")\r\n ? sessionStorage.getItem(\"headerTask\")!\r\n : \"To Do List\";\r\n let currentMemoId = sessionStorage.getItem(\"currentMemoId\")\r\n ? parseInt(sessionStorage.getItem(\"currentMemoId\")!)\r\n : 0;\r\n let sidebar: boolean = sessionStorage.getItem(\"toggleSidebar\")\r\n ? JSON.parse(sessionStorage.getItem(\"toggleSidebar\")!)\r\n : false;\r\n\r\n setSearchObject(search);\r\n setCurrentPage(page);\r\n setSelectedCard(selecteCard);\r\n setDefaultTask((taskHeader as WorklistHeaderType) || \"To Do List\");\r\n setTaskHeader(taskHeader);\r\n setCurrentMemoId(currentMemoId);\r\n setSidebarState(sidebar);\r\n }\r\n sessionStorage.removeItem(\"action_back\");\r\n };\r\n\r\n const isDiffPreviousQue = (current: number[], previous: number[]) => {\r\n return current.join(\",\") != previous.join(\",\");\r\n };\r\n\r\n useMemo(() => {\r\n if (\r\n processQue?.length == 0 &&\r\n isDiffPreviousQue(processQue, previousQue.current)\r\n ) {\r\n fetchWorklist(taskGourp, null, true);\r\n }\r\n previousQue.current = [...processQue];\r\n }, [processQue]);\r\n return (\r\n
\r\n \r\n
\r\n {isCardLoading && (\r\n
\r\n \"loading...\"\r\n
\r\n )}\r\n
\r\n
\r\n {sidebarState ? (\r\n
\r\n
\r\n
\r\n

\r\n {t(\"Clear all\")}\r\n

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n ) : (\r\n
\r\n )}\r\n
\r\n }\r\n size=\"large\"\r\n onClick={toggleSideBar}\r\n style={{ background: \"transparent \" }}\r\n />\r\n \r\n
\r\n
\r\n

\r\n {t(\"Worklist\")} / {t(taskHeader)} ({worklistToShow?.length})\r\n

\r\n
\r\n
\r\n
\r\n
\r\n {sidebarState && (\r\n \r\n
\r\n
\r\n

\r\n {t(\"Clear all\")}\r\n

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n )}\r\n
\r\n
\r\n {t(\"Show\")}\r\n {\r\n onSetItemPerPage(value)}}\r\n onBlur={()=>{\r\n setItemPerPage(page =>page <=0 ?1: page)\r\n }}\r\n />\r\n \r\n {t(\"items per page\")}\r\n \r\n
\r\n
\r\n {worklistToShow\r\n ?.slice(indexOfFirstPost, indexOfLastPost)\r\n ?.map(mapWorklistCard)}\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n {toggleDetail && (\r\n \r\n )}\r\n
\r\n
\r\n
\r\n );\r\n};\r\nexport default withPerMission(WorkListScreen);\r\n","import moment from \"moment\";\r\nimport { IUserModel } from \"../IRequestModel/IUserModel\";\r\nimport { IGetWorklistRequest, ITodo } from \"../IRequestModel/IWorklistModel\";\r\nimport { GetAllEmployee } from \"./EmployeeService\";\r\n\r\nexport const GetWorkListByTaskGroup = async (\r\n dataJson: IGetWorklistRequest,\r\n signal?: AbortSignal\r\n): Promise => {\r\n // const email = JSON.parse(window.localStorage.getItem(\"email\") || \"\");\r\n // dataJson.UserPrincipalName = email;\r\n const response = await fetch(\"api/Worklist/GetWorkListByTaskGroup\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n\r\n body: JSON.stringify(dataJson),\r\n signal: signal,\r\n })\r\n .then((response) => response.json())\r\n .then(async (data: ITodo[]) => {\r\n if (data) {\r\n let req = {\r\n IsActiveOnly: true,\r\n Scopes: \"name,email\",\r\n };\r\n const employees: IUserModel[] = await GetAllEmployee(req);\r\n const todoFormatDate: ITodo[] = data.sort((a, b) => {\r\n const aa = moment(a.ModifiedDate, \"DD/MM/YYYY hh:mm:ss\");\r\n const bb = moment(b.ModifiedDate, \"DD/MM/YYYY hh:mm:ss\");\r\n return moment(bb).diff(aa);\r\n });\r\n\r\n const todoFormatWaitingFor = todoFormatDate.map((todo) => {\r\n if (employees.length > 0) {\r\n let _todo = todo;\r\n let _emp: IUserModel | null = null;\r\n for (let i = 0; i < employees.length; i++) {\r\n const employee = employees[i];\r\n if (_todo.WaitingFor === employee.EmployeeId) {\r\n _emp = employee;\r\n }\r\n }\r\n return {\r\n ..._todo,\r\n WaitingFor: _emp,\r\n };\r\n } else {\r\n return {\r\n ...todo,\r\n WaitingFor: null,\r\n Requestor: null,\r\n };\r\n }\r\n });\r\n\r\n return todoFormatWaitingFor;\r\n } else return [];\r\n })\r\n .catch((err) => {\r\n return [];\r\n });\r\n return response;\r\n};\r\n","import { IWorklistHistory } from \"../IRequestModel/IListHistoryDetailsModel\";\r\n\r\nexport const GetAllHistory = async (\r\n dataJson: any\r\n): Promise => {\r\n const email = window.localStorage.getItem(\"email\") || \"\";\r\n dataJson.UserPrincipalName = email;\r\n const respone = await fetch(\"api/History/GetByMemoId\", {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(dataJson),\r\n })\r\n .then((response) => response.json())\r\n .then((data) => {\r\n return data;\r\n })\r\n .catch((err) => {});\r\n return respone;\r\n};\r\n","import React, { useState, useEffect, useMemo } from \"react\";\r\nimport \"./LoginScreen.css\";\r\nimport { Carousel, Spin } from \"antd\";\r\nimport { useHistory, useLocation } from \"react-router-dom\";\r\nimport Cookies from \"universal-cookie\";\r\n// import WolfLogo from \"../../assets/WOLF_lite_logo_TCB_Blue.png\";\r\nimport { useForm, Controller } from \"react-hook-form\";\r\nimport { useSessionContext } from \"../../Context/AuthContext\";\r\nimport { oidc } from \"../../Services/LoginService\";\r\nimport { useUserContext } from \"../../Context/UserContext\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { deleteAllCookies } from \"../../Helper/DeleteAllCookie\";\r\nimport { clearLocalStorageOnLogout } from \"../../Helper/localStoreFunction\";\r\nimport useLoading from \"../../hooks/useLoading\";\r\ninterface Props {\r\n PathLogo?: string;\r\n PathCarousel?: string[];\r\n PathCodeUrl?: any;\r\n}\r\n\r\nexport const LoginScreenOpenId = (props: Props) => {\r\n // const [onLoading, setOnLoading] = useState(false);\r\n const { isLoad, setLoad } = useLoading();\r\n\r\n const [remarkValid, setRemarkValid] = useState(\"\");\r\n const [carouselItem] = useState(props?.PathCarousel);\r\n const [sessionState, setSessionState] = useSessionContext();\r\n let location = useLocation();\r\n let history = useHistory();\r\n const { i18n } = useTranslation([\"translation\"]);\r\n const [userData, setUserData] = useUserContext();\r\n const [pathCodeUrl, setPathCodeUrl] = useState(null)\r\n\r\n const cookies = new Cookies();\r\n const {\r\n handleSubmit,\r\n control,\r\n formState: { errors },\r\n } = useForm({\r\n defaultValues: {\r\n username: \"\",\r\n password: \"\",\r\n },\r\n });\r\n\r\n useEffect(() => {\r\n // console.log(\"codeUrl=>\", props.PathCodeUrl);\r\n if (location.hash.match(/^#code=.+/i)) {\r\n setLoad(false);\r\n GetOpenId();\r\n }\r\n }, [location.hash]);\r\n\r\n const onSubmitLoginOpenId = async () => {\r\n let _loginOpenId = await oidc.getAuthorizationEndpoint()\r\n window.location.href = _loginOpenId.redirect;\r\n };\r\n\r\n const GetOpenId = async () => {\r\n let paramString = window.location.href.split(\"#\")[1];\r\n const codeURLSearch = new URLSearchParams(paramString);\r\n const _codeUrl = codeURLSearch.get(\"code\");\r\n setPathCodeUrl(_codeUrl);\r\n let _loginOpenId = await oidc.callbackHandler(paramString);\r\n clearLocalStorageOnLogout();\r\n localStorage.removeItem(\"tinyUrl\");\r\n cookies.remove(\"GuidVerify\");\r\n cookies.set(\"GuidVerify\", _loginOpenId.GuidVerify, {\r\n path: \"/\",\r\n expires: new Date(Date.now() + 86400000),\r\n });\r\n ActionPassLogin(_loginOpenId);\r\n };\r\n\r\n const ActionPassLogin = async (_loginOpenId: any) => {\r\n if (_loginOpenId === false) {\r\n clearLocalStorageOnLogout();\r\n deleteAllCookies();\r\n // history.push(\"/login\");\r\n setRemarkValid(\"ไม่พบผู้ใช้ในระบบกรุณาลองใหม่อีกครั้ง\");\r\n // setOnLoading(false);\r\n return;\r\n }\r\n const fav_storage = localStorage.getItem(\"favorite\")\r\n ? JSON.parse(localStorage.getItem(\"favorite\") || \"\")\r\n : \"\";\r\n if (fav_storage !== null) {\r\n if (fav_storage.length > 0) {\r\n localStorage.setItem(\"favorite\", JSON.stringify(fav_storage));\r\n }\r\n } else {\r\n localStorage.setItem(\"favorite\", JSON.stringify([]));\r\n }\r\n if (_loginOpenId?.employeeData?.Lang === \"TH\") {\r\n i18n.changeLanguage(\"th\");\r\n } else {\r\n i18n.changeLanguage(\"en\");\r\n }\r\n setUserData(_loginOpenId?.employeeData);\r\n localStorage.setItem(\"userData\", JSON.stringify(_loginOpenId));\r\n localStorage.setItem(\"employeeId\", _loginOpenId.employeeData.EmployeeId);\r\n localStorage.setItem(\r\n \"employeeCode\",\r\n _loginOpenId.employeeData.EmployeeCode\r\n );\r\n localStorage.setItem(\"lang\", _loginOpenId.employeeData.Lang);\r\n localStorage.setItem(\"nameEn\", _loginOpenId.employeeData.NameEn);\r\n localStorage.setItem(\"nameTh\", _loginOpenId.employeeData.NameTh);\r\n localStorage.setItem(\"email\", _loginOpenId.employeeData.Email);\r\n localStorage.setItem(\r\n \"positionNameTh\",\r\n _loginOpenId.employeeData.PositionNameTh\r\n );\r\n localStorage.setItem(\r\n \"positionNameEn\",\r\n _loginOpenId.employeeData.PositionNameEn\r\n );\r\n localStorage.setItem(\r\n \"departmentId\",\r\n _loginOpenId.employeeData.DepartmentId\r\n );\r\n localStorage.setItem(\r\n \"departmentNameTh\",\r\n _loginOpenId.employeeData.DepartmentNameEn\r\n );\r\n localStorage.setItem(\"tinyUrl\", _loginOpenId.TinyURL);\r\n\r\n setSessionState({ ...sessionState, isAuthenticated: true });\r\n // setOnLoading(false);\r\n if (\r\n localStorage.getItem(\"memoid\") &&\r\n localStorage.getItem(\"memoid\") !== \"\"\r\n ) {\r\n const id = localStorage.getItem(\"memoid\");\r\n localStorage.removeItem(\"memoid\");\r\n\r\n history.push(\"/Request?MemoID=\" + id);\r\n } else {\r\n window.location.href = \"/\";\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n setLoad(false);\r\n if (sessionState.isAuthenticated) {\r\n history.push(\"/Default\");\r\n }\r\n }, []);\r\n\r\n return (\r\n <>\r\n {props.PathCarousel && props.PathLogo && (\r\n
\r\n
\r\n
\r\n \r\n {carouselItem.map((_carousel: any, idx: number) => {\r\n return (\r\n
\r\n \"slide\"\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n

{remarkValid}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n )}\r\n {(pathCodeUrl || props.PathCodeUrl) && (\r\n
\r\n \r\n
\r\n \r\n

กำลังเข้าสู่ระบบ

\r\n
\r\n
\r\n \r\n )}\r\n \r\n );\r\n};\r\n","import React, { useEffect, ReactNode, useMemo } from \"react\";\r\nimport { Redirect, Route, RouteProps, useLocation } from \"react-router\";\r\nimport { LoginScreenOpenId } from \"../screens/LoginScreen/LoginScreenOpenId\";\r\nimport { useSessionContext } from \"../Context/AuthContext\";\r\nimport { clearLocalStorageOnLogout } from \"../Helper/localStoreFunction\";\r\nimport { GetAllMasterData } from \"../Services/MasterDataService\";\r\n\r\nexport type ProtectedRouteProps = {\r\n isAuthenticated: boolean;\r\n authenticationPath: string;\r\n redirectPath: string;\r\n setRedirectPath: (path: string) => void;\r\n children?: ReactNode;\r\n} & RouteProps;\r\n\r\nexport default function PrivateRoute({\r\n isAuthenticated,\r\n authenticationPath,\r\n redirectPath,\r\n setRedirectPath,\r\n children,\r\n ...routeProps\r\n}: ProtectedRouteProps) {\r\n const currentLocation = useLocation();\r\n const { search } = useLocation();\r\n const query = useMemo(() => new URLSearchParams(search), [search]);\r\n let paramString = window.location.href.split(\"#\")[1];\r\n const codeURLSearch = new URLSearchParams(paramString);\r\n const _codeUrl = codeURLSearch.get(\"code\");\r\n const [sessionContext, updateSessionContext] = useSessionContext();\r\n\r\n useEffect(() => {\r\n if (!isAuthenticated) {\r\n if (query.get(\"MemoID\")) {\r\n localStorage.setItem(\"memoid\", query.get(\"MemoID\") || \"\");\r\n }\r\n } else {\r\n localStorage.removeItem(\"memoid\");\r\n chaeckLastActtion();\r\n }\r\n chaeckLastActtion();\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (!isAuthenticated) {\r\n setRedirectPath(\"/login\");\r\n }\r\n }, [isAuthenticated, currentLocation]);\r\n\r\n const chaeckLastActtion = async () => {\r\n try {\r\n const lastAction = Number(\r\n localStorage.getItem(\"lastAction\") || Date.now()\r\n );\r\n const diffMilliseconds = Math.abs(Date.now() - lastAction);\r\n const masterData = await GetAllMasterData();\r\n let timeout = 60 * 60 * 1000;\r\n\r\n if (masterData) {\r\n timeout = Number(\r\n masterData?.find((e: any) => e.MasterType === \"Timeout\" && e.IsActive)\r\n ?.Value2\r\n );\r\n timeout =\r\n Number(\r\n masterData.find((e: any) => e.MasterType === \"Timeout\")?.Value2\r\n ) *\r\n 60 *\r\n 1000;\r\n }\r\n\r\n localStorage.setItem(\"timer\", timeout.toString());\r\n\r\n if (diffMilliseconds >= timeout) {\r\n updateSessionContext({ ...sessionContext, isAuthenticated: false });\r\n\r\n setRedirectPath(\"/login\");\r\n clearLocalStorageOnLogout();\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n };\r\n\r\n if (\r\n isAuthenticated &&\r\n redirectPath !== currentLocation.pathname\r\n && currentLocation.pathname === \"/\"\r\n ) {\r\n return ;\r\n } else if (\r\n isAuthenticated &&\r\n redirectPath !== currentLocation.pathname &&\r\n currentLocation.pathname !== \"/login\"\r\n ) {\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n } else if (\r\n // isAuthenticated &&\r\n // redirectPath !== currentLocation.pathname &&\r\n paramString &&\r\n paramString.includes(\"code\")\r\n ) {\r\n return (\r\n \r\n \r\n \r\n );\r\n\r\n /*

Oh my god

; */\r\n } else {\r\n return (\r\n \r\n );\r\n }\r\n}\r\n","import React from \"react\";\r\nimport \"./ErrorPageComponent.css\";\r\nimport blackguardPage from \"../../assets/blackguardPage.jpg\";\r\nimport { useHistory } from \"react-router-dom\";\r\ninterface Props {}\r\n\r\nexport const ErrorPageComponent = (props: Props) => {\r\n const history = useHistory();\r\n return (\r\n
\r\n
\r\n
\r\n

404

\r\n

ERROR

\r\n

PAGE NOT FOUND

\r\n
\r\n history.push(\"/Default\")}\r\n >\r\n Go back\r\n \r\n
\r\n
\r\n );\r\n};\r\n","import { Dialog } from \"primereact/dialog\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport React, { useRef, useState } from \"react\";\r\nimport { IoSaveOutline } from \"react-icons/io5\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\n\r\ninterface Props {\r\n setViewModal: any;\r\n viewModal: any;\r\n setAttributeButton: any;\r\n attributeButton: any;\r\n}\r\n\r\nexport const AddQueryComponent = (props: Props) => {\r\n const toast = useRef(null);\r\n const { toggleAlert } = useAlert();\r\n const valueDropdown = [{ name: \"Document No\" }];\r\n\r\n const [inputValue, setInputValue] = useState(\"\");\r\n const [selectedValue, setSelectedValue] = useState();\r\n\r\n function onSaveQuery() {\r\n console.log(inputValue, \"inputValue\");\r\n console.log(selectedValue?.name, \"inputValue\");\r\n\r\n if (!inputValue || !selectedValue?.name) {\r\n toggleAlert({\r\n description: `Please fill in all required fields.`,\r\n message: `Require field warning.`,\r\n type: \"warning\",\r\n });\r\n // toast.current.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail: \"Please fill in all required fields.\",\r\n // life: 7000,\r\n // });\r\n return;\r\n }\r\n let _items = props.attributeButton.items;\r\n const dataRequest = {\r\n layout: [\r\n {\r\n paramiter: {\r\n value: inputValue,\r\n },\r\n control: {\r\n label: selectedValue.name,\r\n },\r\n },\r\n ],\r\n };\r\n _items.push(dataRequest);\r\n props.setAttributeButton((prevState: any) => ({\r\n ...prevState,\r\n items: [..._items],\r\n }));\r\n props.setViewModal(false);\r\n }\r\n const footer = (\r\n
\r\n {\r\n onSaveQuery();\r\n }}\r\n className=\"hover-color-css-blue set-css-button-save-in-modal\"\r\n >\r\n Save\r\n \r\n
\r\n );\r\n\r\n return (\r\n <>\r\n props.setViewModal(false)}\r\n breakpoints={{ \"960px\": \"75vw\" }}\r\n blockScroll\r\n draggable={false}\r\n resizable={false}\r\n footer={footer}\r\n baseZIndex={2}\r\n >\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Parameter\r\n\r\n *\r\n
\r\n

ตัวแปร

\r\n \r\n \r\n
\r\n
\r\n setInputValue(e.target.value)}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Control\r\n\r\n *\r\n
\r\n

ควบคุม

\r\n \r\n \r\n
\r\n
\r\n {\r\n setSelectedValue(e.value);\r\n }}\r\n optionLabel=\"name\"\r\n placeholder=\"--Select--\"\r\n />\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n );\r\n};\r\n","import { InputText } from \"primereact/inputtext\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { Toast } from \"react-bootstrap\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { BsTrash } from \"react-icons/bs\";\r\nimport { HiPlus } from \"react-icons/hi\";\r\nimport { AddQueryComponent } from \"./AddQueryComponent\";\r\nimport { Checkbox } from \"primereact/checkbox\";\r\nimport { notification } from \"antd\";\r\n\r\ninterface Props {\r\n control: any;\r\n errors: any;\r\n template: any;\r\n advanceForm: any;\r\n setAdvanceForm: any;\r\n attributeButton: any;\r\n setAttributeButton: any;\r\n}\r\n\r\nexport default function ButtonComponent(props: Props) {\r\n const dataRequest = {\r\n label: props.template.label || \"\",\r\n alter: props.template.alter || \"\",\r\n url: props.template.URL,\r\n hideInPdf: props.template.attribute?.hideInPdf === \"Y\" || \"\" ? true : false,\r\n isNotCopy: props.template.attribute?.isNotCopy === \"Y\" || \"\" ? true : false,\r\n };\r\n const [viewModal, setViewModal] = useState(false);\r\n function deleteAttributeButton(idx: any) {\r\n let _items = props.attributeButton.items;\r\n _items.splice(idx, 1);\r\n props.setAttributeButton((prevState: any) => ({\r\n ...prevState,\r\n items: [..._items],\r\n }));\r\n }\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n
\r\n

Label

\r\n *\r\n :\r\n
\r\n
\r\n {\r\n return (\r\n <>\r\n \r\n {fieldState?.invalid && (\r\n Label is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Text Button

\r\n *\r\n :\r\n
\r\n
\r\n {\r\n return (\r\n <>\r\n \r\n {fieldState?.invalid && (\r\n textButton is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

URL

\r\n *\r\n :\r\n
\r\n
\r\n {\r\n return (\r\n <>\r\n \r\n {fieldState?.invalid && (\r\n url is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n Add http(s) prefix for external link\r\n Ex. https://my.domain.com\r\n
\r\n
\r\n
\r\n
\r\n

HideInPdf:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Is Not Copy:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n

QueryString :

\r\n
\r\n
\r\n {\r\n setViewModal(true);\r\n }}\r\n type=\"button\"\r\n className=\"set-color-css-button-add-column hover-color-css-282f6a\"\r\n >\r\n Add Query\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {props.attributeButton.items.map((_data: any, idx: any) => {\r\n return (\r\n <>\r\n {_data.layout.map((_data2: any, idx2: any) => {\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n );\r\n })}\r\n \r\n
\r\n

Parameter

\r\n

ตัวแปร

\r\n
\r\n

Control

\r\n

คอนโทรล

\r\n
\r\n

Delete

\r\n

ลบ

\r\n
{_data.layout[idx2]?.paramiter?.value}{_data.layout[idx2]?.control?.label}\r\n {\r\n deleteAttributeButton(idx);\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n {viewModal && (\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { Checkbox } from \"primereact/checkbox\";\r\nimport { InputNumber } from \"primereact/inputnumber\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { Form } from \"react-bootstrap\";\r\nimport { render } from \"react-dom\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { UploadFileRenderControl } from \"../../../Services/UploadFileService\";\r\nimport { generateQuickGuid } from \"../../../Helper/GenerateGuid\";\r\nimport { RiDeleteBack2Line } from \"react-icons/ri\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { Button } from \"primereact/button\";\r\nimport { IoMdAlert } from \"react-icons/io\";\r\nimport { notification } from \"antd\";\r\ninterface Props {\r\n control: any;\r\n errors: any;\r\n template: any;\r\n userData: any;\r\n uploadFileState: any;\r\n setUploadFileState: any;\r\n fromRender?: string;\r\n}\r\n\r\nexport default function AttachmentComponent(props: Props) {\r\n const ref = useRef();\r\n const toast = useRef(null);\r\n const [linkFile, setLinkFile] = useState();\r\n const [nameFile, setNameFile] = useState();\r\n const [visibleDialog, setVisibleDialog] = useState(false);\r\n const dataRequest = {\r\n label: props.template.label || \"\",\r\n alter: props.template.alter || \"\",\r\n description: props.template.description || \"\",\r\n maxFile: parseInt(props.template.attribute?.max) || 50,\r\n require: props.template.attribute?.require === \"Y\" || \"\" ? true : false,\r\n readonly: props.template.attribute?.readonly === \"Y\" || \"\" ? true : false,\r\n widthInTable: parseInt(props.template.attribute?.widthInTable) || 0,\r\n hideInPdf: props.template.attribute?.hideInPdf === \"Y\" || \"\" ? true : false,\r\n isNotCopy: props.template.attribute?.isNotCopy === \"Y\" || \"\" ? true : false,\r\n };\r\n useEffect(() => {\r\n if (props.uploadFileState) {\r\n const [nameFile, linkFile] = props.uploadFileState.split(\"|\");\r\n setNameFile(nameFile);\r\n setLinkFile(linkFile);\r\n }\r\n }, []);\r\n\r\n const onFileSelect = async (e: any, onChange: any) => {\r\n if (e.target.files[0] !== null) {\r\n const files = e.target.files[0];\r\n const formData = new FormData();\r\n var guid = \"imageControl\" + generateQuickGuid();\r\n formData.append(\"files\", files);\r\n formData.append(\"docSet\", guid);\r\n formData.append(\"actorID\", props.userData.employeeData.EmployeeId);\r\n var response = await UploadFileRenderControl(formData);\r\n props.setUploadFileState(\r\n response?.data?.fileName + \"|\" + response?.data?.pathUrl\r\n );\r\n setNameFile(response?.data?.fileName);\r\n setLinkFile(response?.data?.pathUrl);\r\n onChange(response?.data?.fileName + \"|\" + response?.data?.pathUrl);\r\n ref.current.value = null;\r\n }\r\n };\r\n const footer = (\r\n
\r\n {\r\n setVisibleDialog(false);\r\n }}\r\n />\r\n
\r\n );\r\n\r\n function renderDialog() {\r\n return (\r\n <>\r\n {\r\n setVisibleDialog(false);\r\n }}\r\n >\r\n \r\n \r\n \r\n );\r\n }\r\n function openLink() {\r\n const _link = linkFile\r\n ? linkFile.charAt(0) !== \"/\" && !props.userData.SharepointSiteURL\r\n ? \"/\" + linkFile\r\n : linkFile\r\n : \"\";\r\n const protocol = window.location.protocol;\r\n\r\n if (props.userData.SharepointSiteURL) {\r\n window.open(\r\n `${props.userData.SharepointSiteURL}/${_link}`,\r\n \"_blank\",\r\n \"noreferrer\"\r\n );\r\n } else if (props.userData.TinyURL) {\r\n if (\r\n _link.includes(\"www\") ||\r\n _link.includes(\".com\") ||\r\n _link.includes(\".tv\") ||\r\n _link.includes(\".net\") ||\r\n _link.includes(\"https\") ||\r\n _link.includes(\"http\") ||\r\n _link.includes(\".com\") ||\r\n _link.includes(\".co.th\")\r\n ) {\r\n if (_link.includes(\"https\")) {\r\n window.open(\r\n `https://${_link.replaceAll(\"https://\", \"\")}`,\r\n \"_blank\",\r\n \"noreferrer\"\r\n );\r\n } else if (_link.includes(\"http\")) {\r\n window.open(\r\n `http://${_link.replaceAll(\"http://\", \"\")}`,\r\n \"_blank\",\r\n \"noreferrer\"\r\n );\r\n } else {\r\n window.open(`https://${_link}`, \"_blank\", \"noreferrer\");\r\n }\r\n } else {\r\n window.open(\r\n `${protocol}//${props.userData.TinyURL}${_link}`,\r\n \"_blank\",\r\n \"noreferrer\"\r\n );\r\n }\r\n } else if (!props.userData.TinyURL) {\r\n window.open(`${_link}`, \"_blank\", \"noreferrer\");\r\n }\r\n }\r\n return (\r\n
\r\n {renderDialog()}\r\n
\r\n
\r\n

Label

\r\n *\r\n :\r\n
\r\n
\r\n {\r\n return (\r\n <>\r\n \r\n {fieldState?.invalid && (\r\n Label is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Alt Label:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

File Type

\r\n *\r\n :\r\n
\r\n
\r\n {\r\n const parts:any[] = value.split('*') \r\n if (parts.length === 0) {\r\n return \"FileType must have valid data between asterisks aaa(*).\";\r\n }\r\n return true\r\n },\r\n }}\r\n defaultValue={dataRequest.description}\r\n render={({ field, fieldState }) => {\r\n return (\r\n <>\r\n {\r\n const parts:any[] = field.value?.replace(/[\\s.]+/g, '') ?.split('*').filter(Boolean)\r\n field.onChange(`*${parts.join(\"*\")}`)\r\n }}\r\n />\r\n {fieldState?.invalid && (\r\n fileType is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n

File Type Format : *pdf*xlsx

\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Max File Size:

\r\n
\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n min={0}\r\n max={100}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n MB\r\n
\r\n
\r\n
\r\n {props.fromRender === \"table\" && (\r\n
\r\n
\r\n

Width:

\r\n
\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n mode=\"decimal\"\r\n min={0}\r\n max={100}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n %\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n

Required:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Readonly:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n {/* {props.fromRender === \"table\" && ( */}\r\n
\r\n
\r\n

HideInPdf:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Is Not Copy:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n {/* )} */}\r\n
\r\n
\r\n

Default Value:

\r\n
\r\n
\r\n (\r\n {\r\n onFileSelect(e, field.onChange);\r\n }}\r\n className={`set-input-component-css form-control ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n
\r\n
\r\n {props.uploadFileState && (\r\n
\r\n
\r\n
\r\n
\r\n {\r\n openLink();\r\n // window.open(\r\n // `https://${props.userData.TinyURL}${linkFile}`,\r\n // \"_blank\",\r\n // \"noreferrer\"\r\n // );\r\n }}\r\n style={{ color: \"#2769b2\" }}\r\n >\r\n {nameFile}\r\n
\r\n
\r\n {\r\n props.setUploadFileState(null);\r\n setNameFile(null);\r\n setLinkFile(null);\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n )}\r\n \r\n );\r\n}\r\n","import { Dialog } from \"primereact/dialog\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { BsTrash } from \"react-icons/bs\";\r\nimport { IoSaveOutline } from \"react-icons/io5\";\r\nimport { RiEditLine } from \"react-icons/ri\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\nimport \"./AutoNumberComponent.css\";\r\nimport { Input } from \"antd\";\r\ninterface Props {\r\n setConditionViewModal: any;\r\n conditionViewModal: any;\r\n advanceForm: any;\r\n setAdvanceForm: any;\r\n setAttributeNumber: any;\r\n attributeNumber: any;\r\n attributeIdx: any;\r\n checkAction: any;\r\n}\r\n\r\nexport default function AddConditionComponent(props: Props) {\r\n const toast = useRef(null);\r\n const { toggleAlert } = useAlert();\r\n const [selectedFormName, setSelectedFormName] = useState();\r\n const [selectedFormValue, setSelectedFormValue] = useState();\r\n const [inputValue, setInputValue] = useState(\"\");\r\n const [defaultValue, setDefaultValue] = useState([]);\r\n const [defaultValueItem, setDefaultValueItem] = useState([]);\r\n const [conditions, setConditions] = useState([]);\r\n const [actionConditions, setActionConditions] = useState(\"add\");\r\n const [idxConditions, setIdxConditions] = useState();\r\n const [value, setValue] = useState();\r\n\r\n useEffect(() => {\r\n if (props.checkAction == \"editCondition\") {\r\n let _condition =\r\n props.attributeNumber.formats[props.attributeIdx]?.condition || [];\r\n setConditions((prevState: any) => ({\r\n ...prevState,\r\n condition: [..._condition],\r\n }));\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (props.advanceForm.items?.length >= 1) {\r\n let array: any = [];\r\n let arrayItem: any = [];\r\n let arrayDataItem: any = [];\r\n props.advanceForm.items.map((_data: any, index: number) => {\r\n _data.layout.map((_dataLayout: any, index: number) => {\r\n if (_dataLayout.template.label !== undefined) {\r\n if (_dataLayout.template.label !== \"\") {\r\n if (_dataLayout.template.type !== \"em\") {\r\n array.push({\r\n item: _dataLayout.template.label,\r\n type: _dataLayout.template.type,\r\n });\r\n }\r\n }\r\n }\r\n if (selectedFormName) {\r\n if (selectedFormName.item === _dataLayout.template.label) {\r\n if (_dataLayout.template.attribute !== undefined) {\r\n if (_dataLayout.template.attribute.items) {\r\n arrayItem.push({ attribute: _dataLayout.template.attribute });\r\n arrayItem.map((_dataArray: any, index: number) => {\r\n _dataArray.attribute.items.map(\r\n (_dataItem: any, index: number) => {\r\n if (_dataItem.item !== \"--select--\") {\r\n arrayDataItem.push({ value: _dataItem.item });\r\n }\r\n }\r\n );\r\n });\r\n }\r\n }\r\n }\r\n }\r\n });\r\n });\r\n setDefaultValue([...array]);\r\n setDefaultValueItem([...arrayDataItem]);\r\n }\r\n }, [selectedFormName]);\r\n\r\n function Save() {\r\n if (props.checkAction === \"editCondition\") {\r\n let _formats = props.attributeNumber.formats;\r\n _formats[props.attributeIdx].condition = conditions.condition;\r\n props.setAttributeNumber((prevState: any) => ({\r\n ...prevState,\r\n formats: [..._formats],\r\n }));\r\n props.setConditionViewModal(false);\r\n }\r\n }\r\n function onSaveToCondition() {\r\n if (\r\n inputValue === \"\" &&\r\n selectedFormName?.item === undefined &&\r\n selectedFormValue?.value === undefined\r\n ) {\r\n toggleAlert({\r\n description: `Please fill in all required fields.`,\r\n message: `Require field warning.`,\r\n type: \"warning\",\r\n });\r\n // toast.current.show({\r\n // severity: \"error\",\r\n // summary: \"Error Message\",\r\n // detail: \"Please fill in all required fields.\",\r\n // life: 6000,\r\n // });\r\n return;\r\n } else {\r\n if (actionConditions === \"edit\") {\r\n const dataRequest = {\r\n type: selectedFormName.type,\r\n label: selectedFormName.item,\r\n form: \"adv\",\r\n value: selectedFormValue,\r\n };\r\n\r\n let _condition = conditions.condition;\r\n _condition[idxConditions] = dataRequest;\r\n setConditions((prevState: any) => ({\r\n ...prevState,\r\n condition: [..._condition],\r\n }));\r\n setActionConditions(\"add\");\r\n if (value) {\r\n const dataRequestValue = {\r\n type: selectedFormName.type,\r\n label: selectedFormName.item,\r\n form: \"adv\",\r\n value: value,\r\n };\r\n let _condition = conditions.condition;\r\n _condition[idxConditions] = dataRequestValue;\r\n setConditions((prevState: any) => ({\r\n ...prevState,\r\n condition: [..._condition],\r\n }));\r\n setActionConditions(\"add\");\r\n }\r\n } else if (actionConditions === \"add\") {\r\n if (value) {\r\n let _condition = conditions.condition;\r\n const dataRequestValue = {\r\n type: selectedFormName.type,\r\n label: selectedFormName.item,\r\n form: \"adv\",\r\n value: value,\r\n };\r\n _condition.push(dataRequestValue);\r\n setConditions((prevState: any) => ({\r\n ...prevState,\r\n condition: [..._condition],\r\n }));\r\n } else {\r\n let _condition = conditions.condition;\r\n const dataRequest = {\r\n type: selectedFormName.type,\r\n label: selectedFormName.item,\r\n form: \"adv\",\r\n value: selectedFormValue,\r\n };\r\n _condition.push(dataRequest);\r\n setConditions((prevState: any) => ({\r\n ...prevState,\r\n condition: [..._condition],\r\n }));\r\n }\r\n }\r\n }\r\n setSelectedFormName([]);\r\n setSelectedFormValue([]);\r\n setInputValue(\"\");\r\n setValue(\"\");\r\n }\r\n function editCondition(_data: any, _idx: any) {\r\n console.log(\"editCondition\", _data);\r\n setSelectedFormName({\r\n item: _data.label,\r\n type: _data.type,\r\n });\r\n console.log(\"data Type\", _data.type);\r\n if (\r\n _data.type !== \"tb\" &&\r\n _data.type !== \"dd\" &&\r\n _data.type !== \"l\" &&\r\n _data.type !== \"em\"\r\n ) {\r\n setValue(_data.value);\r\n }\r\n setSelectedFormValue(_data.value);\r\n setInputValue(_data.value);\r\n setActionConditions(\"edit\");\r\n setIdxConditions(_idx);\r\n }\r\n function deleteCondition(idx: any) {\r\n let _condition = conditions.condition;\r\n _condition.splice(idx, 1);\r\n setConditions((prevState: any) => ({\r\n ...prevState,\r\n condition: [..._condition],\r\n }));\r\n }\r\n const footer = (\r\n
\r\n {\r\n Save();\r\n }}\r\n className=\"hover-color-css-blue set-css-button-save-in-modal\"\r\n >\r\n Save\r\n \r\n
\r\n );\r\n const onSelectedChange = (e: { value: any }) => {\r\n setSelectedFormName(e.value);\r\n };\r\n const onSelectedChangeValue = (e: { value: any }) => {\r\n setSelectedFormValue(e.value);\r\n };\r\n return (\r\n <>\r\n props.setConditionViewModal(false)}\r\n breakpoints={{ \"960px\": \"75vw\" }}\r\n blockScroll\r\n draggable={false}\r\n resizable={false}\r\n footer={footer}\r\n >\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Column\r\n\r\n *\r\n
\r\n

คอลัมน์

\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n {defaultValueItem.length !== 0 && (\r\n
\r\n
\r\n \r\n \r\n
\r\n Value Options\r\n
\r\n

ข้อมูลตัวเลือก

\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n (กรณีที่มีตัวเลือก)\r\n
\r\n
\r\n )}\r\n {defaultValueItem.length === 0 && (\r\n
\r\n
\r\n \r\n \r\n
\r\n Value Input\r\n
\r\n

ข้อมูลนำเข้า

\r\n \r\n \r\n
\r\n
\r\n setValue(e.target.value)}\r\n disabled={defaultValueItem.length !== 0 ? true : false}\r\n />\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n
\r\n
\r\n {\r\n onSaveToCondition();\r\n }}\r\n >\r\n Save To Condition\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {conditions?.condition?.map((data: any, idx: any) => (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n
\r\n

Sequence

\r\n

ลำดับ

\r\n
\r\n

Label

\r\n

ชื่อ

\r\n
\r\n

Value Options

\r\n

ข้อมูลตัวเลือก

\r\n
\r\n

Edit

\r\n

แก้ไข

\r\n
\r\n

Delete

\r\n

ลบ

\r\n
{idx + 1}{data.label}{data.value}\r\n {\r\n editCondition(data, idx);\r\n }}\r\n />\r\n \r\n {\r\n deleteCondition(idx);\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n );\r\n}\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { Row, Col } from \"antd\";\r\nimport \"./Button.css\";\r\nimport { replaceSpecialChar } from \"../../Helper/ReplaceSpecialChar\";\r\ninterface Props {\r\n title?: string;\r\n icon: any;\r\n onSelectView: (text: string) => void;\r\n page: number | string;\r\n curPage: any;\r\n checkTypeIcon?: string;\r\n children?: any;\r\n}\r\n\r\nexport const Button = (props: Props) => {\r\n return (\r\n {\r\n props.onSelectView(props.page.toString());\r\n }}\r\n >\r\n \r\n {props.checkTypeIcon != undefined ? (\r\n \"\"\r\n ) : (\r\n props.icon\r\n )}\r\n \r\n \r\n
\r\n {props.title}\r\n {props.children && props.children}\r\n
\r\n \r\n \r\n );\r\n};\r\n","import { Dialog } from \"primereact/dialog\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { DragDropContext, Draggable, Droppable } from \"react-beautiful-dnd\";\r\nimport { AiOutlineFileText, AiOutlineCalendar } from \"react-icons/ai\";\r\nimport { BiArchiveIn, BiFont } from \"react-icons/bi\";\r\nimport { BsTrash } from \"react-icons/bs\";\r\nimport { IoSaveOutline } from \"react-icons/io5\";\r\nimport { generateQuickGuid } from \"../../../Helper/GenerateGuid\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\nimport { Button } from \"../../Button/Button\";\r\nimport { Col, Row } from \"antd\";\r\nimport \"./AutoNumberComponent.css\";\r\ninterface Props {\r\n setViewModal: any;\r\n viewModal: any;\r\n advanceForm: any;\r\n setAdvanceForm: any;\r\n attributeNumber: any;\r\n setAttributeNumber: any;\r\n attributeIdx: any;\r\n checkAction: any;\r\n setCheckAction: any;\r\n}\r\n\r\nexport default function AddPreFixComponent(props: Props) {\r\n const toast = useRef(null);\r\n const { toggleAlert } = useAlert();\r\n const dataFormats: any = {\r\n condition: [],\r\n format: [],\r\n };\r\n const [formats, setFormats] = useState(dataFormats);\r\n const [selected, setSelected] = useState(\"1\");\r\n const [selectedFormName, setSelectedFormName] = useState();\r\n const [defaultValue, setDefaultValue] = useState([]);\r\n const [inputValue, setInputValue] = useState(\"\");\r\n const [dateFormat, setDateFormat] = useState(\"\");\r\n const [formatsIdx, setFormatsIdx] = useState();\r\n const [saveToFormatAction, setSaveToFormatAction] = useState(\"add\");\r\n\r\n const conditionType = [\r\n { name: \"None\", value: \"None\" },\r\n { name: \"Split\", value: \"Split\" },\r\n ];\r\n const [selectedCondition, setSelectedCondition] = useState(\"None\");\r\n const [symbolValue, setSymbolValue] = useState();\r\n const [positionValue, setPositionValue] = useState();\r\n useEffect(() => {\r\n if (props.checkAction === \"editPrefix\") {\r\n let _formats = props.attributeNumber.formats;\r\n let _format = _formats[props.attributeIdx].format;\r\n for (let i = 0; i < _format.length; i++) {\r\n if (_format[i].guid == undefined) {\r\n _format[i][\"guid\"] = generateQuickGuid();\r\n }\r\n }\r\n setFormats((prevState: any) => ({\r\n ...prevState,\r\n format: [..._format],\r\n }));\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (props.advanceForm.items?.length >= 1) {\r\n let array: any = [];\r\n props.advanceForm.items.map((_data: any, index: number) => {\r\n if (Array.isArray(_data.layout)) {\r\n _data.layout.forEach((data: any) => {\r\n if (data.template.type === \"an\") {\r\n data.template.attribute.formats.map((dtformat: any) => {\r\n if (dtformat) {\r\n dtformat.format.map((type: any) => {\r\n if (\r\n type.type === \"ddl\" &&\r\n (type.position === undefined ||\r\n type.condition === undefined ||\r\n type.symbol === undefined)\r\n ) {\r\n type.position = type.position || \"\";\r\n type.condition = type.condition || \"None\";\r\n type.symbol = type.symbol || \"\";\r\n }\r\n });\r\n }\r\n });\r\n }\r\n });\r\n }\r\n _data.layout.map((_dataLayout: any, index: number) => {\r\n if (_dataLayout.template.label != undefined) {\r\n if (\r\n _dataLayout.template.type === \"t\" ||\r\n _dataLayout.template.type === \"dd\"\r\n ) {\r\n array.push({\r\n item: _dataLayout.template.label,\r\n });\r\n }\r\n }\r\n });\r\n });\r\n console.log(\"dataFormat\", array);\r\n setDefaultValue([...array]);\r\n }\r\n }, []);\r\n\r\n function SavePreFix() {\r\n if (formats?.format.length === 0) {\r\n toggleAlert({\r\n description: `Please fill in all required fields.`,\r\n message: `Require field warning.`,\r\n type: \"warning\",\r\n });\r\n return;\r\n }\r\n if (props.checkAction === \"addFormat\") {\r\n let _attribute = props.attributeNumber.formats;\r\n _attribute.push(formats);\r\n props.setAttributeNumber((prevState: any) => ({\r\n ...prevState,\r\n formats: [..._attribute],\r\n }));\r\n } else if (\r\n props.checkAction === \"editPrefix\" ||\r\n saveToFormatAction === \"edit\"\r\n ) {\r\n let _formats = props.attributeNumber.formats;\r\n _formats[props.attributeIdx].format = formats.format;\r\n props.setAttributeNumber((prevState: any) => ({\r\n ...prevState,\r\n formats: [..._formats],\r\n }));\r\n }\r\n props.setViewModal(false);\r\n }\r\n const footer = (\r\n
\r\n {\r\n SavePreFix();\r\n }}\r\n className=\"hover-color-css-blue set-css-button-save-in-modal\"\r\n >\r\n Save\r\n \r\n
\r\n );\r\n const onSelectedChange = (e: { value: any }) => {\r\n setSelectedFormName(e.value);\r\n };\r\n const onSelectedCondition = (e: { value: any }) => {\r\n setSelectedCondition(e.value);\r\n };\r\n\r\n function onSaveToFormat() {\r\n if (inputValue === \"\" && selected === \"1\") {\r\n toggleAlert({\r\n description: `Please fill in all required fields.`,\r\n message: `Require field warning.`,\r\n type: \"warning\",\r\n });\r\n return;\r\n } else if (selectedFormName?.item === undefined && selected === \"2\") {\r\n toggleAlert({\r\n description: `Please fill in all required fields.`,\r\n message: `Require field warning.`,\r\n type: \"warning\",\r\n });\r\n return;\r\n } else if (dateFormat === \"\" && selected === \"3\") {\r\n toggleAlert({\r\n description: `Please fill in all required fields.`,\r\n message: `Require field warning.`,\r\n type: \"warning\",\r\n });\r\n return;\r\n } else if (selected === \"1\") {\r\n if (saveToFormatAction === \"edit\") {\r\n let _formats = formats.format;\r\n const dataRequest = {\r\n type: \"pf\",\r\n label: inputValue,\r\n guid: generateQuickGuid(),\r\n };\r\n _formats[formatsIdx] = dataRequest;\r\n setFormats((prevState: any) => ({\r\n ...prevState,\r\n format: [..._formats],\r\n }));\r\n } else if (saveToFormatAction === \"add\") {\r\n const dataRequest = {\r\n type: \"pf\",\r\n label: inputValue,\r\n guid: generateQuickGuid(),\r\n };\r\n let _format = formats.format;\r\n _format.push(dataRequest);\r\n setFormats((prevState: any) => ({\r\n ...prevState,\r\n format: [..._format],\r\n }));\r\n }\r\n } else if (selected === \"2\") {\r\n if (saveToFormatAction === \"edit\") {\r\n let _formats = formats.format;\r\n const dataRequest = {\r\n type: \"ddl\",\r\n label: selectedFormName.item,\r\n guid: generateQuickGuid(),\r\n condition: selectedCondition,\r\n symbol: symbolValue,\r\n position: positionValue,\r\n };\r\n _formats[formatsIdx] = dataRequest;\r\n setSelectedCondition(\"None\");\r\n setSymbolValue(\"\");\r\n setPositionValue(\"\");\r\n setFormats((prevState: any) => ({\r\n ...prevState,\r\n format: [..._formats],\r\n }));\r\n } else if (saveToFormatAction === \"add\") {\r\n const dataRequest = {\r\n type: \"ddl\",\r\n label: selectedFormName.item,\r\n guid: generateQuickGuid(),\r\n condition: selectedCondition,\r\n symbol: symbolValue,\r\n position: positionValue,\r\n };\r\n let _format = formats.format;\r\n _format.push(dataRequest);\r\n setSelectedCondition(\"None\");\r\n setSymbolValue(\"\");\r\n setPositionValue(\"\");\r\n setFormats((prevState: any) => ({\r\n ...prevState,\r\n format: [..._format],\r\n }));\r\n }\r\n } else if (selected === \"3\") {\r\n if (saveToFormatAction === \"edit\") {\r\n let _formats = formats.format;\r\n const dataRequest = {\r\n type: \"datetime\",\r\n label: dateFormat,\r\n guid: generateQuickGuid(),\r\n };\r\n _formats[formatsIdx] = dataRequest;\r\n setFormats((prevState: any) => ({\r\n ...prevState,\r\n format: [..._formats],\r\n }));\r\n } else if (saveToFormatAction === \"add\") {\r\n const dataRequest = {\r\n type: \"datetime\",\r\n label: dateFormat,\r\n guid: generateQuickGuid(),\r\n };\r\n let _formats = formats.format;\r\n _formats.push(dataRequest);\r\n setFormats((prevState: any) => ({\r\n ...prevState,\r\n format: [..._formats],\r\n }));\r\n }\r\n }\r\n setSaveToFormatAction(\"add\");\r\n setInputValue(\"\");\r\n setSelectedFormName([]);\r\n }\r\n const reorder = (list: any, startIndex: any, endIndex: any) => {\r\n const result = Array.from(list);\r\n const [removed] = result.splice(startIndex, 1);\r\n result.splice(endIndex, 0, removed);\r\n return result;\r\n };\r\n const onDragEnd = (result: any) => {\r\n let _components = formats.format;\r\n if (!result.destination) {\r\n return;\r\n }\r\n const items = reorder(\r\n _components,\r\n result.source.index,\r\n result.destination.index\r\n );\r\n setFormats((prevState: any) => ({\r\n ...prevState,\r\n format: [...items],\r\n }));\r\n };\r\n\r\n const getItemStyle = (isDragging: any, draggableStyle: any) => ({\r\n userSelect: \"none\",\r\n margin: \"0 0 17px 0\",\r\n minHeight: \"82px\",\r\n ...draggableStyle,\r\n });\r\n function renderIconShowCreateControl(dataType: any) {\r\n if (dataType === \"pf\") {\r\n return (\r\n <>\r\n \r\n Fix PreFix\r\n \r\n );\r\n } else if (dataType === \"ddl\") {\r\n return (\r\n <>\r\n \r\n Advance Form\r\n \r\n );\r\n } else if (dataType === \"datetime\") {\r\n return (\r\n <>\r\n \r\n Date Time\r\n \r\n );\r\n }\r\n }\r\n function deleteFormat(idx: any) {\r\n let _formats = formats.format;\r\n _formats.splice(idx, 1);\r\n setFormats((prevState: any) => ({\r\n ...prevState,\r\n format: [..._formats],\r\n }));\r\n }\r\n\r\n function updateFormat(data: any, idx: any) {\r\n setSaveToFormatAction(\"edit\");\r\n if (data.type === \"pf\") {\r\n setInputValue(data.label);\r\n setSelected(\"1\");\r\n } else if (data.type === \"ddl\") {\r\n const dd = {\r\n item: data.label,\r\n };\r\n setSelectedFormName(dd);\r\n setSelectedCondition(data.condition);\r\n setSymbolValue(data.symbol);\r\n setPositionValue(data.position);\r\n setSelected(\"2\");\r\n } else if (data.type === \"datetime\") {\r\n setDateFormat(data.label);\r\n setSelected(\"3\");\r\n }\r\n setFormatsIdx(idx);\r\n }\r\n \r\n\r\n return (\r\n <>\r\n props.setViewModal(false)}\r\n breakpoints={{ \"960px\": \"75vw\" }}\r\n blockScroll\r\n draggable={false}\r\n resizable={false}\r\n footer={footer}\r\n >\r\n
\r\n
\r\n <>\r\n \r\n {\r\n setSelected(e);\r\n setSaveToFormatAction(\"add\");\r\n }}\r\n title={\"Fix PreFix\"}\r\n icon={}\r\n page={1}\r\n curPage={selected}\r\n />\r\n {\r\n setSelected(e);\r\n setSaveToFormatAction(\"add\");\r\n }}\r\n title={\"Advance Form\"}\r\n icon={}\r\n page={2}\r\n curPage={selected}\r\n />\r\n {\r\n setSelected(e);\r\n setSaveToFormatAction(\"add\");\r\n }}\r\n title={\"Date Time\"}\r\n icon={}\r\n page={3}\r\n curPage={selected}\r\n />\r\n
\r\n \r\n
\r\n\r\n
\r\n {selected == \"1\" && (\r\n
\r\n
\r\n

Fix Prefix :

\r\n

*

\r\n
\r\n
\r\n setInputValue(e.target.value)}\r\n />\r\n
\r\n
\r\n )}\r\n {selected == \"2\" && (\r\n
\r\n \r\n
\r\n

FormName :

\r\n

*

\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n

Condition :

\r\n {/*

*

*/}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n

Symbol :

\r\n
\r\n
\r\n
\r\n {\r\n setSymbolValue(e.target.value);\r\n }}\r\n disabled={selectedCondition === \"None\"}\r\n />\r\n \r\n ระบุสัญลักษณ์ที่ขั้นเลขที่เอกสาร\r\n \r\n
\r\n
\r\n \r\n
\r\n

Format :

\r\n
\r\n
\r\n {\r\n setPositionValue(e.target.value);\r\n }}\r\n disabled={selectedCondition === \"None\"}\r\n />\r\n \r\n ตำแหน่งข้อมูลที่ต้องการนำไปใช้\r\n \r\n
\r\n
\r\n
\r\n )}\r\n {selected == \"3\" && (\r\n
\r\n
\r\n

Date Time :

\r\n

*

\r\n
\r\n
\r\n setDateFormat(e.target.value)}\r\n />\r\n
\r\n
\r\n )}\r\n
\r\n {\r\n if (\r\n selected === \"2\" &&\r\n selectedCondition === \"Split\" &&\r\n (positionValue === \"\" || symbolValue === \"\")\r\n ) {\r\n toggleAlert({\r\n description: `Please fill Symbol and Format`,\r\n message: `Condition Split.`,\r\n type: \"error\",\r\n });\r\n } else {\r\n onSaveToFormat();\r\n }\r\n }}\r\n >\r\n Save To Format\r\n \r\n
\r\n {formats?.format?.length >= 1 && (\r\n
\r\n <>\r\n \r\n \r\n {(provided: any, snapshot: any) => (\r\n \r\n {formats?.format?.map((_data: any, idx: any) => (\r\n
\r\n \r\n {(provided: any, snapshot: any) => (\r\n \r\n {\r\n updateFormat(_data, idx);\r\n }}\r\n >\r\n
\r\n \r\n {_data.label}\r\n \r\n
\r\n {renderIconShowCreateControl(\r\n _data.type\r\n )}\r\n
\r\n
\r\n
\r\n
\r\n {\r\n deleteFormat(idx);\r\n }}\r\n >\r\n \r\n

\r\n
\r\n
\r\n )}\r\n \r\n
\r\n ))}\r\n {provided.placeholder}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { Checkbox } from \"primereact/checkbox\";\r\nimport { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { InputNumber } from \"primereact/inputnumber\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { Table } from \"react-bootstrap\";\r\nimport { render } from \"react-dom\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { BsTrash } from \"react-icons/bs\";\r\nimport { HiPlus } from \"react-icons/hi\";\r\nimport { RiEditLine } from \"react-icons/ri\";\r\nimport AddConditionComponent from \"./AddConditionComponent\";\r\nimport AddPreFixComponent from \"./AddPreFixComponent\";\r\nimport \"./AutoNumberComponent.css\";\r\nimport { notification } from \"antd\";\r\ninterface Props {\r\n control: any;\r\n errors: any;\r\n template: any;\r\n advanceForm: any;\r\n setAdvanceForm: any;\r\n attributeNumber: any;\r\n setAttributeNumber: any;\r\n}\r\n\r\nexport default function AutoNumberComponent(props: Props) {\r\n const dataRequest = {\r\n label: props.template.label || \"\",\r\n alter: props.template.alter || \"\",\r\n digit: parseInt(props.template?.digit) || 1,\r\n readonly: props.template.attribute?.readonly === \"Y\" || \"\" ? true : false,\r\n hideInPdf: props.template.attribute?.hideInPdf === \"Y\" || \"\" ? true : false,\r\n isNotCopy: props.template.attribute?.isNotCopy === \"Y\" || \"\" ? true : false,\r\n };\r\n\r\n const [viewModal, setViewModal] = useState(false);\r\n const [conditionViewModal, setConditionViewModal] = useState(false);\r\n const [attributeIdx, setAttributeIdx] = useState();\r\n const [checkAction, setCheckAction] = useState(\"\");\r\n function deleteAutoNumber(idx: any) {\r\n let _attribute = props.attributeNumber.formats;\r\n\r\n _attribute.splice(idx, 1);\r\n props.setAttributeNumber((prevState: any) => ({\r\n ...prevState,\r\n formats: [..._attribute],\r\n }));\r\n }\r\n return (\r\n <>\r\n
\r\n
\r\n
\r\n

Label

\r\n *\r\n :\r\n
\r\n
\r\n {\r\n return (\r\n <>\r\n \r\n {fieldState?.invalid && (\r\n Label is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Alt Label:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Digit :

\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n mode=\"decimal\"\r\n min={0}\r\n max={100}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

HideInPdf:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Is Not Copy:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {\r\n setViewModal(true);\r\n setCheckAction(\"addFormat\");\r\n }}\r\n type=\"button\"\r\n className=\"set-color-css-button-add-column hover-color-css-282f6a\"\r\n >\r\n Add PreFix\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {props.attributeNumber.formats.map((data: any, idx: any) => (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n
\r\n

Sequence

\r\n

ลำดับ

\r\n
\r\n

Condition

\r\n

เงื่อนไข

\r\n
\r\n

Format

\r\n

รูปแบบแสดงผล

\r\n
\r\n

Delete

\r\n

ลบ

\r\n
{idx + 1}\r\n {\" \"}\r\n \r\n {\r\n setAttributeIdx(idx);\r\n setConditionViewModal(true);\r\n setCheckAction(\"editCondition\");\r\n }}\r\n />\r\n {\" \"}\r\n \r\n \r\n {data.condition?.map((_data: any, idx2: any) => (\r\n <>\r\n {data.condition.length > 1\r\n ? data.condition.slice(-1)[0] == _data\r\n ? `${_data.label}`\r\n : `${_data.label} - `\r\n : _data.label}\r\n \r\n ))}\r\n \r\n \r\n \r\n {\r\n setAttributeIdx(idx);\r\n setViewModal(true);\r\n setCheckAction(\"editPrefix\");\r\n }}\r\n />\r\n {\" \"}\r\n \r\n \r\n {data.format.map((_data: any, idx2: any) => (\r\n <>\r\n {data.format.length > 1\r\n ? data.format.slice(-1)[0] == _data\r\n ? `${_data.label}`\r\n : `${_data.label} - `\r\n : _data.label}\r\n \r\n ))}\r\n \r\n \r\n {\r\n deleteAutoNumber(idx);\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n {viewModal && (\r\n \r\n )}\r\n {conditionViewModal && (\r\n \r\n )}\r\n \r\n );\r\n}","import { Dropdown } from \"primereact/dropdown\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { ControllerRenderProps, FieldValues } from \"react-hook-form\";\r\n\r\ntype Props = {\r\n field: ControllerRenderProps;\r\n disabled: boolean;\r\n};\r\n\r\nconst CalendarDefaultValueGroup = ({ field, disabled }: Props) => {\r\n useEffect(() => {\r\n if (disabled) {\r\n field.onChange(\"\");\r\n }\r\n }, [disabled]);\r\n\r\n return (\r\n
\r\n {\r\n console.log(\"valuedate\", e.target.value, field, disabled);\r\n field.onChange(e.target.value);\r\n }}\r\n />\r\n
\r\n );\r\n};\r\n\r\nexport default CalendarDefaultValueGroup;\r\n","import { Checkbox } from \"primereact/checkbox\";\r\nimport { InputNumber } from \"primereact/inputnumber\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport {\r\n Controller,\r\n FieldValues,\r\n UseFormGetValues,\r\n get,\r\n} from \"react-hook-form\";\r\nimport { CheckboxCpmponents } from \"../../CheckboxCpmponents/CheckboxCpmponents\";\r\nimport { InputTextComponents } from \"../../InputTextComponents/InputTextComponents\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport CalendarDefaultValueGroup from \"./CalendarDefaultValueGroup\";\r\nimport useMasterSetting from \"../../../hooks/useMasterSetting\";\r\nimport { notification } from \"antd\";\r\n\r\ninterface Props {\r\n control: any;\r\n errors: any;\r\n template: any;\r\n getValues: UseFormGetValues;\r\n fromRender?: string;\r\n}\r\n\r\nexport default function CalendarComponent(props: Props) {\r\n const dataRequest = {\r\n label: props.template.label || \"\",\r\n alter: props.template.alter || \"\",\r\n description: props.template.attribute?.description || \"\",\r\n symbol: props.template.attribute?.date?.symbol || \"\",\r\n require: props.template.attribute?.require === \"Y\" ? true : false,\r\n readonly: props.template.attribute?.readonly === \"Y\" ? true : false,\r\n widthInTable: parseInt(props.template.attribute?.widthInTable) || 0,\r\n hideInPdf: props.template.attribute?.hideInPdf === \"Y\" || \"\" ? true : false,\r\n default: props.template.attribute?.default || \"\",\r\n defaultType: props.template.attribute?.defaultType || \"None\",\r\n isNotCopy: props.template.attribute?.isNotCopy === \"Y\" || \"\" ? true : false,\r\n };\r\n\r\n const [disabled, setDisabled] = useState(\r\n props.template.attribute?.defaultType === \"None\"\r\n );\r\n return (\r\n
\r\n
\r\n
\r\n

Label

\r\n *\r\n :\r\n
\r\n
\r\n {\r\n return (\r\n <>\r\n \r\n {fieldState?.invalid && (\r\n Label is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Alt Label:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Description:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n {props.fromRender === \"table\" && (\r\n
\r\n
\r\n

Width:

\r\n
\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n mode=\"decimal\"\r\n min={0}\r\n max={100}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n %\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n

Symbol :

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Required:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Readonly:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n {/* {props.fromRender === \"table\" && ( */}\r\n
\r\n
\r\n

HideInPdf:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Is Not Copy:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n {/* )} */}\r\n {/* default calendar */}\r\n
\r\n
\r\n

Default Value:

\r\n
\r\n
\r\n
\r\n (\r\n
\r\n {\r\n if (e.value !== \"None\") {\r\n setDisabled(false);\r\n } else {\r\n setDisabled(true);\r\n }\r\n field.onChange(e.value);\r\n }}\r\n options={[\r\n { name: \"None\", value: \"None\" },\r\n { name: \"Days\", value: \"Days\" },\r\n ]}\r\n optionLabel=\"name\"\r\n />\r\n
\r\n )}\r\n />\r\n (\r\n
\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import { AutoComplete } from \"primereact/autocomplete\";\r\nimport { Checkbox } from \"primereact/checkbox\";\r\nimport { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { InputNumber } from \"primereact/inputnumber\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { RadioButton } from \"primereact/radiobutton\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { BsTrash, BsX } from \"react-icons/bs\";\r\nimport { InputTextComponents } from \"../../InputTextComponents/InputTextComponents\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\nimport { notification } from 'antd';\r\ninterface Props {\r\n control: any;\r\n errors: any;\r\n template: any;\r\n setItemsList: any;\r\n itemsList: any;\r\n fromRender?: string;\r\n}\r\n\r\nexport default function ChoiceComponent(props: Props) {\r\n\r\n const dataRequest = {\r\n label: props.template.label || \"\",\r\n alter: props.template.alter || \"\",\r\n description: props.template.attribute?.description || \"\",\r\n item: props.template.attribute?.item || \"\",\r\n multipleLine: props.template.attribute?.multipleLine === \"Y\" ? true : false,\r\n require: props.template.attribute?.require === \"Y\" ? true : false,\r\n readonly: props.template.attribute?.readonly === \"Y\" ? true : false,\r\n widthInTable: parseInt(props.template.attribute?.widthInTable) || 0,\r\n hideInPdf: props.template.attribute?.hideInPdf === \"Y\" || \"\" ? true : false,\r\n isNotCopy: props.template.attribute?.isNotCopy === \"Y\" || \"\" ? true : false,\r\n };\r\n const [input, setInput] = useState(\"\");\r\n const { toggleAlert } = useAlert();\r\n const [checkBoxRequire, setCheckBoxRequire] = useState();\r\n useEffect(() => {\r\n if (props.template.attribute?.items !== undefined) {\r\n props.setItemsList((prevState: any) => ({\r\n ...prevState,\r\n items: [...props.template.attribute.items],\r\n }));\r\n }\r\n }, []);\r\n // useEffect(() => {\r\n // if (checkBoxRequire === true) {\r\n // let _components = props.itemsList.items;\r\n // const requestData: any = {\r\n // item: \"--select--\",\r\n // checked: \"N\",\r\n // };\r\n // _components.splice(0, 0, requestData);\r\n // props.setItemsList((prevState: any) => ({\r\n // ...prevState,\r\n // items: [..._components],\r\n // }));\r\n // } else if (\r\n // checkBoxRequire == false &&\r\n // props.itemsList.items[0]?.item == \"--select--\"\r\n // ) {\r\n // let _components = props.itemsList.items;\r\n // _components.splice(0, 1);\r\n // props.setItemsList((prevState: any) => ({\r\n // ...prevState,\r\n // items: [..._components],\r\n // }));\r\n // }\r\n // }, [checkBoxRequire]);\r\n\r\n const handleKeyDown = (event: any) => {\r\n if (event.key === \"Enter\" && event.target.value !== \"\") {\r\n let _components = props.itemsList.items;\r\n let value = event.target.value;\r\n if (value.includes(\",\")) {\r\n var array = value.split(\",\");\r\n if (array[array.length - 1] === \"\") {\r\n array.pop();\r\n }\r\n let _dataFilter;\r\n for (let index = 0; index < array.length; index++) {\r\n _dataFilter = _components.filter(\r\n (e: any) => e.item.trim() === array[index].trim()\r\n );\r\n if (_dataFilter.length === 0) {\r\n const requestData: any = {\r\n item: array[index],\r\n checked: \"N\",\r\n };\r\n _components.splice(_components.length, 0, requestData);\r\n } else {\r\n toggleAlert({\r\n description: `Please fill in unique item`,\r\n message: `Duplicate warning.`,\r\n type: \"warning\",\r\n });\r\n }\r\n }\r\n } else {\r\n let _dataFilter = _components.filter(\r\n (e: any) => e.item.trim() === value.trim()\r\n );\r\n if (_dataFilter.length === 0) {\r\n const requestData: any = {\r\n item: value,\r\n checked: \"N\",\r\n };\r\n _components.splice(_components.length, 0, requestData);\r\n } else {\r\n toggleAlert({\r\n description: `Please fill in unique item`,\r\n message: `Duplicate warning.`,\r\n type: \"warning\",\r\n });\r\n }\r\n }\r\n props.setItemsList((prevState: any) => ({\r\n ...prevState,\r\n items: [..._components],\r\n }));\r\n setInput(\"\");\r\n }\r\n };\r\n function onRowReorder(e: any) {\r\n props.setItemsList((prevState: any) => ({\r\n ...prevState,\r\n items: e.value,\r\n }));\r\n }\r\n function cellEditor(options: any) {\r\n return textEditor(options);\r\n }\r\n function textEditor(options: any) {\r\n return (\r\n options.editorCallback(e.target.value)}\r\n />\r\n );\r\n }\r\n const onCellEditComplete = (e: any) => {\r\n let { rowData, newValue, field, originalEvent: event } = e;\r\n let _components = props.itemsList.items;\r\n if (rowData.item !== newValue) {\r\n let _dataFilter = _components.filter(\r\n (e: any) => e.item.trim() === newValue.trim()\r\n );\r\n if (_dataFilter.length === 0) {\r\n if (newValue.trim().length > 0) rowData[field] = newValue;\r\n else event.preventDefault();\r\n } else {\r\n toggleAlert({\r\n description: `Please fill in unique item`,\r\n message: `Duplicate warning.`,\r\n type: \"warning\",\r\n });\r\n }\r\n }\r\n };\r\n const actionBodyTemplate = (rowData: any) => {\r\n return (\r\n <>\r\n {\r\n console.log(rowData, \"rowData\");\r\n let _components = props.itemsList.items.filter(\r\n (data: any) => data.item !== rowData.item\r\n );\r\n props.setItemsList((prevState: any) => ({\r\n ...prevState,\r\n items: _components,\r\n }));\r\n }}\r\n />\r\n \r\n );\r\n };\r\n\r\n return (\r\n
\r\n
\r\n
\r\n

Label

\r\n *\r\n :\r\n
\r\n
\r\n {\r\n return (\r\n <>\r\n \r\n {fieldState?.invalid && (\r\n Label is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Alt Label:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Description:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n {props.fromRender === \"table\" && (\r\n
\r\n
\r\n

Width:

\r\n
\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n mode=\"decimal\"\r\n min={0}\r\n max={100}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n %\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n

Inline:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Required:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n setCheckBoxRequire(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Readonly:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n {/* {props.fromRender === \"table\" && ( */}\r\n
\r\n
\r\n

HideInPdf:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Is Not Copy:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n {/* )} */}\r\n
\r\n
\r\n

Items :

\r\n

*

\r\n
\r\n
\r\n (\r\n {\r\n setInput(e.target.value);\r\n }}\r\n value={input}\r\n onKeyDown={handleKeyDown}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n \r\n
\r\n
\r\n {props.itemsList.items.length !== 0 && (\r\n
\r\n e.checked === \"Y\"\r\n )}\r\n dataKey=\"item\"\r\n selectionMode={\"radiobutton\"}\r\n onSelectionChange={(e) => {\r\n try {\r\n let val = e.value;\r\n\r\n const newItems = props.itemsList.items.map(\r\n (e: { item: any; checked: string }) => {\r\n if (e.item === val.item) {\r\n val.checked = val.checked === \"N\" ? \"Y\" : \"N\";\r\n e = val;\r\n } else {\r\n e.checked = \"N\";\r\n }\r\n return e;\r\n }\r\n );\r\n props.setItemsList((prevState: any) => ({\r\n ...prevState,\r\n items: [...newItems],\r\n }));\r\n } catch (error) { }\r\n }}\r\n >\r\n \r\n cellEditor(options)}\r\n onCellEditComplete={onCellEditComplete}\r\n rowEditor\r\n header={\"Items\"}\r\n />\r\n \r\n \r\n \r\n
\r\n )}\r\n
\r\n );\r\n}\r\n","import { Checkbox } from \"primereact/checkbox\";\r\nimport { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { InputNumber } from \"primereact/inputnumber\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { MultiSelect } from \"primereact/multiselect\";\r\nimport { RadioButton } from \"primereact/radiobutton\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { BsTrash } from \"react-icons/bs\";\r\nimport { CheckboxCpmponents } from \"../../CheckboxCpmponents/CheckboxCpmponents\";\r\nimport { DropdownComponents } from \"../../DropdownComponents/DropdownComponents\";\r\nimport { InputTextComponents } from \"../../InputTextComponents/InputTextComponents\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\nimport { notification } from \"antd\";\r\n\r\ninterface Props {\r\n control: any;\r\n errors: any;\r\n template: any;\r\n setItemsList: any;\r\n itemsList: any;\r\n setDisplayDropdown: any;\r\n fromRender?: string;\r\n}\r\n\r\nexport default function MultiChoiceComponent(props: Props) {\r\n const dataRequest = {\r\n label: props.template.label || \"\",\r\n alter: props.template.alter || \"\",\r\n description: props.template.attribute?.description || \"\",\r\n item: props.template.attribute?.item || \"\",\r\n display: props.template.attribute?.display || \"cb\",\r\n multipleLine: props.template.attribute?.multipleLine === \"Y\" ? true : false,\r\n require: props.template.attribute?.require === \"Y\" ? true : false,\r\n readonly: props.template.attribute?.readonly === \"Y\" ? true : false,\r\n widthInTable: parseInt(props.template.attribute?.widthInTable) || 0,\r\n hideInPdf: props.template.attribute?.hideInPdf === \"Y\" || \"\" ? true : false,\r\n isNotCopy: props.template.attribute?.isNotCopy === \"Y\" || \"\" ? true : false,\r\n };\r\n const displayDropdown = [\r\n { name: \"Checkbox\", code: \"cb\" },\r\n { name: \"Dropdown\", code: \"dd\" },\r\n ];\r\n const [input, setInput] = useState(\"\");\r\n const [dropdown, setDropdown] = useState([]);\r\n const [checkBoxRequire, setCheckBoxRequire] = useState();\r\n const { toggleAlert } = useAlert();\r\n useEffect(() => {\r\n defaultDropDown();\r\n if (props.template.attribute?.items !== undefined) {\r\n props.setItemsList((prevState: any) => ({\r\n ...prevState,\r\n items: [...props.template.attribute.items],\r\n }));\r\n }\r\n }, []);\r\n function defaultDropDown() {\r\n if (dataRequest.display === \"cb\") {\r\n setDropdown(displayDropdown[0]);\r\n props.setDisplayDropdown(displayDropdown[0]);\r\n } else if (dataRequest.display === \"dd\") {\r\n setDropdown(displayDropdown[1]);\r\n props.setDisplayDropdown(displayDropdown[1]);\r\n }\r\n }\r\n\r\n const handleKeyDown = (event: any) => {\r\n if (event.key === \"Enter\" && event.target.value !== \"\") {\r\n let _components = props.itemsList.items;\r\n let value = event.target.value;\r\n if (value.includes(\",\")) {\r\n var array = value.split(\",\");\r\n if (array[array.length - 1] === \"\") {\r\n array.pop();\r\n }\r\n let _dataFilter;\r\n for (let index = 0; index < array.length; index++) {\r\n _dataFilter = _components.filter(\r\n (e: any) => e.item.trim() === array[index].trim()\r\n );\r\n if (_dataFilter.length === 0) {\r\n const requestData: any = {\r\n item: array[index],\r\n checked: \"N\",\r\n };\r\n _components.splice(_components.length, 0, requestData);\r\n } else {\r\n toggleAlert({\r\n description: `Please fill in unique item`,\r\n message: `Duplicate warning.`,\r\n type: \"warning\",\r\n });\r\n }\r\n }\r\n } else {\r\n let _dataFilter = _components.filter(\r\n (e: any) => e.item.trim() === value.trim()\r\n );\r\n if (_dataFilter.length === 0) {\r\n const requestData: any = {\r\n item: value,\r\n checked: \"N\",\r\n };\r\n _components.splice(_components.length, 0, requestData);\r\n } else {\r\n toggleAlert({\r\n description: `Please fill in unique item`,\r\n message: `Duplicate warning.`,\r\n type: \"warning\",\r\n });\r\n }\r\n }\r\n props.setItemsList((prevState: any) => ({\r\n ...prevState,\r\n items: [..._components],\r\n }));\r\n setInput(\"\");\r\n }\r\n };\r\n\r\n const deleteItems = (idx: number) => {\r\n let _components = props.itemsList.items;\r\n _components.splice(idx, 1);\r\n props.setItemsList((prevState: any) => ({\r\n ...prevState,\r\n items: [..._components],\r\n }));\r\n };\r\n function deleteItemsFromDropdown(e: any) {\r\n props.setItemsList((prevState: any) => ({\r\n ...prevState,\r\n items: [...e.value],\r\n }));\r\n }\r\n\r\n function onRowReorder(e: any) {\r\n props.setItemsList((prevState: any) => ({\r\n ...prevState,\r\n items: e.value,\r\n }));\r\n }\r\n function cellEditor(options: any) {\r\n return textEditor(options);\r\n }\r\n function textEditor(options: any) {\r\n return (\r\n options.editorCallback(e.target.value)}\r\n />\r\n );\r\n }\r\n const onCellEditComplete = (e: any) => {\r\n let { rowData, newValue, field, originalEvent: event } = e;\r\n let _components = props.itemsList.items;\r\n\r\n if (rowData.item !== newValue) {\r\n let _dataFilter = _components.filter(\r\n (e: any) => e.item.trim() === newValue.trim()\r\n );\r\n if (_dataFilter.length === 0) {\r\n if (newValue.trim().length > 0) rowData[field] = newValue;\r\n else event.preventDefault();\r\n } else {\r\n toggleAlert({\r\n description: `Please fill in unique item`,\r\n message: `Duplicate warning.`,\r\n type: \"warning\",\r\n });\r\n }\r\n }\r\n };\r\n const actionBodyTemplate = (rowData: any) => {\r\n return (\r\n <>\r\n {\r\n console.log(rowData, \"rowData\");\r\n let _components = props.itemsList.items.filter(\r\n (data: any) => data.item !== rowData.item\r\n );\r\n props.setItemsList((prevState: any) => ({\r\n ...prevState,\r\n items: _components,\r\n }));\r\n }}\r\n />\r\n \r\n );\r\n };\r\n return (\r\n
\r\n
\r\n
\r\n

Label

\r\n *\r\n :\r\n
\r\n
\r\n {\r\n return (\r\n <>\r\n \r\n {fieldState?.invalid && (\r\n Label is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Alt Label:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Description:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n {props.fromRender === \"table\" && (\r\n
\r\n
\r\n

Width:

\r\n
\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n mode=\"decimal\"\r\n min={0}\r\n max={100}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n %\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n

Inline:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Required:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n setCheckBoxRequire(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Readonly:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n {/* {props.fromRender === \"table\" && ( */}\r\n
\r\n
\r\n

HideInPdf:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Is Not Copy:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n {/* )} */}\r\n {\r\n console.log(displayDropdown);\r\n }}\r\n >\r\n
\r\n

Display:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {/* {\r\n setDropdown(e.value);\r\n props.setDisplayDropdown(e.value);\r\n field.onChange(e.value);\r\n }}\r\n options={displayDropdown}\r\n value={dropdown}\r\n /> */}\r\n {displayDropdown.map((items: any, idex: number) => {\r\n return (\r\n <>\r\n {\r\n setDropdown(e.value);\r\n props.setDisplayDropdown(e.value);\r\n field.onChange(e.value);\r\n }}\r\n checked={dropdown.name === items.name}\r\n />\r\n \r\n {items.name}\r\n \r\n \r\n );\r\n })}\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Items :

\r\n

*

\r\n
\r\n
\r\n (\r\n {\r\n setInput(e.target.value);\r\n }}\r\n value={input}\r\n onKeyDown={handleKeyDown}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n

\r\n If select Required, you can add first item = --select-- for active\r\n validation\r\n

\r\n
\r\n
\r\n {props.itemsList.items.length !== 0 && (\r\n
\r\n e.check === \"Y\"\r\n )}\r\n className=\"set-css-tss\"\r\n scrollHeight=\"15.75rem\"\r\n dataKey=\"item\"\r\n selectionMode={\"checkbox\"}\r\n onSelectionChange={(e) => {\r\n try {\r\n let val = e.value.map((e: any) => e.item);\r\n\r\n const newItems = props.itemsList.items.map(\r\n (e: { item: any; check: string }) => {\r\n if (val.includes(e.item)) {\r\n e.check = \"Y\";\r\n } else {\r\n e.check = \"N\";\r\n }\r\n return e;\r\n }\r\n );\r\n props.setItemsList((prevState: any) => ({\r\n ...prevState,\r\n items: [...newItems],\r\n }));\r\n } catch (error) { }\r\n }}\r\n >\r\n \r\n cellEditor(options)}\r\n onCellEditComplete={onCellEditComplete}\r\n rowEditor\r\n header={\"Items\"}\r\n />\r\n \r\n \r\n \r\n
\r\n )}\r\n \r\n );\r\n}\r\n","import { Checkbox } from \"primereact/checkbox\";\r\nimport { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { InputNumber } from \"primereact/inputnumber\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { MultiSelect } from \"primereact/multiselect\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { BsTrash } from \"react-icons/bs\";\r\nimport { CheckboxCpmponents } from \"../../CheckboxCpmponents/CheckboxCpmponents\";\r\nimport { InputTextComponents } from \"../../InputTextComponents/InputTextComponents\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\nimport { RadioButton } from \"primereact/radiobutton\";\r\nimport { notification } from \"antd\";\r\n\r\ninterface Props {\r\n control: any;\r\n errors: any;\r\n template: any;\r\n setItemsList: any;\r\n itemsList: any;\r\n fromRender?: string;\r\n}\r\n\r\nexport default function DropdownComponent(props: Props) {\r\n const dataRequest = {\r\n label: props.template.label || \"\",\r\n alter: props.template.alter || \"\",\r\n description: props.template.description || \"\",\r\n item: props.template.attribute?.item || \"\",\r\n require: props.template.attribute?.require === \"Y\" || \"\" ? true : false,\r\n readonly: props.template.readonly === \"Y\" || \"\" ? true : false,\r\n widthInTable: parseInt(props.template.attribute?.widthInTable) || 0,\r\n hideInPdf: props.template.attribute?.hideInPdf === \"Y\" || \"\" ? true : false,\r\n isNotCopy: props.template.attribute?.isNotCopy === \"Y\" || \"\" ? true : false,\r\n default: props.template.attribute?.default,\r\n };\r\n const { toggleAlert } = useAlert();\r\n const [input, setInput] = useState(\"\");\r\n const [checkBoxRequire, setCheckBoxRequire] = useState();\r\n useEffect(() => {\r\n if (props.template.attribute?.items !== undefined) {\r\n props.setItemsList((prevState: any) => ({\r\n ...prevState,\r\n items: [...props.template.attribute.items],\r\n }));\r\n }\r\n }, []);\r\n useEffect(() => {\r\n if (\r\n checkBoxRequire === true &&\r\n props.itemsList.items[0]?.item !== \"--select--\"\r\n ) {\r\n let _components = props.itemsList.items;\r\n const requestData: any = {\r\n item: \"--select--\",\r\n checked: \"N\",\r\n };\r\n _components.splice(0, 0, requestData);\r\n props.setItemsList((prevState: any) => ({\r\n ...prevState,\r\n items: [..._components],\r\n }));\r\n }\r\n // else if (\r\n // checkBoxRequire === false &&\r\n // props.itemsList.items[0]?.item === \"--select--\"\r\n // ) {\r\n // let _components = props.itemsList.items;\r\n // _components.splice(0, 1);\r\n // props.setItemsList((prevState: any) => ({\r\n // ...prevState,\r\n // items: [..._components],\r\n // }));\r\n // }\r\n }, [checkBoxRequire]);\r\n\r\n const handleKeyDown = (event: any) => {\r\n if (event.key === \"Enter\" && event.target.value !== \"\") {\r\n let _components = props.itemsList.items;\r\n let value = event.target.value;\r\n if (value.includes(\",\")) {\r\n var array = value.split(\",\");\r\n if (array[array.length - 1] === \"\") {\r\n array.pop();\r\n }\r\n let _dataFilter;\r\n for (let index = 0; index < array.length; index++) {\r\n _dataFilter = _components.filter(\r\n (e: any) => e.item.trim() === array[index].trim()\r\n );\r\n if (_dataFilter.length === 0) {\r\n const requestData: any = {\r\n item: array[index],\r\n checked: \"N\",\r\n };\r\n _components.splice(_components.length, 0, requestData);\r\n } else {\r\n toggleAlert({\r\n description: `Please fill in unique item`,\r\n message: `Duplicate warning.`,\r\n type: \"warning\",\r\n });\r\n }\r\n }\r\n } else {\r\n let _dataFilter = _components.filter(\r\n (e: any) => e.item.trim() === value.trim()\r\n );\r\n if (_dataFilter.length === 0) {\r\n const requestData: any = {\r\n item: value,\r\n checked: \"N\",\r\n };\r\n _components.splice(_components.length, 0, requestData);\r\n } else {\r\n toggleAlert({\r\n description: `Please fill in unique item`,\r\n message: `Duplicate warning.`,\r\n type: \"warning\",\r\n });\r\n }\r\n }\r\n props.setItemsList((prevState: any) => ({\r\n ...prevState,\r\n items: [..._components],\r\n }));\r\n setInput(\"\");\r\n }\r\n };\r\n\r\n function onRowReorder(e: any) {\r\n props.setItemsList((prevState: any) => ({\r\n ...prevState,\r\n items: e.value,\r\n }));\r\n }\r\n function cellEditor(options: any) {\r\n return textEditor(options);\r\n }\r\n function textEditor(options: any) {\r\n return (\r\n options.editorCallback(e.target.value)}\r\n />\r\n );\r\n }\r\n\r\n const onCellEditComplete = (e: any) => {\r\n let { rowData, newValue, field, originalEvent: event } = e;\r\n let _components = props.itemsList.items;\r\n if (rowData.item !== newValue) {\r\n let _dataFilter = _components.filter(\r\n (e: any) => e.item.trim() === newValue.trim()\r\n );\r\n if (_dataFilter.length === 0) {\r\n if (newValue.trim().length > 0) rowData[field] = newValue;\r\n else event.preventDefault();\r\n } else {\r\n toggleAlert({\r\n description: `Please fill in unique item`,\r\n message: `Duplicate warning.`,\r\n type: \"warning\",\r\n });\r\n }\r\n }\r\n };\r\n const actionBodyTemplate = (rowData: any) => {\r\n return (\r\n <>\r\n {\r\n let _components = props.itemsList.items.filter(\r\n (data: any) => data.item !== rowData.item\r\n );\r\n props.setItemsList((prevState: any) => ({\r\n ...prevState,\r\n items: _components,\r\n }));\r\n }}\r\n />\r\n \r\n );\r\n };\r\n return (\r\n
{ }}>\r\n
\r\n
\r\n

Label

\r\n *\r\n :\r\n
\r\n
\r\n {\r\n return (\r\n <>\r\n \r\n {fieldState?.invalid && (\r\n Label is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Alt Label:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Description:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n {props.fromRender === \"table\" && (\r\n
\r\n
\r\n

Width:

\r\n
\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n mode=\"decimal\"\r\n min={0}\r\n max={100}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n %\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n

Required:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n setCheckBoxRequire(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Readonly:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n {/* {props.fromRender === \"table\" && ( */}\r\n
\r\n
\r\n

HideInPdf:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Is Not Copy:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n {/* )} */}\r\n
\r\n
\r\n

Items :

\r\n

*

\r\n
\r\n
\r\n (\r\n {\r\n setInput(e.target.value);\r\n }}\r\n value={input}\r\n onKeyDown={handleKeyDown}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n

\r\n If select Required, you can add first item = --select-- for active\r\n validation\r\n

\r\n
\r\n
\r\n {props.itemsList.items.length !== 0 && (\r\n
\r\n e.checked === \"Y\"\r\n )}\r\n dataKey=\"item\"\r\n selectionMode={\"radiobutton\"}\r\n onSelectionChange={(e) => {\r\n try {\r\n let val = e.value;\r\n\r\n const newItems = props.itemsList.items.map(\r\n (e: { item: any; checked: string }) => {\r\n if (e.item === val.item) {\r\n val.checked = val.checked === \"N\" ? \"Y\" : \"N\";\r\n e = val;\r\n } else {\r\n e.checked = \"N\";\r\n }\r\n return e;\r\n }\r\n );\r\n props.setItemsList((prevState: any) => ({\r\n ...prevState,\r\n items: [...newItems],\r\n }));\r\n } catch (error) { }\r\n }}\r\n scrollable\r\n className=\"set-css-tss\"\r\n scrollHeight=\"15.75rem\"\r\n >\r\n \r\n cellEditor(options)}\r\n onCellEditComplete={onCellEditComplete}\r\n rowEditor\r\n header={\"Items\"}\r\n />\r\n \r\n \r\n \r\n
\r\n )}\r\n
\r\n );\r\n}\r\n","import { Dialog } from \"primereact/dialog\";\r\nimport React, { useEffect, useState } from \"react\";\r\n// import \"tinymce/tinymce\";\r\n// import tinymce from \"tinymce/tinymce\";\r\n// import \"tinymce/icons/default\";\r\n// import \"tinymce/themes/silver\";\r\n// import \"tinymce/plugins/paste\";\r\n// import \"tinymce/plugins/link\";\r\n// import \"tinymce/plugins/table\";\r\n// import \"tinymce/plugins/fullscreen\";\r\n// import \"tinymce/plugins/autolink\";\r\n// import \"tinymce/plugins/autosave\";\r\n// import \"tinymce/plugins/charmap\";\r\n// import \"tinymce/plugins/image\";\r\n// import \"tinymce/plugins/imagetools\";\r\n// import \"tinymce/plugins/textpattern\";\r\n// import \"tinymce/plugins/code\";\r\n// import \"tinymce/plugins/advlist\";\r\n// import \"tinymce/plugins/lists\";\r\n// import \"tinymce/plugins/print\";\r\n// import \"tinymce/plugins/preview\";\r\n// import \"tinymce/plugins/hr\";\r\n// import \"tinymce/plugins/anchor\";\r\n// import \"tinymce/plugins/pagebreak\";\r\n// import \"tinymce/plugins/searchreplace\";\r\n// import \"tinymce/plugins/wordcount\";\r\n// import \"tinymce/plugins/insertdatetime\";\r\n// import \"tinymce/plugins/media\";\r\n// import \"tinymce/plugins/nonbreaking\";\r\n// import \"tinymce/plugins/save\";\r\n// import \"tinymce/plugins/contextmenu\";\r\n// import \"tinymce/plugins/directionality\";\r\n// import \"tinymce/plugins/template\";\r\n// import \"tinymce/plugins/textcolor\";\r\n// import \"tinymce/plugins/colorpicker\";\r\n// import \"tinymce/skins/ui/oxide/skin.min.css\";\r\n// import \"tinymce/skins/ui/oxide/content.min.css\";\r\nimport \"./TemplateModal.css\";\r\nimport { Editor } from \"@tinymce/tinymce-react\";\r\nimport { ProgressSpinner } from \"primereact/progressspinner\";\r\nimport { UploadTinyMce } from \"../../../Services/UploadFileService\";\r\nimport { IoSaveOutline } from \"react-icons/io5\";\r\nimport { BsX } from \"react-icons/bs\";\r\nimport { useUserContext } from \"../../../Context/UserContext\";\r\ninterface Props {\r\n setViewModal: any;\r\n viewModal: any;\r\n data: any;\r\n setRichText: any;\r\n}\r\n\r\nconst TemplateModal = (props: Props) => {\r\n const initialValues = {\r\n value: null,\r\n };\r\n const [loading, setLoading] = useState(true);\r\n const [contentEditor, setContentEditor] = useState(\r\n props.data?.value == null ? initialValues : props.data\r\n );\r\n const [userData, setUserData] = useUserContext();\r\n var _userData = JSON.parse(window.localStorage.getItem(\"userData\") || \"\");\r\n let _sharepointSiteURL = _userData.SharepointSiteURL;\r\n const _tinyURL = _userData.TinyURL;\r\n useEffect(() => {\r\n if (!props.data?.value) {\r\n props.setRichText(initialValues);\r\n } else {\r\n props.data.value = props.data.value\r\n .replace(/\\{/g, \"<\")\r\n .replace(/\\}/g, \">\")\r\n .replace(/\\'/g, \"\");\r\n props.setRichText((prevState: any) => ({\r\n ...prevState,\r\n value: props.data.value,\r\n }));\r\n }\r\n }, []);\r\n const handleEditorChange = (content: any, editor: any) => {\r\n setContentEditor((prevState: any) => ({\r\n ...prevState,\r\n value: content,\r\n }));\r\n props.setRichText((prevState: any) => ({\r\n ...prevState,\r\n value: content,\r\n }));\r\n };\r\n const footer = (\r\n
\r\n {\r\n props.setViewModal(false);\r\n }}\r\n className=\"hover-color-css-blue set-css-button-save-in-modal\"\r\n >\r\n Save\r\n \r\n
\r\n );\r\n\r\n return (\r\n props.setViewModal(false)}\r\n breakpoints={{ \"960px\": \"75vw\" }}\r\n blockScroll\r\n draggable={false}\r\n resizable={false}\r\n footer={footer}\r\n >\r\n
\r\n
\r\n {loading && (\r\n
\r\n \r\n
\r\n )}\r\n {\r\n setLoading(false);\r\n }}\r\n init={{\r\n // selector: \"textarea#file-picker\",\r\n statusbar: false,\r\n paste_data_images: false,\r\n menubar: false,\r\n content_css: false,\r\n // auto_focus: \"elm1\",\r\n height: 300,\r\n fullscreen_native: true,\r\n remove_script_host: false,\r\n relative_urls: false,\r\n image_title: true,\r\n automatic_uploads: true,\r\n image_sourcetab: false,\r\n image_advtab: false,\r\n plugins: [\r\n \"image code\",\r\n \"advlist autolink lists image charmap print preview hr anchor pagebreak\",\r\n \"searchreplace wordcount code fullscreen\",\r\n \"insertdatetime media nonbreaking save table contextmenu directionality\",\r\n \"emoticons template paste textcolor colorpicker textpattern imagetools image\",\r\n \"link\",\r\n ],\r\n toolbar1:\r\n \"insertfile undo redo | styleselect | fontselect | fontsizeselect | bold italic underline | forecolor backcolor | alignleft aligncenter alignright alignjustify | searchreplace | bullist numlist outdent indent | pagebreak | link table | image | fullscreen\",\r\n fontsize_formats:\r\n \"8pt 10pt 12pt 14pt 16pt 18pt 20pt 22pt 24pt 36pt\",\r\n font_formats:\r\n \"Angsana New=angsana new,times;\" +\r\n \"Arial=arial,helvetica,sans-serif;\" +\r\n \"Arial Black=arial black,avant garde;\" +\r\n \"Book Antiqua=book antiqua,palatino;\" +\r\n \"Comic Sans MS=comic sans ms,sans-serif;\" +\r\n \"Courier New=courier new,courier;\" +\r\n \"DB Sathorn X=DB Sathorn X;\" +\r\n \"Georgia=georgia,palatino;\" +\r\n \"Helvetica=helvetica;\" +\r\n \"Impact=impact,chicago;\" +\r\n \"Symbol=symbol;\" +\r\n \"Tahoma=tahoma,arial,helvetica,sans-serif;\" +\r\n \"Terminal=terminal,monaco;\" +\r\n \"Times New Roman=times new roman,times;\" +\r\n \"Trebuchet MS=trebuchet ms,geneva;\" +\r\n \"Verdana=verdana,geneva;\" +\r\n \"Webdings=webdings;\" +\r\n \"TH Sarabun=sarabun;\" +\r\n \"Leelawadee=Leelawadee;\" +\r\n \"Sukhumvit Set=Sukhumvit Set;\"+\r\n \"Wingdings=wingdings,zapf dingbats\",\r\n content_style:\r\n \"@import url('https://fonts.googleapis.com/css2?family=Sarabun&display=swap'); body { font-family: 'Sarabun', sans-serif; }\" +\r\n \"@import url('https://fonts.cdnfonts.com/css/leelawadee'); body { font-family: 'Leelawadee', sans-serif; }\",\r\n\r\n images_upload_handler: async function (\r\n blobInfo,\r\n success,\r\n failure\r\n ) {\r\n var file = new File([blobInfo.blob()], blobInfo.filename(), {\r\n lastModified: Date.now(),\r\n });\r\n const formData = new FormData();\r\n const protocol = window.location.protocol;\r\n formData.append(\"file\", file);\r\n formData.append(\"Doclib\", \"TempAttachment\");\r\n formData.append(\"docSet\", \"TinyImages\");\r\n formData.append(\"fileDesc\", \"\");\r\n formData.append(\"actorID\", userData.EmployeeId.toString());\r\n var response: any = await UploadTinyMce(formData);\r\n console.log(response, \"response\");\r\n if (response.data.result) {\r\n success(`${protocol}//` + _tinyURL + response.data.pathUrl);\r\n } else {\r\n failure(response.data.pathUrl);\r\n }\r\n },\r\n }}\r\n value={contentEditor.value == null ? \"\" : contentEditor.value}\r\n onEditorChange={handleEditorChange}\r\n />\r\n
\r\n
\r\n \r\n );\r\n};\r\n\r\nexport default TemplateModal;\r\n","import { Checkbox } from \"primereact/checkbox\";\r\nimport { InputNumber } from \"primereact/inputnumber\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { IoDocumentTextOutline } from \"react-icons/io5\";\r\nimport { CheckboxCpmponents } from \"../../CheckboxCpmponents/CheckboxCpmponents\";\r\nimport { InputTextComponents } from \"../../InputTextComponents/InputTextComponents\";\r\nimport \".././CreateControlComponents.css\";\r\nimport TemplateModal from \"./TemplateModal\";\r\nimport { notification } from \"antd\";\r\ninterface Props {\r\n control: any;\r\n errors: any;\r\n template: any;\r\n data: any;\r\n setRichText: any;\r\n}\r\n\r\nexport default function EditorComponent(props: Props) {\r\n const dataRequest = {\r\n label: props.template.label || \"\",\r\n alter: props.template.alter || \"\",\r\n description: props.template?.description,\r\n height: parseInt(props.template?.height) || 400,\r\n require: props.template.attribute?.require === \"Y\" ? true : false,\r\n readonly: props.template.attribute?.readonly === \"Y\" ? true : false,\r\n hideInPdf: props.template.attribute?.hideInPdf === \"Y\" || \"\" ? true : false,\r\n isNotCopy: props.template.attribute?.isNotCopy === \"Y\" || \"\" ? true : false,\r\n };\r\n const [viewModal, setViewModal] = useState(false);\r\n return (\r\n <>\r\n
\r\n
\r\n
\r\n

Label

\r\n *\r\n :\r\n
\r\n
\r\n {\r\n return (\r\n <>\r\n \r\n {fieldState?.invalid && (\r\n Label is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Alt Label:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Height:

\r\n
\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n Pixel\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Required:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Readonly:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n console.log(\"readonly\", e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n

HideInPdf:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Is Not Copy:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n {\r\n setViewModal(true);\r\n }}\r\n type=\"button\"\r\n className=\"set-color-css-button-template hover-color-css-282f6a\"\r\n >\r\n Template\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n );\r\n}\r\n","import { Checkbox } from \"primereact/checkbox\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { InputTextarea } from \"primereact/inputtextarea\";\r\nimport { RadioButton } from \"primereact/radiobutton\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { render } from \"react-dom\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { InputTextComponents } from \"../../InputTextComponents/InputTextComponents\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\nimport \".././CreateControlComponents.css\";\r\nimport { notification } from 'antd';\r\ninterface Props {\r\n requestData: (templates: any, itemIdx: number, layoutIdx: number) => void;\r\n control: any;\r\n errors: any;\r\n template: any;\r\n selected: any;\r\n setCheckBoxHeading: any;\r\n checkBoxHeading: any;\r\n displayCheckBox: any;\r\n}\r\nexport default function HeadingComponent(props: Props) {\r\n\r\n const dataRequest = {\r\n label: props.template.label || \"\",\r\n alter: props.template.alter || \"\",\r\n istext: props.template.istext === \"Y\" || \"\" ? true : false,\r\n textvalue: props.template.textvalue || \"\",\r\n hideInPdf: props.template.hideInPdf === \"Y\" || \"\" ? true : false,\r\n isNotCopy: props.template.isNotCopy === \"Y\" || \"\" ? true : false,\r\n };\r\n\r\n const { toggleAlert } = useAlert();\r\n\r\n return (\r\n
\r\n
\r\n
\r\n

Display:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {props.displayCheckBox.map((items: any, idex: number) => {\r\n return (\r\n <>\r\n {\r\n props.setCheckBoxHeading(e.value);\r\n field.onChange(e.value);\r\n console.log(e.value, \"sss\");\r\n }}\r\n checked={props.checkBoxHeading.name === items.name}\r\n />\r\n \r\n {items.name}\r\n \r\n \r\n );\r\n })}\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n {/*
\r\n
\r\n

Label :

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
*/}\r\n {props.checkBoxHeading.code === \"N\" && (\r\n <>\r\n
\r\n
\r\n

Label :

\r\n *\r\n
\r\n
\r\n {\r\n return (\r\n <>\r\n \r\n {fieldState?.invalid && (\r\n Label is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n\r\n
\r\n
\r\n
\r\n
\r\n

Alt Label:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n \r\n )}\r\n {props.checkBoxHeading.code === \"Y\" && (\r\n
\r\n
\r\n

Text Value

\r\n *\r\n :\r\n
\r\n
\r\n {\r\n return (\r\n <>\r\n \r\n {fieldState.invalid && (\r\n Text value is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n

HideInPdf:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Is Not Copy:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n );\r\n}","import { Checkbox } from \"primereact/checkbox\";\r\nimport { InputNumber } from \"primereact/inputnumber\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { notification } from \"antd\";\r\n\r\ninterface Props {\r\n control: any;\r\n errors: any;\r\n template: any;\r\n fromRender?: string;\r\n setValue: any;\r\n}\r\n\r\nexport default function NumberComponent(props: Props) {\r\n const [decimal, setDecimal] = useState(\r\n parseInt(props.template.attribute?.decimal) || 0\r\n );\r\n const [readonly, setReadonly] = useState(\r\n props.template.attribute?.readonly === \"Y\" ? true : false\r\n );\r\n const [summary, setSummary] = useState(\r\n props.template.attribute?.summary === \"Y\" ? true : false\r\n );\r\n const [min, setMin] = useState();\r\n\r\n const dataRequest = {\r\n label: props.template.label,\r\n alter: props.template.alter,\r\n require: props.template.attribute?.require === \"Y\" ? true : false,\r\n formula: props.template.attribute?.formula || \"\",\r\n description: props.template.attribute?.description || \"\",\r\n decimal: Number(props.template.attribute?.decimal) || 0,\r\n default: props.template.attribute?.default || \"\",\r\n align: props.template.attribute?.align === \"l\" ? true : false,\r\n min:\r\n props.template.attribute?.min !== \"\"\r\n ? Number(props.template.attribute?.min)\r\n : null,\r\n max:\r\n props.template.attribute?.max !== \"\"\r\n ? Number(props.template.attribute?.max)\r\n : null,\r\n useComma: props.template.attribute?.useComma === \"Y\" ? true : false,\r\n symbol: props.template.attribute?.symbol || \"\",\r\n symbolPosition:\r\n props.template.attribute?.symbolPosition === \"B\" ? true : false,\r\n summary: props.template.attribute?.summary === \"Y\" ? true : false,\r\n readonly: props.template.attribute?.readonly === \"Y\" ? true : false,\r\n widthInTable: Number(props.template.attribute?.widthInTable) || 0,\r\n hideInPdf: props.template.attribute?.hideInPdf === \"Y\" || \"\" ? true : false,\r\n isSummary: props.template.attribute?.isSummary === \"Y\" || \"\" ? true : false,\r\n isNotCopy: props.template.attribute?.isNotCopy === \"Y\" || \"\" ? true : false,\r\n };\r\n\r\n console.log(\"hideIn=>\", props.template.attribute?.hideInPdf);\r\n\r\n const getFormErrorMessage = (name: any) => {\r\n return (\r\n props.errors[name] && (\r\n {props.errors[name].message}\r\n )\r\n );\r\n };\r\n return (\r\n
\r\n
\r\n
\r\n

Label

\r\n *\r\n :\r\n
\r\n
\r\n {\r\n return (\r\n <>\r\n \r\n {fieldState?.invalid && (\r\n Label is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Alt Label:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Description:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n {props.fromRender === \"table\" && (\r\n
\r\n
\r\n

Width:

\r\n
\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n mode=\"decimal\"\r\n min={0}\r\n max={100}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n %\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n

Default Value:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n

Decimal:

\r\n
\r\n
\r\n (\r\n {\r\n field.onChange(e.value);\r\n setDecimal(e.value);\r\n }}\r\n min={0}\r\n max={10}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n
\r\n
\r\n {props.fromRender !== \"table\" && (\r\n
\r\n
\r\n

Formula:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n

\r\n Operators for use : Addition (+), Subtraction (-), Multiplication\r\n (*), Division (/), Function sum() Ex. : Column Label 1*Column\r\n Label 2, sum(Table Label;Column Label) *sum() Function can only\r\n put 1 column label.\r\n

\r\n
\r\n
\r\n )}\r\n\r\n
\r\n
\r\n

Min:

\r\n
\r\n
\r\n {\r\n return (\r\n {\r\n field.onChange(e.value);\r\n setMin(e.value);\r\n }}\r\n mode=\"decimal\"\r\n minFractionDigits={decimal === undefined ? 2 : decimal}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n );\r\n }}\r\n />\r\n
\r\n
\r\n

Max:

\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n mode=\"decimal\"\r\n min={min}\r\n minFractionDigits={decimal === undefined ? 2 : decimal}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Value Align Left:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Symbol:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n

Symbol Left:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Summary:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n setSummary(e.checked);\r\n // if (field) {\r\n // setReadonly(true);\r\n // props.setValue(\"readonly\", true);\r\n // }\r\n }}\r\n checked={summary}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Comma:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Required:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Readonly:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n // if (!summary) {}\r\n field.onChange(e.checked);\r\n\r\n setReadonly(e.checked);\r\n }}\r\n checked={readonly}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n {/* {props.fromRender === \"table\" && ( */}\r\n
\r\n
\r\n

HideInPdf:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Is Not Copy:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n {/* )} */}\r\n {props.fromRender === \"table\" && (\r\n
\r\n
\r\n

ShowTotal In Table:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n )}\r\n
\r\n );\r\n}\r\n","import { Dialog } from \"primereact/dialog\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { BiArchiveIn } from \"react-icons/bi\";\r\nimport { FaHeading } from \"react-icons/fa\";\r\nimport { IoSaveOutline } from \"react-icons/io5\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\nimport { Button } from \"../../Button/Button\";\r\nimport \"./RevisionComponent.css\";\r\ninterface Props {\r\n setViewModal: any;\r\n viewModal: any;\r\n advanceForm: any;\r\n setAdvanceForm: any;\r\n setRevisionConditions: any;\r\n revisionConditions: any;\r\n conditionsIdx: any;\r\n checkAction: any;\r\n}\r\n\r\nexport default function AddConditionModal(props: Props) {\r\n const toast = useRef(null);\r\n const { toggleAlert } = useAlert();\r\n const [selectedFormName, setSelectedFormName] = useState();\r\n const [defaultValue, setDefaultValue] = useState([]);\r\n const [selected, setSelected] = useState(\"\");\r\n\r\n useEffect(() => {\r\n if (props.checkAction == \"edit\") {\r\n setSelectedFormName({\r\n item: props.revisionConditions.conditions[props.conditionsIdx]?.label,\r\n });\r\n }\r\n }, []);\r\n useEffect(() => {\r\n if (props.advanceForm.items?.length >= 1) {\r\n let array: any = [];\r\n props.advanceForm.items.map((_data: any, index: number) => {\r\n _data.layout.map((_dataLayout: any, index: number) => {\r\n if (_dataLayout.template.label != undefined) {\r\n if (\r\n _dataLayout.template.type === \"t\" ||\r\n _dataLayout.template.type === \"an\"\r\n ) {\r\n array.push({\r\n item: _dataLayout.template.label,\r\n });\r\n }\r\n }\r\n });\r\n });\r\n setDefaultValue([...array]);\r\n }\r\n }, []);\r\n function saveConditions() {\r\n if (selectedFormName == undefined) {\r\n toggleAlert({\r\n description: `Please fill in all required fields.`,\r\n message: `Require field warning.`,\r\n type: \"warning\",\r\n });\r\n return;\r\n }\r\n if (props.checkAction === \"add\") {\r\n const newConditions: any = {\r\n label: selectedFormName.item,\r\n boxid: \"\",\r\n controltype: \"AdvanceForm\",\r\n };\r\n let _conditions = props.revisionConditions.conditions;\r\n _conditions.push(newConditions);\r\n props.setRevisionConditions((prevState: any) => ({\r\n ...prevState,\r\n conditions: [..._conditions],\r\n }));\r\n } else if (props.checkAction === \"edit\") {\r\n const newConditions: any = {\r\n label: selectedFormName.item,\r\n boxid: \"\",\r\n controltype: \"AdvanceForm\",\r\n };\r\n let _conditions = props.revisionConditions.conditions;\r\n _conditions[props.conditionsIdx] = newConditions;\r\n props.setRevisionConditions((prevState: any) => ({\r\n ...prevState,\r\n conditions: [..._conditions],\r\n }));\r\n }\r\n\r\n props.setViewModal(false);\r\n }\r\n const footer = (\r\n
\r\n {\r\n saveConditions();\r\n }}\r\n className=\"hover-color-css-blue set-css-button-save-in-modal\"\r\n >\r\n Save\r\n \r\n
\r\n );\r\n const onSelectedChange = (e: { value: any }) => {\r\n setSelectedFormName(e.value);\r\n };\r\n return (\r\n <>\r\n props.setViewModal(false)}\r\n breakpoints={{ \"960px\": \"75vw\" }}\r\n blockScroll\r\n draggable={false}\r\n resizable={false}\r\n footer={footer}\r\n >\r\n
\r\n
\r\n
\r\n setSelected(e)}\r\n title={\"Advance Form\"}\r\n icon={}\r\n page={0}\r\n curPage={selected}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

FormName :

\r\n

*

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n );\r\n}\r\n","import { Checkbox } from \"primereact/checkbox\";\r\nimport { InputNumber } from \"primereact/inputnumber\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { render } from \"react-dom\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { BsX } from \"react-icons/bs\";\r\nimport { HiPlus } from \"react-icons/hi\";\r\nimport AddConditionModal from \"./AddConditionModal\";\r\nimport \"./RevisionComponent.css\";\r\nimport { notification } from 'antd';\r\n\r\ninterface Props {\r\n control: any;\r\n errors: any;\r\n template: any;\r\n advanceForm: any;\r\n setAdvanceForm: any;\r\n revisionConditions: any;\r\n setRevisionConditions: any;\r\n}\r\n\r\nexport default function RevisionComponent(props: Props) {\r\n const dataRequest = {\r\n label: props.template.label || \"\",\r\n alter: props.template.alter || \"\",\r\n digit: parseInt(props.template.attribute?.digit) || 0,\r\n readonly: props.template.attribute?.readonly === \"Y\" || \"\" ? true : false,\r\n hideInPdf: props.template.attribute?.hideInPdf === \"Y\" || \"\" ? true : false,\r\n isNotCopy: props.template.attribute?.isNotCopy === \"Y\" || \"\" ? true : false,\r\n };\r\n const [viewModal, setViewModal] = useState(false);\r\n const [conditionsIdx, setConditionsIdx] = useState();\r\n const [checkAction, setCheckAction] = useState(\"\");\r\n\r\n function deleteCondition(idx: number) {\r\n let _conditions = props.revisionConditions.conditions;\r\n _conditions.splice(idx, 1);\r\n props.setRevisionConditions((prevState: any) => ({\r\n ...prevState,\r\n conditions: [..._conditions],\r\n }));\r\n }\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n
\r\n

Label

\r\n *\r\n :\r\n
\r\n
\r\n {\r\n return (\r\n <>\r\n \r\n {fieldState?.invalid && (\r\n Label is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Alt Label:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Digit :

\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n mode=\"decimal\"\r\n min={0}\r\n max={100}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Readonly:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

HideInPdf:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Is Not Copy:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {\r\n setViewModal(true);\r\n setCheckAction(\"add\");\r\n }}\r\n type=\"button\"\r\n className=\"set-color-css-button-add-column hover-color-css-282f6a\"\r\n >\r\n Add Condition\r\n \r\n
\r\n
\r\n
\r\n {props.revisionConditions.conditions.length >= 1 ? (\r\n <>\r\n
\r\n
\r\n {props.revisionConditions.conditions.map(\r\n (_data: any, idx: number) => (\r\n
\r\n {\r\n setConditionsIdx(idx);\r\n setViewModal(true);\r\n setCheckAction(\"edit\");\r\n }}\r\n >\r\n {`[${idx + 1\r\n }]`}\r\n \r\n {_data.label}\r\n \r\n
\r\n
\r\n \r\n {\r\n deleteCondition(idx);\r\n }}\r\n />\r\n \r\n
\r\n
\r\n )\r\n )}\r\n
\r\n
\r\n \r\n ) : (\r\n \"\"\r\n )}\r\n \r\n {viewModal && (\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { Checkbox } from \"primereact/checkbox\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect } from \"react\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { CheckboxCpmponents } from \"../../CheckboxCpmponents/CheckboxCpmponents\";\r\nimport { InputTextComponents } from \"../../InputTextComponents/InputTextComponents\";\r\nimport { InputNumber } from \"primereact/inputnumber\";\r\nimport { notification } from \"antd\";\r\ninterface Props {\r\n control: any;\r\n errors: any;\r\n template: any;\r\n fromRender?: any;\r\n}\r\n\r\nexport default function ShortTextComponent(props: Props) {\r\n const dataRequest = {\r\n label: props.template.label || \"\",\r\n alter: props.template.alter || \"\",\r\n description: props.template.attribute?.description || \"\",\r\n default: props.template.attribute?.default || \"\",\r\n length: parseInt(props.template.attribute?.length) || 0,\r\n require: props.template.attribute?.require === \"Y\" || \"\" ? true : false,\r\n readonly: props.template.attribute?.readonly === \"Y\" || \"\" ? true : false,\r\n widthInTable: parseInt(props.template.attribute?.widthInTable) || 0,\r\n hideInPdf: props.template.attribute?.hideInPdf === \"Y\" || \"\" ? true : false,\r\n isNotCopy: props.template.attribute?.isNotCopy === \"Y\" || \"\" ? true : false,\r\n };\r\n\r\n return (\r\n
\r\n
\r\n
\r\n

Label

\r\n *\r\n :\r\n
\r\n
\r\n {\r\n \r\n return (\r\n <>\r\n \r\n {fieldState?.invalid && (\r\n Label is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Alt Label:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Description:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Default Value:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Max Length:

\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n mode=\"decimal\"\r\n min={0}\r\n max={5000}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n
\r\n
\r\n {props.fromRender === \"table\" && (\r\n
\r\n
\r\n

Width:

\r\n
\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n mode=\"decimal\"\r\n min={0}\r\n max={100}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n %\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n

Required:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Readonly:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n {/* {props.fromRender === \"table\" && ( */}\r\n
\r\n
\r\n

HideInPdf:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Is Not Copy:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n {/* )} */}\r\n
\r\n );\r\n}\r\n","import React, { useEffect } from \"react\";\r\nimport { Button } from \"../../../components/Button/Button\";\r\nimport { FaHeading, FaRegImage, FaRegListAlt } from \"react-icons/fa\";\r\nimport { BiText, BiTimeFive } from \"react-icons/bi\";\r\nimport { ImTextHeight } from \"react-icons/im\";\r\nimport { AiOutlineNumber } from \"react-icons/ai\";\r\nimport { FiCalendar } from \"react-icons/fi\";\r\nimport { IoMdRadioButtonOn } from \"react-icons/io\";\r\nimport { MdOutlineCheckBox } from \"react-icons/md\";\r\nimport { CgPlayButtonO } from \"react-icons/cg\";\r\nimport {\r\n BsFileEarmarkRichtext,\r\n BsSortNumericDown,\r\n BsTable,\r\n} from \"react-icons/bs\";\r\nimport { GrAttachment } from \"react-icons/gr\";\r\n\r\ninterface Props {\r\n curPage: any;\r\n onSelectView: (text: string) => void;\r\n layoutLength?: any;\r\n renderIn?: string;\r\n}\r\n\r\nexport default function CreateControlSideBarElement(props: Props) {\r\n const SideBarData = [\r\n {\r\n component: (\r\n <>\r\n {props.layoutLength === 1 && (\r\n props.onSelectView(e)}\r\n title={\"Heading\"}\r\n icon={}\r\n page={1}\r\n curPage={props.curPage}\r\n />\r\n )}\r\n \r\n ),\r\n },\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"ShortText\"}\r\n icon={}\r\n page={2}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"MultiLine\"}\r\n icon={}\r\n page={3}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Number\"}\r\n icon={}\r\n page={4}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Calendar\"}\r\n icon={}\r\n page={5}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Choice\"}\r\n icon={}\r\n page={6}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"MultiChoice\"}\r\n icon={}\r\n page={7}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Dropdown\"}\r\n icon={}\r\n page={8}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n {\r\n component: (\r\n <>\r\n {props.layoutLength === 1 && (\r\n props.onSelectView(e)}\r\n title={\"Table\"}\r\n icon={}\r\n page={9}\r\n curPage={props.curPage}\r\n />\r\n )}\r\n \r\n ),\r\n },\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"RichText\"}\r\n icon={}\r\n page={10}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Attachment\"}\r\n icon={}\r\n page={11}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Image\"}\r\n icon={}\r\n page={12}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n {\r\n component: (\r\n <>\r\n {/* {props.layoutLength === 2 && ( */}\r\n props.onSelectView(e)}\r\n title={\"Button\"}\r\n icon={}\r\n page={13}\r\n curPage={props.curPage}\r\n />\r\n {/* )} */}\r\n \r\n ),\r\n },\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Auto Number\"}\r\n icon={}\r\n page={14}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Revision\"}\r\n icon={}\r\n page={15}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n ];\r\n\r\n const SideBarDataInColumn = [\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"ShortText\"}\r\n icon={}\r\n page={1}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"MultiLine\"}\r\n icon={}\r\n page={2}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Number\"}\r\n icon={}\r\n page={3}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Calendar\"}\r\n icon={}\r\n page={4}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Choice\"}\r\n icon={}\r\n page={5}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"MultiChoice\"}\r\n icon={}\r\n page={6}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Dropdown\"}\r\n icon={}\r\n page={7}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n\r\n {\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Attachment\"}\r\n icon={}\r\n page={8}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n },\r\n ];\r\n return (\r\n <>\r\n {props.renderIn === \"control\" && (\r\n {\r\n console.log(SideBarData, \"SideBarData\");\r\n }}\r\n >\r\n {SideBarData.map((data, idx) => {\r\n if (\r\n data?.component?.props?.title ||\r\n data?.component?.props?.children?.props?.title\r\n ) {\r\n return (\r\n <>\r\n
{data.component}
\r\n \r\n );\r\n }\r\n })}\r\n \r\n )}\r\n {props.renderIn === \"column\" && (\r\n \r\n {SideBarDataInColumn.map((data, idx) => {\r\n if (\r\n data?.component?.props?.title ||\r\n data?.component?.props?.children?.props?.title\r\n ) {\r\n return (\r\n <>\r\n
{data.component}
\r\n \r\n );\r\n }\r\n })}\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { Checkbox } from \"primereact/checkbox\";\r\nimport { InputNumber } from \"primereact/inputnumber\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { InputTextarea } from \"primereact/inputtextarea\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect } from \"react\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { CheckboxCpmponents } from \"../../CheckboxCpmponents/CheckboxCpmponents\";\r\nimport { InputTextComponents } from \"../../InputTextComponents/InputTextComponents\";\r\nimport \".././CreateControlComponents.css\";\r\nimport { notification } from \"antd\";\r\ninterface Props {\r\n control: any;\r\n errors: any;\r\n template: any;\r\n fromRender?: string;\r\n}\r\n\r\nexport default function TextAreaComponent(props: Props) {\r\n const dataRequest = {\r\n label: props.template.label || \"\",\r\n alter: props.template.alter || \"\",\r\n description: props.template.attribute?.description || \"\",\r\n default: props.template.attribute?.default || \"\",\r\n length: parseInt(props.template.attribute?.length) || 0,\r\n require: props.template.attribute?.require === \"Y\" || \"\" ? true : false,\r\n readonly: props.template.attribute?.readonly === \"Y\" || \"\" ? true : false,\r\n widthInTable: parseInt(props.template.attribute?.widthInTable) || 0,\r\n hideInPdf: props.template.attribute?.hideInPdf === \"Y\" || \"\" ? true : false,\r\n isNotCopy: props.template.attribute?.isNotCopy === \"Y\" || \"\" ? true : false,\r\n };\r\n\r\n const getFormErrorMessage = (name: any) => {\r\n return (\r\n props.errors[name] && (\r\n {props.errors[name].message}\r\n )\r\n );\r\n };\r\n\r\n return (\r\n
\r\n
\r\n
\r\n

Label

\r\n *\r\n :\r\n
\r\n
\r\n {\r\n return (\r\n <>\r\n \r\n {fieldState?.invalid && (\r\n Label is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Alt Label:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Description:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Default Value:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Max Length:

\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n mode=\"decimal\"\r\n min={0}\r\n max={5000}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n
\r\n
\r\n {props.fromRender === \"table\" && (\r\n
\r\n
\r\n

Width:

\r\n
\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n mode=\"decimal\"\r\n min={0}\r\n max={100}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n %\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n

Required:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Readonly:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n {/* {props.fromRender === \"table\" && ( */}\r\n
\r\n
\r\n

HideInPdf:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Is Not Copy:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n Yes\r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n {/* )} */}\r\n
\r\n );\r\n}\r\n","import { Dialog } from \"primereact/dialog\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { useForm } from \"react-hook-form\";\r\nimport { BsX } from \"react-icons/bs\";\r\nimport { IoSaveOutline } from \"react-icons/io5\";\r\nimport { generateQuickGuid } from \"../../../Helper/GenerateGuid\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\nimport AttachmentComponent from \"../AttachmentComponent/AttachmentComponent\";\r\nimport CalendarComponent from \"../CalendarComponent/CalendarComponent\";\r\nimport ChoiceComponent from \"../ChoiceComponent/ChoiceComponent\";\r\nimport DropdownComponent from \"../DropdownComponent/DropdownComponent\";\r\nimport CreateControlSideBarElement from \"../ModalCreateComponents/CreateControlSideBarElement\";\r\nimport MultiChoiceComponent from \"../MultiChoiceComponent/MultiChoiceComponent\";\r\nimport NumberComponent from \"../NumberComponent/NumberComponent\";\r\nimport ShortTextComponent from \"../ShortTextComponent/ShortTextComponent\";\r\nimport TextAreaComponent from \"../TextAreaComponent/TextAreaComponent\";\r\nimport \"./TableCreateComponents.css\";\r\ninterface Props {\r\n setViewModal: any;\r\n viewModal: any;\r\n attributeColumn: any;\r\n setAttributeColumn: any;\r\n setFromRender: any;\r\n fromRender: string;\r\n layoutIdx: any;\r\n action: any;\r\n setUploadFileState: any;\r\n uploadFileState: any;\r\n userData: any;\r\n}\r\n\r\nexport default function ColumnComponent(props: Props) {\r\n const column: any = [\r\n {\r\n label: {},\r\n alter: null,\r\n control: {},\r\n data: {\r\n value: null,\r\n },\r\n },\r\n ];\r\n const { toggleAlert } = useAlert();\r\n const toast = useRef(null);\r\n const [selected, setSelected] = useState(\"\");\r\n const [component, setComponent] = useState();\r\n const [itemsList, setItemsList] = useState({ items: [] });\r\n const [displayDropdown, setDisplayDropdown] = useState();\r\n const {\r\n control: control2,\r\n formState: { errors: errors2 },\r\n getValues,\r\n setValue,\r\n handleSubmit: handleSubmit2,\r\n } = useForm({\r\n mode: \"onBlur\",\r\n });\r\n useEffect(() => {\r\n setSelected(\"1\");\r\n props.setFromRender(\"table\");\r\n checkType();\r\n }, []);\r\n\r\n useEffect(() => {\r\n\r\n renderComponent();\r\n }, [selected, itemsList]);\r\n\r\n const checkType = () => {\r\n if (props.action === \"edit\") {\r\n let _column = props.attributeColumn.column[props.layoutIdx];\r\n checkActionButton(_column.control.template.type);\r\n }\r\n };\r\n const checkActionButton = (dataType: any) => {\r\n if (dataType === \"t\") {\r\n setSelected(\"1\");\r\n } else if (dataType === \"ta\") {\r\n setSelected(\"2\");\r\n } else if (dataType === \"c\") {\r\n setSelected(\"3\");\r\n } else if (dataType === \"d\") {\r\n setSelected(\"4\");\r\n } else if (dataType === \"r\") {\r\n setSelected(\"5\");\r\n } else if (dataType === \"cb\") {\r\n setSelected(\"6\");\r\n } else if (dataType === \"dd\") {\r\n setSelected(\"7\");\r\n } else if (dataType === \"at\") {\r\n setSelected(\"8\");\r\n } else {\r\n setSelected(\"1\");\r\n }\r\n };\r\n const requestData = (columnData: any, columnIdx?: number) => {\r\n let _column = props.attributeColumn.column;\r\n if (props.action === \"add\") {\r\n _column.push(columnData);\r\n } else if (props.action === \"edit\") {\r\n _column[props.layoutIdx] = columnData;\r\n }\r\n props.setAttributeColumn((prevState: any) => ({\r\n ...prevState,\r\n column: [..._column],\r\n }));\r\n props.setFromRender(\"control\");\r\n };\r\n\r\n const updateChanges2 = (data: any) => {\r\n if (itemsList.items.length === 0) {\r\n if (selected === \"5\" || selected === \"6\" || selected === \"7\") {\r\n toggleAlert({\r\n description: `Please fill in all required fields.`,\r\n message: `Require field warning.`,\r\n type: \"warning\",\r\n });\r\n return;\r\n }\r\n }\r\n if (selected === \"1\") {\r\n const dataRequest = {\r\n guid: generateQuickGuid(),\r\n label: data.label,\r\n alter: data.alter,\r\n control: {\r\n template: {\r\n type: \"t\",\r\n label: data.label,\r\n alter: data.alter,\r\n attribute: {\r\n description: data.description,\r\n default: data.default,\r\n length: data.length?.toString() || \"0\",\r\n require: data.require ? \"Y\" : \"N\",\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n widthInTable: data.widthInTable?.toString() || \"0\",\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n },\r\n },\r\n data: {\r\n value: null,\r\n },\r\n },\r\n };\r\n requestData(dataRequest);\r\n } else if (selected === \"2\") {\r\n const dataRequest = {\r\n guid: generateQuickGuid(),\r\n label: data.label,\r\n alter: data.alter,\r\n control: {\r\n template: {\r\n type: \"ta\",\r\n label: data.label,\r\n alter: data.alter,\r\n attribute: {\r\n description: data.description,\r\n default: data.default,\r\n length: data.length.toString(),\r\n require: data.require ? \"Y\" : \"N\",\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n widthInTable: data.widthInTable.toString(),\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n },\r\n },\r\n data: {\r\n value: null,\r\n },\r\n },\r\n };\r\n requestData(dataRequest);\r\n } else if (selected === \"3\") {\r\n console.log(data);\r\n\r\n const dataRequest = {\r\n guid: generateQuickGuid(),\r\n label: data.label,\r\n alter: data.alter,\r\n control: {\r\n template: {\r\n type: \"c\",\r\n label: data.label,\r\n alter: data.alter,\r\n attribute: {\r\n require: data.require ? \"Y\" : \"N\",\r\n formula: data.formula,\r\n description: data.description,\r\n decimal: data.decimal?.toString(),\r\n default: data.default,\r\n align: data.align ? \"l\" : \"r\",\r\n min: data.min?.toString(),\r\n max: data.max?.toString(),\r\n useComma: data.useComma ? \"Y\" : \"N\",\r\n symbol: data.symbolNumber,\r\n symbolPosition: data.symbolPosition ? \"B\" : \"E\",\r\n summary: data.summary ? \"Y\" : \"N\",\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n widthInTable: data.widthInTable.toString(),\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isSummary: data.isSummary ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n },\r\n },\r\n data: {\r\n value: null,\r\n },\r\n },\r\n };\r\n requestData(dataRequest);\r\n } else if (selected === \"4\") {\r\n const dataRequest = {\r\n guid: generateQuickGuid(),\r\n label: data.label,\r\n alter: data.alter,\r\n control: {\r\n template: {\r\n type: \"d\",\r\n label: data.label,\r\n alter: data.alter,\r\n attribute: {\r\n description: data.description,\r\n default: data.default,\r\n defaultType: data.defaultType,\r\n require: data.require ? \"Y\" : \"N\",\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n widthInTable: data.widthInTable.toString(),\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n date: {\r\n use: \"Y\",\r\n useDate: \"Y\",\r\n fullYear: \"Y\",\r\n symbol: data.symbol,\r\n },\r\n time: {\r\n use: \"N\",\r\n useSecond: \"N\",\r\n symbol: \":\",\r\n },\r\n },\r\n },\r\n data: {\r\n value: null,\r\n },\r\n },\r\n };\r\n requestData(dataRequest);\r\n } else if (selected === \"5\") {\r\n const dataRequest = {\r\n guid: generateQuickGuid(),\r\n label: data.label,\r\n alter: data.alter,\r\n control: {\r\n template: {\r\n type: \"r\",\r\n label: data.label,\r\n alter: data.alter,\r\n attribute: {\r\n description: data.description,\r\n require: data.require ? \"Y\" : \"N\",\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n multipleLine: data.multipleLine ? \"Y\" : \"N\",\r\n widthInTable: data.widthInTable.toString(),\r\n items: itemsList.items,\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n },\r\n },\r\n data: {\r\n value: null,\r\n },\r\n },\r\n };\r\n requestData(dataRequest);\r\n } else if (selected === \"6\") {\r\n const dataRequest = {\r\n guid: generateQuickGuid(),\r\n label: data.label,\r\n alter: data.alter,\r\n control: {\r\n template: {\r\n type: \"cb\",\r\n label: data.label,\r\n alter: data.alter,\r\n attribute: {\r\n description: data.description,\r\n require: data.require ? \"Y\" : \"N\",\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n multipleLine: data.multipleLine ? \"Y\" : \"N\",\r\n display: displayDropdown?.code,\r\n widthInTable: data.widthInTable.toString(),\r\n items: itemsList.items,\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n },\r\n },\r\n data: {\r\n value: {\r\n items: [],\r\n },\r\n },\r\n },\r\n };\r\n requestData(dataRequest);\r\n } else if (selected === \"7\") {\r\n const dataRequest = {\r\n guid: generateQuickGuid(),\r\n label: data.label,\r\n alter: data.alter,\r\n control: {\r\n template: {\r\n type: \"dd\",\r\n label: data.label,\r\n alter: data.alter,\r\n description: data.description,\r\n attribute: {\r\n require: data.require ? \"Y\" : \"N\",\r\n items: itemsList.items,\r\n widthInTable: data.widthInTable.toString(),\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n },\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n },\r\n data: {\r\n value: null,\r\n },\r\n },\r\n };\r\n requestData(dataRequest);\r\n } else if (selected === \"8\") {\r\n console.log(data);\r\n\r\n const dataRequest = {\r\n guid: generateQuickGuid(),\r\n label: data.label,\r\n alter: data.alter,\r\n control: {\r\n template: {\r\n type: \"at\",\r\n label: data.label,\r\n alter: data.alter,\r\n description: data.fileTypeFile,\r\n attribute: {\r\n require: data.require ? \"Y\" : \"N\",\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n max: data.maxFile.toString(),\r\n widthInTable: data.widthInTable.toString(),\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n default: data.defaultValueImage,\r\n },\r\n },\r\n data: {\r\n value: null,\r\n },\r\n },\r\n };\r\n requestData(dataRequest);\r\n }\r\n\r\n props.setViewModal(false);\r\n };\r\n\r\n const renderComponent = () => {\r\n let _column: any;\r\n if (props.action === \"add\") {\r\n _column = props.attributeColumn;\r\n } else if (props.action === \"edit\") {\r\n let respone = props.attributeColumn.column[props.layoutIdx];\r\n _column = {\r\n label: respone?.label,\r\n alter: respone?.alter,\r\n description: respone?.control?.template?.description,\r\n attribute: {\r\n description: respone?.control?.template?.attribute?.description,\r\n default: respone?.control?.template?.attribute?.default,\r\n length: Number(respone?.control?.template?.attribute?.length),\r\n require: respone?.control?.template?.attribute?.require,\r\n readonly: respone?.control?.template?.attribute?.readonly,\r\n min: Number(respone?.control?.template?.attribute?.min),\r\n max: Number(respone?.control?.template?.attribute?.max),\r\n useComma: respone?.control?.template?.attribute?.useComma,\r\n symbol: respone?.control?.template?.attribute?.symbol,\r\n symbolPosition: respone?.control?.template?.attribute?.symbolPosition,\r\n summary: respone?.control?.template?.attribute?.summary,\r\n decimal: Number(respone?.control?.template?.attribute?.decimal),\r\n formula: respone?.control?.template?.attribute?.formula,\r\n align: respone?.control?.template?.attribute?.align,\r\n defaultType: respone?.control?.template?.attribute?.defaultType,\r\n multipleLine: respone?.control?.template?.attribute?.multipleLine,\r\n date: {\r\n symbol: respone?.control?.template?.attribute?.date?.symbol,\r\n },\r\n items: [...(respone?.control?.template?.attribute?.items || \"\")],\r\n display: respone?.control?.template?.attribute?.display,\r\n widthInTable: Number(\r\n respone?.control?.template?.attribute?.widthInTable\r\n ),\r\n hideInPdf: respone?.control?.template?.attribute?.hideInPdf,\r\n isSummary: respone?.control?.template?.attribute?.isSummary,\r\n isNotCopy: respone?.control?.template?.attribute?.isNotCopy,\r\n },\r\n };\r\n }\r\n if (selected === \"1\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"2\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"3\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"4\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"5\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"6\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"7\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"8\") {\r\n setComponent(\r\n \r\n );\r\n }\r\n };\r\n\r\n const handleKeyDown = (event: any, callback: any) => {\r\n if (event.key === \"Enter\" && event.shiftKey === false) {\r\n event.preventDefault();\r\n callback(handleSubmit2);\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n {\r\n props.setFromRender(\"control\");\r\n props.setViewModal(false);\r\n }}\r\n breakpoints={{ \"960px\": \"75vw\" }}\r\n blockScroll\r\n draggable={false}\r\n resizable={false}\r\n >\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n {\r\n handleKeyDown(e, handleSubmit2);\r\n }}\r\n >\r\n {component}\r\n
\r\n {\r\n props.setFromRender(\"control\");\r\n props.setViewModal(false);\r\n }}\r\n type=\"button\"\r\n >\r\n \r\n Cancel\r\n \r\n\r\n \r\n Save\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n );\r\n}\r\n","import { Spin } from \"antd\";\r\nimport { Checkbox } from \"primereact/checkbox\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { MultiSelect } from \"primereact/multiselect\";\r\nimport { RadioButton } from \"primereact/radiobutton\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { BsTrash } from \"react-icons/bs\";\r\nimport { HiPlus } from \"react-icons/hi\";\r\nimport { ReportTemplateSelectByReportID } from \"../../../Services/ReportService\";\r\nimport {\r\n GetAllByCreateTemplate,\r\n GetAllTemplate,\r\n GetTemplateByDocTypeCode,\r\n GetTemplateByIdDto,\r\n ReportTemplateList,\r\n} from \"../../../Services/TemplateService\";\r\nimport \"./TableCreateComponents.css\";\r\nimport { data } from \"jquery\";\r\n\r\ninterface Props {\r\n attributeColumn: any;\r\n setAttributeColumn: any;\r\n setMergeColumnRefDoc: any;\r\n mergeColumnRefDoc: any;\r\n control: any;\r\n template: any;\r\n setDocDataSource: any;\r\n docDataSource: any;\r\n setSelectedReportRef: any;\r\n selectedReportRef: any;\r\n setSelectedTemplateRef: any;\r\n selectedTemplateRef: any;\r\n setConditions: any;\r\n conditions: any;\r\n advanceForm: any;\r\n setSelectedDocControlTemplate: any;\r\n selectedDocControlTemplate: any;\r\n setDefaultConfigColumn: any;\r\n defaultConfigColumn: any;\r\n}\r\n\r\nexport default function ReferenceDocument(props: Props) {\r\n const [loading, setLoading] = useState(true);\r\n const [visibleDocControl, setVisibleDocControl] = useState(false);\r\n const dataRequest = {\r\n enabledpopupdefdoc:\r\n props.template.attribute?.enabledpopupdefdoc === \"Y\" ? true : false,\r\n doccontrol:\r\n props.template.attribute?.refdoc?.doccontrol === true ? true : false,\r\n };\r\n\r\n const itemsType = [{ name: \"Template\" }, { name: \"Report\" }];\r\n\r\n const itemsControlLabel = [\r\n { RefDocLabel: \"Document No\", value: \"DocumentNo\" },\r\n { RefDocLabel: \"Document Amount\", value: \"DocumentAmount\" },\r\n { RefDocLabel: \"Creator Employee Code\", value: \"CreatorEmployeeCode\" },\r\n { RefDocLabel: \"Creator Employee Name\", value: \"CreatorEmployeeName\" },\r\n {\r\n RefDocLabel: \"Creator Employee Position\",\r\n value: \"CreatorEmployeePosition\",\r\n },\r\n {\r\n RefDocLabel: \"Creator Employee Division\",\r\n value: \"CreatorEmployeeDivision\",\r\n },\r\n {\r\n RefDocLabel: \"Creator Employee Department\",\r\n value: \"CreatorEmployeeDepartment\",\r\n },\r\n { RefDocLabel: \"Creator Employee Email\", value: \"CreatorEmployeeEmail\" },\r\n {\r\n RefDocLabel: \"Requestor Employee Code\",\r\n value: \"RequestorEmployeeCode\",\r\n },\r\n {\r\n RefDocLabel: \"Requestor Employee Name\",\r\n value: \"RequestorEmployeeName\",\r\n },\r\n {\r\n RefDocLabel: \"Requestor Employee Position\",\r\n value: \"RequestorEmployeePosition\",\r\n },\r\n {\r\n RefDocLabel: \"Requestor Employee Division\",\r\n value: \"RequestorEmployeeDivision\",\r\n },\r\n {\r\n RefDocLabel: \"Requestor Employee Department\",\r\n value: \"RequestorEmployeeDepartment\",\r\n },\r\n {\r\n RefDocLabel: \"Requestor Employee Email\",\r\n value: \"RequestorEmployeeEmail\",\r\n },\r\n {\r\n RefDocLabel: \"Information Document Status\",\r\n value: \"InformationDocumentStatus\",\r\n },\r\n {\r\n RefDocLabel: \"Information Form Category\",\r\n value: \"InformationFormCategory\",\r\n },\r\n { RefDocLabel: \"Information Form Name\", value: \"InformationFormName\" },\r\n {\r\n RefDocLabel: \"Information RequestDate\",\r\n value: \"InformationRequestDate\",\r\n },\r\n { RefDocLabel: \"Information Company\", value: \"InformationCompany\" },\r\n { RefDocLabel: \"Information Branch\", value: \"InformationBranch\" },\r\n { RefDocLabel: \"Information Subject\", value: \"InformationSubject\" },\r\n { RefDocLabel: \"Information Project\", value: \"InformationProject\" },\r\n ];\r\n\r\n const itemsConditionList = [\r\n { name: \"ใต้สังกัด\", value: \"under\" },\r\n { name: \"ค่าคงที่\", value: \"fixed value\" },\r\n ];\r\n\r\n const conditionRefDoc: any = {\r\n label: \"\",\r\n conditionType: \"under\",\r\n value: \"\",\r\n };\r\n const [defaultValueRefDoc, setDefaultValueRefDoc] = useState();\r\n const [defaultValueRefDoc2, setDefaultValueRefDoc2] = useState();\r\n\r\n const [defaultValueReport, setDefaultValueReport] = useState([]);\r\n const [checkAction, setCheckAction] = useState();\r\n const [actionSubmit, setActionSubmit] = useState();\r\n const [defaultValue, setDefaultValue] = useState([]);\r\n const isFirstRun = useRef(true);\r\n useEffect(() => {\r\n if (props.advanceForm.items?.length >= 1) {\r\n let array: any = [];\r\n props.advanceForm.items.map((_data: any, index: number) => {\r\n _data.layout.map((_dataLayout: any, index: number) => {\r\n if (_dataLayout.template.label != undefined) {\r\n {\r\n array.push({\r\n item: _dataLayout.template.label,\r\n value: _dataLayout.template.label,\r\n });\r\n }\r\n }\r\n });\r\n });\r\n setDefaultValue([...array]);\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n async function fetchMyAPI() {\r\n setLoading(true);\r\n await fetchDataTemplate();\r\n await defaultValueDropDown();\r\n await defaultValueDocControl();\r\n setLoading(false);\r\n }\r\n fetchMyAPI();\r\n }, []);\r\n function defaultValueDocControl() {\r\n if (dataRequest.doccontrol) {\r\n setVisibleDocControl(true);\r\n }\r\n }\r\n function defaultValueDropDown() {\r\n if (props?.mergeColumnRefDoc?.columnRefDoc?.length >= 1) {\r\n let array: any = [];\r\n let array2: any = [];\r\n props.attributeColumn.column.map((_data: any, idx: any) => {\r\n array.push({\r\n ColumnLabel: _data.label,\r\n });\r\n });\r\n props?.mergeColumnRefDoc?.columnRefDoc.map((_data: any, idx: any) => {\r\n array2.push({\r\n HaveLink: _data.HaveLink ? _data.HaveLink : false,\r\n RefDocLabel: _data.RefDocLabel,\r\n });\r\n });\r\n let arr3 = array.map((item: any, i: number) =>\r\n Object.assign({}, item, array2[i])\r\n );\r\n\r\n props.setMergeColumnRefDoc((prevState: any) => ({\r\n ...prevState,\r\n columnRefDoc: [...arr3],\r\n }));\r\n } else {\r\n let array: any = [];\r\n props.attributeColumn.column.map((_data: any, idx: any) => {\r\n array.push({\r\n ColumnLabel: _data.label,\r\n RefDocLabel: \"\",\r\n });\r\n });\r\n props.setMergeColumnRefDoc((prevState: any) => ({\r\n ...prevState,\r\n columnRefDoc: [...array],\r\n }));\r\n }\r\n }\r\n useEffect(() => {\r\n if (props.template.attribute.refdoc) {\r\n mapDefaultData();\r\n }\r\n }, [defaultValueRefDoc]);\r\n\r\n function mapDefaultData() {\r\n if (props.template) {\r\n let MapData = props.template.attribute.refdoc.docref.map(\r\n (item: any) => item.id\r\n );\r\n\r\n if (defaultValueRefDoc) {\r\n let dafault = defaultValueRefDoc.filter((item: any) =>\r\n MapData.includes(item.TemplateId.toString())\r\n );\r\n if (props.template.attribute.refdoc.docref) {\r\n props.setSelectedTemplateRef((prevState: any) => ({\r\n ...prevState,\r\n docref: [...dafault],\r\n }));\r\n }\r\n }\r\n }\r\n }\r\n useEffect(() => {\r\n fetchDataTemplateById();\r\n }, [props.selectedReportRef]);\r\n useEffect(() => {\r\n newValueAlterSelected();\r\n }, [actionSubmit]);\r\n useEffect(() => {\r\n setValueConfigColumnTable();\r\n }, [props.selectedTemplateRef]);\r\n\r\n const setValueConfigColumnTable = async () => {\r\n let mapper: any = [];\r\n if (\r\n props.docDataSource.docDataSource === \"Report\" &&\r\n props.selectedReportRef?.docReport?.ReportTemplateId\r\n ) {\r\n let array: any[] = [];\r\n const reportId = parseInt(\r\n props.selectedReportRef?.docReport?.ReportTemplateId\r\n );\r\n const response = await ReportTemplateSelectByReportID(reportId);\r\n let selectedFieldList = response.Selectedfieldlist;\r\n for (let i = 0; i < selectedFieldList?.length; i++) {\r\n const element = selectedFieldList[i];\r\n array.push({\r\n value: element.key,\r\n RefDocLabel: element.label,\r\n });\r\n }\r\n const _data = itemsControlLabel;\r\n Array.prototype.push.apply(_data, array);\r\n props.setDefaultConfigColumn([..._data]);\r\n } else if (\r\n props.selectedTemplateRef?.docref?.length > 0 &&\r\n props.docDataSource.docDataSource === \"Template\"\r\n ) {\r\n props.selectedTemplateRef?.docref?.map((item: any, index: number) => {\r\n if (item?.AdvanceForm) {\r\n mapper.push({\r\n AdvanceForm: JSON.parse(item?.AdvanceForm),\r\n DocumentCode: item.DocumentCode,\r\n });\r\n }\r\n });\r\n let array: any = [];\r\n mapper.map((item: any, i: number) => {\r\n item.AdvanceForm.items.map((_data: any, j: number) => {\r\n _data.layout.map((_dataLayout: any, k: number) => {\r\n if (_dataLayout.template.label) {\r\n array.push({\r\n value: item.DocumentCode + \"_\" + _dataLayout.template.label,\r\n RefDocLabel:\r\n item.DocumentCode + \"_\" + _dataLayout.template.label,\r\n });\r\n }\r\n });\r\n });\r\n });\r\n const _data = itemsControlLabel;\r\n Array.prototype.push.apply(_data, array);\r\n props.setDefaultConfigColumn([..._data]);\r\n } else {\r\n const _data = itemsControlLabel;\r\n props.setDefaultConfigColumn([..._data]);\r\n defaultConfigColumn();\r\n }\r\n };\r\n function defaultConfigColumn() {\r\n let array: any = [];\r\n props.attributeColumn.column.map((_data: any, idx: any) => {\r\n array.push({\r\n ColumnLabel: _data.label,\r\n RefDocLabel: \"\",\r\n });\r\n });\r\n props.setMergeColumnRefDoc((prevState: any) => ({\r\n ...prevState,\r\n columnRefDoc: [...array],\r\n }));\r\n }\r\n async function newValueAlterSelected() {\r\n if (isFirstRun.current) {\r\n isFirstRun.current = false;\r\n } else {\r\n props.setSelectedReportRef([]);\r\n props.setSelectedTemplateRef([]);\r\n }\r\n }\r\n async function fetchDataTemplateById() {\r\n if (checkAction === \"2\") {\r\n let _dataTemplate: any[] = [];\r\n const templateCode = props.selectedReportRef?.docReport?.TemplateId;\r\n const arrayCode = templateCode?.split(\"|\");\r\n const _response = defaultValueRefDoc2?.filter((item: any) =>\r\n arrayCode?.includes(item?.DocumentCode)\r\n );\r\n const _response2 = _response?.filter((item: any) => {\r\n return item.IsActive === true;\r\n });\r\n if (_response2) {\r\n _dataTemplate.push(..._response2);\r\n } else {\r\n _dataTemplate.push();\r\n }\r\n setDefaultValueRefDoc([..._dataTemplate]);\r\n const _data = itemsControlLabel;\r\n props.setDefaultConfigColumn([..._data]);\r\n }\r\n }\r\n async function fetchDataTemplate() {\r\n if (\r\n !props.docDataSource.docDataSource ||\r\n typeof props.docDataSource.docDataSource === \"object\"\r\n ) {\r\n props.setDocDataSource((prevState: any) => ({\r\n ...prevState,\r\n docDataSource: \"Template\",\r\n }));\r\n }\r\n let _dataTemplate = await GetAllByCreateTemplate();\r\n let _dataReportTemplate = await ReportTemplateList();\r\n setDefaultValueRefDoc([..._dataTemplate]);\r\n setDefaultValueRefDoc2([..._dataTemplate]);\r\n console.log(_dataReportTemplate, \"_dataReportTemplate\");\r\n setDefaultValueReport([..._dataReportTemplate]);\r\n props.setDefaultConfigColumn([...itemsControlLabel]);\r\n }\r\n\r\n function deleteCondition(idx: any) {\r\n let _condition = props.conditions.conditionrefdoc;\r\n _condition.splice(idx, 1);\r\n props.setConditions((prevState: any) => ({\r\n ...prevState,\r\n conditionrefdoc: [..._condition],\r\n }));\r\n }\r\n async function selectedReportById(idReport: number) {\r\n if (idReport) {\r\n let arrayReport: any[] = [];\r\n const response = await ReportTemplateSelectByReportID(idReport);\r\n let selectedFieldList = response.Selectedfieldlist;\r\n for (let i = 0; i < selectedFieldList.length; i++) {\r\n const element = selectedFieldList[i];\r\n arrayReport.push({\r\n value: element.key,\r\n RefDocLabel: element.label,\r\n });\r\n }\r\n const _data = itemsControlLabel;\r\n Array.prototype.push.apply(_data, arrayReport);\r\n props.setDefaultConfigColumn([..._data]);\r\n let arrayMerge: any = [];\r\n props.attributeColumn.column.map((_data: any, idx: any) => {\r\n arrayMerge.push({\r\n ColumnLabel: _data.label,\r\n RefDocLabel: \"\",\r\n });\r\n });\r\n props.setMergeColumnRefDoc((prevState: any) => ({\r\n ...prevState,\r\n columnRefDoc: [...arrayMerge],\r\n }));\r\n }\r\n }\r\n function renderIsDocControl() {\r\n return (\r\n <>\r\n
\r\n
\r\n \r\n \r\n
\r\n Template New Doc\r\n
\r\n

ฟอร์มสร้างใหม่

\r\n \r\n \r\n
\r\n
\r\n {\r\n props.setSelectedDocControlTemplate((prevState: any) => ({\r\n ...prevState,\r\n docNewDoc: e.value,\r\n }));\r\n }}\r\n optionLabel=\"TemplateName\"\r\n placeholder=\"--Please Select--\"\r\n filter\r\n showClear\r\n className=\"multiselect-custom set-css-multi-select set-padding-item\"\r\n optionGroupChildren=\"TemplateId\"\r\n >\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Template Edit Doc\r\n
\r\n

ฟอร์มแก้ไข

\r\n \r\n \r\n
\r\n
\r\n {\r\n props.setSelectedDocControlTemplate((prevState: any) => ({\r\n ...prevState,\r\n docEditDoc: e.value,\r\n }));\r\n }}\r\n optionLabel=\"TemplateName\"\r\n placeholder=\"--Please Select--\"\r\n filter\r\n showClear\r\n className=\"multiselect-custom set-css-multi-select set-padding-item\"\r\n optionGroupChildren=\"TemplateId\"\r\n >\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Template Cancel Doc\r\n
\r\n

ฟอร์มยกเลิก

\r\n \r\n \r\n
\r\n
\r\n {\r\n props.setSelectedDocControlTemplate((prevState: any) => ({\r\n ...prevState,\r\n docCancelDoc: e.value,\r\n }));\r\n }}\r\n optionLabel=\"TemplateName\"\r\n placeholder=\"--Please Select--\"\r\n filter\r\n showClear\r\n className=\"multiselect-custom set-css-multi-select set-padding-item\"\r\n optionGroupChildren=\"TemplateId\"\r\n >\r\n
\r\n
\r\n \r\n );\r\n }\r\n return (\r\n <>\r\n \r\n {!loading && (\r\n \r\n console.log(\r\n props.defaultConfigColumn,\r\n \"ee\",\r\n props.mergeColumnRefDoc\r\n )\r\n }\r\n >\r\n
\r\n
\r\n \r\n \r\n
\r\n Data source\r\n
\r\n

ประเภทข้อมูล

\r\n \r\n \r\n
\r\n
\r\n {itemsType.map((items: any) => {\r\n return (\r\n
\r\n {\r\n props.setDocDataSource((prevState: any) => ({\r\n ...prevState,\r\n docDataSource: e.value.name,\r\n }));\r\n setActionSubmit(!actionSubmit);\r\n setCheckAction(\"1\");\r\n if (\r\n e.value.name !== props.docDataSource.docDataSource\r\n ) {\r\n if (e.value.name === \"Template\") {\r\n setDefaultValueRefDoc([...defaultValueRefDoc2]);\r\n } else if (e.value.name === \"Report\") {\r\n console.log(\"report\", e.value.name);\r\n setDefaultValueRefDoc([]);\r\n }\r\n\r\n const _data = itemsControlLabel;\r\n props.setDefaultConfigColumn([..._data]);\r\n }\r\n defaultConfigColumn();\r\n }}\r\n checked={\r\n items.name === props.docDataSource.docDataSource\r\n }\r\n />\r\n \r\n
\r\n );\r\n })}\r\n
\r\n
\r\n {props.docDataSource.docDataSource === \"Template\" && (\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n Template Reference Document\r\n \r\n
\r\n

เอกสารอ้างอิง

\r\n \r\n \r\n
\r\n
\r\n {\r\n props.setSelectedTemplateRef((prevState: any) => ({\r\n ...prevState,\r\n docref: e.value,\r\n }));\r\n }}\r\n optionLabel=\"TemplateName\"\r\n placeholder=\"--Please Select--\"\r\n filter\r\n showClear\r\n className=\"multiselect-custom set-css-multi-select set-padding-item\"\r\n optionGroupChildren=\"TemplateId\"\r\n >\r\n
\r\n
\r\n )}\r\n {props.docDataSource.docDataSource === \"Template\" && (\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Is DocControl\r\n
\r\n

เอกสารควบคุม

\r\n \r\n \r\n
\r\n
\r\n
\r\n (\r\n \r\n <>\r\n {\r\n field.onChange(e.checked);\r\n setVisibleDocControl(!visibleDocControl);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {visibleDocControl && renderIsDocControl()}\r\n
\r\n \r\n )}\r\n\r\n {props.docDataSource.docDataSource === \"Report\" && (\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n Report Reference Document\r\n \r\n
\r\n

รายงานอ้างอิง

\r\n \r\n \r\n
\r\n
\r\n {\r\n setCheckAction(\"2\");\r\n props.setSelectedReportRef((prevState: any) => ({\r\n ...prevState,\r\n docReport: e.value,\r\n }));\r\n props.setSelectedTemplateRef([]);\r\n selectedReportById(e.value?.ReportTemplateId);\r\n }}\r\n optionLabel=\"ReportName\"\r\n placeholder=\"--Please Select--\"\r\n filterBy=\"ReportName\"\r\n showClear\r\n className=\"multiselect-custom set-css-multi-select set-padding-item\"\r\n />\r\n
\r\n
\r\n )}\r\n {props.docDataSource.docDataSource === \"Report\" && (\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n Template Reference Document\r\n \r\n
\r\n

เอกสารอ้างอิง

\r\n \r\n \r\n
\r\n
\r\n {\r\n props.setSelectedTemplateRef((prevState: any) => ({\r\n ...prevState,\r\n docref: e.value,\r\n }));\r\n }}\r\n optionLabel=\"TemplateName\"\r\n placeholder=\"--Please Select--\"\r\n filter\r\n showClear\r\n className=\"multiselect-custom set-css-multi-select set-padding-item\"\r\n optionGroupChildren=\"TemplateId\"\r\n >\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n Display popup Reference Document add row in table\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Enabled\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n {props.mergeColumnRefDoc?.columnRefDoc?.length !== 0 && (\r\n <>\r\n
\r\n
\r\n \r\n \r\n
\r\n Config Column\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n {props.mergeColumnRefDoc?.columnRefDoc?.map(\r\n (_data: any, idx: any) => (\r\n <>\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n {_data.ColumnLabel}\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n {\r\n props.setMergeColumnRefDoc(\r\n (prevState: any) => ({\r\n ...prevState,\r\n columnRefDoc:\r\n props.mergeColumnRefDoc.columnRefDoc.map(\r\n (_val: any) => {\r\n return _val.ColumnLabel ===\r\n _data.ColumnLabel\r\n ? {\r\n HaveLink: _val.HaveLink,\r\n ColumnLabel: _val.ColumnLabel,\r\n RefDocLabel: e.value,\r\n }\r\n : _val;\r\n }\r\n ),\r\n })\r\n );\r\n }}\r\n optionLabel=\"RefDocLabel\"\r\n placeholder=\"--Please Select--\"\r\n filterBy=\"RefDocLabel\"\r\n filter\r\n showClear\r\n />\r\n
\r\n
\r\n {\r\n props.setMergeColumnRefDoc(\r\n (prevState: any) => ({\r\n ...prevState,\r\n columnRefDoc:\r\n props.mergeColumnRefDoc.columnRefDoc.map(\r\n (_val: any) => {\r\n return _val.ColumnLabel ===\r\n _data.ColumnLabel\r\n ? {\r\n ColumnLabel: _val.ColumnLabel,\r\n RefDocLabel: _val.RefDocLabel,\r\n HaveLink: e.checked,\r\n }\r\n : _val;\r\n }\r\n ),\r\n })\r\n );\r\n }}\r\n style={{ marginRight: \"5px\" }}\r\n />\r\n Link\r\n
\r\n
\r\n \r\n )\r\n )}\r\n
\r\n \r\n )}\r\n
\r\n
\r\n \r\n \r\n
\r\n Conditions\r\n
\r\n

เงื่อนไข

\r\n \r\n \r\n
\r\n
\r\n
\r\n {\r\n let col = props.conditions.conditionrefdoc;\r\n col.push(conditionRefDoc);\r\n props.setConditions((prevState: any) => ({\r\n ...prevState,\r\n conditionrefdoc: [...col],\r\n }));\r\n }}\r\n type=\"button\"\r\n className=\"set-color-css-button-add-column hover-color-css-282f6a set-margin-0-css\"\r\n >\r\n Add Condition\r\n \r\n
\r\n
\r\n
\r\n {props.conditions?.conditionrefdoc?.length !== 0 && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {props.conditions?.conditionrefdoc?.map(\r\n (_data: any, idx: any) => (\r\n <>\r\n \r\n \r\n \r\n {props.conditions?.conditionrefdoc[idx]\r\n ?.conditionType === \"under\" && (\r\n <>\r\n \r\n \r\n \r\n )}\r\n {props.conditions?.conditionrefdoc[idx]\r\n ?.conditionType === \"fixed value\" && (\r\n <>\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n )\r\n )}\r\n \r\n
\r\n

Control Label

\r\n

ชื่อ

\r\n
\r\n

Type

\r\n

ชนิด

\r\n
\r\n

Value

\r\n

ค่า

\r\n
\r\n

Delete

\r\n

ลบ

\r\n
\r\n {\r\n props.setConditions((prevState: any) => ({\r\n ...prevState,\r\n conditionrefdoc:\r\n props.conditions.conditionrefdoc.map(\r\n (_val: any, _idx: any) => {\r\n return _idx === idx\r\n ? {\r\n label: e.value,\r\n conditionType: _val.conditionType,\r\n value: _val.value,\r\n }\r\n : _val;\r\n }\r\n ),\r\n }));\r\n }}\r\n optionLabel=\"RefDocLabel\"\r\n placeholder=\"--Please Select--\"\r\n filterBy=\"RefDocLabel\"\r\n filter\r\n showClear\r\n />\r\n \r\n {\r\n props.setConditions((prevState: any) => ({\r\n ...prevState,\r\n conditionrefdoc:\r\n props.conditions.conditionrefdoc.map(\r\n (_val: any, _idx: any) => {\r\n return _idx === idx\r\n ? {\r\n label: _val.label,\r\n conditionType: e.value,\r\n value: _val.value,\r\n }\r\n : _val;\r\n }\r\n ),\r\n }));\r\n }}\r\n optionLabel=\"name\"\r\n placeholder=\"--Please Select--\"\r\n filterBy=\"name\"\r\n />\r\n \r\n {\r\n props.setConditions((prevState: any) => ({\r\n ...prevState,\r\n conditionrefdoc:\r\n props.conditions.conditionrefdoc.map(\r\n (_val: any, _idx: any) => {\r\n return _idx === idx\r\n ? {\r\n label: _val.label,\r\n conditionType:\r\n _val.conditionType,\r\n value: e.value,\r\n }\r\n : _val;\r\n }\r\n ),\r\n }));\r\n }}\r\n optionLabel=\"item\"\r\n placeholder=\"--Please Select--\"\r\n filterBy=\"item\"\r\n filter\r\n showClear\r\n />\r\n \r\n {\r\n deleteCondition(idx);\r\n }}\r\n />\r\n \r\n {\r\n props.setConditions((prevState: any) => ({\r\n ...prevState,\r\n conditionrefdoc:\r\n props.conditions.conditionrefdoc.map(\r\n (_val: any, _idx: any) => {\r\n return _idx === idx\r\n ? {\r\n label: _val.label,\r\n conditionType:\r\n _val.conditionType,\r\n value: e.target.value,\r\n }\r\n : _val;\r\n }\r\n ),\r\n }));\r\n }}\r\n />\r\n \r\n {\r\n deleteCondition(idx);\r\n }}\r\n />\r\n
\r\n )}\r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n","import { InputText } from \"primereact/inputtext\";\r\nimport React from \"react\";\r\nimport { BsTrash } from \"react-icons/bs\";\r\nimport { HiPlus } from \"react-icons/hi\";\r\nimport \"./TableCreateComponents.css\";\r\nimport { Checkbox } from \"primereact/checkbox\";\r\ninterface Props {\r\n advanceForm: any;\r\n setFooterTable: any;\r\n footerTable: any;\r\n}\r\n\r\nexport default function FooterTableComponents(props: Props) {\r\n const footerData: any = {\r\n label: \"\",\r\n formula: \"\",\r\n symbol: \"\",\r\n useValue: false,\r\n value: \"\",\r\n };\r\n\r\n function deleteFooterTable(idx: any) {\r\n let _footerTable = props.footerTable?.rows;\r\n _footerTable.splice(idx, 1);\r\n props.setFooterTable((prevState: any) => ({\r\n ...prevState,\r\n rows: [..._footerTable],\r\n }));\r\n }\r\n\r\n return (\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Conditions\r\n
\r\n

เงื่อนไข

\r\n \r\n \r\n
\r\n
\r\n
\r\n {\r\n let rows = props.footerTable.rows;\r\n rows.push(footerData);\r\n props.setFooterTable((prevState: any) => ({\r\n ...prevState,\r\n rows: [...rows],\r\n }));\r\n }}\r\n type=\"button\"\r\n className=\"set-color-css-button-add-column hover-color-css-282f6a set-margin-0-css\"\r\n >\r\n Add Condition\r\n \r\n
\r\n
\r\n
\r\n {props.footerTable.rows.length !== 0 && (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {props.footerTable?.rows?.map((_data: any, idx: any) => (\r\n <>\r\n \r\n \r\n \r\n \r\n {\" \"}\r\n \r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n
\r\n

Label

\r\n

ชื่อ

\r\n
\r\n

Formula

\r\n

สูตร

\r\n
\r\n

Symbol

\r\n

สัญลักษณ์

\r\n
\r\n

Input Value

\r\n

กรอกค่า

\r\n
\r\n

Delete

\r\n

ลบ

\r\n
\r\n {\r\n props.setFooterTable((prevState: any) => ({\r\n ...prevState,\r\n rows: props.footerTable?.rows.map(\r\n (_val: any, _idx: any) => {\r\n return _idx === idx\r\n ? {\r\n label: e.target.value,\r\n formula: _val.formula,\r\n symbol: _val.symbol,\r\n value: _val.value,\r\n }\r\n : _val;\r\n }\r\n ),\r\n }));\r\n }}\r\n />\r\n \r\n {\r\n props.setFooterTable((prevState: any) => ({\r\n ...prevState,\r\n rows: props.footerTable?.rows.map(\r\n (_val: any, _idx: any) => {\r\n return _idx === idx\r\n ? {\r\n label: _val.label,\r\n formula: e.target.value,\r\n symbol: _val.symbol,\r\n value: _val.value,\r\n }\r\n : _val;\r\n }\r\n ),\r\n }));\r\n }}\r\n />\r\n \r\n {\r\n props.setFooterTable((prevState: any) => ({\r\n ...prevState,\r\n rows: props.footerTable?.rows.map(\r\n (_val: any, _idx: any) => {\r\n return _idx === idx\r\n ? {\r\n label: _val.label,\r\n formula: _val.formula,\r\n symbol: e.target.value,\r\n value: _val.value,\r\n }\r\n : _val;\r\n }\r\n ),\r\n }));\r\n }}\r\n />\r\n \r\n {\r\n props.setFooterTable((prevState: any) => ({\r\n ...prevState,\r\n rows: props.footerTable?.rows.map(\r\n (_val: any, _idx: any) => {\r\n return _idx === idx\r\n ? {\r\n label: _val.label,\r\n formula: _val.formula,\r\n symbol: _val.symbol,\r\n value: _val.value,\r\n useValue: e.checked,\r\n }\r\n : _val;\r\n }\r\n ),\r\n }));\r\n }}\r\n checked={props.footerTable?.rows[idx]?.useValue}\r\n />\r\n \r\n {\r\n deleteFooterTable(idx);\r\n }}\r\n />\r\n
\r\n
\r\n )}\r\n
\r\n );\r\n}\r\n","import { InputText } from \"primereact/inputtext\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { render } from \"react-dom\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { TabMenu } from \"primereact/tabmenu\";\r\nimport { HiPlus } from \"react-icons/hi\";\r\nimport ColumnComponent from \"./ColumnComponent\";\r\nimport { BiText } from \"react-icons/bi\";\r\nimport { ImTextHeight } from \"react-icons/im\";\r\nimport { AiOutlineNumber } from \"react-icons/ai\";\r\nimport { FiCalendar } from \"react-icons/fi\";\r\nimport { IoMdRadioButtonOn } from \"react-icons/io\";\r\nimport { MdOutlineCheckBox } from \"react-icons/md\";\r\nimport { FaRegListAlt } from \"react-icons/fa\";\r\nimport { GrAttachment } from \"react-icons/gr\";\r\nimport { DragDropContext, Draggable, Droppable } from \"react-beautiful-dnd\";\r\nimport ReferenceDocument from \"./ReferenceDocument\";\r\nimport { TabView, TabPanel } from \"primereact/tabview\";\r\nimport { BsTrash } from \"react-icons/bs\";\r\nimport { generateQuickGuid } from \"../../../Helper/GenerateGuid\";\r\nimport FooterTableComponents from \"./FooterTableComponents\";\r\nimport { Checkbox } from \"primereact/checkbox\";\r\nimport { notification } from \"antd\";\r\ninterface Props {\r\n control: any;\r\n errors: any;\r\n template: any;\r\n setAttributeColumn: any;\r\n attributeColumn: any;\r\n setFromRender: any;\r\n fromRender: any;\r\n setMergeColumnRefDoc: any;\r\n mergeColumnRefDoc: any;\r\n setDocDataSource: any;\r\n docDataSource: any;\r\n setSelectedReportRef: any;\r\n selectedReportRef: any;\r\n setSelectedTemplateRef: any;\r\n selectedTemplateRef: any;\r\n conditions: any;\r\n setConditions: any;\r\n advanceForm: any;\r\n setFooterTable: any;\r\n footerTable: any;\r\n setUploadFileState: any;\r\n uploadFileState: any;\r\n userData: any;\r\n setSelectedDocControlTemplate: any;\r\n selectedDocControlTemplate: any;\r\n setDefaultConfigColumn: any;\r\n defaultConfigColumn: any;\r\n}\r\n\r\nexport default function TableComponent(props: Props) {\r\n const [viewModal, setViewModal] = useState(false);\r\n const [layoutIdx, setLayoutIdx] = useState();\r\n const [action, setAction] = useState(\"\");\r\n\r\n const dataRequest = {\r\n label: props.template.label || \"\",\r\n alter: props.template.alter || \"\",\r\n formula: props.template.formula || \"\",\r\n hideInPdf: props.template?.hideInPdf === \"Y\" || \"\" ? true : false,\r\n canImport: props.template?.canImport === \"Y\" || \"\" ? true : false,\r\n column: props.template.attribute?.column || [],\r\n isNotCopy: props.template?.isNotCopy === \"Y\" || \"\" ? true : false,\r\n };\r\n useEffect(() => {\r\n let respone = props.attributeColumn.column;\r\n for (let i = 0; i < respone.length; i++) {\r\n if (respone[i].guid == undefined) {\r\n respone[i][\"guid\"] = generateQuickGuid();\r\n }\r\n }\r\n\r\n props.setAttributeColumn((prevState: any) => ({\r\n ...prevState,\r\n column: [...respone],\r\n }));\r\n }, []);\r\n\r\n const items = [\r\n { label: \"Column\", icon: \"pi pi-book\" },\r\n { label: \"Reference Document\", icon: \"pi pi-folder\" },\r\n { label: \"FooterTable\", icon: \"pi pi-cog\" },\r\n ];\r\n const [activeIndex, setActiveIndex] = useState(0);\r\n function renderIconShowCreateControl(dataType: any) {\r\n if (dataType === \"t\") {\r\n return (\r\n <>\r\n \r\n ShortText\r\n \r\n );\r\n } else if (dataType === \"ta\") {\r\n return (\r\n <>\r\n \r\n MultiLine\r\n \r\n );\r\n } else if (dataType === \"c\") {\r\n return (\r\n <>\r\n \r\n Number\r\n \r\n );\r\n } else if (dataType === \"d\") {\r\n return (\r\n <>\r\n \r\n Calendar\r\n \r\n );\r\n } else if (dataType === \"r\") {\r\n return (\r\n <>\r\n \r\n Choice\r\n \r\n );\r\n } else if (dataType === \"cb\") {\r\n return (\r\n <>\r\n \r\n MultiChoice\r\n \r\n );\r\n } else if (dataType === \"dd\") {\r\n return (\r\n <>\r\n \r\n Dropdown\r\n \r\n );\r\n } else if (dataType === \"at\") {\r\n return (\r\n <>\r\n \r\n Attachment\r\n \r\n );\r\n }\r\n }\r\n const reorder = (list: any, startIndex: any, endIndex: any) => {\r\n const result = Array.from(list);\r\n const [removed] = result.splice(startIndex, 1);\r\n result.splice(endIndex, 0, removed);\r\n return result;\r\n };\r\n const onDragEnd = (result: any) => {\r\n let _components = props.attributeColumn.column;\r\n if (!result.destination) {\r\n return;\r\n }\r\n const items = reorder(\r\n _components,\r\n result.source.index,\r\n result.destination.index\r\n );\r\n props.setAttributeColumn((prevState: any) => ({\r\n ...prevState,\r\n column: [...items],\r\n }));\r\n };\r\n\r\n const getItemStyle = (isDragging: any, draggableStyle: any) => ({\r\n userSelect: \"none\",\r\n margin: \"0 0 17px 0\",\r\n minHeight: \"82px\",\r\n ...draggableStyle,\r\n });\r\n function deleteColumn(idx: any) {\r\n let _components = props.attributeColumn.column;\r\n _components.splice(idx, 1);\r\n props.setAttributeColumn((prevState: any) => ({\r\n ...prevState,\r\n column: [..._components],\r\n }));\r\n }\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n
\r\n

Label

\r\n *\r\n :\r\n
\r\n
\r\n {\r\n return (\r\n <>\r\n \r\n {fieldState?.invalid && (\r\n Label is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Alt Label:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Formula :

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n

\r\n Operators for use : Addition (+), Subtraction (-), Multiplication\r\n (*), Division (/) Ex. : Column Label 1*Column Label 2=Column Label\r\n 3\r\n

\r\n
\r\n
\r\n
\r\n
\r\n

HideInPdf:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Is Not Copy:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Can Import:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {\r\n setActiveIndex(e.index);\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {activeIndex === 0 && (\r\n <>\r\n
\r\n {\r\n props.setFromRender(\"table\");\r\n setViewModal(true);\r\n setAction(\"add\");\r\n }}\r\n type=\"button\"\r\n className=\"set-color-css-button-add-column hover-color-css-282f6a\"\r\n >\r\n Add Column\r\n \r\n
\r\n {props.attributeColumn.column.length !== 0 && (\r\n
\r\n <>\r\n \r\n \r\n {(provided: any, snapshot: any) => (\r\n \r\n {props.attributeColumn.column.map(\r\n (_data: any, idx: any) => (\r\n
\r\n \r\n {(provided: any, snapshot: any) => (\r\n \r\n {\r\n setViewModal(true);\r\n setLayoutIdx(idx);\r\n setAction(\"edit\");\r\n }}\r\n >\r\n
\r\n \r\n {_data.label}\r\n \r\n \r\n {_data.alter != \"\"\r\n ? ` / ${_data.alter}`\r\n : \"\"}\r\n \r\n
\r\n {renderIconShowCreateControl(\r\n _data.control.template.type\r\n )}\r\n
\r\n
\r\n
\r\n
\r\n {\r\n deleteColumn(idx);\r\n }}\r\n >\r\n \r\n

\r\n
\r\n
\r\n )}\r\n \r\n
\r\n )\r\n )}\r\n {provided.placeholder}\r\n
\r\n )}\r\n \r\n \r\n \r\n
\r\n )}\r\n \r\n )}\r\n {activeIndex === 1 && (\r\n <>\r\n \r\n \r\n )}\r\n {activeIndex === 2 && (\r\n <>\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n {viewModal && (\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { Checkbox } from \"primereact/checkbox\";\r\nimport { InputNumber } from \"primereact/inputnumber\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { Form } from \"react-bootstrap\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { UploadFileRenderControl } from \"../../../Services/UploadFileService\";\r\nimport { Image, notification } from \"antd\";\r\nimport { generateQuickGuid } from \"../../../Helper/GenerateGuid\";\r\nimport { RiDeleteBack2Line, RiDeleteBin2Line } from \"react-icons/ri\";\r\nimport \"./ImageComponents.css\";\r\nimport { CgCloseR } from \"react-icons/cg\";\r\ninterface Props {\r\n control: any;\r\n errors: any;\r\n template: any;\r\n userData: any;\r\n uploadFileState: any;\r\n setUploadFileState: any;\r\n}\r\nexport default function ImageComponents(props: Props) {\r\n const [widthControl, setWidthControl] = useState();\r\n const [heightControl, setHeightControl] = useState();\r\n const ref = useRef();\r\n const toast = useRef(null);\r\n const dataRequest = {\r\n label: props.template.label || \"\",\r\n alter: props.template.alter || \"\",\r\n fileTypeImage: props.template.fileType || \"*jpg*jpeg*png*bmp\",\r\n maxFile: parseInt(props.template.attribute?.maxFile) || 50,\r\n width: parseInt(props.template.attribute?.width) || 310,\r\n height: parseInt(props.template.attribute?.height) || 190,\r\n require: props.template.attribute?.require === \"Y\" || \"\" ? true : false,\r\n readonly: props.template.attribute?.readonly === \"Y\" || \"\" ? true : false,\r\n hideInPdf: props.template.attribute?.hideInPdf === \"Y\" || \"\" ? true : false,\r\n isNotCopy: props.template.attribute?.isNotCopy === \"Y\" || \"\" ? true : false,\r\n };\r\n const onFileSelect = async (e: any) => {\r\n if (e.target.files[0] !== null) {\r\n const files = e.target.files[0];\r\n const formData = new FormData();\r\n var guid = \"imageControl\" + generateQuickGuid();\r\n formData.append(\"files\", files);\r\n formData.append(\"docSet\", guid);\r\n formData.append(\"actorID\", props.userData.employeeData.EmployeeId);\r\n var response = await UploadFileRenderControl(formData);\r\n props.setUploadFileState(response.data.pathUrl);\r\n ref.current.value = null;\r\n }\r\n };\r\n useEffect(() => {\r\n setWidthControl(dataRequest.width);\r\n setHeightControl(dataRequest.height);\r\n }, []);\r\n\r\n return (\r\n <>\r\n \r\n
\r\n
\r\n
\r\n

Label

\r\n *\r\n :\r\n
\r\n
\r\n {\r\n return (\r\n <>\r\n \r\n {fieldState?.invalid && (\r\n Label is required.\r\n )}\r\n \r\n );\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Alt Label:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

File Type:

\r\n
\r\n
\r\n (\r\n \r\n )}\r\n />\r\n

File Type Format : *png*jpeg

\r\n
\r\n
\r\n
\r\n
\r\n

Max File Size:

\r\n
\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n min={0}\r\n max={100}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n MB\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Width:

\r\n
\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n onChange={(e: any) => {\r\n setWidthControl(e.value);\r\n if (e.value >= 300) {\r\n setWidthControl(300);\r\n }\r\n }}\r\n min={0}\r\n max={400}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n
\r\n

Maximum of 400

\r\n
\r\n
\r\n

Height:

\r\n
\r\n
\r\n
\r\n (\r\n field.onChange(e.value)}\r\n onChange={(e: any) => {\r\n setHeightControl(e.value);\r\n if (e.value >= 300) {\r\n setHeightControl(300);\r\n }\r\n }}\r\n min={0}\r\n max={400}\r\n className={`set-input-component-css ${classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}`}\r\n />\r\n )}\r\n />\r\n
\r\n

Maximum of 400

\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Required:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n

Readonly:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n

HideInPdf:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Is Not Copy:

\r\n
\r\n
\r\n (\r\n
\r\n <>\r\n {\r\n field.onChange(e.checked);\r\n }}\r\n checked={field.value}\r\n />\r\n \r\n Yes\r\n \r\n \r\n
\r\n )}\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Default Value:

\r\n
\r\n
\r\n (\r\n {\r\n onFileSelect(e);\r\n }}\r\n accept=\".jpg, .jpeg, .png,\"\r\n className={`set-input-component-css form-control ${classNames(\r\n {\r\n \"p-invalid\": fieldState.invalid,\r\n }\r\n )}`}\r\n />\r\n )}\r\n />\r\n
\r\n
\r\n {props.uploadFileState && (\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n {\r\n props.setUploadFileState(null);\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n )}\r\n \r\n \r\n );\r\n}\r\n","import { Button } from \"primereact/button\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { useForm } from \"react-hook-form\";\r\nimport { BsX } from \"react-icons/bs\";\r\nimport { IoSaveOutline } from \"react-icons/io5\";\r\nimport ButtonComponent from \"../ButtonComponent/ButtonComponent\";\r\nimport AttachmentComponent from \"../AttachmentComponent/AttachmentComponent\";\r\nimport AutoNumberComponent from \"../AutoNumberComponent/AutoNumberComponent\";\r\nimport CalendarComponent from \"../CalendarComponent/CalendarComponent\";\r\nimport ChoiceComponent from \"../ChoiceComponent/ChoiceComponent\";\r\nimport MultiChoiceComponent from \"../MultiChoiceComponent/MultiChoiceComponent\";\r\nimport DropdownComponent from \"../DropdownComponent/DropdownComponent\";\r\nimport EditorComponent from \"../EditorComponent/EditorComponent\";\r\nimport HeadingComponent from \"../HeadingComponent/HeadingComponent\";\r\nimport NumberComponent from \"../NumberComponent/NumberComponent\";\r\nimport RevisionComponent from \"../RevisionComponent/RevisionComponent\";\r\nimport ShortTextComponent from \"../ShortTextComponent/ShortTextComponent\";\r\nimport TableComponent from \"../TableComponent/TableComponent\";\r\nimport TextAreaComponent from \"../TextAreaComponent/TextAreaComponent\";\r\nimport CreateControlSideBarElement from \"./CreateControlSideBarElement\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport \"./ModalCreateComponents.css\";\r\nimport { generateQuickGuid } from \"../../../Helper/GenerateGuid\";\r\nimport {\r\n GetAllByCreateTemplate,\r\n ReportTemplateList,\r\n} from \"../../../Services/TemplateService\";\r\nimport { UploadFileRenderControl } from \"../../../Services/UploadFileService\";\r\nimport ImageComponents from \"../ImageComponents/ImageComponents\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\nimport { Spin } from \"antd\";\r\nimport { ReportTemplateSelectByReportID } from \"../../../Services/ReportService\";\r\ninterface Props {\r\n visibleCreateControl: boolean;\r\n setVisibleCreateControl: any;\r\n itemIdx: number;\r\n layoutIdx: number;\r\n setAdvanceForm: any;\r\n advanceForm: any;\r\n layoutLength: any;\r\n}\r\ninterface SelectedTemplateRef {\r\n docref: string[];\r\n}\r\n\r\nexport default function ModalCreateComponents(props: Props) {\r\n const itemsControlLabel = [\r\n { RefDocLabel: \"Document No\", value: \"DocumentNo\" },\r\n { RefDocLabel: \"Document Amount\", value: \"DocumentAmount\" },\r\n { RefDocLabel: \"Creator Employee Code\", value: \"CreatorEmployeeCode\" },\r\n { RefDocLabel: \"Creator Employee Name\", value: \"CreatorEmployeeName\" },\r\n {\r\n RefDocLabel: \"Creator Employee Position\",\r\n value: \"CreatorEmployeePosition\",\r\n },\r\n {\r\n RefDocLabel: \"Creator Employee Division\",\r\n value: \"CreatorEmployeeDivision\",\r\n },\r\n {\r\n RefDocLabel: \"Creator Employee Department\",\r\n value: \"CreatorEmployeeDepartment\",\r\n },\r\n { RefDocLabel: \"Creator Employee Email\", value: \"CreatorEmployeeEmail\" },\r\n {\r\n RefDocLabel: \"Requestor Employee Code\",\r\n value: \"RequestorEmployeeCode\",\r\n },\r\n {\r\n RefDocLabel: \"Requestor Employee Name\",\r\n value: \"RequestorEmployeeName\",\r\n },\r\n {\r\n RefDocLabel: \"Requestor Employee Position\",\r\n value: \"RequestorEmployeePosition\",\r\n },\r\n {\r\n RefDocLabel: \"Requestor Employee Division\",\r\n value: \"RequestorEmployeeDivision\",\r\n },\r\n {\r\n RefDocLabel: \"Requestor Employee Department\",\r\n value: \"RequestorEmployeeDepartment\",\r\n },\r\n {\r\n RefDocLabel: \"Requestor Employee Email\",\r\n value: \"RequestorEmployeeEmail\",\r\n },\r\n {\r\n RefDocLabel: \"Information Document Status\",\r\n value: \"InformationDocumentStatus\",\r\n },\r\n {\r\n RefDocLabel: \"Information Form Category\",\r\n value: \"InformationFormCategory\",\r\n },\r\n { RefDocLabel: \"Information Form Name\", value: \"InformationFormName\" },\r\n {\r\n RefDocLabel: \"Information RequestDate\",\r\n value: \"InformationRequestDate\",\r\n },\r\n { RefDocLabel: \"Information Company\", value: \"InformationCompany\" },\r\n { RefDocLabel: \"Information Branch\", value: \"InformationBranch\" },\r\n { RefDocLabel: \"Information Subject\", value: \"InformationSubject\" },\r\n { RefDocLabel: \"Information Project\", value: \"InformationProject\" },\r\n ];\r\n const displayCheckBox = [\r\n { name: \"Heading\", code: \"N\" },\r\n { name: \"Text\", code: \"Y\" },\r\n ];\r\n\r\n const toast = useRef(null);\r\n const { toggleAlert } = useAlert();\r\n const [selected, setSelected] = useState(\"\");\r\n const [component, setComponent] = useState();\r\n const [checkAction, setCheckAction] = useState(\"\");\r\n const userData = JSON.parse(localStorage.getItem(\"userData\") || \"\");\r\n const [loading, setLoading] = useState(true);\r\n //checkbox-dropdown editor table\r\n const [itemsList, setItemsList] = useState({ items: [] });\r\n const [displayDropdown, setDisplayDropdown] = useState();\r\n const [fromRender, setFromRender] = useState(\"control\");\r\n const [richText, setRichText] = useState({});\r\n const [checkBoxHeading, setCheckBoxHeading] = useState({\r\n name: \"Heading\",\r\n code: \"N\",\r\n });\r\n const [attributeNumber, setAttributeNumber] = useState({\r\n formats: [],\r\n });\r\n const [revisionConditions, setRevisionConditions] = useState({\r\n conditions: [],\r\n });\r\n\r\n //table\r\n const [attributeColumn, setAttributeColumn] = useState({ column: [] });\r\n const [footerTable, setFooterTable] = useState({ rows: [] });\r\n const [mergeColumnRefDoc, setMergeColumnRefDoc] = useState({\r\n columnRefDoc: [],\r\n });\r\n const [docDataSource, setDocDataSource] = useState({\r\n docDataSource: {},\r\n });\r\n const [selectedReportRef, setSelectedReportRef] = useState({\r\n docReport: {},\r\n });\r\n const [selectedTemplateRef, setSelectedTemplateRef] = useState({\r\n docref: [],\r\n });\r\n const [selectedDocControlTemplate, setSelectedDocControlTemplate] =\r\n useState({\r\n docNewDoc: [],\r\n docEditDoc: [],\r\n docCancelDoc: [],\r\n });\r\n const [defaultConfigColumn, setDefaultConfigColumn] = useState([]);\r\n const [conditions, setConditions] = useState({ conditionrefdoc: [] });\r\n const [attributeButton, setAttributeButton] = useState({ items: [] });\r\n const [uploadFileState, setUploadFileState] = useState();\r\n\r\n const {\r\n control,\r\n formState: { errors },\r\n getValues,\r\n setValue,\r\n clearErrors,\r\n handleSubmit,\r\n } = useForm({\r\n mode: \"onBlur\",\r\n });\r\n\r\n\r\n useEffect(() => {\r\n setLoading(true);\r\n setFromRender(\"control\");\r\n checkType();\r\n }, []);\r\n \r\n useEffect(() => {\r\n renderComponent();\r\n }, [\r\n selected,\r\n itemsList,\r\n revisionConditions,\r\n attributeColumn,\r\n attributeNumber,\r\n mergeColumnRefDoc,\r\n docDataSource,\r\n selectedReportRef,\r\n selectedTemplateRef,\r\n conditions,\r\n props.advanceForm,\r\n attributeButton,\r\n uploadFileState,\r\n footerTable,\r\n selectedDocControlTemplate,\r\n defaultConfigColumn,\r\n checkBoxHeading,\r\n ]);\r\n const checkType = () => {\r\n let _itemsLength = props.advanceForm.items[props.itemIdx].layout.length;\r\n let _templatesDes =\r\n props.advanceForm.items[props.itemIdx].layout[props.layoutIdx].template;\r\n let _data =\r\n props.advanceForm.items[props.itemIdx].layout[props.layoutIdx].data;\r\n if (_templatesDes.type === \"em\") {\r\n setCheckAction(\"add\");\r\n addFunction();\r\n if (props.layoutLength === 1) {\r\n setSelected(\"1\");\r\n } else if (props.layoutLength === 2) {\r\n setSelected(\"2\");\r\n }\r\n setLoading(false);\r\n } else {\r\n setCheckAction(\"edit\");\r\n checkActionButton(_templatesDes.type, _templatesDes, _data, _itemsLength);\r\n }\r\n };\r\n function addFunction() {\r\n setDocDataSource((prevState: any) => ({\r\n ...prevState,\r\n docDataSource: \"Template\",\r\n }));\r\n }\r\n const checkActionButton = async (\r\n dataType: any,\r\n templatesDes: any,\r\n data: any,\r\n _itemsLength: any\r\n ) => {\r\n if (dataType === \"l\") {\r\n defaultCheckBoxHeading(templatesDes);\r\n setSelected(\"1\");\r\n } else if (dataType === \"t\") {\r\n setSelected(\"2\");\r\n } else if (dataType === \"ta\") {\r\n setSelected(\"3\");\r\n } else if (dataType === \"c\") {\r\n setSelected(\"4\");\r\n } else if (dataType === \"d\") {\r\n setSelected(\"5\");\r\n } else if (dataType === \"r\") {\r\n setSelected(\"6\");\r\n } else if (dataType === \"cb\") {\r\n setSelected(\"7\");\r\n } else if (dataType === \"dd\") {\r\n setSelected(\"8\");\r\n } else if (dataType === \"tb\") {\r\n await defaultValueReportTable(templatesDes);\r\n await defaultValueTemplateTable(templatesDes);\r\n await defaultValueFooterTable(templatesDes);\r\n await defaultValueConfigColumnTable(templatesDes);\r\n setSelected(\"9\");\r\n } else if (dataType === \"ed\") {\r\n setSelected(\"10\");\r\n } else if (dataType === \"at\") {\r\n setUploadFileState(data.value);\r\n setSelected(\"11\");\r\n } else if (dataType === \"im\") {\r\n setUploadFileState(data.value);\r\n setSelected(\"12\");\r\n } else if (dataType === \"bt\") {\r\n setAttributeButton((prevState: any) => ({\r\n ...prevState,\r\n items: [...templatesDes.attribute.items],\r\n }));\r\n setSelected(\"13\");\r\n } else if (dataType === \"an\") {\r\n setAttributeNumber((prevState: any) => ({\r\n ...prevState,\r\n formats: [...templatesDes.attribute.formats],\r\n }));\r\n setSelected(\"14\");\r\n } else if (dataType === \"rvs\") {\r\n if (templatesDes.attribute?.conditions) {\r\n setRevisionConditions((prevState: any) => ({\r\n ...prevState,\r\n conditions: [...templatesDes.attribute.conditions],\r\n }));\r\n }\r\n setSelected(\"15\");\r\n } else {\r\n if (_itemsLength === 1) {\r\n setSelected(\"1\");\r\n } else {\r\n setSelected(\"2\");\r\n }\r\n }\r\n setLoading(false);\r\n };\r\n const defaultCheckBoxHeading = (templatesDes: any) => {\r\n if (templatesDes.istext === \"Y\") {\r\n setCheckBoxHeading(displayCheckBox[1]);\r\n } else if (templatesDes.istext === \"N\") {\r\n setCheckBoxHeading(displayCheckBox[0]);\r\n }\r\n };\r\n const defaultValueReportTable = async (templatesDes: any) => {\r\n setAttributeColumn((prevState: any) => ({\r\n ...prevState,\r\n column: [...templatesDes.attribute.column],\r\n }));\r\n if (templatesDes.attribute?.mergecolumnrefdoc) {\r\n setMergeColumnRefDoc((prevState: any) => ({\r\n ...prevState,\r\n columnRefDoc: [...templatesDes.attribute.mergecolumnrefdoc],\r\n }));\r\n }\r\n if (templatesDes.attribute?.conditionrefdoc) {\r\n setConditions((prevState: any) => ({\r\n ...prevState,\r\n conditionrefdoc: templatesDes.attribute.conditionrefdoc,\r\n }));\r\n }\r\n if (templatesDes.attribute?.refdoc?.docDataSource) {\r\n setDocDataSource((prevState: any) => ({\r\n ...prevState,\r\n docDataSource: templatesDes.attribute.refdoc.docDataSource,\r\n }));\r\n let _dataReportTemplate = await ReportTemplateList();\r\n var response = _dataReportTemplate.filter(\r\n (x: { ReportTemplateId: string }) =>\r\n x.ReportTemplateId.toString() ===\r\n templatesDes.attribute.refdoc.docReport\r\n );\r\n setSelectedReportRef((prevState: any) => ({\r\n ...prevState,\r\n docReport: response[0] || [],\r\n }));\r\n }\r\n };\r\n const defaultValueTemplateTable = async (templatesDes: any) => {\r\n if (templatesDes.attribute?.refdoc?.docref?.length >= 1) {\r\n console.log(\"refdoc\", templatesDes.attribute.refdoc.docref);\r\n let _dataTemplate = await GetAllByCreateTemplate();\r\n let _template: any[] = [];\r\n for (let i = 0; i < templatesDes.attribute?.refdoc.docref.length; i++) {\r\n const docRef = templatesDes.attribute.refdoc.docref[i];\r\n\r\n for (let j = 0; j < _dataTemplate.length; j++) {\r\n const template = _dataTemplate[j];\r\n console.log(\"tempp\", template);\r\n // template id\r\n\r\n if (docRef.id == template.DocumentCode) {\r\n _template.push(template);\r\n }\r\n }\r\n }\r\n await setSelectedTemplateRef((prevState: any) => ({\r\n ...prevState,\r\n docRef: _template,\r\n }));\r\n setDefaultValueDocControl(templatesDes, _dataTemplate);\r\n }\r\n };\r\n const defaultValueFooterTable = (templatesDes: any) => {\r\n if (templatesDes.attribute?.footerTable) {\r\n setFooterTable((prevState: any) => ({\r\n ...prevState,\r\n rows: [...templatesDes.attribute?.footerTable.rows],\r\n }));\r\n }\r\n };\r\n const defaultValueConfigColumnTable = async (templatesDes: any) => {\r\n let mapper: any = [];\r\n console.log(templatesDes.attribute?.refdoc?.docref, \"response1\");\r\n console.log(templatesDes.attribute?.refdoc?.docDataSource, \"response2\");\r\n\r\n if (templatesDes.attribute?.refdoc?.docDataSource === \"Report\") {\r\n let array: any[] = [];\r\n const reportId = parseInt(templatesDes.attribute?.refdoc?.docReport);\r\n const response = await ReportTemplateSelectByReportID(reportId);\r\n console.log(response, \"response\");\r\n let selectedFieldList = response.Selectedfieldlist;\r\n for (let i = 0; i < selectedFieldList.length; i++) {\r\n const element = selectedFieldList[i];\r\n array.push({\r\n value: element.key,\r\n RefDocLabel: element.label,\r\n });\r\n }\r\n const _data = itemsControlLabel;\r\n Array.prototype.push.apply(_data, array);\r\n console.log(_data, \"_data\");\r\n setDefaultConfigColumn([..._data]);\r\n } else if (\r\n templatesDes.attribute?.refdoc?.docref > 0 &&\r\n templatesDes.attribute?.refdoc?.docDataSource === \"Template\"\r\n ) {\r\n templatesDes.attribute?.refdoc?.docref?.map(\r\n (item: any, index: number) => {\r\n console.log(\"tem\", item);\r\n\r\n if (item?.AdvanceForm) {\r\n mapper.push({\r\n AdvanceForm: JSON.parse(item?.AdvanceForm),\r\n DocumentCode: item.DocumentCode,\r\n });\r\n }\r\n }\r\n );\r\n let array: any = [];\r\n mapper.map((item: any, i: number) => {\r\n item.AdvanceForm.items.map((_data: any, j: number) => {\r\n _data.layout.map((_dataLayout: any, k: number) => {\r\n if (_dataLayout.template.label) {\r\n array.push({\r\n value: item.DocumentCode + \"_\" + _dataLayout.template.label,\r\n RefDocLabel:\r\n item.DocumentCode + \"_\" + _dataLayout.template.label,\r\n });\r\n }\r\n });\r\n });\r\n });\r\n const _data = itemsControlLabel;\r\n Array.prototype.push.apply(_data, array);\r\n setDefaultConfigColumn([..._data]);\r\n } else {\r\n const _data = itemsControlLabel;\r\n setDefaultConfigColumn([..._data]);\r\n }\r\n };\r\n const setDefaultValueDocControl = async (\r\n templatesDes: any,\r\n _dataTemplate: any\r\n ) => {\r\n //docNewDoc\r\n if (templatesDes.attribute?.refdoc?.docNewDoc) {\r\n let _newDoc: any[] = [];\r\n const docNewDocArray =\r\n templatesDes.attribute?.refdoc?.docNewDoc?.split(\",\");\r\n for (let i = 0; i < docNewDocArray.length; i++) {\r\n const newDoc = docNewDocArray[i];\r\n for (let j = 0; j < _dataTemplate.length; j++) {\r\n const template = _dataTemplate[j];\r\n if (newDoc == template.DocumentCode) {\r\n _newDoc.push(template);\r\n }\r\n }\r\n }\r\n await setSelectedDocControlTemplate((prevState: any) => ({\r\n ...prevState,\r\n docNewDoc: _newDoc,\r\n }));\r\n }\r\n //docEditDoc\r\n if (templatesDes.attribute?.refdoc?.docEditDoc) {\r\n let _docEditDoc: any[] = [];\r\n const docEditDocArray =\r\n templatesDes.attribute?.refdoc?.docEditDoc?.split(\",\");\r\n for (let i = 0; i < docEditDocArray.length; i++) {\r\n const docEditDoc = docEditDocArray[i];\r\n for (let j = 0; j < _dataTemplate.length; j++) {\r\n const template = _dataTemplate[j];\r\n if (docEditDoc == template.DocumentCode) {\r\n _docEditDoc.push(template);\r\n }\r\n }\r\n }\r\n await setSelectedDocControlTemplate((prevState: any) => ({\r\n ...prevState,\r\n docEditDoc: _docEditDoc,\r\n }));\r\n }\r\n //docCancelDoc\r\n if (templatesDes.attribute?.refdoc?.docCancelDoc) {\r\n let _docCancelDoc: any[] = [];\r\n const docCancelDocArray =\r\n templatesDes.attribute?.refdoc?.docCancelDoc?.split(\",\");\r\n for (let i = 0; i < docCancelDocArray.length; i++) {\r\n const docCancelDoc = docCancelDocArray[i];\r\n for (let j = 0; j < _dataTemplate.length; j++) {\r\n const template = _dataTemplate[j];\r\n if (docCancelDoc == template.DocumentCode) {\r\n _docCancelDoc.push(template);\r\n }\r\n }\r\n }\r\n await setSelectedDocControlTemplate((prevState: any) => ({\r\n ...prevState,\r\n docCancelDoc: _docCancelDoc,\r\n }));\r\n }\r\n };\r\n const requestData = (\r\n templates: any,\r\n itemIdx: number,\r\n layoutIdx: number,\r\n _data?: any\r\n ) => {\r\n let _templates = templates;\r\n let _advanceForm = props.advanceForm;\r\n _advanceForm.items[itemIdx].layout[layoutIdx].template = _templates;\r\n _advanceForm.items[itemIdx].layout[layoutIdx].data = _data;\r\n props.setAdvanceForm(_advanceForm);\r\n };\r\n const requestDataToLayout = (\r\n layout: any,\r\n itemIdx: number,\r\n layoutIdx: number\r\n ) => {\r\n let _layout = layout;\r\n let _advanceForm = props.advanceForm;\r\n _advanceForm.items[itemIdx].layout[layoutIdx] = _layout;\r\n props.setAdvanceForm(_advanceForm);\r\n };\r\n const handleError = () => {\r\n if (Object.keys(errors).length > 0) {\r\n toggleAlert({\r\n description: `${errors[Object.keys(errors)[0]].message}`,\r\n message: `Require field warning.`,\r\n type: \"warning\",\r\n });\r\n }\r\n };\r\n \r\n const updateChanges = async (data: any) => {\r\n let checkUnique: boolean = false;\r\n console.log(\"data\", data);\r\n\r\n if (fromRender !== \"control\") {\r\n return;\r\n }\r\n\r\n if (itemsList.items.length === 0) {\r\n if (selected === \"6\" || selected === \"7\" || selected === \"8\") {\r\n toggleAlert({\r\n description: `Please fill in all required fields.`,\r\n message: `Require field warning.`,\r\n type: \"warning\",\r\n });\r\n return;\r\n }\r\n }\r\n if (props.advanceForm.items?.length >= 1) {\r\n props.advanceForm.items.map((_data: any, index: number) => {\r\n _data.layout.map((_dataLayout: any, index2: number) => {\r\n if (_dataLayout.template.label != undefined) {\r\n if (_dataLayout.template.type !== \"em\") {\r\n if (\r\n _dataLayout.template.label === data.label &&\r\n _dataLayout.template.label !==\r\n props.advanceForm.items[props.itemIdx].layout[props.layoutIdx]\r\n .template.label\r\n ) {\r\n if (!data.description) {\r\n checkUnique = true;\r\n }\r\n } else if (checkAction === \"edit\") {\r\n if (\r\n selected === \"2\" ||\r\n selected === \"4\" ||\r\n selected === \"7\" ||\r\n selected === \"8\"\r\n ) {\r\n if (\r\n data.description ===\r\n _dataLayout.template.attribute?.description &&\r\n _dataLayout.template.label === data.label &&\r\n props.advanceForm.items[props.itemIdx].layout[\r\n props.layoutIdx\r\n ].guid !== _dataLayout.guid\r\n ) {\r\n checkUnique = true;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n });\r\n });\r\n }\r\n if (checkUnique) {\r\n toggleAlert({\r\n description: `Duplicate information in label.\\n please input field description.`,\r\n message: `Dupplicate field warning.`,\r\n type: \"warning\",\r\n });\r\n return;\r\n }\r\n\r\n if (selected === \"1\") {\r\n console.log(data, \"dataRequest\");\r\n const dataRequest = {\r\n type: \"l\",\r\n label: data.labelHeading || \"\",\r\n alter: data.alter || \"\",\r\n istext: checkBoxHeading.code,\r\n textvalue: data.textvalue || \"\",\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n };\r\n\r\n const defaultDataValue = { value: null };\r\n requestData(\r\n dataRequest,\r\n props.itemIdx,\r\n props.layoutIdx,\r\n defaultDataValue\r\n );\r\n } else if (selected === \"2\") {\r\n const dataRequest = {\r\n type: \"t\",\r\n label: data.label,\r\n alter: data.alter,\r\n attribute: {\r\n description: data.description,\r\n default: data.default,\r\n length: data.length.toString(),\r\n require: data.require ? \"Y\" : \"N\",\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n },\r\n };\r\n const defaultDataValue = { value: null };\r\n requestData(\r\n dataRequest,\r\n props.itemIdx,\r\n props.layoutIdx,\r\n defaultDataValue\r\n );\r\n } else if (selected === \"3\") {\r\n const dataRequest = {\r\n type: \"ta\",\r\n label: data.label,\r\n alter: data.alter,\r\n attribute: {\r\n description: data.description,\r\n default: data.default,\r\n length: data.length.toString(),\r\n require: data.require ? \"Y\" : \"N\",\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n },\r\n };\r\n const defaultDataValue = { value: null };\r\n requestData(\r\n dataRequest,\r\n props.itemIdx,\r\n props.layoutIdx,\r\n defaultDataValue\r\n );\r\n } else if (selected === \"4\") {\r\n const dataRequest = {\r\n type: \"c\",\r\n label: data.label,\r\n alter: data.alter,\r\n attribute: {\r\n require: data.require ? \"Y\" : \"N\",\r\n formula: data.formula,\r\n description: data.description,\r\n decimal: data.decimal.toString(),\r\n default: data.default,\r\n align: data.align ? \"l\" : \"r\",\r\n min: data.min?.toString() ?? \"\",\r\n max: data.max?.toString() ?? \"\",\r\n useComma: data.useComma ? \"Y\" : \"N\",\r\n symbol: data.symbolNumber,\r\n symbolPosition: data.symbolPosition ? \"B\" : \"E\",\r\n summary: data.summary ? \"Y\" : \"N\",\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n },\r\n };\r\n const defaultDataValue = { value: null };\r\n\r\n requestData(\r\n dataRequest,\r\n props.itemIdx,\r\n props.layoutIdx,\r\n defaultDataValue\r\n );\r\n } else if (selected === \"5\") {\r\n console.log(data);\r\n\r\n const dataRequest = {\r\n type: \"d\",\r\n label: data.label,\r\n alter: data.alter,\r\n attribute: {\r\n description: data.description,\r\n require: data.require ? \"Y\" : \"N\",\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n // test\r\n default: data.default,\r\n defaultType: data.defaultType,\r\n date: {\r\n use: \"Y\",\r\n useDate: \"Y\",\r\n fullYear: \"Y\",\r\n symbol: data.symbol,\r\n },\r\n time: {\r\n use: \"N\",\r\n useSecond: \"N\",\r\n symbol: \":\",\r\n },\r\n displayFormat: data.displayFormat,\r\n },\r\n };\r\n const defaultDataValue = { value: null };\r\n requestData(\r\n dataRequest,\r\n props.itemIdx,\r\n props.layoutIdx,\r\n defaultDataValue\r\n );\r\n } else if (selected === \"6\") {\r\n const dataRequest = {\r\n type: \"r\",\r\n label: data.label,\r\n alter: data.alter,\r\n attribute: {\r\n description: data.description,\r\n require: data.require ? \"Y\" : \"N\",\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n multipleLine: data.multipleLine ? \"Y\" : \"N\",\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n items: itemsList.items,\r\n },\r\n };\r\n const defaultDataValue = { value: null };\r\n requestData(\r\n dataRequest,\r\n props.itemIdx,\r\n props.layoutIdx,\r\n defaultDataValue\r\n );\r\n } else if (selected === \"7\") {\r\n const dataRequest = {\r\n type: \"cb\",\r\n label: data.label,\r\n alter: data.alter,\r\n attribute: {\r\n description: data.description,\r\n require: data.require ? \"Y\" : \"N\",\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n multipleLine: data.multipleLine ? \"Y\" : \"N\",\r\n display: displayDropdown?.code,\r\n items: itemsList.items,\r\n },\r\n };\r\n const defaultDataValue = {\r\n value: null,\r\n item: [],\r\n };\r\n requestData(\r\n dataRequest,\r\n props.itemIdx,\r\n props.layoutIdx,\r\n defaultDataValue\r\n );\r\n } else if (selected === \"8\") {\r\n const dataRequest = {\r\n type: \"dd\",\r\n label: data.label,\r\n alter: data.alter,\r\n description: data.description,\r\n attribute: {\r\n require: data.require ? \"Y\" : \"N\",\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n items: itemsList.items,\r\n },\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n };\r\n const defaultDataValue = { value: null };\r\n requestData(\r\n dataRequest,\r\n props.itemIdx,\r\n props.layoutIdx,\r\n defaultDataValue\r\n );\r\n } else if (selected === \"9\") {\r\n if (\r\n attributeColumn?.column == null ||\r\n attributeColumn?.column?.length === 0\r\n ) {\r\n return toggleAlert({\r\n description: `Column is required.`,\r\n message: `Table type warning.`,\r\n type: \"warning\",\r\n });\r\n }\r\n //functionCheckInputWidth\r\n // let checkWidthInTableDoNotHas: boolean = false;\r\n // let checkWidthInTableHasValue: boolean = false;\r\n // console.log(attributeColumn, \"_width\");\r\n\r\n // attributeColumn.column.map((_column: any) => {\r\n // if (\r\n // _column.control.template.attribute?.widthInTable === \"0\" ||\r\n // !_column.control.template.attribute?.widthInTable\r\n // ) {\r\n // checkWidthInTableDoNotHas = true;\r\n // } else {\r\n // checkWidthInTableHasValue = true;\r\n // }\r\n // });\r\n\r\n // if (checkWidthInTableHasValue && checkWidthInTableDoNotHas) {\r\n // checkWidthInTableDoNotHas = false;\r\n // attributeColumn.column.map((_column: any) => {\r\n // const _width = _column.control.template.attribute?.widthInTable || 0;\r\n // if (_width !== \"0\") {\r\n // checkWidthInTableHasValue = true;\r\n // }\r\n // });\r\n\r\n // if (checkWidthInTableHasValue) {\r\n // toggleAlert({\r\n // description: `Please fill in all required width fields.`,\r\n // message: `Width field warning.`,\r\n // type: \"warning\",\r\n // });\r\n // return;\r\n // }\r\n // }\r\n const dataRequest = {\r\n type: \"tb\",\r\n label: data.label,\r\n alter: data.alter,\r\n formula: data.formula,\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n canImport: data.canImport ? \"Y\" : \"N\",\r\n attribute: {\r\n column: attributeColumn.column,\r\n enabledpopupdefdoc: data.enabledpopupdefdoc ? \"Y\" : \"N\",\r\n mergecolumnrefdoc: mergeColumnRefDoc?.columnRefDoc || [],\r\n conditionrefdoc: conditions?.conditionrefdoc,\r\n refdoc: {\r\n doccontrol:\r\n docDataSource.docDataSource === \"Template\"\r\n ? data.doccontrol\r\n : false,\r\n docDataSource: docDataSource?.docDataSource,\r\n docReport:\r\n docDataSource.docDataSource === \"Report\"\r\n ? selectedReportRef?.docReport?.ReportTemplateId?.toString() ||\r\n \"\"\r\n : \"\",\r\n docNewDoc:\r\n docDataSource.docDataSource === \"Template\"\r\n ? selectedDocControlTemplate?.docNewDoc\r\n .map((item: any) => {\r\n return item.TemplateId.toString();\r\n })\r\n .join(\",\") || \"\"\r\n : \"\",\r\n docEditDoc:\r\n docDataSource.docDataSource === \"Template\"\r\n ? selectedDocControlTemplate?.docEditDoc\r\n .map((item: any) => {\r\n return item.TemplateId.toString();\r\n })\r\n .join(\",\") || \"\"\r\n : \"\",\r\n docCancelDoc:\r\n docDataSource.docDataSource === \"Template\"\r\n ? selectedDocControlTemplate?.docCancelDoc\r\n .map((item: any) => {\r\n return item.TemplateId.toString();\r\n })\r\n .join(\",\") || \"\"\r\n : \"\",\r\n docref:\r\n selectedTemplateRef?.docref?.map((data: any, idx: any) => {\r\n return {\r\n id: data.TemplateId.toString(),\r\n };\r\n }) || [],\r\n },\r\n footerTable: footerTable,\r\n autoRowNumber: \"Y\",\r\n },\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n };\r\n const defaultDataValue = {\r\n row: null,\r\n };\r\n requestData(\r\n dataRequest,\r\n props.itemIdx,\r\n props.layoutIdx,\r\n defaultDataValue\r\n );\r\n } else if (selected === \"10\") {\r\n const dataRequest = {\r\n template: {\r\n type: \"ed\",\r\n label: data.label,\r\n alter: data.alter,\r\n description: \"\",\r\n height: data.height.toString(),\r\n attribute: {\r\n require: data.require ? \"Y\" : \"N\",\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n },\r\n },\r\n data: {\r\n value: richText.value,\r\n },\r\n guid: generateQuickGuid(),\r\n };\r\n requestDataToLayout(dataRequest, props.itemIdx, props.layoutIdx);\r\n } else if (selected === \"11\") {\r\n const dataRequest = {\r\n type: \"at\",\r\n label: data.label,\r\n alter: data.alter,\r\n description: data.fileTypeFile,\r\n attribute: {\r\n require: data.require ? \"Y\" : \"N\",\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n max: data.maxFile.toString(),\r\n },\r\n };\r\n let defValue: any = null;\r\n if (uploadFileState) {\r\n defValue = uploadFileState;\r\n }\r\n const defaultDataValue = { value: defValue };\r\n requestData(\r\n dataRequest,\r\n props.itemIdx,\r\n props.layoutIdx,\r\n defaultDataValue\r\n );\r\n } else if (selected === \"12\") {\r\n const dataRequest = {\r\n type: \"im\",\r\n label: data.label,\r\n alter: data.alter,\r\n fileType: data.fileTypeImage,\r\n attribute: {\r\n maxFile: data.maxFile.toString(),\r\n width: data.width?.toString() || \"\",\r\n height: data.height?.toString() || \"\",\r\n require: data.require ? \"Y\" : \"N\",\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n },\r\n };\r\n let defValue: any = null;\r\n if (uploadFileState) {\r\n defValue = uploadFileState;\r\n }\r\n const defaultDataValue = { value: defValue };\r\n requestData(\r\n dataRequest,\r\n props.itemIdx,\r\n props.layoutIdx,\r\n defaultDataValue\r\n );\r\n } else if (selected === \"13\") {\r\n const dataRequest = {\r\n type: \"bt\",\r\n label: data.label,\r\n alter: data.textButton,\r\n URL: data.url,\r\n attribute: {\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n items: attributeButton.items,\r\n },\r\n };\r\n const defaultDataValue = { value: null };\r\n requestData(\r\n dataRequest,\r\n props.itemIdx,\r\n props.layoutIdx,\r\n defaultDataValue\r\n );\r\n } else if (selected === \"14\") {\r\n const dataRequest = {\r\n type: \"an\",\r\n label: data.label,\r\n alter: data.alter,\r\n digit: data.digit.toString(),\r\n attribute: {\r\n formats: attributeNumber.formats,\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n },\r\n };\r\n const defaultDataValue = { value: null };\r\n requestData(\r\n dataRequest,\r\n props.itemIdx,\r\n props.layoutIdx,\r\n defaultDataValue\r\n );\r\n } else if (selected === \"15\") {\r\n const dataRequest = {\r\n type: \"rvs\",\r\n label: data.label,\r\n alter: data.alter,\r\n attribute: {\r\n digit: data.digit.toString(),\r\n readonly: data.readonly ? \"Y\" : \"N\",\r\n conditions: revisionConditions.conditions,\r\n hideInPdf: data.hideInPdf ? \"Y\" : \"N\",\r\n isNotCopy: data.isNotCopy ? \"Y\" : \"N\",\r\n },\r\n };\r\n const defaultDataValue = { value: null };\r\n requestData(\r\n dataRequest,\r\n props.itemIdx,\r\n props.layoutIdx,\r\n defaultDataValue\r\n );\r\n }\r\n props.setVisibleCreateControl(false);\r\n };\r\n useEffect(()=>{\r\nclearErrors()\r\n },[selected])\r\n const renderComponent = () => {\r\n let _template =\r\n props.advanceForm.items[props.itemIdx].layout[props.layoutIdx].template;\r\n let _data =\r\n props.advanceForm.items[props.itemIdx].layout[props.layoutIdx].data;\r\n\r\n if (selected === \"1\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"2\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"3\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"4\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"5\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"6\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"7\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"8\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"9\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"10\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"11\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"12\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"13\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"14\") {\r\n setComponent(\r\n \r\n );\r\n } else if (selected === \"15\") {\r\n setComponent(\r\n \r\n );\r\n }\r\n };\r\n const handleKeyDown = (event: any, callback: any) => {\r\n if (selected === \"1\" || selected === \"3\") {\r\n return;\r\n } else if (event.key === \"Enter\" && event.shiftKey === false) {\r\n event.preventDefault();\r\n callback(handleSubmit);\r\n }\r\n };\r\n return (\r\n <>\r\n <>\r\n \r\n {props.visibleCreateControl && (\r\n \r\n props.setVisibleCreateControl(!props.visibleCreateControl)\r\n }\r\n breakpoints={{ \"960px\": \"75vw\" }}\r\n blockScroll\r\n draggable={false}\r\n resizable={false}\r\n // footer\r\n >\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n {\r\n handleKeyDown(e, handleSubmit);\r\n }}\r\n >\r\n
{component}
\r\n\r\n
\r\n props.setVisibleCreateControl(false)}\r\n className=\"hover-color-css-white-3 p-button-outlined\"\r\n icon=\"pi pi-times-circle\"\r\n />\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n","import { Dialog } from \"primereact/dialog\";\r\nimport React, { useEffect, useState } from \"react\";\r\n// import \"tinymce/tinymce\";\r\n// import tinymce from \"tinymce/tinymce\";\r\n// import \"tinymce/icons/default\";\r\n// import \"tinymce/themes/silver\";\r\n// import \"tinymce/plugins/paste\";\r\n// import \"tinymce/plugins/link\";\r\n// import \"tinymce/plugins/table\";\r\n// import \"tinymce/plugins/fullscreen\";\r\n// import \"tinymce/plugins/autolink\";\r\n// import \"tinymce/plugins/autosave\";\r\n// import \"tinymce/plugins/charmap\";\r\n// import \"tinymce/plugins/image\";\r\n// import \"tinymce/plugins/imagetools\";\r\n// import \"tinymce/plugins/textpattern\";\r\n// import \"tinymce/plugins/code\";\r\n// import \"tinymce/plugins/advlist\";\r\n// import \"tinymce/plugins/lists\";\r\n// import \"tinymce/plugins/print\";\r\n// import \"tinymce/plugins/preview\";\r\n// import \"tinymce/plugins/hr\";\r\n// import \"tinymce/plugins/anchor\";\r\n// import \"tinymce/plugins/pagebreak\";\r\n// import \"tinymce/plugins/searchreplace\";\r\n// import \"tinymce/plugins/wordcount\";\r\n// import \"tinymce/plugins/insertdatetime\";\r\n// import \"tinymce/plugins/media\";\r\n// import \"tinymce/plugins/nonbreaking\";\r\n// import \"tinymce/plugins/save\";\r\n// import \"tinymce/plugins/contextmenu\";\r\n// import \"tinymce/plugins/directionality\";\r\n// import \"tinymce/plugins/template\";\r\n// import \"tinymce/plugins/textcolor\";\r\n// import \"tinymce/plugins/colorpicker\";\r\n// import \"tinymce/skins/ui/oxide/skin.min.css\";\r\n// import \"tinymce/skins/ui/oxide/content.min.css\";\r\nimport \"./TinyMceComponent.css\";\r\nimport { Editor } from \"@tinymce/tinymce-react\";\r\nimport { ProgressSpinner } from \"primereact/progressspinner\";\r\nimport { UploadTinyMce } from \"../../Services/UploadFileService\";\r\nimport { useUserContext } from \"../../Context/UserContext\";\r\n\r\ninterface Props {\r\n setTextFromValue: any;\r\n textFromValue: any;\r\n canEditDoc?: boolean;\r\n}\r\n\r\nfunction TinyMceComponent(props: Props) {\r\n const [userData, setUserData] = useUserContext();\r\n var _userData = JSON.parse(window.localStorage.getItem(\"userData\") || \"\");\r\n let _sharepointSiteURL = _userData.SharepointSiteURL;\r\n const _tinyURL = _userData.TinyURL;\r\n const [loadingTextFromValue, setLoadingTextFromValue] =\r\n useState(false);\r\n\r\n const handleEditorChange = (content: any, editor: any) => {\r\n props.setTextFromValue(content);\r\n };\r\n\r\n return (\r\n
\r\n {loadingTextFromValue && (\r\n
\r\n \r\n
\r\n )}\r\n {props.canEditDoc ? (\r\n \r\n ) : (\r\n
\r\n )}\r\n
\r\n );\r\n}\r\n\r\nexport default TinyMceComponent;\r\n","import React, { useState, useEffect } from \"react\";\r\nimport \"./FormSettingComponent.css\";\r\nimport { Row, Col } from \"antd\";\r\nimport { DragDropContext, Droppable, Draggable } from \"react-beautiful-dnd\";\r\n\r\nimport Column1 from \"../../../assets/ImageAddControl/Column1.svg\";\r\nimport Column2 from \"../../../assets/ImageAddControl/Column2.svg\";\r\nimport Field from \"../../../assets/ImageAddControl/Field.svg\";\r\nimport FluentText from \"../../../assets/ImageAddControl/FluentText.svg\";\r\n\r\nimport ModalCreateComponents from \"../../CreateControlComponents/ModalCreateComponents/ModalCreateComponents\";\r\nimport { Button as ButtonComponent } from \"../../../components/Button/Button\";\r\nimport { Button } from \"primereact/button\";\r\nimport ButtonForm from \"../../ButtonForm/ButtonForm\";\r\nimport { AiOutlineNumber, AiOutlinePlus } from \"react-icons/ai\";\r\n\r\nimport iconsDelete from \"../../../assets/ImageAddControl/ImageActionAddControl/iconsDelete.svg\";\r\nimport iconsCopy from \"../../../assets/ImageAddControl/ImageActionAddControl/iconsCopy.svg\";\r\nimport iconsEdit from \"../../../assets/ImageAddControl/ImageActionAddControl/iconsEdit.svg\";\r\nimport {\r\n BsFileEarmarkRichtext,\r\n BsFileEarmarkText,\r\n BsFileFont,\r\n BsSortNumericDown,\r\n BsTable,\r\n BsTrash,\r\n BsX,\r\n} from \"react-icons/bs\";\r\nimport { BiCopyAlt, BiText, BiTimeFive } from \"react-icons/bi\";\r\nimport { FaHeading, FaRegImage, FaRegListAlt } from \"react-icons/fa\";\r\nimport { ImTextHeight } from \"react-icons/im\";\r\nimport { FiCalendar } from \"react-icons/fi\";\r\nimport { IoMdRadioButtonOn } from \"react-icons/io\";\r\nimport { MdOutlineCheckBox } from \"react-icons/md\";\r\nimport { generateQuickGuid } from \"../../../Helper/GenerateGuid\";\r\nimport { GrAttachment } from \"react-icons/gr\";\r\nimport { CgPlayButtonO } from \"react-icons/cg\";\r\nimport TinyMceComponent from \"../../TinyMceComponent/TinyMceComponent\";\r\ntype Props = {\r\n setAdvanceForm: any;\r\n advanceForm: any;\r\n textFromValue: any;\r\n setTextFromValue: any;\r\n setViewManageComponent: any;\r\n viewManageComponent: any;\r\n setControlModel: any;\r\n};\r\n\r\nconst FormSettingComponent = (props: Props) => {\r\n const [viewModalControl, setViewModalControl] = useState(false);\r\n\r\n const [itemIdx, setItemsIdx] = useState();\r\n const [layoutIdx, setLayoutIdx] = useState();\r\n const [layoutLength, setLayoutLength] = useState();\r\n\r\n const column1: any = {\r\n layout: [\r\n {\r\n template: {\r\n alter: \"\",\r\n label: \"\",\r\n type: \"em\",\r\n attribute: {\r\n require: \"\",\r\n description: \"\",\r\n length: \"\",\r\n default: \"\",\r\n },\r\n },\r\n data: { value: null },\r\n guid: generateQuickGuid(),\r\n },\r\n ],\r\n };\r\n const column2: any = {\r\n items: {\r\n layout: [\r\n {\r\n template: {\r\n alter: \"\",\r\n label: \"\",\r\n type: \"em\",\r\n attribute: {\r\n require: \"\",\r\n description: \"\",\r\n length: \"\",\r\n default: \"\",\r\n },\r\n },\r\n data: { value: null },\r\n guid: generateQuickGuid(),\r\n },\r\n {\r\n template: {\r\n alter: \"\",\r\n label: \"\",\r\n type: \"em\",\r\n attribute: {\r\n require: \"\",\r\n description: \"\",\r\n length: \"\",\r\n default: \"\",\r\n },\r\n },\r\n data: { value: null },\r\n guid: generateQuickGuid(),\r\n },\r\n ],\r\n },\r\n };\r\n function findUnique(str: string, data: any) {\r\n var uniq = str;\r\n data.map((_dataLayout: any, index: number) => {\r\n _dataLayout.layout.map((_data: any, index: number) => {\r\n if (_data.template.label != undefined) {\r\n if (_data.template.type !== \"em\") {\r\n if (_data.template.label.includes(str)) {\r\n uniq = uniq + \"-copy\";\r\n console.log(str);\r\n console.log(_data.template.label);\r\n }\r\n }\r\n }\r\n });\r\n });\r\n return uniq;\r\n }\r\n\r\n function copyLayout(itemIdx: number, layoutIdx: number, data: any) {\r\n let _components = props.advanceForm.items;\r\n if (_components[itemIdx].layout.length == 1) {\r\n var unique = findUnique(\r\n _components[itemIdx].layout[0].template.label,\r\n props.advanceForm.items\r\n );\r\n const newCol1: any = {\r\n layout: [\r\n {\r\n template: {\r\n ...data.layout[0].template,\r\n label: unique,\r\n },\r\n data: data.layout[0].data,\r\n guid: generateQuickGuid(),\r\n },\r\n ],\r\n };\r\n _components.splice(itemIdx + 1, 0, newCol1);\r\n } else if (_components[itemIdx].layout.length == 2) {\r\n var unique1 = findUnique(\r\n _components[itemIdx].layout[0].template.label,\r\n props.advanceForm.items\r\n );\r\n var unique2 = findUnique(\r\n _components[itemIdx].layout[1].template.label,\r\n props.advanceForm.items\r\n );\r\n const newCol2: any = {\r\n layout: [\r\n {\r\n template: {\r\n ...data.layout[0].template,\r\n label: unique1,\r\n },\r\n data: data.layout[0].data,\r\n guid: generateQuickGuid(),\r\n },\r\n {\r\n template: {\r\n ...data.layout[1].template,\r\n label: unique2,\r\n },\r\n data: data.layout[1].data,\r\n guid: generateQuickGuid(),\r\n },\r\n ],\r\n };\r\n _components.splice(itemIdx + 1, 0, newCol2);\r\n }\r\n props.setAdvanceForm((prevState: any) => ({\r\n ...prevState,\r\n items: [..._components],\r\n }));\r\n }\r\n\r\n function deleteLayout(itemIdx: number, layoutIdx: number) {\r\n let _components = props.advanceForm.items;\r\n _components.splice(itemIdx, 1);\r\n props.setAdvanceForm((prevState: any) => ({\r\n ...prevState,\r\n items: [..._components],\r\n }));\r\n }\r\n\r\n function deleteControl(itemIdx: number, layoutIdx: number, data: any) {\r\n let _components = props.advanceForm.items;\r\n _components[itemIdx].layout[layoutIdx].template = {};\r\n props.setAdvanceForm((prevState: any) => ({\r\n ...prevState,\r\n items: [..._components],\r\n }));\r\n }\r\n\r\n const reorder = (list: any, startIndex: any, endIndex: any) => {\r\n const result = Array.from(list);\r\n\r\n const [removed] = result.splice(startIndex, 1);\r\n result.splice(endIndex, 0, removed);\r\n return result;\r\n };\r\n const onDragEnd = (result: any) => {\r\n let _components = props.advanceForm.items;\r\n if (!result.destination) {\r\n return;\r\n }\r\n const items = reorder(\r\n _components,\r\n result.source.index,\r\n result.destination.index\r\n );\r\n\r\n props.setAdvanceForm((prevState: any) => ({\r\n ...prevState,\r\n items: [...items],\r\n }));\r\n };\r\n\r\n function renderIconShowCreateControl(dataType: any) {\r\n if (dataType === \"l\") {\r\n return (\r\n <>\r\n \r\n Heading\r\n \r\n );\r\n } else if (dataType === \"t\") {\r\n return (\r\n <>\r\n \r\n ShortText\r\n \r\n );\r\n } else if (dataType === \"ta\") {\r\n return (\r\n <>\r\n \r\n MultiLine\r\n \r\n );\r\n } else if (dataType === \"c\") {\r\n return (\r\n <>\r\n \r\n Number\r\n \r\n );\r\n } else if (dataType === \"d\") {\r\n return (\r\n <>\r\n \r\n Calendar\r\n \r\n );\r\n } else if (dataType === \"r\") {\r\n return (\r\n <>\r\n \r\n Choice\r\n \r\n );\r\n } else if (dataType === \"cb\") {\r\n return (\r\n <>\r\n \r\n \r\n MultiChoice\r\n \r\n \r\n );\r\n } else if (dataType === \"dd\") {\r\n return (\r\n <>\r\n \r\n Dropdown\r\n \r\n );\r\n } else if (dataType === \"tb\") {\r\n return (\r\n <>\r\n \r\n Table\r\n \r\n );\r\n } else if (dataType === \"ed\") {\r\n return (\r\n <>\r\n \r\n Rich Text\r\n \r\n );\r\n } else if (dataType === \"at\") {\r\n return (\r\n <>\r\n \r\n Attachment\r\n \r\n );\r\n } else if (dataType === \"bt\") {\r\n return (\r\n <>\r\n \r\n \r\n Button\r\n \r\n \r\n );\r\n } else if (dataType === \"an\") {\r\n return (\r\n <>\r\n \r\n \r\n AutoNumber\r\n \r\n \r\n );\r\n } else if (dataType === \"rvs\") {\r\n return (\r\n <>\r\n \r\n Revision\r\n \r\n );\r\n } else if (dataType === \"im\") {\r\n return (\r\n <>\r\n \r\n Image\r\n \r\n );\r\n }\r\n }\r\n function truncate(str: any, no_words: any) {\r\n return str.split(\" \").splice(0, no_words).join(\" \");\r\n }\r\n\r\n return (\r\n <>\r\n {\r\n console.log(props.advanceForm, \"ControlModel\");\r\n }}\r\n >\r\n
\r\n {\r\n props.setViewManageComponent(\"1\");\r\n props.setControlModel((prevState: any) => ({\r\n ...prevState,\r\n templateForm: { ...prevState.templateForm, IsTextForm: false },\r\n }));\r\n }}\r\n >\r\n Field\r\n \r\n\r\n {\r\n props.setViewManageComponent(\"2\");\r\n props.setControlModel((prevState: any) => ({\r\n ...prevState,\r\n templateForm: { ...prevState.templateForm, IsTextForm: true },\r\n }));\r\n }}\r\n >\r\n Text\r\n \r\n
\r\n {props.viewManageComponent == \"1\" && (\r\n
\r\n {props.advanceForm.items.length === 0 ? (\r\n
\r\n

Please Add Column

\r\n
\r\n ) : (\r\n <>\r\n \r\n \r\n {(provided: any, snapshot: any) => (\r\n \r\n {props.advanceForm.items.map((data: any, idx: any) => (\r\n {\r\n setLayoutLength(data.layout.length);\r\n }}\r\n >\r\n \r\n {(provided: any, snapshot: any) => (\r\n \r\n {data.layout.map((_data: any, idx2: any) => (\r\n \r\n {_data.template.label ? (\r\n
\r\n \r\n deleteControl(idx, idx2, data)\r\n }\r\n >\r\n \r\n

\r\n
\r\n ) : (\r\n <>\r\n )}\r\n\r\n
\r\n \r\n copyLayout(idx, idx2, data)\r\n }\r\n >\r\n \r\n

\r\n \r\n deleteLayout(idx, idx2)\r\n }\r\n >\r\n \r\n

\r\n
\r\n {\r\n setItemsIdx(idx);\r\n setLayoutIdx(idx2);\r\n setViewModalControl(true);\r\n }}\r\n >\r\n {_data.template?.type &&\r\n _data.template?.type != \"em\" ? (\r\n
\r\n
\r\n \r\n {/* {_data.template.label ? (\r\n _data.template.label\r\n ) : (\r\n \r\n )} */}\r\n\r\n {_data.template.textvalue ? (\r\n truncate(\r\n _data.template.textvalue,\r\n 3\r\n )\r\n ) : _data.template.label ? (\r\n _data.template.label\r\n ) : (\r\n \r\n )}\r\n \r\n \r\n {_data.template.textvalue\r\n ? \"\"\r\n : _data.template.alter\r\n ? ` / ${_data.template.alter}`\r\n : \"\"}\r\n {/* {_data.template.alter\r\n ? ` / ${_data.template.alter}`\r\n : \"\"} */}\r\n \r\n
\r\n
\r\n
\r\n {renderIconShowCreateControl(\r\n _data.template.type\r\n )}\r\n
\r\n
\r\n
\r\n ) : (\r\n

\r\n \r\n Add Control\r\n

\r\n )}\r\n
\r\n
\r\n ))}\r\n \r\n )}\r\n \r\n \r\n ))}\r\n {provided.placeholder}\r\n \r\n )}\r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n\r\n {props.viewManageComponent == \"1\" && (\r\n
\r\n {\r\n let col = props.advanceForm.items;\r\n col.push(column1);\r\n props.setAdvanceForm((prevState: any) => ({\r\n ...prevState,\r\n items: [...col],\r\n }));\r\n }}\r\n className=\"set-bg-bttn-glass hover-color-css\"\r\n >\r\n Column1\r\n \r\n {\r\n let col = props.advanceForm.items;\r\n col.push(column2.items);\r\n props.setAdvanceForm((prevState: any) => ({\r\n ...prevState,\r\n items: [...col],\r\n }));\r\n }}\r\n className=\"set-bg-bttn-glass hover-color-css\"\r\n >\r\n Column2\r\n \r\n
\r\n )}\r\n {props.viewManageComponent == \"2\" && (\r\n \r\n )}\r\n \r\n {viewModalControl && (\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default FormSettingComponent;\r\n","import { isEmptyObject } from \"jquery\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { Controller, useForm } from \"react-hook-form\";\r\nimport { IoCloseOutline, IoSaveOutline } from \"react-icons/io5\";\r\nimport { ButtonComponents } from \"../../ButtonComponents/ButtonComponents\";\r\nimport \"../../RequestComponents/InformationComponent/InformationComponent.css\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport { MultiSelect } from \"primereact/multiselect\";\r\nimport Item from \"antd/lib/list/Item\";\r\n\r\ninterface Props {\r\n advanceForm: any;\r\n updateData: any;\r\n setDialogVisible: any;\r\n}\r\n\r\nfunction SelectCondition(props: Props) {\r\n const [selectedColumn, setSelectedColumn] = useState();\r\n const [options, setOptions] = useState([]);\r\n const [value, setValue] = useState();\r\n\r\n const [numCondition, setNumCondition] = useState();\r\n const [isMultiValue, setIsMultiValue] = useState(false);\r\n const [multiOptions, setMultiOptions] = useState([]);\r\n const [multiValues, setMultiValues] = useState();\r\n const [isCheckBox, setIsCheckBox] = useState(false);\r\n const num_conditions = [\r\n { label: \"Equal to (=)\", value: \"Equal_to\" },\r\n { label: \"Not equal (!=)\", value: \"Not_equal\" },\r\n { label: \"Greater-Than (>)\", value: \"Greater_Than\" },\r\n {\r\n label: \"Greater-Than or Equal to (>=)\",\r\n value: \"Greater_Than_or_Equal_to\",\r\n },\r\n { label: \"Less-Than (<)\", value: \"Less_Than\" },\r\n { label: \"Less-Than or Equal to (<=)\", value: \"Less_Than_or_Equal_to\" },\r\n ];\r\n\r\n useEffect(() => {\r\n const advanceForm: any[] = props.advanceForm.items;\r\n let columns: any[] = [];\r\n advanceForm.map((item: any) => {\r\n item.layout.map((layout: any) => {\r\n if (\r\n layout.template.type !== \"l\" &&\r\n layout.template.type !== \"em\" &&\r\n layout.template.type !== \"tb\" &&\r\n !isEmptyObject(layout.template)\r\n ) {\r\n columns.push({ label: layout.template.label, control: layout });\r\n }\r\n });\r\n });\r\n setOptions(columns);\r\n }, []);\r\n\r\n useEffect(() => {\r\n try {\r\n if (selectedColumn !== undefined) {\r\n if (selectedColumn.control) {\r\n if (selectedColumn.control.template.attribute !== undefined) {\r\n if (selectedColumn.control.template.attribute.items !== undefined) {\r\n setIsMultiValue(true);\r\n if (selectedColumn.control.template.type === \"cb\") {\r\n setIsCheckBox(true);\r\n } else {\r\n setIsCheckBox(false);\r\n }\r\n setMultiOptions(selectedColumn.control.template.attribute.items);\r\n } else {\r\n setIsMultiValue(false);\r\n }\r\n } else {\r\n setIsMultiValue(false);\r\n }\r\n }\r\n }\r\n } catch (error) {}\r\n }, [selectedColumn]);\r\n\r\n return (\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {\r\n setValue(\"\");\r\n setSelectedColumn(e.value);\r\n setMultiValues(null);\r\n }}\r\n filter\r\n showClear\r\n filterBy=\"label\"\r\n optionLabel=\"label\"\r\n options={options}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {\r\n setValue(e.target.value);\r\n }}\r\n onBlur={(e) => {\r\n if (selectedColumn?.control?.template?.type === \"c\") {\r\n setValue(\r\n Number(e.target.value).toFixed(\r\n Number(selectedColumn.control.template.attribute.decimal)\r\n )\r\n );\r\n }\r\n }}\r\n className={classNames({\r\n \"p-invalid\":\r\n (value !== undefined && value !== \"\") ||\r\n (multiValues !== undefined &&\r\n multiValues !== \"\" &&\r\n multiValues !== null)\r\n ? false\r\n : true,\r\n })}\r\n autoFocus\r\n />\r\n {value === undefined ||\r\n (value === \"\" && multiValues === null && (\r\n Value is required.\r\n ))}\r\n
\r\n
\r\n {selectedColumn?.control?.template?.type === \"c\" && (\r\n
\r\n
\r\n \r\n
\r\n
\r\n {\r\n setNumCondition(e.value);\r\n }}\r\n filter\r\n showClear\r\n filterBy=\"label\"\r\n optionLabel=\"label\"\r\n options={num_conditions}\r\n />\r\n {numCondition === undefined && (\r\n Condition is required.\r\n )}\r\n
\r\n
\r\n )}\r\n {isMultiValue && (\r\n
\r\n
\r\n \r\n
\r\n
\r\n {!isCheckBox && (\r\n {\r\n setMultiValues(e.value);\r\n }}\r\n className={classNames({\r\n \"p-invalid\":\r\n (value !== undefined && value !== \"\") ||\r\n (multiValues !== undefined &&\r\n multiValues !== \"\" &&\r\n multiValues !== null)\r\n ? false\r\n : true,\r\n })}\r\n filter\r\n showClear\r\n filterBy=\"item\"\r\n optionLabel=\"item\"\r\n options={multiOptions}\r\n />\r\n )}\r\n {isCheckBox && (\r\n setMultiValues(e.value)}\r\n options={multiOptions}\r\n placeholder=\" ----- Select ----- \"\r\n className={classNames({\r\n \"p-invalid\":\r\n (value !== undefined && value !== \"\") ||\r\n (multiValues !== undefined &&\r\n multiValues !== \"\" &&\r\n multiValues !== null)\r\n ? false\r\n : true,\r\n })}\r\n />\r\n )}\r\n {(value !== undefined && value !== \"\") ||\r\n (multiValues === null && (\r\n Condition is required.\r\n ))}\r\n
\r\n
\r\n )}\r\n
\r\n \r\n }\r\n onClickProps={() => props.setDialogVisible(false)}\r\n setClassNameProps=\"p-button-text referenceDocumentDialog-button\"\r\n setStyleProps={{\r\n width: \"100px\",\r\n border: \"0.5px solid #FF2626\",\r\n background: \"#FFFFFF\",\r\n color: \"#FF2626\",\r\n borderRadius: \"6px\",\r\n fontSize: \"13px\",\r\n }}\r\n />\r\n\r\n {\r\n let val: any;\r\n if (selectedColumn !== undefined) {\r\n if (value !== undefined && value !== \"\") {\r\n val = value;\r\n const data: any = {\r\n field: selectedColumn.label,\r\n value: val,\r\n };\r\n if (numCondition) {\r\n val = value;\r\n data.action = numCondition;\r\n }\r\n props.updateData(data, \"condition\");\r\n }\r\n\r\n if (multiValues) {\r\n if (multiValues.item) {\r\n val = multiValues.item;\r\n const data = {\r\n field: selectedColumn.label,\r\n value: val,\r\n };\r\n props.updateData(data, \"condition\");\r\n } else {\r\n let value = multiValues.map((item: any) => {\r\n return item.item;\r\n });\r\n let newValue = value.toString();\r\n const data = {\r\n field: selectedColumn.label,\r\n value: newValue,\r\n };\r\n props.updateData(data, \"condition\");\r\n }\r\n }\r\n }\r\n }}\r\n typeProps={\"button\"}\r\n setLabelProps={\"Save\"}\r\n setIconProps={}\r\n setClassNameProps={\"p-button-text-position\"}\r\n />\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default SelectCondition;\r\n","import { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport \"../../RequestComponents/InformationComponent/InformationComponent.css\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { InputText } from \"primereact/inputtext\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport { FilterMatchMode, FilterOperator } from \"primereact/api\";\r\nimport \"../ReferenceDocumentComponents/ReferenceDocumentComponents.css\";\r\nimport { Button } from \"antd\";\r\ninterface Props {\r\n name: string;\r\n dataKey: string;\r\n dataList: any;\r\n columns: any[];\r\n loading: boolean;\r\n setLoading: any;\r\n updateData: any;\r\n}\r\n\r\nfunction SelectDataFormTable(props: Props) {\r\n const [globalFilterValue1, setGlobalFilterValue1] = useState(\"\");\r\n const userData = JSON.parse(\r\n window.localStorage.getItem(\"userData\") || \"null\"\r\n );\r\n const [filters1, setFilters1] = useState({\r\n global: { value: null, matchMode: FilterMatchMode.CONTAINS },\r\n });\r\n const [globalFilter, setGlobalFilter] = useState(\r\n Object.keys(props.dataList[0])\r\n );\r\n const [selectedData, setSelectedData] = useState([]);\r\n\r\n const dynamicColumns = props.columns.map((col: any) => {\r\n let field = \"\";\r\n if (userData.employeeData.Lang === \"EN\") {\r\n field = col.field.replace(\"Th\", \"En\");\r\n } else {\r\n field = col.field.replace(\"En\", \"Th\");\r\n }\r\n return ;\r\n });\r\n console.log(selectedData);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n const value = e.target.value;\r\n let _filters1 = { ...filters1 };\r\n _filters1[\"global\"].value = value;\r\n setFilters1(_filters1);\r\n setGlobalFilterValue1(value);\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n {\r\n // props.updateData(e.data);\r\n // }}\r\n onSelectionChange={(e) => {\r\n setSelectedData(e.value);\r\n }}\r\n responsiveLayout=\"scroll\"\r\n >\r\n \r\n {dynamicColumns}\r\n \r\n \r\n \r\n \r\n \r\n {\r\n selectedData.forEach((e) => {\r\n props.updateData(e);\r\n });\r\n }}\r\n >\r\n Save\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default SelectDataFormTable;\r\n","import { Checkbox, Select, Table, TableProps } from \"antd\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { IJsonCondition } from \"./AddMatrixCondition\";\r\nimport type { ColumnsType } from \"antd/es/table\";\r\nimport { MultiSelect } from \"primereact/multiselect\";\r\nimport { PlusCircleOutlined } from \"@ant-design/icons\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\n\r\ntype ReadOnlyTableProps = {\r\n jsonConditionField: IJsonCondition[];\r\n templateField: any[];\r\n onChange: (data: IJsonCondition[]) => void;\r\n};\r\n\r\nconst ReadOnlyTable = ({\r\n jsonConditionField,\r\n templateField,\r\n onChange,\r\n}: ReadOnlyTableProps) => {\r\n const handleChange = (key: string, value: any, index: number) => {\r\n onChange(\r\n jsonConditionField.map((rowData, idx) => {\r\n if (idx === index) {\r\n rowData[key] = value;\r\n }\r\n return rowData;\r\n })\r\n );\r\n };\r\n\r\n const columns: ColumnsType = [\r\n {\r\n title: \"Read Only/Hide\",\r\n dataIndex: \"action\",\r\n key: \"action\",\r\n align: \"center\",\r\n width: 200,\r\n render: (val, record, index) => {\r\n return (\r\n handleChange(\"action\", e.value, index)}\r\n options={[\r\n { value: \"readonly\", label: \"Read only\" },\r\n { value: \"editable\", label: \"Editable\" },\r\n { value: \"hide\", label: \"Hide\" },\r\n ]}\r\n style={{ width: \"100% \", fontSize: \"13px\", textAlign: \"left\" }}\r\n optionLabel=\"label\"\r\n />\r\n );\r\n },\r\n },\r\n {\r\n title: \"Action Control\",\r\n dataIndex: \"fieldaction\",\r\n align: \"center\",\r\n key: \"fieldaction\",\r\n render: (val, record, index) => {\r\n return (\r\n <>\r\n {\r\n handleChange(\"fieldaction\", e.target.value, index);\r\n }}\r\n maxSelectedLabels={3}\r\n placeholder=\"-- Please Select --\"\r\n display=\"chip\"\r\n style={{ width: \"100% \", fontSize: \"13px\", textAlign: \"left\" }}\r\n />\r\n \r\n );\r\n },\r\n },\r\n {\r\n title: (\r\n {\r\n onChange([\r\n ...jsonConditionField,\r\n { action: \"readonly\", fieldaction: [], isRequester: \"N\" },\r\n ]);\r\n }}\r\n >\r\n \r\n \r\n ),\r\n align: \"center\",\r\n width: 100,\r\n render: (val, record, index) => (\r\n <>\r\n {\r\n onChange([\r\n ...jsonConditionField.filter((e, idx) => idx !== index),\r\n ]);\r\n }}\r\n />\r\n \r\n ),\r\n },\r\n ];\r\n\r\n return (\r\n
\r\n \r\n \r\n );\r\n};\r\n\r\nexport default ReadOnlyTable;\r\n","import { Checkbox } from \"primereact/checkbox\";\r\nimport { Column } from \"primereact/column\";\r\nimport { confirmDialog } from \"primereact/confirmdialog\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { Controller } from \"react-hook-form\";\r\nimport { FiPlus } from \"react-icons/fi\";\r\nimport { ButtonComponents } from \"../../ButtonComponents/ButtonComponents\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport SelectCondition from \"./SelectCondition\";\r\nimport binIcon from \"../../../assets/bin-icon.png\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport { GetAllDynamic } from \"../../../Services/DynamicService\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport SelectDataFormTable from \"./SelectDataFormTable\";\r\nimport moment from \"moment\";\r\nimport { InputNumber, Radio, Select } from \"antd\";\r\nimport type { SelectProps } from \"antd\";\r\nimport { ReportListTemplateSelect } from \"../../../Services/ReportService\";\r\nimport { MultiSelect } from \"primereact/multiselect\";\r\nimport ReadOnlyTable from \"./ReadOnlyTable\";\r\n\r\ninterface Props {\r\n control: any;\r\n advanceForm: any;\r\n getFormErrorMessage: any;\r\n controlModel: any;\r\n setControlModel: any;\r\n rowData?: any;\r\n allApproveLength: number;\r\n positionList: any;\r\n matrixList: any;\r\n signatureList: any;\r\n approveSlot?: number;\r\n}\r\n\r\nexport type IJsonCondition = {\r\n [x: string]: any;\r\n action: \"readonly\" | \"hide\";\r\n fieldaction: Fieldaction[];\r\n isRequester: string;\r\n};\r\n\r\ntype Fieldaction = {\r\n label: string;\r\n key: string;\r\n};\r\n\r\nexport default function AddMatrixForm(props: Props) {\r\n const [positionLevelOptions, setPositionLevelOptions] = useState([]);\r\n const [options, setOptions] = useState([]);\r\n const [matrixOptions, setMatrixOptions] = useState([]);\r\n const [dialogVisible, setDialogVisible] = useState(false);\r\n const [showDialogFootter, setShowDialogFootter] = useState(true);\r\n const [maxLevel, setMaxLevel] = useState();\r\n const [positionLevel, setPositionLevel] = useState();\r\n const [approvalMatrixDD, setApprovalMatrixDD] = useState();\r\n const [conditionsValue, setConditionsValue] = useState([]);\r\n const [specficApprovals, setSpecficApprovals] = useState([]);\r\n const [dialogTitle, setDialogTitle] = useState(\"\");\r\n const [dialogBody, setDialogBody] = useState();\r\n const [loadingSelectData, setLoadingSelectData] = useState(true);\r\n const [defSignatureID, setDefSignatureID] = useState(-1);\r\n const userData = JSON.parse((window as any).localStorage.getItem(\"userData\"));\r\n const [temSeq, setTemSeq] = useState(0);\r\n const [loc, setLoc] = useState(false);\r\n const [dtp, setDtp] = useState(false);\r\n const [doa, setDoa] = useState(false);\r\n const [spc, setSpc] = useState(false);\r\n const [isParallel, setIsParallel] = useState(false);\r\n const [parallelType, setParallelType] = useState(\"\");\r\n const [approveSlot, setApproveSlot] = useState();\r\n const [readHide, setReadHide] = useState();\r\n const [isRead, setIsRead] = useState(false);\r\n const [isHide, setIsHide] = useState(false);\r\n const [isNewReq, setIsNewReq] = useState(false);\r\n const [templateField, setTemplateField] = useState([]);\r\n const [templateSelected, setTemplateSelected] = useState([]);\r\n const [templateSelectedField, setTemplateSelectedField] = useState([]);\r\n\r\n const [jsonConditionField, setJsonConditionField] = useState([]);\r\n\r\n const labelStyle: any = {\r\n fontStyle: \"normal\",\r\n fontWeight: \"normal\",\r\n fontSize: \"13px\",\r\n lineHeight: \"19px\",\r\n marginLeft: \"5px\",\r\n color: \"#000000\",\r\n };\r\n\r\n useEffect(() => {\r\n if (props.rowData !== undefined) {\r\n setDefValue(props.rowData);\r\n }\r\n }, [matrixOptions]);\r\n\r\n useEffect(() => {\r\n if (props.signatureList !== undefined) {\r\n props.signatureList.map((e: any) => {\r\n if (e.seq == 1) {\r\n setDefSignatureID(e.masterId);\r\n } else if (e.value2 == \"Approved\") {\r\n setDefSignatureID(e.masterId);\r\n }\r\n });\r\n }\r\n }, [props.signatureList]);\r\n\r\n function setDefValue(rowData: any) {\r\n try {\r\n let conditions: any[] = [];\r\n if (\r\n rowData.Conditions !== undefined &&\r\n rowData.Conditions !== null &&\r\n rowData.Conditions !== \"\"\r\n ) {\r\n if (\r\n rowData.Conditions.Conditions !== undefined &&\r\n rowData.Conditions.Conditions !== null\r\n ) {\r\n rowData.Conditions.Conditions.map((con: any) => {\r\n conditions.push({\r\n field: con.field,\r\n value: con.value,\r\n });\r\n });\r\n setConditionsValue(conditions);\r\n }\r\n }\r\n if (\r\n rowData.ColumnJsonCondValue !== undefined &&\r\n rowData.ColumnJsonCondValue !== null &&\r\n rowData.ColumnJsonCondValue !== \"\"\r\n ) {\r\n let jsonCon: IJsonCondition[] = [\r\n ...(rowData.ColumnJsonCondValue.Conditions || []),\r\n ];\r\n props.control._formValues.jsonConditionField = jsonCon;\r\n setJsonConditionField(jsonCon);\r\n }\r\n\r\n if (rowData.ApproveType === 19) {\r\n setLoc(true);\r\n props.positionList.map((e: any) => {\r\n if (rowData.MaxLevelId === e.PositionLevelId) {\r\n props.control._formValues.MaxLevelId = e;\r\n setMaxLevel(e);\r\n }\r\n });\r\n props.control._formValues.Line_of_Command = true;\r\n } else if (rowData.ApproveType === 22) {\r\n setDtp(true);\r\n props.positionList.map((e: any) => {\r\n if (rowData.MaxLevelId === e.PositionLevelId) {\r\n props.control._formValues.PositionLevelId = e;\r\n setPositionLevel(e);\r\n }\r\n });\r\n props.control._formValues.Direct_to_Position = true;\r\n } else if (rowData.ApproveType === 21) {\r\n setDoa(true);\r\n props.matrixList.map((e: any) => {\r\n if (rowData.MaxLevelId === e.ApproveMatrixId) {\r\n props.control._formValues.Approval_MatrixId = e;\r\n setApprovalMatrixDD(e);\r\n }\r\n });\r\n props.control._formValues.Design_of_Authority = true;\r\n } else if (rowData.ApproveType === 20) {\r\n setSpc(true);\r\n props.control._formValues.Specific_Approver = true;\r\n props.control._formValues.spc_isParallel = rowData.IsParallel;\r\n setIsParallel(rowData.IsParallel);\r\n props.control._formValues.IsApproveAll = rowData.IsApproveAll;\r\n setParallelType(rowData.IsApproveAll ? \"all\" : \"slot\");\r\n props.control._formValues.approverSlot = rowData.ApproveSlot;\r\n setSpecficApprovals(rowData.Specific_Approver);\r\n }\r\n } catch (error) {\r\n console.error(\"matrix=>error\", error);\r\n }\r\n }\r\n\r\n const updateChanges = (data: any, componentName?: string) => {\r\n try {\r\n if (data !== undefined) {\r\n if (componentName === \"condition\") {\r\n let conditions: any[] = conditionsValue;\r\n conditions.push({\r\n field: data.field,\r\n value: data.value,\r\n action: data.action,\r\n });\r\n setConditionsValue(conditions);\r\n } else if (data.EmployeeId !== undefined) {\r\n let specific_Approver: any[] = specficApprovals;\r\n const user = data;\r\n\r\n specific_Approver.push({\r\n TemLineId:\r\n props.rowData !== undefined\r\n ? props.rowData.TemLineId !== undefined\r\n ? props.rowData.TemLineId\r\n : props.allApproveLength\r\n : props.allApproveLength,\r\n Seq: specific_Approver.length + 1,\r\n EmployeeId: user.EmployeeId,\r\n EmployeeName:\r\n userData.employeeData.Lang === \"EN\" ? user.NameEn : user.NameTh,\r\n Position:\r\n userData.employeeData.Lang === \"EN\"\r\n ? user.PositionNameEn\r\n : user.PositionNameTh,\r\n SpecificTypeId: 874,\r\n SignatureID: defSignatureID,\r\n CreatedDate: moment(new Date()).format(\"DD MMM YYYY\"),\r\n CreatedBy: userData.employeeData.EmployeeId.toString(),\r\n ModifiedDate: moment(new Date()).format(\"DD MMM YYYY\"),\r\n ModifiedBy: userData.employeeData.EmployeeId.toString(),\r\n });\r\n\r\n setSpecficApprovals([...specific_Approver]);\r\n } else if (data.RoleId !== undefined) {\r\n let specific_Approver: any[] = specficApprovals;\r\n const role = data;\r\n specific_Approver.push({\r\n TemLineId:\r\n props.rowData !== undefined\r\n ? props.rowData.TemLineId !== undefined\r\n ? props.rowData.TemLineId\r\n : props.allApproveLength\r\n : props.allApproveLength,\r\n Seq: specific_Approver.length + 1,\r\n EmployeeId: role.RoleId,\r\n EmployeeName:\r\n userData.employeeData.Lang === \"EN\" ? role.NameEn : role.NameTh,\r\n Position: role.RoleDescription,\r\n SpecificTypeId: 875,\r\n SignatureID: defSignatureID,\r\n CreatedDate: moment(new Date()).format(\"DD MMM YYYY\"),\r\n CreatedBy: userData.employeeData.EmployeeId.toString(),\r\n ModifiedDate: moment(new Date()).format(\"DD MMM YYYY\"),\r\n ModifiedBy: userData.employeeData.EmployeeId.toString(),\r\n });\r\n setSpecficApprovals([...specific_Approver]);\r\n }\r\n } else {\r\n if (componentName === \"requestor\") {\r\n let specific_Approver: any[] = specficApprovals;\r\n\r\n specific_Approver.push({\r\n TemLineId:\r\n props.rowData !== undefined\r\n ? props.rowData.TemLineId !== undefined\r\n ? props.rowData.TemLineId\r\n : props.allApproveLength\r\n : props.allApproveLength,\r\n Seq: specific_Approver.length + 1,\r\n EmployeeId: null,\r\n EmployeeName: \"(Requestor)\",\r\n Position: \"\",\r\n SpecificTypeId: 876,\r\n SignatureID: defSignatureID,\r\n CreatedDate: moment(new Date()).format(\"DD MMM YYYY\"),\r\n CreatedBy: userData.employeeData.EmployeeId.toString(),\r\n ModifiedDate: moment(new Date()).format(\"DD MMM YYYY\"),\r\n ModifiedBy: userData.employeeData.EmployeeId.toString(),\r\n });\r\n setSpecficApprovals([...specific_Approver]);\r\n }\r\n }\r\n setDialogVisible(false);\r\n } catch (error) {\r\n console.error(\"table=>error\", error);\r\n }\r\n };\r\n\r\n function callSelectConditionForm() {\r\n setShowDialogFootter(true);\r\n setLoadingSelectData(false);\r\n setDialogBody(\r\n \r\n );\r\n }\r\n\r\n async function fetchMatrixData() {\r\n let matrix = await GetAllDynamic(\"ApprovalMatrix/GetAll\", undefined);\r\n setMatrixOptions([...matrix.filter((e: any) => e.IsActive === true)]);\r\n }\r\n\r\n async function callSelectUserDialog(apiName: string) {\r\n setDialogTitle(\"Add User\");\r\n let _dataDynamic = await GetAllDynamic(apiName + \"/GetAll\", undefined);\r\n let columns = [\r\n {\r\n field: \"EmployeeCode\",\r\n header: \"EmployeeCode\",\r\n },\r\n {\r\n field: \"NameEn\",\r\n header: \"Employee Name\",\r\n },\r\n {\r\n field: \"PositionNameEn\",\r\n header: \"Position\",\r\n },\r\n {\r\n field: \"DepartmentNameEn\",\r\n header: \"Department\",\r\n },\r\n {\r\n field: \"Email\",\r\n header: \"Email\",\r\n },\r\n ];\r\n setShowDialogFootter(false);\r\n if (_dataDynamic !== undefined) {\r\n setLoadingSelectData(false);\r\n setDialogBody(\r\n \r\n );\r\n }\r\n }\r\n\r\n async function callSelectRoleDialog(apiName: string) {\r\n setDialogTitle(\"Add Role\");\r\n let _dataDynamic = await GetAllDynamic(apiName + \"/GetAll\", undefined);\r\n let columns = [\r\n {\r\n field: \"NameEn\",\r\n header: \"Name\",\r\n },\r\n {\r\n field: \"RoleDescription\",\r\n header: \"Description\",\r\n },\r\n ];\r\n setShowDialogFootter(false);\r\n setLoadingSelectData(false);\r\n if (_dataDynamic !== undefined) {\r\n setDialogBody(\r\n \r\n );\r\n }\r\n }\r\n\r\n const onDeleteRow = (data: any, setData: any, rowIdx: number) => {\r\n let selected: any = [...data];\r\n\r\n confirmDialog({\r\n message: \"Do you to delete this row.\",\r\n header: \"Delete Confirmation\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {\r\n selected.splice(rowIdx, 1);\r\n selected.map((e: any, idx: number) => {\r\n e.Seq = idx + 1;\r\n });\r\n setData(selected);\r\n },\r\n });\r\n };\r\n\r\n async function fecthPositionLevel() {\r\n let _dataDynamic: any[] = await GetAllDynamic(\r\n \"PositionLevel/GetAll?IsActive=true\",\r\n undefined\r\n );\r\n _dataDynamic.sort((a, b) => (a.PositionLevel < b.PositionLevel ? 1 : -1));\r\n setPositionLevelOptions(_dataDynamic);\r\n }\r\n\r\n useEffect(() => {\r\n fecthPositionLevel();\r\n fetchMatrixData();\r\n fetchTemplatData();\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (specficApprovals && specficApprovals.length > 0) {\r\n specficApprovals.map((spc: any) => {\r\n if (spc.SignatureID === 0 || spc.SignatureID === -1) {\r\n spc.SignatureID = defSignatureID;\r\n }\r\n });\r\n props.control._formValues.specific_Approver = specficApprovals;\r\n }\r\n }, [specficApprovals]);\r\n\r\n useEffect(() => {\r\n if (props.control._fields.Conditions !== undefined) {\r\n props.control._formValues.Conditions = conditionsValue;\r\n }\r\n }, [conditionsValue]);\r\n\r\n function onSelected_Sinatures(event: any, rowInx: number) {\r\n let line: any[] = specficApprovals;\r\n line[rowInx].SignatureID = event.value.masterId;\r\n setSpecficApprovals([...line]);\r\n }\r\n\r\n const statusBodyTemplate = (rowData: any, option: any) => {\r\n let selectedValue: any[] = [];\r\n\r\n specficApprovals.map((e: any) => {\r\n if (e.SignatureID !== undefined && e.SignatureID !== -1) {\r\n props.signatureList.map((sig: any) => {\r\n if (e.SignatureID === sig.masterId) {\r\n selectedValue.push(sig);\r\n }\r\n });\r\n } else {\r\n const getSign = props.signatureList.find((sig: any) => {\r\n return rowData.SignatureId\r\n ? rowData.SignatureId === sig.masterId\r\n : sig.seq === \"1\";\r\n });\r\n\r\n selectedValue.push(getSign);\r\n }\r\n });\r\n\r\n return (\r\n // <>{selectedValue[option.rowIndex]}\r\n <>\r\n onSelected_Sinatures(e, option.rowIndex)}\r\n optionLabel={\r\n userData.employeeData.Lang === \"EN\" ? \"value2\" : \"value1\"\r\n }\r\n placeholder=\"Select a Signature\"\r\n />\r\n \r\n );\r\n };\r\n\r\n async function fetchTemplatData() {\r\n let arrayFliedTest: any = [];\r\n const _advanceForm = props.advanceForm.items;\r\n let label: string;\r\n let key: string;\r\n let type: string;\r\n\r\n for (let i = 0; i < _advanceForm.length; i++) {\r\n let layout = _advanceForm[i].layout;\r\n for (let j = 0; j < layout.length; j++) {\r\n let template = layout[j].template;\r\n label = template.type + \" : \" + template.label;\r\n key = template.label;\r\n type = template.type;\r\n arrayFliedTest.push({ label, key, type });\r\n if (template.type === \"tb\") {\r\n for (let k = 0; k < template.attribute.column.length; k++) {\r\n let templateCol = template.attribute.column[k];\r\n label =\r\n template.type +\r\n \" : \" +\r\n template.label +\r\n \" : \" +\r\n templateCol.label;\r\n key = template.label + \" : \" + templateCol.label;\r\n type = template.type;\r\n arrayFliedTest.push({ label, key, type });\r\n }\r\n }\r\n }\r\n }\r\n\r\n setTemplateField(arrayFliedTest);\r\n }\r\n\r\n function OnchangeTemplate(data: any) {\r\n let templateChange: any = [];\r\n\r\n let TemplateSelect = data;\r\n TemplateSelect.map((data: any) => {\r\n templateChange.push({\r\n key: data.key,\r\n type: data.type,\r\n lable: data.label,\r\n });\r\n });\r\n\r\n setTemplateSelectedField(templateChange);\r\n setTemplateSelected(data);\r\n }\r\n\r\n return (\r\n <>\r\n (\r\n \r\n )}\r\n />\r\n
\r\n {props?.rowData?.ApproveType !== 0 && (\r\n <>\r\n \r\n
\r\n \r\n \r\n \r\n {\r\n setDialogTitle(\"Select Condition\");\r\n callSelectConditionForm();\r\n setDialogVisible(!dialogVisible);\r\n }}\r\n typeProps={\"button\"}\r\n setLabelProps={\"Add Condition\"}\r\n setIconProps={}\r\n setClassNameProps={\"p-button-text-position\"}\r\n />\r\n (\r\n <>\r\n {\r\n field.onChange(e.value);\r\n setConditionsValue(e.value);\r\n }}\r\n onValueChange={(e: any) => {\r\n field.onChange(e.value);\r\n setConditionsValue(e.value);\r\n }}\r\n value={conditionsValue}\r\n responsiveLayout=\"scroll\"\r\n >\r\n \r\n }\r\n body={(rowData, options) => options.rowIndex + 1}\r\n >\r\n \r\n }\r\n >\r\n \r\n }\r\n >\r\n \r\n }\r\n body={(rowData: any, options: any) => {\r\n return (\r\n {\r\n onDeleteRow(\r\n conditionsValue,\r\n setConditionsValue,\r\n options.rowIndex\r\n );\r\n }}\r\n >\r\n \"logo\"\r\n \r\n );\r\n }}\r\n >\r\n \r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n )}\r\n\r\n \r\n \r\n \r\n \r\n \r\n {\r\n return (\r\n {\r\n setJsonConditionField(data);\r\n field.onChange(data);\r\n }}\r\n />\r\n );\r\n }}\r\n />\r\n \r\n \r\n {props?.rowData?.ApproveType !== 0 && (\r\n <>\r\n {\" \"}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n {\r\n field.onChange(e.checked);\r\n setLoc(e.checked);\r\n setMaxLevel(null);\r\n }}\r\n className={classNames({\r\n \"p-invalid\": !loc && !doa && !dtp && !spc,\r\n })}\r\n checked={loc}\r\n />\r\n )}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n สายการบังคับบัญชา\r\n \r\n
\r\n \r\n \r\n \r\n \r\n (\r\n {\r\n field.onChange(e.checked);\r\n setDtp(e.checked);\r\n setPositionLevel(null);\r\n }}\r\n className={classNames({\r\n \"p-invalid\": !loc && !doa && !dtp && !spc,\r\n })}\r\n checked={dtp}\r\n />\r\n )}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n ส่งถึงตำแหน่ง\r\n \r\n
\r\n \r\n \r\n \r\n \r\n (\r\n {\r\n field.onChange(e.checked);\r\n setDoa(e.checked);\r\n setApprovalMatrixDD(null);\r\n }}\r\n className={classNames({\r\n \"p-invalid\": !loc && !doa && !dtp && !spc,\r\n })}\r\n checked={doa}\r\n />\r\n )}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n อนุมัติตามอำนาจการดำเนินการ\r\n \r\n
\r\n \r\n \r\n \r\n \r\n (\r\n {\r\n field.onChange(e.checked);\r\n setSpc(e.checked);\r\n }}\r\n className={classNames({\r\n \"p-invalid\": !loc && !doa && !dtp && !spc,\r\n })}\r\n checked={spc}\r\n />\r\n )}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n เลือกผู้อนุมัติเอง\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n {\r\n field.onChange(e.value);\r\n setMaxLevel(e.value);\r\n }}\r\n disabled={!loc}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n optionLabel={\r\n userData.employeeData.Lang === \"EN\"\r\n ? \"NameEn\"\r\n : \"NameTh\"\r\n }\r\n filter\r\n showClear\r\n filterBy={\r\n userData.employeeData.Lang === \"EN\"\r\n ? \"NameEn\"\r\n : \"NameTh\"\r\n }\r\n options={positionLevelOptions}\r\n />\r\n )}\r\n />\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n (\r\n {\r\n field.onChange(e.value);\r\n setPositionLevel(e.value);\r\n }}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n disabled={!dtp}\r\n optionLabel={\r\n userData.employeeData.Lang === \"EN\"\r\n ? \"NameEn\"\r\n : \"NameTh\"\r\n }\r\n filter\r\n showClear\r\n filterBy={\r\n userData.employeeData.Lang === \"EN\"\r\n ? \"NameEn\"\r\n : \"NameTh\"\r\n }\r\n options={positionLevelOptions}\r\n />\r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n {\r\n field.onChange(e.value);\r\n setApprovalMatrixDD(e.value);\r\n }}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n disabled={!doa}\r\n optionLabel={\r\n userData.employeeData.Lang === \"EN\"\r\n ? \"NameEn\"\r\n : \"NameTh\"\r\n }\r\n filter\r\n showClear\r\n filterBy={\r\n userData.employeeData.Lang === \"EN\"\r\n ? \"NameEn\"\r\n : \"NameTh\"\r\n }\r\n options={matrixOptions}\r\n />\r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n {spc && (\r\n <>\r\n \r\n \r\n {\r\n setLoadingSelectData(true);\r\n callSelectUserDialog(\"Employee\");\r\n setDialogVisible(!dialogVisible);\r\n }}\r\n typeProps={\"button\"}\r\n setLabelProps={\"Add User\"}\r\n setIconProps={}\r\n setClassNameProps={\"p-button-text-position\"}\r\n />\r\n \r\n \r\n {\r\n setLoadingSelectData(true);\r\n callSelectRoleDialog(\"Roles\");\r\n setDialogVisible(!dialogVisible);\r\n }}\r\n typeProps={\"button\"}\r\n setLabelProps={\"Add Role\"}\r\n setIconProps={}\r\n setClassNameProps={\"p-button-text-position\"}\r\n />\r\n \r\n \r\n {\r\n updateChanges(undefined, \"requestor\");\r\n }}\r\n typeProps={\"button\"}\r\n setLabelProps={\"Add Requestor\"}\r\n setIconProps={}\r\n setClassNameProps={\"p-button-text-position\"}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n (\r\n {\r\n if (!val.target.checked) {\r\n props.control._fields.approverSlot = 0;\r\n }\r\n setIsParallel(val.target.checked);\r\n field.onChange(val.target.checked);\r\n }}\r\n />\r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n (\r\n {\r\n setParallelType(e.target.value);\r\n field.onChange(e.target.value);\r\n }}\r\n disabled={!isParallel}\r\n value={parallelType}\r\n >\r\n
\r\n Approve All\r\n
\r\n \r\n {/* set field cant show value */}\r\n Approve of \r\n (\r\n {\r\n field.onChange(e);\r\n\r\n console.log(\"value\", e, approveSlot);\r\n }}\r\n />\r\n )}\r\n />\r\n \r\n \r\n )}\r\n />\r\n {/* (\r\n {\r\n field.onChange(e);\r\n }}\r\n />\r\n )}\r\n /> */}\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n {\r\n console.log(\"matrix=>\", specficApprovals);\r\n }}\r\n >\r\n \r\n \r\n
\r\n {spc && (\r\n \r\n \r\n (\r\n {\r\n field.onChange(e.value);\r\n setSpecficApprovals([...e.value]);\r\n }}\r\n className={classNames({\r\n \"p-invalid\": fieldState.invalid,\r\n })}\r\n responsiveLayout=\"scroll\"\r\n >\r\n \r\n }\r\n >\r\n \r\n }\r\n // body={(rowData, options) => options.rowIndex + 1}\r\n >\r\n \r\n }\r\n >\r\n \r\n }\r\n // body={statusBodyTemplate}\r\n >\r\n \r\n }\r\n body={statusBodyTemplate}\r\n >\r\n \r\n }\r\n body={(rowData: any, options: any) => {\r\n return (\r\n {\r\n onDeleteRow(\r\n specficApprovals,\r\n setSpecficApprovals,\r\n options.rowIndex\r\n );\r\n }}\r\n >\r\n \"logo\"\r\n \r\n );\r\n }}\r\n >\r\n \r\n )}\r\n />\r\n {props.getFormErrorMessage(\"specific_Approver\")}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n )}\r\n {\r\n setDialogVisible(false);\r\n }}\r\n blockScroll\r\n draggable={false}\r\n >\r\n {!loadingSelectData && dialogBody}\r\n \r\n \r\n \r\n );\r\n}\r\n","import { Checkbox } from \"primereact/checkbox\";\r\nimport { Column, ColumnBodyOptions } from \"primereact/column\";\r\nimport { DataTable, DataTableRowReorderParams } from \"primereact/datatable\";\r\nimport { RadioButton } from \"primereact/radiobutton\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { FiPlus } from \"react-icons/fi\";\r\nimport { ButtonComponents } from \"../../ButtonComponents/ButtonComponents\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport binIcon from \"../../../assets/bin-icon.png\";\r\nimport editIcon from \"../../../assets/edit-icon.png\";\r\nimport \"../ApproveMatrixComponent/ApproveMatrix.css\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { useForm } from \"react-hook-form\";\r\nimport { IoCloseOutline, IoSaveOutline } from \"react-icons/io5\";\r\nimport { confirmDialog } from \"primereact/confirmdialog\";\r\nimport AddMatrixCondition, { IJsonCondition } from \"./AddMatrixCondition\";\r\nimport moment from \"moment\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport { RiFileCopy2Line } from \"react-icons/ri\";\r\nimport useAlert from \"../../../hooks/useAlert\";\r\n\r\ninterface Props {\r\n setAdvanceForm: any;\r\n advanceForm: any;\r\n controlModel: any;\r\n setControlModel: any;\r\n positionList: any;\r\n matrixList: any;\r\n signatureList: any;\r\n setLogicsApprover: any;\r\n}\r\n\r\ninterface TemApprove {\r\n MaxLevelId?: any;\r\n ApprovalMatrixId?: any;\r\n ApproveType: number;\r\n Conditions: any;\r\n}\r\n\r\nexport default function ApproveMatrix(props: any) {\r\n const { toggleAlert } = useAlert();\r\n const [dialogVisible, setDialogVisible] = useState(false);\r\n const [redundant_Approver, setRedundant_Approver] = useState([]);\r\n const [auto_Approve, setAuto_Approve] = useState();\r\n const [allApprovals, setAllApprovals] = useState([]);\r\n const [selectedApprovals, setSelectedApprovals] = useState([]);\r\n const [templateLogics, setTemplateLogics] = useState([]);\r\n const [dialogTitle, setDialogTitle] = useState(\"\");\r\n const [dialogBody, setDialogBody] = useState();\r\n const userData = JSON.parse((window as any).localStorage.getItem(\"userData\"));\r\n const [dialogMode, setDialogMode] = useState(\"\");\r\n const toast = useRef(null);\r\n\r\n const {\r\n control,\r\n formState: { errors },\r\n handleSubmit,\r\n reset,\r\n } = useForm({\r\n mode: \"all\",\r\n reValidateMode: \"onChange\",\r\n shouldUnregister: false,\r\n });\r\n\r\n const labelStyle: any = {\r\n fontStyle: \"normal\",\r\n fontWeight: \"normal\",\r\n fontSize: \"13px\",\r\n lineHeight: \"19px\",\r\n marginLeft: \"5px\",\r\n color: \"#000000\",\r\n };\r\n\r\n const updateChanges = (data: any, isToggleDialog: boolean = true) => {\r\n let allSelected = allApprovals;\r\n let approveType = -1;\r\n\r\n if (\r\n data.Line_of_Command ||\r\n data.Direct_to_Position ||\r\n data.Design_of_Authority ||\r\n data.Specific_Approver\r\n ) {\r\n //for Edit\r\n if (data.Seq > 0) {\r\n allSelected.map((approval: any) => {\r\n if (approval.Seq === data.Seq) {\r\n approval.Conditions = {};\r\n if (data.Conditions?.length > 0) {\r\n approval.Conditions.Conditions = data.Conditions;\r\n } else {\r\n approval.Conditions = null;\r\n }\r\n approval.ColumnJsonCondValue = {\r\n Conditions: data.jsonConditionField,\r\n };\r\n if (data.Line_of_Command) {\r\n approval.ApproveType = 19;\r\n approval.Type = \"Line of Command\";\r\n approval.MaxLevelId = data.MaxLevelId.PositionLevelId;\r\n approval.MaxLevelName =\r\n userData.employeeData === \"EN\"\r\n ? data.MaxLevelId.NameEn\r\n : data.MaxLevelId.NameTh;\r\n } else if (data.Direct_to_Position) {\r\n approval.ApproveType = 22;\r\n approval.Type = \"Direct to Position\";\r\n approval.MaxLevelId = data.PositionLevelId.PositionLevelId;\r\n approval.MaxLevelName =\r\n userData.employeeData === \"EN\"\r\n ? data.PositionLevelId.NameEn\r\n : data.PositionLevelId.NameTh;\r\n } else if (data.Design_of_Authority) {\r\n approval.ApproveType = 21;\r\n approval.Type = \"Design of Authority\";\r\n approval.MaxLevelId = data.Approval_MatrixId.ApproveMatrixId;\r\n approval.MaxLevelName =\r\n userData.employeeData === \"EN\"\r\n ? data.Approval_MatrixId.NameEn\r\n : data.Approval_MatrixId.NameTh;\r\n } else if (data.Specific_Approver) {\r\n approval.ApproveType = 20;\r\n approval.Type = \"Specific Approver\";\r\n approval.Specific_Approver = data.specific_Approver;\r\n approval.IsParallel = data.spc_isParallel;\r\n approval.IsApproveAll = data.spc_isApproveAll === \"all\";\r\n approval.ApproveSlot =\r\n data.spc_isApproveAll === \"slot\"\r\n ? data.approverSlot\r\n : data.approverSlot;\r\n }\r\n }\r\n });\r\n\r\n setAllApprovals([...allSelected]);\r\n reset();\r\n } else {\r\n //for Add\r\n if (data.Line_of_Command) {\r\n approveType = 19;\r\n\r\n const approval: any = {\r\n Seq: allSelected.length + 1,\r\n MaxLevelId: data.MaxLevelId.PositionLevelId,\r\n MaxLevelName:\r\n userData.employeeData === \"EN\"\r\n ? data.MaxLevelId.NameEn\r\n : data.MaxLevelId.NameTh,\r\n ApproveType: approveType,\r\n Conditions:\r\n data.Conditions.length > 0\r\n ? { Conditions: data.Conditions }\r\n : null,\r\n Type: \"Line of Command\",\r\n ColumnJsonCondValue: { Conditions: data.jsonConditionField },\r\n };\r\n allSelected.push(approval);\r\n setAllApprovals([...allSelected]);\r\n reset();\r\n }\r\n if (data.Direct_to_Position) {\r\n approveType = 22;\r\n\r\n const approval: any = {\r\n Seq: allSelected.length + 1,\r\n MaxLevelId: data.PositionLevelId.PositionLevelId,\r\n MaxLevelName:\r\n userData.employeeData === \"EN\"\r\n ? data.PositionLevelId.NameEn\r\n : data.PositionLevelId.NameTh,\r\n ApproveType: approveType,\r\n Conditions:\r\n data.Conditions.length > 0\r\n ? { Conditions: data.Conditions }\r\n : null,\r\n Type: \"Direct to Position\",\r\n ColumnJsonCondValue: { Conditions: data.jsonConditionField },\r\n };\r\n allSelected.push(approval);\r\n setAllApprovals([...allSelected]);\r\n reset();\r\n }\r\n if (data.Design_of_Authority) {\r\n approveType = 21;\r\n\r\n const approval: any = {\r\n Seq: allSelected.length + 1,\r\n MaxLevelId: data.Approval_MatrixId.ApproveMatrixId,\r\n MaxLevelName:\r\n userData.employeeData === \"EN\"\r\n ? data.Approval_MatrixId.NameEn\r\n : data.Approval_MatrixId.NameTh,\r\n ApproveType: approveType,\r\n Conditions:\r\n data.Conditions.length > 0\r\n ? { Conditions: data.Conditions }\r\n : null,\r\n Type: \"Design of Authority\",\r\n ColumnJsonCondValue: { Conditions: data.jsonConditionField },\r\n };\r\n allSelected.push(approval);\r\n setAllApprovals([...allSelected]);\r\n reset();\r\n }\r\n if (data.Specific_Approver) {\r\n approveType = 20;\r\n\r\n const approval: any = {\r\n Seq: allSelected.length,\r\n Specific_Approver: data.specific_Approver,\r\n ApproveType: approveType,\r\n Conditions:\r\n data.Conditions.length > 0\r\n ? { Conditions: data.Conditions }\r\n : null,\r\n Type: \"Specific Approver\",\r\n ColumnJsonCondValue: { Conditions: data.jsonConditionField },\r\n IsParallel: data.spc_isParallel,\r\n IsApproveAll: data.spc_isApproveAll === \"all\",\r\n ApproveSlot:\r\n data.spc_isApproveAll === \"slot\" ? data.approverSlot : null,\r\n };\r\n\r\n allSelected.push(approval);\r\n\r\n setAllApprovals([...allSelected]);\r\n reset();\r\n }\r\n }\r\n } else if (data.Seq === 0) {\r\n allSelected.map((approval: any) => {\r\n if (approval.Seq === data.Seq) {\r\n approval.ColumnJsonCondValue = {\r\n Conditions: data.jsonConditionField,\r\n };\r\n }\r\n });\r\n setAllApprovals([...allSelected]);\r\n\r\n reset();\r\n } else {\r\n toggleAlert({\r\n description: `Type of Approval is reqiure`,\r\n message: `Require field warning.`,\r\n type: \"warning\",\r\n });\r\n }\r\n if (isToggleDialog) toggleDialog();\r\n };\r\n\r\n function toggleDialog() {\r\n setDialogVisible(!dialogVisible);\r\n }\r\n\r\n const getFormErrorMessage = (name: any) => {\r\n if (name === \"specific_Approver\") {\r\n } else {\r\n return (\r\n errors[name] && (\r\n {errors[name].message}\r\n )\r\n );\r\n }\r\n };\r\n\r\n function callAddMatrixForm() {\r\n setDialogBody(\r\n \r\n );\r\n }\r\n\r\n const onRedundantChange = (e: any) => {\r\n let selected: any = [...redundant_Approver];\r\n\r\n if (e.checked) {\r\n selected.push(e.value);\r\n } else {\r\n selected.splice(selected.indexOf(e.value), 1);\r\n }\r\n\r\n setRedundant_Approver(selected);\r\n };\r\n\r\n useEffect(() => {\r\n props.setControlModel((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...prevState.templateForm,\r\n AutoApprove:\r\n redundant_Approver.indexOf(\"Auto Approve By System\") !== -1,\r\n ApproverCanEdit:\r\n redundant_Approver.indexOf(\"Approver Can Edit Document\") !== -1,\r\n IsCheckAccess:\r\n redundant_Approver.indexOf(\"Approver can check access document\") !==\r\n -1,\r\n },\r\n }));\r\n }, [redundant_Approver]);\r\n\r\n const onDeleteRow = (rowData: any, rowIdx: number) => {\r\n let selected: any = [...allApprovals];\r\n let newSpcApprovals: any[] = [];\r\n confirmDialog({\r\n message: \"Do you to delete this row.\",\r\n header: \"Delete Confirmation\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n className: \"matrix-confirmDialog\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {\r\n selected.splice(rowIdx, 1);\r\n selected.map((e: any, idx: number) => {\r\n if (e.Seq !== 0) {\r\n e.Seq = idx + 1;\r\n if (e.Specific_Approver !== undefined) {\r\n e.Specific_Approver.map((spc: any) => {\r\n spc.TemLineId = e.TemLineId !== undefined ? e.TemLineId : e.Seq;\r\n newSpcApprovals.push(spc);\r\n });\r\n }\r\n }\r\n });\r\n setAllApprovals([...selected]);\r\n props.setControlModel((prevState: any) => ({\r\n ...prevState,\r\n specificApprovers: newSpcApprovals,\r\n }));\r\n },\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n let TemLineApprove: any[] = [];\r\n let spc_approval: any[] = [];\r\n let conditions: any[] = [];\r\n let logic: any[] = [];\r\n let TemplateLogic: any[] = [];\r\n\r\n allApprovals.map((approval: any, index: number) => {\r\n let LstCondition: any[] = [];\r\n\r\n if (\r\n approval.Conditions !== undefined &&\r\n approval.Conditions !== null &&\r\n approval.Conditions !== \"\"\r\n ) {\r\n if (\r\n approval.Conditions.Conditions !== undefined &&\r\n approval.Conditions.Conditions !== null\r\n ) {\r\n if (approval.Conditions.Conditions.length > 0) {\r\n approval.Conditions.Conditions.map((con: any, conIndex: number) => {\r\n const _con = {\r\n Column: con.field,\r\n Value: con.value,\r\n Seq: conIndex + 1,\r\n TemLineId: \"\",\r\n action: con.action,\r\n Tem_LineId: conIndex + 1,\r\n };\r\n conditions.push(_con);\r\n LstCondition.push(_con);\r\n });\r\n } else {\r\n approval.Conditions = null;\r\n }\r\n }\r\n }\r\n\r\n if (approval.ApproveType === 21) {\r\n const _approval = {\r\n TemLineId: approval.TemLineId,\r\n Seq: index,\r\n MaxLevelId: null,\r\n ApprovalMatrixId: approval.MaxLevelId,\r\n CompanyCode: null,\r\n ApproveType: approval.ApproveType,\r\n Conditions: approval.Conditions\r\n ? JSON.stringify(approval.Conditions)\r\n : null,\r\n LstCondition: LstCondition,\r\n CreatedDate: moment(new Date()).format(\"DD MMM YYYY\"),\r\n CreatedBy: userData.employeeData.EmployeeId.toString(),\r\n ModifiedDate: moment(new Date()).format(\"DD MMM YYYY\"),\r\n ModifiedBy: userData.employeeData.EmployeeId.toString(),\r\n IsActive: true,\r\n ColumnJsonCondValue: approval.ColumnJsonCondValue\r\n ? JSON.stringify(approval.ColumnJsonCondValue)\r\n : null,\r\n };\r\n TemLineApprove.push(_approval);\r\n } else {\r\n if (approval.ApproveType === 20) {\r\n approval.Specific_Approver.map((e: any, eIdx: number) => {\r\n e.TemLineId = approval.TemLineId ?? index - 1;\r\n e.Seq = eIdx + 1;\r\n spc_approval.push(e);\r\n });\r\n }\r\n const _approval = {\r\n TemLineId: approval.TemLineId,\r\n Seq: index,\r\n MaxLevelId: approval.MaxLevelId,\r\n ApprovalMatrixId: null,\r\n CompanyCode: null,\r\n ApproveType: approval.ApproveType,\r\n Conditions: approval.Conditions\r\n ? JSON.stringify(approval.Conditions)\r\n : null,\r\n LstCondition: LstCondition,\r\n CreatedDate: moment(new Date()).format(\"DD MMM YYYY\"),\r\n CreatedBy: userData.employeeData.EmployeeId.toString(),\r\n ModifiedDate: moment(new Date()).format(\"DD MMM YYYY\"),\r\n ModifiedBy: userData.employeeData.EmployeeId.toString(),\r\n IsActive: true,\r\n IsParallel: approval.IsParallel,\r\n IsApproveAll: approval.IsApproveAll,\r\n ApproveSlot: approval.ApproveSlot,\r\n ColumnJsonCondValue: approval.ColumnJsonCondValue\r\n ? JSON.stringify(approval.ColumnJsonCondValue)\r\n : null,\r\n };\r\n TemLineApprove.push(_approval);\r\n\r\n // if (_approval.ApproveType === 0 && _approval.ColumnJsonCondValue) {\r\n // readOnlyCondition.push(JSON.parse(_approval.ColumnJsonCondValue));\r\n // }\r\n }\r\n });\r\n\r\n let logicControl: any[] = [];\r\n conditions.map((cons: any) => {\r\n if (\r\n logicControl.filter((e: any) => e.label === cons.Column).length === 0\r\n ) {\r\n logicControl.push({\r\n field: \"\",\r\n label: cons.Column,\r\n action: cons.action,\r\n });\r\n }\r\n });\r\n\r\n logicControl.map((con: any) => {\r\n logic.push(\r\n JSON.stringify({\r\n label: con.label,\r\n methodtype: \"ApprovalMatrix\",\r\n InsertType: \"Last\",\r\n amountstatus: \"false\",\r\n Conditions: logicControl,\r\n })\r\n );\r\n });\r\n\r\n logic.map((logic: any, idx: number) => {\r\n TemplateLogic.push({\r\n seq: idx + 1,\r\n logictype: \"datalineapprove\",\r\n jsonvalue: logic,\r\n lstCondition: conditions,\r\n });\r\n });\r\n setTemplateLogics([...TemplateLogic]);\r\n\r\n props.setLogicsApprover([...TemplateLogic]);\r\n props.setControlModel((prevState: any) => ({\r\n ...prevState,\r\n TemLineApprove: [...TemLineApprove],\r\n specificApprovers: [...spc_approval],\r\n }));\r\n }, [allApprovals]);\r\n\r\n useEffect(() => {\r\n let selected: any = [...redundant_Approver];\r\n\r\n if (props.controlModel.templateForm?.AutoApprove) {\r\n selected.push(\"Auto Approve By System\");\r\n }\r\n if (props.controlModel.templateForm?.ApproverCanEdit) {\r\n selected.push(\"Approver Can Edit Document\");\r\n }\r\n if (props.controlModel.templateForm?.IsCheckAccess) {\r\n selected.push(\"Approver can check access document\");\r\n }\r\n\r\n setAllApprovalsForControl();\r\n setAuto_Approve(props.controlModel.templateForm?.AutoApproveWhen);\r\n setRedundant_Approver(selected);\r\n }, []);\r\n\r\n function setAllApprovalsForControl() {\r\n try {\r\n let temp: any = props.controlModel.TemLineApprove;\r\n\r\n let spcApprove: any = props.controlModel.specificApprovers;\r\n\r\n let approvals: any = [];\r\n\r\n temp.map((tem: any, idx: number) => {\r\n let _con = \"\";\r\n let _ColumnJson = \"\";\r\n if (tem.Conditions !== \"\") {\r\n _con = JSON.parse(tem.Conditions);\r\n }\r\n if (tem.ColumnJsonCondValue) {\r\n if (tem.ColumnJsonCondValue !== \"\") {\r\n _ColumnJson = JSON.parse(tem.ColumnJsonCondValue);\r\n }\r\n }\r\n\r\n if (tem.ApproveType === 20) {\r\n let spcApproves: any = [];\r\n spcApprove.map((e: any) => {\r\n if (tem.Seq - 1 === e.TemLineId) {\r\n spcApproves.push(e);\r\n } else if (tem.TemLineId === e.TemLineId) {\r\n spcApproves.push(e);\r\n }\r\n });\r\n const approval: any = {\r\n IsParallel: tem.IsParallel,\r\n IsApproveAll: tem.IsApproveAll,\r\n ApproveSlot: tem.ApproveSlot,\r\n TemLineId: tem.TemLineId,\r\n Seq: tem.Seq,\r\n Specific_Approver: spcApproves,\r\n ApproveType: tem.ApproveType,\r\n Conditions: _con,\r\n ColumnJsonCondValue: _ColumnJson,\r\n Type: \"Specific Approver\",\r\n };\r\n approvals.push(approval);\r\n } else if (tem.ApproveType === 21) {\r\n let type = GetApproveType(tem.ApproveType);\r\n let maxLevelName = GetMatrixData(tem.ApprovalMatrixId);\r\n let approval: any = {\r\n TemLineId: tem.TemLineId,\r\n Seq: tem.Seq,\r\n MaxLevelId: tem.ApprovalMatrixId,\r\n MaxLevelName: maxLevelName,\r\n ApproveType: tem.ApproveType,\r\n Conditions: _con,\r\n ColumnJsonCondValue: _ColumnJson,\r\n Type: type,\r\n };\r\n approvals.push(approval);\r\n } else {\r\n let type = GetApproveType(tem.ApproveType);\r\n let maxLevelName = GetMaxLevelName(tem.MaxLevelId);\r\n let approval: any = {\r\n TemLineId: tem.TemLineId,\r\n Seq: tem.Seq,\r\n MaxLevelId: tem.MaxLevelId,\r\n MaxLevelName: maxLevelName,\r\n ApproveType: tem.ApproveType,\r\n Conditions: _con,\r\n ColumnJsonCondValue: _ColumnJson,\r\n Type: type,\r\n };\r\n approvals.push(approval);\r\n }\r\n });\r\n\r\n setAllApprovals([...approvals]);\r\n } catch (error) {\r\n console.log(\"Matrix=>\", error);\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n props.setControlModel((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...prevState.templateForm,\r\n AutoApproveWhen: auto_Approve,\r\n },\r\n }));\r\n }, [auto_Approve]);\r\n\r\n function GetMatrixData(matrixId: number) {\r\n let name: string = \"\";\r\n const matrixes = props.matrixList;\r\n\r\n matrixes.map((e: any) => {\r\n if (e.ApproveMatrixId === matrixId) {\r\n if (userData.Leng === \"EN\") {\r\n name = e.NameEn;\r\n } else {\r\n name = e.NameTh;\r\n }\r\n }\r\n });\r\n return name;\r\n }\r\n\r\n function GetMaxLevelName(maxLevelId: number) {\r\n let name: string = \"\";\r\n const positions = props.positionList;\r\n positions.map((e: any) => {\r\n if (e.PositionLevelId === maxLevelId) {\r\n if (userData.employeeData.Lang === \"EN\") {\r\n name = e.NameEn;\r\n } else {\r\n name = e.NameTh;\r\n }\r\n }\r\n });\r\n return name;\r\n }\r\n\r\n function GetApproveType(ApproveTypeId: number) {\r\n const approveType = [\r\n { id: 19, name: \"Line of Command\" },\r\n { id: 20, name: \"Specific Approver\" },\r\n { id: 21, name: \"Design of Authority\" },\r\n { id: 22, name: \"Direct to Position\" },\r\n { id: 0, name: \"Default\" },\r\n ];\r\n let name: string = \"\";\r\n approveType.map((e: any) => {\r\n if (e.id === ApproveTypeId) {\r\n name = e.name;\r\n }\r\n });\r\n\r\n return name;\r\n }\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n All Approvals\r\n

\r\n \r\n \r\n \r\n
\r\n

\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n {\r\n setDialogMode(\"Add\");\r\n setDialogTitle(\"Approve Matrix\");\r\n callAddMatrixForm();\r\n toggleDialog();\r\n }}\r\n setLabelProps={\"Add Matrix\"}\r\n setIconProps={}\r\n setClassNameProps={\"p-button-text-position\"}\r\n />\r\n {\r\n if (e.dragIndex === 0) return;\r\n if (e.dropIndex === 0) return;\r\n e.value.map((approval: any, index: number) => {\r\n approval.Seq = index + 1;\r\n let appSpcific: any[] = [];\r\n if (approval.Specific_Approver !== undefined) {\r\n approval.Specific_Approver.map((spc: any) => {\r\n spc.TemLineId =\r\n approval.TemLineId !== undefined\r\n ? approval.TemLineId\r\n : index;\r\n appSpcific.push(spc);\r\n });\r\n approval.Specific_Approver = appSpcific;\r\n }\r\n });\r\n\r\n setAllApprovals(e.value);\r\n }}\r\n selection={selectedApprovals}\r\n onSelectionChange={(e) => {\r\n setSelectedApprovals(e.value);\r\n }}\r\n responsiveLayout=\"scroll\"\r\n >\r\n \r\n }\r\n >\r\n \r\n }\r\n body={(rowData, options) => options.rowIndex}\r\n >\r\n \r\n }\r\n body={(rowData: any) => {\r\n try {\r\n let str = \"\";\r\n\r\n if (\r\n rowData.Conditions !== null &&\r\n rowData.Conditions !== undefined &&\r\n rowData.Conditions !== \"\"\r\n ) {\r\n rowData?.Conditions?.Conditions?.map(\r\n (con: any, index: number) => {\r\n if (index === 0) {\r\n str = str + (con.field + \":\" + con.value);\r\n } else {\r\n str =\r\n str + \",\" + (con.field + \":\" + con.value);\r\n }\r\n }\r\n );\r\n }\r\n return str;\r\n } catch (error) {}\r\n }}\r\n >\r\n \r\n }\r\n >\r\n \r\n }\r\n body={(rowData: any) => {\r\n if (rowData[\"ApproveType\"] === 20) {\r\n if (rowData[\"Specific_Approver\"] !== undefined) {\r\n let str = \"\";\r\n\r\n rowData[\"Specific_Approver\"].map(\r\n (approver: any, index: number) => {\r\n if (index === 0) {\r\n str = str + approver.EmployeeName;\r\n } else {\r\n str = str + \",\" + approver.EmployeeName;\r\n }\r\n }\r\n );\r\n return str;\r\n }\r\n } else {\r\n return rowData.MaxLevelName;\r\n }\r\n }}\r\n >\r\n \r\n }\r\n body={(rowData: any, options) => {\r\n if (rowData.ApproveType !== 0) {\r\n return (\r\n {\r\n let allSelected = [...allApprovals];\r\n\r\n let newRow: any = JSON.parse(\r\n JSON.stringify(rowData)\r\n );\r\n newRow.TemLineId = undefined;\r\n if (newRow.ApproveType === 20) {\r\n const spcs = newRow.Specific_Approver\r\n ? JSON.parse(\r\n JSON.stringify(newRow.Specific_Approver)\r\n )\r\n : [];\r\n newRow.Specific_Approver = spcs.map(\r\n (spc: any) => {\r\n spc.TemSpecificId = undefined;\r\n spc.TemLineId = allSelected.length;\r\n return spc;\r\n }\r\n );\r\n }\r\n allSelected.push(newRow);\r\n newRow.Seq = allSelected.length;\r\n\r\n setAllApprovals([...allSelected]);\r\n }}\r\n >\r\n \r\n \r\n );\r\n } else {\r\n <>;\r\n }\r\n }}\r\n >\r\n \r\n }\r\n body={(rowData: any) => (\r\n {\r\n setDialogMode(\"Edit\");\r\n setDialogBody(\r\n \r\n );\r\n toggleDialog();\r\n }}\r\n >\r\n \"logo\"\r\n \r\n )}\r\n >\r\n\r\n \r\n }\r\n body={(rowData: any, options: any) => {\r\n if (rowData.ApproveType !== 0) {\r\n return (\r\n {\r\n onDeleteRow(rowData, options.rowIndex);\r\n }}\r\n >\r\n \"logo\"\r\n \r\n );\r\n } else {\r\n <>;\r\n }\r\n }}\r\n >\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Redundant Approval Condition\r\n

\r\n \r\n \r\n \r\n
\r\n

\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n ให้ระบบอนุมัติให้โดยอัตโนมัติ\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n ผู้อนุมัติสามารถแก้ไขข้อมูลได้\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n ผู้อนุมัติสามารถจองข้อมูลที่แก้ไขข้อมูลได้\r\n \r\n
\r\n \r\n \r\n \r\n \r\n {redundant_Approver.indexOf(\"Auto Approve By System\") !== -1 && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n setAuto_Approve(e.value)}\r\n checked={auto_Approve === \"F\"}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n อนุมัติเฉพาะขั้นแรก\r\n \r\n
\r\n \r\n \r\n \r\n \r\n setAuto_Approve(e.value)}\r\n checked={auto_Approve === \"L\"}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n อนุมัติเฉพาะขั้นสุดท้าย\r\n \r\n
\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n {\r\n reset();\r\n setDialogVisible(false);\r\n }}\r\n blockScroll\r\n draggable={false}\r\n >\r\n \r\n {dialogBody}\r\n
\r\n \r\n }\r\n onClickProps={() => {\r\n reset();\r\n setDialogVisible(false);\r\n }}\r\n typeProps={\"button\"}\r\n setClassNameProps=\"p-button-text referenceDocumentDialog-button\"\r\n setStyleProps={{\r\n width: \"100px\",\r\n border: \"0.5px solid #FF2626\",\r\n background: \"#FFFFFF\",\r\n color: \"#FF2626\",\r\n borderRadius: \"6px\",\r\n fontSize: \"13px\",\r\n }}\r\n />\r\n }\r\n setClassNameProps={\"p-button-text-position\"}\r\n />\r\n
\r\n \r\n \r\n \r\n );\r\n}\r\n","import React, { useState } from \"react\";\r\nimport { Checkbox } from \"primereact/checkbox\";\r\nimport \"./CheckboxCpmponents.css\";\r\n\r\ninterface Props {\r\n checkedProps?: any;\r\n onChangeProps?: any;\r\n keyProps?: any;\r\n notLable?: any;\r\n readOnlyProps?: boolean;\r\n}\r\n\r\nexport const CheckboxCpmponents = (props: Props) => {\r\n return (\r\n
\r\n props.onChangeProps(e.checked, props.keyProps)}\r\n readOnly={props.readOnlyProps}\r\n />\r\n \r\n {props.notLable !== true && <>{\"Yes\"}}\r\n \r\n
\r\n );\r\n};\r\n","import { AutoComplete, Button, Modal, Radio, Space, Table } from \"antd\";\r\nimport React, { useState, useEffect } from \"react\";\r\nimport { Row, Col } from \"react-bootstrap\";\r\nimport { useUserContext } from \"../../../Context/UserContext\";\r\nimport { GetDepartment } from \"../../../Services/DepartmentService\";\r\nimport { GetAllEmployee } from \"../../../Services/EmployeeService\";\r\nimport AutoCompleteComponents from \"../../AutoCompleteComponents/AutoCompleteComponents\";\r\nimport { ButtonComponents } from \"../../ButtonComponents/ButtonComponents\";\r\nimport { CheckboxCpmponents } from \"../../CheckboxCpmponents/CheckboxCpmponents\";\r\nimport { InputTextComponents } from \"../../InputTextComponents/InputTextComponents\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport type { RadioChangeEvent } from \"antd\";\r\nimport \"../TemplateDetailComponents.css\";\r\nimport { RiDeleteBin6Line } from \"react-icons/ri\";\r\nimport { SelectDataDialog } from \"../../Select/SelectionDataDialog/SelectDataDialog\";\r\nimport { ColumnsType } from \"antd/lib/table\";\r\ninterface Props {\r\n InformationDataProps: any;\r\n setControlModelObj?: any;\r\n state?: string;\r\n checkValidation?: any;\r\n isLoadProps: any;\r\n groupDataTemplate: any;\r\n setGroupDataTemplate: any;\r\n isVersion: boolean;\r\n}\r\n\r\nexport const InformationComponents = (props: Props) => {\r\n const [departmentList, setDepartmentList] = useState({});\r\n const [informationDataProps, setInformationDataPropst] = useState({\r\n ...props.InformationDataProps,\r\n });\r\n const [filteredAutoComplete, setFilteredAutoComplete] = useState();\r\n const [key, setKey] = useState();\r\n const [globalFilterValue, setGlobalFilterValue] = useState(\"\");\r\n const [searchData, setSearchData] = useState([]);\r\n const [isDialogVisible, setDialogVisible] = useState(false);\r\n const [isloading, setIsloading] = useState(false);\r\n const [employee, setEmployee] = useState({});\r\n const [departmentSelect, setDepartmentSelect] = useState({});\r\n const [toSelect, setToSelect] = useState([]);\r\n const [ccSelect, setCcSelect] = useState([]);\r\n const [toName, setToName] = useState([]);\r\n const [ccnName, setCcName] = useState([]);\r\n const [userData, setUserData] = useUserContext();\r\n const [categoryFilter, setCategoryFilter] = useState(\r\n props.groupDataTemplate\r\n );\r\n const [isMobile, setIsMobile] = useState(false);\r\n const [toValue, setToValue] = useState(toName);\r\n const [CCValue, setCCValue] = useState(ccnName);\r\n console.log(\"mylogg\",props.InformationDataProps);\r\n useEffect(() => {\r\n if (toSelect) {\r\n let filtered = toSelect.filter((e: any, idx: number) => idx <= 2);\r\n setToValue(filtered);\r\n }\r\n if (ccnName) {\r\n let filtered = ccSelect.filter((e: any, idx: number) => idx <= 2);\r\n setCCValue(filtered);\r\n }\r\n }, [toSelect, ccSelect]);\r\n\r\n useEffect(() => {\r\n checkDevice();\r\n }, []);\r\n\r\n const checkDevice = () => {\r\n let regexp = /android|iphone|kindle|ipad/i;\r\n let isMobileDevice = regexp.test(navigator.userAgent);\r\n setIsMobile(isMobileDevice);\r\n if (isMobileDevice) {\r\n console.log(\"Mobile Device\");\r\n } else {\r\n console.log(\"Desktop\");\r\n }\r\n };\r\n useEffect(() => {\r\n if (\r\n Object.keys(departmentList).length === 0 &&\r\n Object.keys(employee).length === 0\r\n ) {\r\n _fechDepartment();\r\n _fechEmployee();\r\n dataToAndCC(employee);\r\n }\r\n }, [departmentList, employee]);\r\n\r\n useEffect(() => {\r\n if (\r\n Object.keys(departmentList).length !== 0 &&\r\n Object.keys(employee).length !== 0\r\n ) {\r\n dataToAndCC(employee);\r\n }\r\n }, [props.InformationDataProps]);\r\n\r\n async function dataToAndCC(employeeData: any) {\r\n try {\r\n let _to =\r\n props.InformationDataProps.templateForm.ToId.length === 0\r\n ? []\r\n : props.InformationDataProps.templateForm.ToId.split(\",\");\r\n\r\n let _cc =\r\n props.InformationDataProps.templateForm.CcId.length === 0\r\n ? []\r\n : props.InformationDataProps.templateForm.CcId.split(\",\");\r\n let _employeeData =\r\n Object.keys(employeeData).length === 0 ? [] : employeeData;\r\n if (_employeeData.length === 0) return;\r\n let _toArray: any = [];\r\n let _toName: any = [];\r\n let _ccArray: any = [];\r\n let _ccName: any = [];\r\n if (_to.length !== 0) {\r\n // new code\r\n for(let item of _to){\r\n let emp = _employeeData?.find((x: any) => x?.NameEn === item);\r\n let _duplicate = _toArray?.some((x: any) => x?.NameEn === emp?.NameEn) \r\n if(emp && !_duplicate){\r\n _toArray.push(emp)\r\n }\r\n }\r\n // for (let i = 0; i < _employeeData.length; i++) {\r\n // for (let j = 0; j < _to.length; j++) {\r\n // if (_employeeData[i].NameEn === _to[j]) {\r\n // if (_toArray.length != 0) {\r\n // let _dataFilter = _toArray.filter(\r\n // (item: any) => item.NameEn === _employeeData[i].NameEn\r\n // );\r\n\r\n // if (_dataFilter.length === 0) {\r\n // _toArray.push(_employeeData[i]);\r\n // }\r\n // } else {\r\n // _toArray.push(employee[i]);\r\n // }\r\n // }\r\n // }\r\n // }\r\n\r\n if (_to.length !== _toArray.length) {\r\n let _dataFilter = _to.filter((data: any) => {\r\n let _data = _toArray.filter((_data: any) => _data.NameEn === data);\r\n if (_data.length === 0) {\r\n let _event = {\r\n AccountCode: \"\",\r\n AccountName:\r\n \" \",\r\n CreatedBy: null,\r\n CreatedDate: \"\",\r\n DefaultLang: \"EN\",\r\n DepartmentId: null,\r\n DepartmentNameEn: \"\",\r\n DepartmentNameTh: \"\",\r\n Email: \"\",\r\n EmployeeCode: \"\",\r\n EmployeeId: null,\r\n ExpiredDate: \"\",\r\n IsActive: true,\r\n Lang: \"EN\",\r\n ModifiedBy: \"\",\r\n ModifiedDate: \"\",\r\n NameEn: data,\r\n NameTh: data,\r\n PositionId: null,\r\n PositionNameEn: \"\",\r\n PositionNameTh: \"\",\r\n RegisteredDate: \"\",\r\n ReportToEmpCode: \"\",\r\n SignPicPath: null,\r\n Username: \"\",\r\n };\r\n _toArray.push(_event);\r\n }\r\n });\r\n }\r\n _toArray.map((e: any) => {\r\n _toName.push(userData.Lang === \"EN\" ? e.NameEn : e.NameTh);\r\n });\r\n setToName(_toName);\r\n setToSelect(_toArray);\r\n }\r\n if (_cc.length !== 0) {\r\n // new code\r\n for(let item of _cc){\r\n let emp = _employeeData?.find((x: any) => x?.NameEn === item);\r\n let _duplicate = _ccArray?.some((x: any) => x?.NameEn === emp?.NameEn) \r\n if(emp && !_duplicate){\r\n _ccArray.push(emp)\r\n }\r\n }\r\n // for (let i = 0; i < _employeeData.length; i++) {\r\n // for (let j = 0; j < _cc.length; j++) {\r\n // if (_employeeData[i].NameEn === _cc[j]) {\r\n // if (_ccArray.length != 0) {\r\n // let _dataFilter = _ccArray.filter(\r\n // (item: any) => item.NameEn === _employeeData[i].NameEn\r\n // );\r\n // if (_dataFilter.length === 0) {\r\n // _ccArray.push(_employeeData[i]);\r\n // }\r\n // } else {\r\n // _ccArray.push(employee[i]);\r\n // }\r\n // }\r\n // }\r\n // }\r\n // ไม่รู้ว่ามีไว้ทำไมเลยคอมเมนท์ไว้ก่อน เขาเขียนไว้\r\n // _employeeData.filter((_data: any) => {\r\n // let _dataCc = _cc.filter(\r\n // (dataCc: any) => _data.NameTh === dataCc || _data.NameEn === dataCc\r\n // );\r\n\r\n // if (_dataCc.length !== 0) {\r\n // if(ccEmpCode == _data.EmployeeId){\r\n // _ccArray.push(_data);\r\n // }\r\n // }\r\n // });\r\n if (_cc.length !== _ccArray.length) {\r\n let _dataFilter = _cc.filter((data: any) => {\r\n let _data = _ccArray.filter((_data: any) => _data.NameEn === data);\r\n if (_data.length === 0) {\r\n let _event = {\r\n AccountCode: \"\",\r\n AccountName:\r\n \" \",\r\n CreatedBy: null,\r\n CreatedDate: \"\",\r\n DefaultLang: \"EN\",\r\n DepartmentId: null,\r\n DepartmentNameEn: \"\",\r\n DepartmentNameTh: \"\",\r\n Email: \"\",\r\n EmployeeCode: \"\",\r\n EmployeeId: null,\r\n ExpiredDate: \"\",\r\n IsActive: true,\r\n Lang: \"EN\",\r\n ModifiedBy: \"\",\r\n ModifiedDate: \"\",\r\n NameEn: data,\r\n NameTh: data,\r\n PositionId: null,\r\n PositionNameEn: \"\",\r\n PositionNameTh: \"\",\r\n RegisteredDate: \"\",\r\n ReportToEmpCode: \"\",\r\n SignPicPath: null,\r\n Username: \"\",\r\n };\r\n _ccArray.push(_event);\r\n }\r\n });\r\n }\r\n _ccArray.map((e: any) => {\r\n _ccName.push(userData.Lang === \"EN\" ? e.NameEn : e.NameTh);\r\n });\r\n setCcName(_ccName);\r\n setCcSelect(_ccArray);\r\n }\r\n } catch (error) {}\r\n }\r\n const [showDialogEmp, setShowDialogEmp] = useState(true);\r\n async function showModal(key: any) {\r\n if (globalFilterValue != \"\") {\r\n setGlobalFilterValue(\"\");\r\n }\r\n // setDialogVisible(!isDialogVisible);\r\n // setKey(key);\r\n // _fechEmployee();\r\n // setIsloading(true);\r\n setDialogVisible(!isDialogVisible);\r\n let req = {\r\n IsActiveOnly: true,\r\n Scopes: \"name,email,org\",\r\n };\r\n setKey(key);\r\n if (showDialogEmp) {\r\n if (employee.length <= 0) {\r\n const employeeList = await GetAllEmployee(req);\r\n setEmployee(employeeList);\r\n setSearchData(employeeList);\r\n }\r\n\r\n setShowDialogEmp(!showDialogEmp);\r\n }\r\n }\r\n function onSelectedEmployeeToAndPass(data: any) {\r\n let checkValue: boolean = false;\r\n const _value = userData.Lang === \"EN\" ? data.NameEn : data.NameTh;\r\n _AutoComplete(data, key === \"ToId\" ? key : \"CcId\");\r\n setDialogVisible(!isDialogVisible);\r\n // false;\r\n }\r\n\r\n async function _fechEmployee() {\r\n const _employee = await GetAllEmployee();\r\n dataToAndCC(_employee);\r\n setEmployee(_employee);\r\n setSearchData(_employee);\r\n setIsloading(true);\r\n }\r\n\r\n async function _fechDepartment() {\r\n const _Department = await GetDepartment();\r\n let _dataFilter = _Department.filter(\r\n (_department: any) => _department.NameEn !== null\r\n );\r\n if (props.InformationDataProps.templateForm?.DepartmentId !== 0) {\r\n let _dataFilterDepartmentId = _dataFilter.filter(\r\n (_department: any) =>\r\n _department.DepartmentId ===\r\n props.InformationDataProps.templateForm?.DepartmentId\r\n );\r\n setDepartmentSelect(_dataFilterDepartmentId[0]);\r\n }\r\n setDepartmentList(_dataFilter);\r\n }\r\n\r\n async function _DropdownDepartment(data: any, key: any) {\r\n if (data === undefined || data === null) {\r\n } else {\r\n props.setControlModelObj((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...props.InformationDataProps.templateForm,\r\n DepartmentId: data.DepartmentId,\r\n },\r\n }));\r\n\r\n setDepartmentSelect(data);\r\n }\r\n }\r\n async function _RadioButtonFormType(data: any, key: any) {\r\n if (data) {\r\n setDepartmentSelect({});\r\n }\r\n props.setControlModelObj((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...props.InformationDataProps.templateForm,\r\n isPublic: data,\r\n DepartmentId:\r\n data === false\r\n ? props.InformationDataProps.templateForm.DepartmentId\r\n : 0,\r\n },\r\n }));\r\n }\r\n async function _CheckboxCpmponents(data: any, key: any) {\r\n props.setControlModelObj((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...props.InformationDataProps.templateForm,\r\n [key]: data,\r\n },\r\n }));\r\n }\r\n async function _InputText(data: any, key: any) {\r\n props.setControlModelObj((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...props.InformationDataProps.templateForm,\r\n [key]: data,\r\n },\r\n }));\r\n }\r\n\r\n function selecteOrTypeListInToAndPass(event: any, type: any) {\r\n let checkValue: boolean = false;\r\n const _value = event.value.map((item: any) => {\r\n if (!(typeof item === \"string\")) {\r\n return item.NameEn;\r\n } else {\r\n return item;\r\n }\r\n });\r\n if (type === \"ToId\") {\r\n let _components = toSelect;\r\n _components = [..._value];\r\n setToName([..._components]);\r\n setToSelect([..._components]);\r\n props.setControlModelObj((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...props.InformationDataProps.templateForm,\r\n ToId: _components.toString(),\r\n },\r\n }));\r\n } else if (type === \"CcId\") {\r\n let _components = ccSelect;\r\n _components = [..._value];\r\n\r\n setCcName([..._components]);\r\n setCcSelect([..._components]);\r\n props.setControlModelObj((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...props.InformationDataProps.templateForm,\r\n CcId: _components.toString(),\r\n },\r\n }));\r\n }\r\n }\r\n async function _AutoComplete(data: any, key: any) {\r\n const _value = userData.Lang === \"EN\" ? data.NameEn : data.NameTh;\r\n let checkValue: boolean = false;\r\n\r\n if (key === \"ToId\") {\r\n let _ToArray: any = toName;\r\n _ToArray.filter((_item: any) => {\r\n if (_value === _item) {\r\n checkValue = true;\r\n }\r\n });\r\n _ToArray.push(_value);\r\n setToName([..._ToArray]);\r\n setToSelect([..._ToArray]);\r\n props.setControlModelObj((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...props.InformationDataProps.templateForm,\r\n ToId: _ToArray.toString(),\r\n },\r\n }));\r\n } else if (key === \"CcId\") {\r\n let _CcArray: any = ccnName;\r\n\r\n _CcArray.filter((_item: any) => {\r\n if (_value === _item) {\r\n checkValue = true;\r\n }\r\n });\r\n _CcArray.push(_value);\r\n setCcName([..._CcArray]);\r\n setCcSelect([..._CcArray]);\r\n props.setControlModelObj((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...props.InformationDataProps.templateForm,\r\n CcId: _CcArray.toString(),\r\n },\r\n }));\r\n }\r\n }\r\n\r\n const searchAutoComplete = async (event: any) => {\r\n const _employee = employee;\r\n\r\n setTimeout(() => {\r\n let _filteredEmployee;\r\n if (!event.query.trim().length) {\r\n _filteredEmployee = [..._employee];\r\n } else {\r\n _filteredEmployee = _employee.filter((dataemployee: any) => {\r\n if (\r\n dataemployee.NameEn.toLowerCase().includes(\r\n event.query.toLowerCase()\r\n )\r\n ) {\r\n return dataemployee.NameEn.toLowerCase().includes(\r\n event.query.toLowerCase()\r\n );\r\n }\r\n if (\r\n dataemployee.NameEn.toLowerCase().includes(\r\n event.query.toLowerCase()\r\n )\r\n ) {\r\n return dataemployee.NameEn.toLowerCase().includes(\r\n event.query.toLowerCase()\r\n );\r\n }\r\n if (\r\n dataemployee.PositionNameTh.toLowerCase().includes(\r\n event.query.toLowerCase()\r\n )\r\n ) {\r\n return dataemployee.PositionNameTh.toLowerCase().includes(\r\n event.query.toLowerCase()\r\n );\r\n }\r\n if (\r\n dataemployee.PositionNameEn.toLowerCase().includes(\r\n event.query.toLowerCase()\r\n )\r\n ) {\r\n return dataemployee.PositionNameEn.toLowerCase().includes(\r\n event.query.toLowerCase()\r\n );\r\n }\r\n });\r\n }\r\n\r\n setFilteredAutoComplete(_filteredEmployee);\r\n }, 250);\r\n };\r\n const searchEmployeeEnter = (event: any, key: any) => {\r\n console.log(\"searchEvent\", event);\r\n\r\n let dataSelectEmployee: any[] =\r\n key === \"ToId\" ? [...toSelect] : [...ccSelect];\r\n if (event.length !== 0) {\r\n let _event = {\r\n AccountCode: \"\",\r\n AccountName:\r\n \" \",\r\n CreatedBy: null,\r\n CreatedDate: \"\",\r\n DefaultLang: \"EN\",\r\n DepartmentId: null,\r\n DepartmentNameEn: \"\",\r\n DepartmentNameTh: \"\",\r\n Email: \"\",\r\n EmployeeCode: \"\",\r\n EmployeeId: null,\r\n ExpiredDate: \"\",\r\n IsActive: true,\r\n Lang: \"EN\",\r\n ModifiedBy: \"\",\r\n ModifiedDate: \"\",\r\n NameEn: event,\r\n NameTh: event,\r\n PositionId: null,\r\n PositionNameEn: \"\",\r\n PositionNameTh: \"\",\r\n RegisteredDate: \"\",\r\n ReportToEmpCode: \"\",\r\n SignPicPath: null,\r\n Username: \"\",\r\n };\r\n dataSelectEmployee.push(_event);\r\n console.log(\"dataSelectEmployee\", dataSelectEmployee);\r\n\r\n _AutoComplete(dataSelectEmployee, key === \"ToId\" ? key : \"CcId\");\r\n }\r\n };\r\n const onChangeReportLang = (e: RadioChangeEvent) => {\r\n props.setControlModelObj((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...props.InformationDataProps.templateForm,\r\n ReportLang: e.target.value,\r\n },\r\n }));\r\n };\r\n const customModalStyle = {\r\n padding: \"30px\",\r\n maxHeight: \"20px\",\r\n };\r\n\r\n const filterToCC = (event: any, type: any) => {\r\n if (type === \"to\") {\r\n const filtered = toName.filter((e: any) => e !== event);\r\n setToName([...filtered]);\r\n setToSelect([...filtered]);\r\n props.setControlModelObj((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...props.InformationDataProps.templateForm,\r\n ToId: filtered.toString(),\r\n },\r\n }));\r\n\r\n Modal.destroyAll();\r\n } else if (type === \"pass\") {\r\n const filtered = ccnName.filter((e: any) => e !== event);\r\n setCcName([...filtered]);\r\n setCcSelect([...filtered]);\r\n props.setControlModelObj((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...props.InformationDataProps.templateForm,\r\n CcId: filtered.toString(),\r\n },\r\n }));\r\n\r\n Modal.destroyAll();\r\n }\r\n };\r\n const columnsTo: ColumnsType = [\r\n {\r\n title: \"#\",\r\n dataIndex: \"#\",\r\n key: \"#\",\r\n render: (_, record: any, idx: number) => {\r\n return (\r\n <>\r\n
{idx + 1}
\r\n \r\n );\r\n },\r\n },\r\n {\r\n title: \"Name\",\r\n dataIndex: \"name\",\r\n key: \"name\",\r\n render: (_, record: any) => {\r\n return (\r\n <>\r\n
{record}
\r\n \r\n );\r\n },\r\n },\r\n\r\n {\r\n title: (\r\n
Action
\r\n ),\r\n key: \"action\",\r\n render: (_, record) => (\r\n
\r\n \r\n }\r\n className=\"set-button-css-ref\"\r\n onClick={() => {\r\n filterToCC(record, \"to\");\r\n }}\r\n />\r\n \r\n
\r\n ),\r\n },\r\n ];\r\n\r\n const columnsCC: ColumnsType = [\r\n {\r\n title: \"#\",\r\n dataIndex: \"#\",\r\n key: \"#\",\r\n render: (_, record: any, idx: number) => {\r\n return (\r\n <>\r\n
{idx + 1}
\r\n \r\n );\r\n },\r\n },\r\n {\r\n title: \"Name\",\r\n dataIndex: \"name\",\r\n key: \"name\",\r\n render: (_, record: any) => {\r\n return (\r\n <>\r\n
{record}
\r\n \r\n );\r\n },\r\n },\r\n\r\n {\r\n title: (\r\n
Action
\r\n ),\r\n key: \"action\",\r\n render: (_, record) => (\r\n \r\n }\r\n className=\"set-button-css-ref\"\r\n onClick={() => {\r\n filterToCC(record, \"pass\");\r\n }}\r\n />\r\n \r\n ),\r\n },\r\n ];\r\n const showMore = (type: any) => {\r\n Modal.info({\r\n title: (\r\n <>\r\n {type === \"to\" ? (\r\n <>\r\n

\r\n To(เรียนถึง) ทั้งหมด\r\n

\r\n \r\n ) : (\r\n <>\r\n

\r\n CC(สำเนา) ทั้งหมด\r\n

\r\n \r\n )}\r\n \r\n ),\r\n content: (\r\n
\r\n <>\r\n {\" \"}\r\n \r\n \r\n
\r\n ),\r\n style: customModalStyle,\r\n closable: true,\r\n });\r\n };\r\n function insertDataByEnter(event: any, type: any) {\r\n let toArr: any[] = toName;\r\n let ccArr: any[] = ccnName;\r\n\r\n if (!event) {\r\n return;\r\n }\r\n if (type === \"ToId\") {\r\n let auto = event.split(\",\").join(\"\");\r\n toArr.push(auto);\r\n setToName([...toArr]);\r\n setToSelect([...toArr]);\r\n props.setControlModelObj((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...props.InformationDataProps.templateForm,\r\n ToId: toArr.toString(),\r\n },\r\n }));\r\n } else if (type === \"CcId\") {\r\n let auto = event.split(\",\").join(\"\");\r\n ccArr.push(auto);\r\n setCcName([...ccArr]);\r\n setCcSelect([...ccArr]);\r\n props.setControlModelObj((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...props.InformationDataProps.templateForm,\r\n CcId: ccArr.toString(),\r\n },\r\n }));\r\n }\r\n }\r\n\r\n return (\r\n <>\r\n \r\n
\r\n

Information

\r\n \r\n \r\n \r\n \r\n

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n option?.value\r\n ?.toString()\r\n .toUpperCase()\r\n .indexOf(inputValue.toUpperCase()) !== -1\r\n }\r\n onChange={(e: any) => {\r\n try {\r\n let _filtered;\r\n let value = e;\r\n if (value === \"\") {\r\n _filtered = props.groupDataTemplate;\r\n } else {\r\n _filtered = props.groupDataTemplate.filter((e: any) => {\r\n return e.value\r\n ?.toLowerCase()\r\n .startsWith(value.toLowerCase());\r\n });\r\n }\r\n\r\n setCategoryFilter([..._filtered]);\r\n props.setControlModelObj((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...props.InformationDataProps.templateForm,\r\n GroupTemplateName: value,\r\n },\r\n }));\r\n } catch (error) {\r\n console.log(\"table=>onFilter=>error\", error);\r\n }\r\n }}\r\n onSelect={(e: any) => {\r\n try {\r\n setCategoryFilter([...props.groupDataTemplate]);\r\n props.setControlModelObj((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...props.InformationDataProps.templateForm,\r\n GroupTemplateName: e,\r\n },\r\n }));\r\n } catch (error) {\r\n console.log(\"table=>onFilter=>error\", error);\r\n }\r\n }}\r\n allowClear\r\n onClear={() => {\r\n setCategoryFilter([...props.groupDataTemplate]);\r\n props.setControlModelObj((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...props.InformationDataProps.templateForm,\r\n GroupTemplateName: \"\",\r\n },\r\n }));\r\n }}\r\n />\r\n {props.checkValidation.GroupTemplateName &&\r\n props.InformationDataProps.templateForm.GroupTemplateName\r\n .length === 0 && (\r\n Form Category is required\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {props.checkValidation.TemplateName &&\r\n props.InformationDataProps.templateForm.TemplateName.length ===\r\n 0 && Form Name is required}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n {props.checkValidation.DocumentCode &&\r\n props.InformationDataProps.templateForm.DocumentCode.length ===\r\n 0 && DocType is required}\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n selecteOrTypeListInToAndPass(e, b);\r\n }}\r\n valueProps={isMobile ? toValue : toSelect}\r\n keyProps={\"ToId\"}\r\n onKeyPress={\r\n insertDataByEnter\r\n // searchEmployeeEnter\r\n }\r\n disabledProps={isMobile && toSelect?.length > 3 ? true : false}\r\n />\r\n {isMobile && toSelect.length > 3 && (\r\n {\r\n showMore(\"to\");\r\n }}\r\n >\r\n More({toSelect.length - 3})\r\n \r\n )}\r\n\r\n showModal(\"ToId\")}\r\n setStyleProps={{\r\n backgroundColor: \"#282f6a\",\r\n border: \"1px solid #282f6a\",\r\n borderTopRightRadius: \"6px\",\r\n borderBottomRightRadius: \"6px\",\r\n boxShadow: \"none\",\r\n height: \"100%\",\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n selecteOrTypeListInToAndPass(e, b);\r\n }}\r\n valueProps={isMobile ? CCValue : ccSelect}\r\n keyProps={\"CcId\"}\r\n onKeyPress={\r\n insertDataByEnter\r\n // searchEmployeeEnter\r\n }\r\n disabledProps={isMobile && ccSelect?.length > 3 ? true : false}\r\n />\r\n {isMobile && ccSelect.length > 3 && (\r\n {\r\n showMore(\"pass\");\r\n }}\r\n >\r\n More({ccSelect.length - 3})\r\n \r\n )}\r\n\r\n showModal(\"CcId\")}\r\n setStyleProps={{\r\n backgroundColor: \"#282f6a\",\r\n border: \"1px solid #282f6a\",\r\n borderTopRightRadius: \"6px\",\r\n borderBottomRightRadius: \"6px\",\r\n boxShadow: \"none\",\r\n height: \"100%\",\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n TH\r\n EN\r\n \r\n \r\n
\r\n\r\n \r\n {/* \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n */}\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n {/* validatt */}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n {/* \r\n */}\r\n\r\n \r\n \r\n \r\n );\r\n};\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { BsNewspaper } from \"react-icons/bs\";\r\nimport {\r\n IoDocumentTextOutline,\r\n IoPeopleOutline,\r\n IoShieldCheckmarkOutline,\r\n IoCloudUploadOutline,\r\n IoNewspaperOutline,\r\n} from \"react-icons/io5\";\r\nimport { FunctionOutlined } from \"@ant-design/icons\";\r\nimport { Button } from \"../../components/Button/Button\";\r\nimport { IoAlertCircleOutline } from \"react-icons/io5\";\r\nimport { IoMdCheckmarkCircleOutline } from \"react-icons/io\";\r\nimport { GetAllDynamic } from \"../../Services/DynamicService\";\r\nimport { log } from \"console\";\r\nimport { GetAllMasterData } from \"../../Services/MasterDataService\";\r\n\r\ninterface Props {\r\n curPage: any;\r\n onSelectView: (text: string) => void;\r\n workList?: any;\r\n isCopy?: any;\r\n isVersion?: any;\r\n}\r\n\r\ntype SideBarData = {\r\n component: any;\r\n};\r\n\r\nexport const TemplateDetailSideBarElement = (props: Props) => {\r\n let [checkMergeApi, setCheckMergeApi] = useState();\r\n const [sideBarData, setSideBarData] = useState([]);\r\n\r\n useEffect(() => {\r\n GetAllMasterData().then((res) => {\r\n const MergeAPI = res.filter(\r\n (e: any) => e.MasterType === \"MergeAPI\" && e.IsActive === true\r\n )[0];\r\n if (MergeAPI) {\r\n checkMergeApi = MergeAPI.Value1.toLowerCase();\r\n }\r\n let isEnabledPDFDesign = res.find(\r\n (e: any) =>\r\n e.MasterType == \"PDFDesign\" &&\r\n e.IsActive == true &&\r\n e.Value1 == \"Enabled\"\r\n );\r\n let _sideBarData: SideBarData[] = [];\r\n _sideBarData.push({\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Information\"}\r\n icon={}\r\n page={\"information\"}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n });\r\n _sideBarData.push({\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Form Design\"}\r\n icon={}\r\n page={\"form_setting\"}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n });\r\n _sideBarData.push({\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Form Logic\"}\r\n icon={}\r\n page={\"form_logic\"}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n });\r\n _sideBarData.push({\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Reference Document\"}\r\n icon={}\r\n page={\"reference_document\"}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n });\r\n\r\n _sideBarData.push({\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Reference Information\"}\r\n icon={}\r\n page={\"reference_information\"}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n });\r\n _sideBarData.push({\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Approval Matrix\"}\r\n icon={}\r\n page={\"approval_matrix\"}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n });\r\n _sideBarData.push({\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Authorization\"}\r\n icon={}\r\n page={\"authorization\"}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n });\r\n if (isEnabledPDFDesign) {\r\n _sideBarData.push({\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"PDF Design\"}\r\n icon={}\r\n page={\"pdf_design\"}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n });\r\n }\r\n if (!props.isCopy && props.isVersion) {\r\n _sideBarData.push({\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Version and History\"}\r\n icon={}\r\n page={\"version_and_history\"}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n });\r\n }\r\n if (checkMergeApi) {\r\n _sideBarData.push({\r\n component: (\r\n props.onSelectView(e)}\r\n title={\"Template Logic\"}\r\n icon={}\r\n page={\"template_logic\"}\r\n curPage={props.curPage}\r\n />\r\n ),\r\n });\r\n }\r\n\r\n setCheckMergeApi(checkMergeApi);\r\n setSideBarData([..._sideBarData]);\r\n });\r\n }, [props.curPage, props.isCopy, props.isVersion]);\r\n\r\n return (\r\n \r\n {sideBarData.map((data, idx) => (\r\n
{data.component}
\r\n ))}\r\n \r\n );\r\n};\r\n","import { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { useUserContext } from \"../../../Context/UserContext\";\r\n\r\nimport { InputTextComponents } from \"../../InputTextComponents/InputTextComponents\";\r\n\r\ninterface Props {\r\n dataProps?: any;\r\n searchDataProps?: any;\r\n showModalProps?: any;\r\n isDialogVisibleProps?: any;\r\n setisDialogVisibleProps?: any;\r\n keyProps?: any;\r\n onRowSelectProps?: any;\r\n valueProps?: any;\r\n setDataProps?: any;\r\n}\r\n\r\nexport default function EmployeeDialog(props: Props) {\r\n const [globalFilterValue, setGlobalFilterValue] = useState(\"\");\r\n const [userData, setUserData] = useUserContext();\r\n\r\n useEffect(() => {\r\n if (props.isDialogVisibleProps === false) {\r\n setGlobalFilterValue(\"\");\r\n }\r\n }, [props.isDialogVisibleProps]);\r\n const onRowSelect = (event: any) => {\r\n let dataSelectEmployee: any[] = [];\r\n if (props.valueProps !== undefined && props.valueProps !== null) {\r\n dataSelectEmployee = [...props.valueProps];\r\n }\r\n const datafilterEmployee = dataSelectEmployee.filter(\r\n (_data: any) =>\r\n _data.NameEn === event.data.NameEn || _data.NameTh === event.data.NameTh\r\n );\r\n\r\n if (datafilterEmployee.length === 0) {\r\n dataSelectEmployee.push(event.data);\r\n }\r\n\r\n // console.log(\"dataSelectEmployee\", dataSelectEmployee);\r\n // console.log(\"dataSelectEmployee\", event.data);\r\n\r\n props.onRowSelectProps(dataSelectEmployee, props.keyProps);\r\n props.setisDialogVisibleProps(false);\r\n };\r\n const onGlobalFilterChange = async (e: any) => {\r\n const value = e;\r\n const dataEmp = props.dataProps;\r\n\r\n const data = dataEmp.filter((data: any) => {\r\n let findData: any = [];\r\n columns.map((col: any) => {\r\n let field = col?.field;\r\n if (\r\n data.EmployeeCode?.toString()\r\n .toLowerCase()\r\n .indexOf(value.toLowerCase()) !== -1\r\n ) {\r\n findData.push(data);\r\n } else if (\r\n data.NameEn?.toString().toLowerCase().indexOf(value.toLowerCase()) !==\r\n -1\r\n ) {\r\n findData.push(data);\r\n } else if (\r\n data.NameTh?.toString().indexOf(value.toLowerCase()) !== -1\r\n ) {\r\n findData.push(data);\r\n }\r\n });\r\n if (findData?.length > 0) {\r\n return true;\r\n }\r\n });\r\n setGlobalFilterValue(value);\r\n props.setDataProps([...data]);\r\n // if (value.length === 0) {\r\n // props.setDataProps(props.searchDataProps);\r\n // }\r\n };\r\n const renderHeader = () => {\r\n return (\r\n
\r\n }\r\n setClassNameSpanProps={\"p-input-icon-left set-span-search-dialog \"}\r\n />\r\n
\r\n );\r\n };\r\n const columns = [\r\n {\r\n field: \"EmployeeCode\",\r\n headerEn: \"EmployeeCode\",\r\n headerTh: \"รหัสพนักงาน\",\r\n },\r\n {\r\n field: \"NameEn\",\r\n headerEn: \"Name\",\r\n headerTh: \"ชื่อ\",\r\n },\r\n {\r\n field: \"PositionNameEn\",\r\n headerEn: \"Position\",\r\n headerTh: \"ตำแหน่ง\",\r\n },\r\n {\r\n field: \"DepartmentNameEn\",\r\n headerEn: \"Department\",\r\n headerTh: \"หน่วยงาน\",\r\n },\r\n ];\r\n const dynamicColumns = columns.map((col, i) => {\r\n return (\r\n \r\n
\r\n \r\n }\r\n body={(rowData) => {\r\n console.log(\"data2\", rowData);\r\n if (rowData.Lang !== undefined) {\r\n if (userData.Lang === \"EN\") {\r\n let newField = col.field.replace(\"Th\", \"En\");\r\n return rowData[newField];\r\n } else {\r\n let newField = col.field.replace(\"En\", \"Th\");\r\n return rowData[newField];\r\n }\r\n } else {\r\n return rowData[col.field];\r\n }\r\n }}\r\n />\r\n );\r\n });\r\n return (\r\n <>\r\n \r\n \r\n {/* \r\n \r\n \r\n }\r\n sortable\r\n >\r\n \r\n \r\n \r\n }\r\n >\r\n \r\n \r\n \r\n }\r\n >\r\n \r\n \r\n \r\n }\r\n > */}\r\n {dynamicColumns}\r\n \r\n \r\n \r\n );\r\n}\r\n","import { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport React, { useState, useEffect } from \"react\";\r\nimport { ButtonComponents } from \"../../../ButtonComponents/ButtonComponents\";\r\nimport { DropdownComponents } from \"../../../DropdownComponents/DropdownComponents\";\r\nimport { TextHeaderComponents } from \"../../../TextHeaderComponents/TextHeaderComponents\";\r\n\r\ninterface Props {\r\n departmentListProps?: any;\r\n setValueProps?: any;\r\n keyProps?: any;\r\n departmentRequestProp?: any;\r\n departmentManageProp?: any;\r\n}\r\n\r\nexport const AuthorizationTableDepartment = (props: Props) => {\r\n const [departmentSelect, setDepartmentSelect] = useState({});\r\n const [departmentPlaceholderDropdown, setDepartmentPlaceholderDropdown] =\r\n useState([]);\r\n useEffect(() => {\r\n gatPlaceholder();\r\n console.log(\"props.departmentListProps\", props.departmentListProps);\r\n }, [departmentSelect]);\r\n\r\n function gatPlaceholder() {\r\n let _array: any = [];\r\n let _arrayNull: any = [];\r\n if (\r\n props.keyProps === \"Authorization_request_department\" ||\r\n props.keyProps === \"Authorization_request_department\"\r\n ) {\r\n props.departmentListProps.map((data: any) => {\r\n let _departmentManageFilter = props.departmentRequestProp.filter(\r\n (_department: any) => {\r\n if (_department.depID === data.DepartmentId.toString()) {\r\n _array.push({\r\n depID: _department.depID,\r\n placeholder: _department.depaction,\r\n });\r\n }\r\n }\r\n );\r\n });\r\n if (props.departmentListProps.length !== _array.length) {\r\n props.departmentListProps.map((_dataMap: any) => {\r\n let _arrayFilter = _array.filter(\r\n (_dataFilter: any) =>\r\n _dataFilter.depID === _dataMap.DepartmentId.toString()\r\n );\r\n\r\n if (_arrayFilter.length === 0) {\r\n _arrayNull.push({ placeholder: \"-- Please Select --\" });\r\n } else {\r\n _arrayNull.push(_arrayFilter[0]);\r\n }\r\n });\r\n }\r\n } else {\r\n props.departmentListProps.map((data: any) => {\r\n let _departmentManageFilter = props.departmentManageProp.filter(\r\n (_department: any) => {\r\n if (_department.depID === data.DepartmentId.toString()) {\r\n _array.push({\r\n depID: _department.depID,\r\n placeholder: _department.depaction,\r\n });\r\n }\r\n }\r\n );\r\n });\r\n if (props.departmentListProps.length !== _array.length) {\r\n props.departmentListProps.map((_dataMap: any) => {\r\n let _arrayFilter = _array.filter(\r\n (_dataFilter: any) =>\r\n _dataFilter.depID === _dataMap.DepartmentId.toString()\r\n );\r\n if (_arrayFilter.length === 0) {\r\n _arrayNull.push({ placeholder: \"-- Please Select --\" });\r\n } else {\r\n _arrayNull.push(_arrayFilter[0]);\r\n }\r\n });\r\n }\r\n }\r\n\r\n setDepartmentPlaceholderDropdown(_arrayNull);\r\n }\r\n const onClickAction = (event: any) => {\r\n // let _event: any = event;\r\n // const dataFilter = props.valueProps.filter((item: any) => _event !== item);\r\n // props.setValueProps(dataFilter, props.keyProps);\r\n };\r\n const _setDepartmentSelect = (event: any, key: any) => {\r\n if (key !== undefined && key !== null) {\r\n let _event = {\r\n depID: event.DepartmentId.toString(),\r\n depname: event.NameTh,\r\n depaction: key.Position,\r\n };\r\n console.log(\"_event\", _event);\r\n\r\n props.setValueProps(_event, props.keyProps);\r\n setDepartmentSelect(event);\r\n }\r\n // let _event: any = event;\r\n // const dataFilter = props.valueProps.filter((item: any) => _event !== item);\r\n // props.setValueProps(dataFilter, props.keyProps);\r\n };\r\n function actionBodyTemplate(rowData: any, inx: any) {\r\n return (\r\n <>\r\n rowData.rowIndex\r\n // ? props.departmentRequestProp[inx.rowIndex].depaction\r\n // : \"-- Please Select --\"\r\n // : inx.rowIndex < props.departmentManageProp.length\r\n // ? props.departmentRequestProp[inx.rowIndex].depaction\r\n // : \"-- eeee --\"\r\n // \"-- Please Select --\"\r\n // props.departmentRequestProp[inx.rowIndex].depaction ===\r\n // undefined\r\n // ? \"-- Please Select --\"\r\n // : props.departmentRequestProp[inx.rowIndex].depaction\r\n // : props.departmentManageProp[inx.rowIndex].depaction === undefined\r\n // ? \"-- Please Select --\"\r\n // : props.departmentManageProp[inx.rowIndex].depaction\r\n // \"-- Please Select --\"\r\n }\r\n onChangeProps={(e: any) => _setDepartmentSelect(rowData, e)}\r\n optionLabelProps=\"Position\"\r\n optionsProps={[{ Position: \"Above\" }, { Position: \"Below\" }]}\r\n valueProps={\r\n props.keyProps === \"Authorization_request_department\" ||\r\n props.keyProps === \"Authorization_request_department\"\r\n ? props.departmentRequestProp\r\n : props.departmentManageProp\r\n }\r\n keyProps={\"Department\"}\r\n />\r\n \r\n );\r\n }\r\n\r\n return (\r\n <>\r\n \r\n }\r\n >\r\n }\r\n >\r\n }\r\n headerStyle={{ width: \"5rem\" }}\r\n body={actionBodyTemplate}\r\n >\r\n \r\n \r\n );\r\n};\r\n","import { Checkbox } from \"primereact/checkbox\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { MultiSelect } from \"primereact/multiselect\";\r\nimport React, { useState, useEffect } from \"react\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { BiSave } from \"react-icons/bi\";\r\nimport { IoCloseOutline } from \"react-icons/io5\";\r\nimport { ButtonComponents } from \"../../../ButtonComponents/ButtonComponents\";\r\nimport { CheckboxCpmponents } from \"../../../CheckboxCpmponents/CheckboxCpmponents\";\r\nimport { DropdownComponents } from \"../../../DropdownComponents/DropdownComponents\";\r\nimport { InputTextComponents } from \"../../../InputTextComponents/InputTextComponents\";\r\nimport { TextHeaderComponents } from \"../../../TextHeaderComponents/TextHeaderComponents\";\r\nimport { AuthorizationTableDepartment } from \"../AuthorizationTable/AuthorizationTable\";\r\nimport { v4 as uuidv4 } from \"uuid\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\ninterface PropsDepartment {\r\n visibleProps?: any;\r\n setVisibleProps?: any;\r\n setControlModel?: any;\r\n departmentListProps?: any;\r\n keyProps?: any;\r\n departmentRequestProp?: any;\r\n departmentManageProp?: any;\r\n}\r\ninterface PropsPermission {\r\n visibleProps?: any;\r\n setVisibleProps?: any;\r\n keyAutoComplete?: any;\r\n roleData?: any;\r\n setDataTable?: any;\r\n companyData?: any;\r\n departmentListProps?: any;\r\n controlModel?: any;\r\n advanceFormProps?: any;\r\n actionProps?: any;\r\n setDataAuthorization_view?: any;\r\n setDataAuthorization_viewEdit?: any;\r\n\r\n editTablePermissionProps?: any;\r\n}\r\ninterface PropsPermissionEdit {\r\n visibleProps?: any;\r\n setVisibleProps?: any;\r\n keyAutoComplete?: any;\r\n // roleData?: any;\r\n // setDataTable?: any;\r\n // companyData?: any;\r\n // departmentListProps?: any;\r\n // controlModel?: any;\r\n // advanceFormProps?: any;\r\n // actionProps?: any;\r\n // setDataAuthorization_view?: any;\r\n // editTablePermissionProps?: any;\r\n}\r\n\r\nexport const AuthorizationDepartmentModel = (props: PropsDepartment) => {\r\n const [filters, setFilters] = useState();\r\n const [departmentList, setDepartmentList] = useState();\r\n const [departmentSelectManage, setDepartmentSelectManage] = useState();\r\n const [departmentSelectRequest, setDepartmentSelectRequest] = useState(\r\n []\r\n );\r\n useEffect(() => {\r\n setDepartmentSelectManage(props.departmentManageProp);\r\n setDepartmentSelectRequest(props.departmentRequestProp);\r\n }, [props.departmentManageProp, props.departmentRequestProp]);\r\n\r\n useEffect(() => {\r\n if (\r\n props.departmentManageProp === undefined ||\r\n props.departmentManageProp === null\r\n ) {\r\n } else {\r\n setDepartmentSelectManage(props.departmentManageProp);\r\n }\r\n if (\r\n props.departmentManageProp === undefined ||\r\n props.departmentManageProp === null\r\n ) {\r\n } else {\r\n setDepartmentSelectRequest(props.departmentRequestProp);\r\n }\r\n\r\n setDepartmentList(props.departmentListProps);\r\n setFilters(props.departmentListProps);\r\n }, [\r\n props.departmentListProps,\r\n props.departmentManageProp,\r\n props.departmentManageProp,\r\n ]);\r\n\r\n const renderFooter = () => {\r\n return (\r\n
\r\n \r\n }\r\n onClickProps={() => onHide()}\r\n setClassNameProps=\"p-button-text referenceDocumentDialog-button\"\r\n setStyleProps={{\r\n height: \"38px\",\r\n border: \"0.5px solid #FF2626\",\r\n background: \"#FFFFFF\",\r\n color: \"#FF2626\",\r\n borderRadius: \"6px\",\r\n fontSize: \"13px\",\r\n }}\r\n />\r\n }\r\n onClickProps={() => onSave()}\r\n setStyleProps={{\r\n height: \"38px\",\r\n borderRadius: \"6px\",\r\n border: \"1px solid rgb(40, 47, 106)\",\r\n fontSize: \"13px\",\r\n }}\r\n />\r\n
\r\n );\r\n };\r\n const onSave = () => {\r\n props.setControlModel((prevState: any) => ({\r\n ...prevState,\r\n [props.keyProps]:\r\n props.keyProps == \"Authorization_request_department\" ||\r\n props.keyProps === \"Authorization_request_department\"\r\n ? departmentSelectRequest\r\n : departmentSelectManage,\r\n }));\r\n props.setVisibleProps();\r\n };\r\n const onHide = () => {\r\n setDepartmentSelectManage(props.departmentManageProp);\r\n setDepartmentSelectRequest(props.departmentRequestProp);\r\n props.setVisibleProps();\r\n };\r\n\r\n const AuthorizationTableData = (data: any, key: any) => {\r\n if (\r\n key == \"Authorization_request_department\" ||\r\n props.keyProps === \"Authorization_request_department\"\r\n ) {\r\n let _data: any = [...departmentSelectRequest];\r\n let _dataFilter = _data.filter((item: any) => item.depID === data.depID);\r\n if (_dataFilter.length === 0) {\r\n _data.push(data);\r\n } else {\r\n _data.map((_dataMap: any) => {\r\n if (_dataMap.depID === data.depID) {\r\n _dataMap.depaction = data.depaction;\r\n }\r\n });\r\n }\r\n setDepartmentSelectRequest(_data);\r\n } else {\r\n let _data: any = [...departmentSelectManage];\r\n // _data.push(data);\r\n let _dataFilter = _data.filter((item: any) => item.depID === data.depID);\r\n\r\n if (_dataFilter.length === 0) {\r\n _data.push(data);\r\n } else {\r\n _data.map((_dataMap: any) => {\r\n if (_dataMap.depID === data.depID) {\r\n _dataMap.depaction = data.depaction;\r\n }\r\n });\r\n } // _data.map((_dataDepart: any) => {\r\n // console.log(\"_dataDepart\", _dataDepart);\r\n // });\r\n\r\n setDepartmentSelectManage(_data);\r\n }\r\n\r\n // _ReferenceDocumentDialog(\r\n // props.TableTemplateSelectedProps.listRefTemplate,\r\n // \"listRefTemplate\"\r\n // );\r\n // _ReferenceDocumentDialog(\r\n // props.TableTemplateSelectedProps.templateForm,\r\n // \"templateForm\"\r\n // );\r\n // props.setVisibleProps();\r\n };\r\n\r\n const onGlobalFilterTemplate = (data: any, inx: any) => {\r\n const value = data;\r\n const _Arrayfilters: any = [];\r\n let _filters = { ...filters };\r\n for (const [key, value] of Object.entries(_filters)) {\r\n _Arrayfilters.push(value);\r\n }\r\n const _dataFilter = _Arrayfilters.filter((data: any) => {\r\n if (\r\n data.NameEn.toLowerCase().indexOf(value.toLowerCase()) !== -1 ||\r\n data.NameTh.toLowerCase().indexOf(value.toLowerCase()) !== -1 ||\r\n data.DepartmentCode.toLowerCase().indexOf(value.toLowerCase()) !== -1\r\n ) {\r\n return true;\r\n }\r\n });\r\n if (data.length === 0) {\r\n setDepartmentList(props.departmentListProps);\r\n } else {\r\n setDepartmentList(_dataFilter);\r\n }\r\n };\r\n const [globalFilterValueTemplate, setGlobalFilterValueTemplate] = useState();\r\n return (\r\n <>\r\n onHide()}\r\n className=\"referenceDocumentDialog-dialog\"\r\n breakpoints={{ \"960px\": \"75vw\" }}\r\n style={{ width: \"70vw\" }}\r\n footer={renderFooter()}\r\n >\r\n
\r\n \r\n
\r\n

\r\n Search Department\r\n

\r\n \r\n \r\n \r\n

\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport const AuthorizationPermissionModel = (props: PropsPermission) => {\r\n const [permissionType, setPermissionType] = useState([]);\r\n const [role, setRole] = useState([]);\r\n const [roleName, setRoleName] = useState([]);\r\n const [advanceFormLabalSelect, setAdvanceFormLabalSelect] = useState([]);\r\n const [valueType, setValueType] = useState({\r\n ValueType: \"Information\",\r\n });\r\n const [informition, setInformition] = useState({\r\n Informition: \"Employee Code\",\r\n });\r\n\r\n const [company, setCompany] = useState([]);\r\n const [department, setDepartment] = useState([]);\r\n const [departmentName, setDepartmentName] = useState([]);\r\n const [companyAction, setCompanyAction] = useState([]);\r\n const [companyActionEdit, setCompanyActionEdit] = useState(\"\");\r\n const [advanceFormLabal, setAdvanceFormLabal] = useState([]);\r\n const [validation, setValidation] = useState({\r\n RoleValidation: false,\r\n DepartmentValidation: false,\r\n CompanyValidation: false,\r\n });\r\n // const [advanceFormLabal, setValueType] = useState([]);\r\n\r\n useEffect(() => {\r\n if (props.editTablePermissionProps !== undefined) {\r\n if (props.editTablePermissionProps.length !== 0) {\r\n if (props.editTablePermissionProps.permissiontype === \"Role\") {\r\n let arrayRole: any = [];\r\n props.editTablePermissionProps.ids.map((data: any) => {\r\n let dataRole = props.roleData.filter(\r\n (item: any) => data.id === item.RoleId.toString()\r\n );\r\n\r\n if (dataRole.length !== 0) {\r\n arrayRole.push(dataRole[0]);\r\n }\r\n });\r\n setRole(arrayRole);\r\n }\r\n if (props.editTablePermissionProps.permissiontype === \"Department\") {\r\n let arrayRole: any = [];\r\n let arrayDepartment: any = [];\r\n // let arrayRole: any = [];\r\n props.editTablePermissionProps.company?.map((data: any) => {\r\n let dataRole = props.companyData.filter(\r\n (item: any) => data.id === item.CompanyId.toString()\r\n );\r\n\r\n if (dataRole.length !== 0) {\r\n arrayRole.push(dataRole[0]);\r\n }\r\n });\r\n props.editTablePermissionProps.ids.map((data: any) => {\r\n let dataRole = props.departmentListProps.filter(\r\n (item: any) => data.id === item.DepartmentId.toString()\r\n );\r\n if (dataRole.length !== 0) {\r\n arrayDepartment.push(dataRole[0]);\r\n }\r\n setCompanyActionEdit(data.action);\r\n });\r\n\r\n setDepartment(arrayDepartment);\r\n setCompany(arrayRole);\r\n }\r\n if (props.editTablePermissionProps.permissiontype === \"FormControl\") {\r\n let arrayRole: any = [];\r\n let arrayDepartment: any = [];\r\n console.log(\r\n \"props.editTablePermissionPropseeeeeeeeeeeeee\",\r\n props.editTablePermissionProps,\r\n advanceFormLabalSelect,\r\n props.actionProps\r\n );\r\n let _arrayAdvanceFormLabal: any = [];\r\n let _advanceFormJson =\r\n props.controlModel.templateForm.AdvanceForm === undefined ||\r\n props.controlModel.templateForm.AdvanceForm === null ||\r\n props.controlModel.templateForm.AdvanceForm.length === 0\r\n ? []\r\n : props.controlModel.templateForm.IsTextForm &&\r\n props.controlModel.templateForm.AdvanceForm[\r\n props.controlModel.templateForm.AdvanceForm.length - 3\r\n ] === \",\"\r\n ? JSON.parse(\r\n remove_character(\r\n props.controlModel.templateForm.AdvanceForm,\r\n props.controlModel.templateForm.AdvanceForm.length - 3\r\n )\r\n )\r\n : JSON.parse(props.controlModel.templateForm.AdvanceForm);\r\n _advanceFormJson.items?.map((_data: any) => {\r\n _data.layout.map((__data: any) => {\r\n if (\r\n __data.template.type === \"t\" ||\r\n __data.template.type === \"ta\" ||\r\n __data.template.type === \"d\" ||\r\n __data.template.type === \"tb\" ||\r\n __data.template.type === \"c\"\r\n ) {\r\n if (__data.template.type !== \"tb\") {\r\n _arrayAdvanceFormLabal.push({\r\n label: __data.template.label,\r\n type: __data.template.type,\r\n });\r\n } else if (\r\n __data.template.type === \"tb\" &&\r\n __data.template.label.length !== 0\r\n ) {\r\n let _arrayColumn: any = [];\r\n\r\n __data.template.attribute.column.map((data: any) => {\r\n _arrayColumn.push({ label: data.label });\r\n });\r\n\r\n _arrayAdvanceFormLabal.push({\r\n label: __data.template.label,\r\n type: __data.template.type,\r\n column: _arrayColumn,\r\n });\r\n }\r\n }\r\n });\r\n });\r\n // props.editTablePermissionProps.company.map((data: any) => {\r\n // let dataRole = props.companyData.filter(\r\n // (item: any) => data.id === item.CompanyId.toString()\r\n // );\r\n\r\n // if (dataRole.length !== 0) {\r\n // arrayRole.push(dataRole[0]);\r\n // }\r\n // });\r\n // props.editTablePermissionProps.ids.map((data: any) => {\r\n // let dataRole = props.departmentListProps.filter(\r\n // (item: any) => data.id === item.DepartmentId.toString()\r\n // );\r\n // if (dataRole.length !== 0) {\r\n // arrayDepartment.push(dataRole[0]);\r\n // }\r\n // setCompanyActionEdit(data.action);\r\n // });\r\n\r\n // setDepartment(arrayDepartment);\r\n // setCompany(arrayRole);\r\n let _Informition: any = informition;\r\n if (\r\n props.editTablePermissionProps.formcontrol.labelInformition ===\r\n \"EmployeeCode\"\r\n ) {\r\n _Informition.Information = \"Employee Code\";\r\n } else if (\r\n props.editTablePermissionProps.formcontrol.labelInformition ===\r\n \"EmployeeName\"\r\n ) {\r\n _Informition.Information = \"Employee Name\";\r\n } else if (\r\n props.editTablePermissionProps.formcontrol.labelInformition ===\r\n \"EmployeePosition\"\r\n ) {\r\n _Informition.Information = \"Employee Position\";\r\n } else if (\r\n props.editTablePermissionProps.formcontrol.labelInformition ===\r\n \"EmployeeDivision\"\r\n ) {\r\n _Informition.Information = \"Employee Division\";\r\n } else if (\r\n props.editTablePermissionProps.formcontrol.labelInformition ===\r\n \"EmployeeDepartment\"\r\n ) {\r\n _Informition.Informition = \"Employee Department\";\r\n }\r\n\r\n setInformition({ ..._Informition });\r\n // if(props.editTablePermissionProps.formcontrol.labeltype===\"Table\")\r\n // { setAdvanceFormLabalSelect((prevState: any) => ({\r\n // ...prevState,\r\n // label: props.editTablePermissionProps.formcontrol.label,\r\n // type: props.editTablePermissionProps.formcontrol.labeltype,\r\n // column: _arrayAdvanceFormLabal,\r\n // }));}else{\r\n // setAdvanceFormLabalSelect((prevState: any) => ({\r\n // ...prevState,\r\n // label: props.editTablePermissionProps.formcontrol.label,\r\n // type: props.editTablePermissionProps.formcontrol.labeltype,\r\n // column: _arrayAdvanceFormLabal,\r\n // }));\r\n // }\r\n console.log(\r\n \"props.editTablePermissionProps0,props.editTablePermissionProps\",\r\n props.editTablePermissionProps,\r\n props.actionProps,\r\n advanceFormLabalSelect,\r\n _arrayAdvanceFormLabal\r\n );\r\n }\r\n\r\n setPermissionType(props.editTablePermissionProps);\r\n }\r\n }\r\n }, [props.editTablePermissionProps]);\r\n\r\n useEffect(() => {\r\n if (props.editTablePermissionProps.length === 0) {\r\n setPermissionType([]);\r\n setRole([]);\r\n setRoleName([]);\r\n setCompany([]);\r\n setDepartment([]);\r\n setDepartmentName([]);\r\n setCompanyAction([]);\r\n }\r\n\r\n if (props.actionProps === \"edit\") {\r\n console.log(\r\n \"props.controlModel.templateForm\",\r\n props.controlModel.templateForm.IsTextForm\r\n );\r\n\r\n console.log(\r\n \"props.controlModel.templateForm\",\r\n props.controlModel.templateForm.AdvanceForm[\r\n props.controlModel.templateForm.AdvanceForm.length - 3\r\n ]\r\n );\r\n\r\n let _advanceFormJson =\r\n props.controlModel.templateForm.AdvanceForm === undefined ||\r\n props.controlModel.templateForm.AdvanceForm === null ||\r\n props.controlModel.templateForm.AdvanceForm.length === 0\r\n ? []\r\n : props.controlModel.templateForm.IsTextForm &&\r\n props.controlModel.templateForm.AdvanceForm[\r\n props.controlModel.templateForm.AdvanceForm.length - 3\r\n ] === \",\"\r\n ? JSON.parse(\r\n remove_character(\r\n props.controlModel.templateForm.AdvanceForm,\r\n props.controlModel.templateForm.AdvanceForm.length - 3\r\n )\r\n )\r\n : JSON.parse(props.controlModel.templateForm.AdvanceForm);\r\n if (_advanceFormJson.length !== 0) {\r\n _advanceForm(_advanceFormJson);\r\n }\r\n } else {\r\n if (props.advanceFormProps.items.length !== 0) {\r\n _advanceForm(props.advanceFormProps);\r\n }\r\n }\r\n }, [props.visibleProps]);\r\n\r\n useEffect(() => {\r\n console.log(\"per=>PermissionType\", permissionType);\r\n }, [permissionType]);\r\n\r\n function remove_character(str: any, char_pos: any) {\r\n let part1 = str.substring(0, char_pos);\r\n let part2 = str.substring(char_pos + 1, str.length);\r\n return part1 + part2;\r\n }\r\n const labelStyle: any = {\r\n fontStyle: \"normal\",\r\n fontWeight: \"normal\",\r\n fontSize: \"13px\",\r\n lineHeight: \"19px\",\r\n marginLeft: \"5px\",\r\n color: \"#000000\",\r\n };\r\n function _advanceForm(data: any) {\r\n try {\r\n let _arrayAdvanceFormLabal: any = [];\r\n data.items.map((_data: any) => {\r\n // dataitems.template.type === \"dd\"\r\n // ? \"Dropdown\"\r\n // : dataitems.template.type === \"tb\"\r\n // ? \"Table\"\r\n // : dataitems.template.type === \"t\"\r\n // ? \"ShortText\"\r\n // : dataitems.template.type === \"d\"\r\n // ? \"Calendar\"\r\n // : dataitems.template.type === \"at\"\r\n // ? \"Attachmen\"\r\n // : dataitems.template.type === \"ta\"\r\n // ? \"MultiLine\"\r\n // : dataitems.template.type === \"c\"\r\n // ? \"Decimal\"\r\n // : dataitems.template.type === \"r\"\r\n // ? \"Choice\"\r\n // : dataitems.template.type === \"cb\"\r\n // ? \"MultiChoice\"\r\n // : dataitems.template.type === \"n\"\r\n // ? \"Number\"\r\n // : dataitems.template.type === \"an\"\r\n // ? \"AutoNumber\"\r\n // : dataitems.template.type === \"ed\"\r\n _data.layout.map((__data: any) => {\r\n if (\r\n __data.template.type === \"t\" ||\r\n __data.template.type === \"ta\" ||\r\n __data.template.type === \"tb\" ||\r\n __data.template.type === \"c\" ||\r\n __data.template.type === \"dd\" ||\r\n __data.template.type === \"d\" ||\r\n __data.template.type === \"at\" ||\r\n __data.template.type === \"r\" ||\r\n __data.template.type === \"cb\" ||\r\n __data.template.type === \"n\" ||\r\n __data.template.type === \"an\" ||\r\n __data.template.type === \"ed\"\r\n ) {\r\n if (__data.template.type !== \"tb\") {\r\n _arrayAdvanceFormLabal.push({\r\n label: __data.template.label,\r\n type: __data.template.type,\r\n });\r\n } else if (\r\n __data.template.type === \"tb\" &&\r\n __data.template.label.length !== 0\r\n ) {\r\n let _arrayColumn: any = [];\r\n\r\n __data.template.attribute.column.map((data: any) => {\r\n _arrayColumn.push({ label: data.label });\r\n });\r\n\r\n _arrayAdvanceFormLabal.push({\r\n label: __data.template.label,\r\n type: __data.template.type,\r\n column: _arrayColumn,\r\n });\r\n }\r\n }\r\n });\r\n });\r\n // console.log(\"_arrayAdvanceFormLabal\", _arrayAdvanceFormLabal);\r\n console.log(\"_arrayAdvanceFormLabal\", _arrayAdvanceFormLabal);\r\n if (props.editTablePermissionProps.permissiontype === \"FormControl\") {\r\n let tableFilter = _arrayAdvanceFormLabal.filter(\r\n (item: any) =>\r\n item.label === props.editTablePermissionProps.formcontrol.label\r\n );\r\n if (tableFilter.length !== 0) {\r\n setAdvanceFormLabalSelect(tableFilter[0]);\r\n }\r\n }\r\n setAdvanceFormLabal(_arrayAdvanceFormLabal);\r\n } catch (error) {}\r\n }\r\n\r\n const renderFooter = () => {\r\n return (\r\n
\r\n \r\n }\r\n onClickProps={() => onHide()}\r\n setClassNameProps=\"p-button-text referenceDocumentDialog-button\"\r\n setStyleProps={{\r\n height: \"38px\",\r\n border: \"0.5px solid #FF2626\",\r\n background: \"#FFFFFF\",\r\n color: \"#FF2626\",\r\n borderRadius: \"6px\",\r\n fontSize: \"13px\",\r\n }}\r\n />\r\n }\r\n onClickProps={() => onSave()}\r\n setStyleProps={{\r\n height: \"38px\",\r\n borderRadius: \"6px\",\r\n border: \"1px solid rgb(40, 47, 106)\",\r\n fontSize: \"13px\",\r\n }}\r\n />\r\n
\r\n );\r\n };\r\n const onSave = () => {\r\n if (props.editTablePermissionProps.length === 0) {\r\n let _arrayRolePermission: any = [];\r\n if (\r\n permissionType !== undefined &&\r\n permissionType !== null &&\r\n Object.keys(permissionType).length !== 0\r\n ) {\r\n if (permissionType.Permission.View === \"T\") {\r\n _arrayRolePermission.push(\"View\");\r\n }\r\n if (permissionType.Permission.Print === \"T\") {\r\n _arrayRolePermission.push(\"Print\");\r\n }\r\n if (permissionType.Permission.Copy === \"T\") {\r\n _arrayRolePermission.push(\"Copy\");\r\n }\r\n if (permissionType.permissiontype === \"Public\") {\r\n let _objTable = {\r\n Type: permissionType.permissiontype,\r\n Description: \"\",\r\n Permission:\r\n _arrayRolePermission.length === 0\r\n ? \"\"\r\n : _arrayRolePermission.toString(),\r\n };\r\n props.setDataTable(_objTable);\r\n props.setDataAuthorization_view(\r\n permissionType,\r\n props.keyAutoComplete\r\n );\r\n props.setVisibleProps(props.keyAutoComplete);\r\n }\r\n if (permissionType.permissiontype === \"Role\") {\r\n console.log(\"permissionType\", permissionType);\r\n if (\r\n permissionType.ids !== undefined &&\r\n permissionType.ids !== null &&\r\n permissionType.ids.length !== 0\r\n ) {\r\n let _objTable = {\r\n Type: permissionType.permissiontype,\r\n Description: roleName.length === 0 ? \"\" : roleName.toString(),\r\n Permission:\r\n _arrayRolePermission.length === 0\r\n ? \"\"\r\n : _arrayRolePermission.toString(),\r\n };\r\n props.setDataTable(_objTable);\r\n props.setDataAuthorization_view(\r\n permissionType,\r\n props.keyAutoComplete\r\n );\r\n props.setVisibleProps(props.keyAutoComplete);\r\n } else {\r\n setValidation((prevState: any) => ({\r\n ...prevState,\r\n RoleValidation: true,\r\n }));\r\n // setValidation({\r\n // RoleValidation:false,\r\n // DepartmentValidation:false,\r\n // CompanyValidation:false\r\n // })\r\n }\r\n }\r\n if (permissionType.permissiontype === \"Department\") {\r\n console.log(\"permissionType\", permissionType);\r\n if (\r\n permissionType.company !== undefined &&\r\n permissionType.company !== null &&\r\n permissionType.company.length !== 0 &&\r\n permissionType.ids !== undefined &&\r\n permissionType.ids !== null &&\r\n permissionType.ids.length !== 0\r\n ) {\r\n let _objTable = {\r\n Type: permissionType.permissiontype,\r\n Description:\r\n departmentName.length === 0 ? \"\" : departmentName.toString(),\r\n Permission:\r\n _arrayRolePermission.length === 0\r\n ? \"\"\r\n : _arrayRolePermission.toString(),\r\n };\r\n props.setDataTable(_objTable);\r\n props.setVisibleProps(props.keyAutoComplete);\r\n props.setDataAuthorization_view(\r\n permissionType,\r\n props.keyAutoComplete\r\n );\r\n } else {\r\n setValidation({\r\n DepartmentValidation:\r\n permissionType.ids === undefined ||\r\n permissionType.ids === null ||\r\n permissionType.ids.length === 0\r\n ? true\r\n : false,\r\n CompanyValidation:\r\n permissionType.company === undefined ||\r\n permissionType.company === null ||\r\n permissionType.company.length === 0\r\n ? true\r\n : false,\r\n });\r\n // setValidation({\r\n // RoleValidation:false,\r\n // DepartmentValidation:false,\r\n // CompanyValidation:false\r\n // })\r\n }\r\n }\r\n if (permissionType.permissiontype === \"FormControl\") {\r\n let _objTable;\r\n if (permissionType.formcontrol.labeltype === \"Table\") {\r\n _objTable = {\r\n Type: permissionType.permissiontype,\r\n Description:\r\n \"label:\" +\r\n permissionType.formcontrol.label +\r\n \" columnname: \" +\r\n permissionType.formcontrol.labelcolumnname +\r\n \" type:\" +\r\n permissionType.formcontrol.labeltype +\r\n \" valuetype:\" +\r\n permissionType.formcontrol.labelvaluetype +\r\n \" informition:\" +\r\n permissionType.formcontrol.labelInformition,\r\n Permission:\r\n _arrayRolePermission.length === 0\r\n ? \"\"\r\n : _arrayRolePermission.toString(),\r\n };\r\n } else {\r\n _objTable = {\r\n Type: permissionType.permissiontype,\r\n Description:\r\n \"label:\" +\r\n permissionType.formcontrol.label +\r\n \" type:\" +\r\n permissionType.formcontrol.labeltype +\r\n \" valuetype:\" +\r\n permissionType.formcontrol.labelvaluetype +\r\n \" informition:\" +\r\n permissionType.formcontrol.labelInformition,\r\n Permission:\r\n _arrayRolePermission.length === 0\r\n ? \"\"\r\n : _arrayRolePermission.toString(),\r\n };\r\n }\r\n props.setDataAuthorization_view(\r\n permissionType,\r\n props.keyAutoComplete\r\n );\r\n console.log(\"_objTable\", { _objTable, permissionType });\r\n\r\n props.setDataTable(_objTable);\r\n props.setVisibleProps(props.keyAutoComplete);\r\n }\r\n }\r\n } else {\r\n let dataFile = props.controlModel;\r\n if (permissionType.permissiontype === \"Role\") {\r\n dataFile.Authorization_view.map((data: any, inx: any) => {\r\n if (data.id === props.editTablePermissionProps.id) {\r\n dataFile.Authorization_view[inx] = permissionType;\r\n }\r\n });\r\n }\r\n if (permissionType.permissiontype === \"Department\") {\r\n dataFile.Authorization_view.map((data: any, inx: any) => {\r\n if (data.id === props.editTablePermissionProps.id) {\r\n dataFile.Authorization_view[inx] = permissionType;\r\n }\r\n });\r\n }\r\n if (permissionType.permissiontype === \"FormControl\") {\r\n dataFile.Authorization_view.map((data: any, inx: any) => {\r\n if (data.id === props.editTablePermissionProps.id) {\r\n dataFile.Authorization_view[inx] = permissionType;\r\n }\r\n });\r\n }\r\n if (permissionType.permissiontype === \"Public\") {\r\n dataFile.Authorization_view.map((data: any, inx: any) => {\r\n if (data.id === props.editTablePermissionProps.id) {\r\n dataFile.Authorization_view[inx] = permissionType;\r\n }\r\n });\r\n }\r\n\r\n props.setVisibleProps(props.keyAutoComplete);\r\n props.setDataAuthorization_viewEdit(dataFile, \"Authorization_view\");\r\n }\r\n };\r\n const onHide = () => {\r\n props.setVisibleProps(props.keyAutoComplete);\r\n setPermissionType([]);\r\n setRole([]);\r\n setRoleName([]);\r\n setCompany([]);\r\n setDepartment([]);\r\n setDepartmentName([]);\r\n setCompanyAction([]);\r\n setAdvanceFormLabalSelect({});\r\n };\r\n\r\n function onChangeDropdow(data: any, key: any) {\r\n let _uuid = uuidv4().replace(/-/g, \"\");\r\n\r\n if (data !== null && data !== undefined) {\r\n data.id = _uuid.toString();\r\n setPermissionType(data);\r\n }\r\n }\r\n function onChangeDropdowLable(data: any, key: any) {\r\n console.log(\"dataaaaaaaaaaaaaaaa\", data);\r\n if (data !== undefined && data !== null) {\r\n console.log(\"dataaaaaaaaaaaaaaaa\", data);\r\n\r\n setAdvanceFormLabalSelect(data);\r\n\r\n setPermissionType((prevState: any) => ({\r\n ...prevState,\r\n formcontrol: {\r\n ...permissionType.formcontrol,\r\n label: data.label,\r\n labeltype:\r\n data.type === \"dd\"\r\n ? \"Dropdown\"\r\n : data.type === \"tb\"\r\n ? \"Table\"\r\n : data.type === \"t\"\r\n ? \"ShortText\"\r\n : data.type === \"d\"\r\n ? \"Calendar\"\r\n : data.type === \"at\"\r\n ? \"Attachmen\"\r\n : data.typee === \"r\"\r\n ? \"Radio\"\r\n : data.type === \"c\"\r\n ? \"Decimal\"\r\n : \"\",\r\n\r\n labelcolumnname: \"\",\r\n },\r\n }));\r\n }\r\n }\r\n function onChangeDropdowColumnname(data: any, key: any) {\r\n if (data !== undefined && data !== null) {\r\n setPermissionType((prevState: any) => ({\r\n ...prevState,\r\n formcontrol: {\r\n ...permissionType.formcontrol,\r\n labelcolumnname: data.label,\r\n },\r\n }));\r\n }\r\n }\r\n function onChangeDropdowValueType(data: any, key: any) {\r\n if (data !== null && data !== undefined) {\r\n setValueType(data);\r\n }\r\n // setValueType(data);\r\n }\r\n function onChangeDropdowInformition(data: any, key: any) {\r\n if (data !== null && data !== undefined) {\r\n setInformition({ ...data });\r\n setPermissionType((prevState: any) => ({\r\n ...prevState,\r\n formcontrol: {\r\n ...permissionType.formcontrol,\r\n labelInformition: data.Informition.replaceAll(\" \", \"\"),\r\n },\r\n }));\r\n }\r\n }\r\n function _Role(data: any, key: any) {\r\n if (key === \"RoleID\") {\r\n let _arrayRole: any = [];\r\n let _arrayRoleName: any = [];\r\n let _arrayRolePermission: any = [];\r\n data.map((_dataRole: any) => {\r\n _arrayRole.push({\r\n id: _dataRole.RoleId.toString(),\r\n name: _dataRole.NameEn,\r\n });\r\n _arrayRoleName.push(_dataRole.NameEn);\r\n });\r\n setRoleName(_arrayRoleName);\r\n setPermissionType((prevState: any) => ({\r\n ...prevState,\r\n ids: _arrayRole,\r\n }));\r\n setRole(data);\r\n setValidation((prevState: any) => ({\r\n ...prevState,\r\n RoleValidation: false,\r\n }));\r\n }\r\n }\r\n function _Company(data: any, key: any) {\r\n let _arrayCompany: any = [];\r\n data.map((_dataCompany: any) => {\r\n _arrayCompany.push({\r\n id: _dataCompany.CompanyId.toString(),\r\n name: _dataCompany.NameEn,\r\n });\r\n });\r\n setCompany(data);\r\n setPermissionType((prevState: any) => ({\r\n ...prevState,\r\n company: _arrayCompany,\r\n }));\r\n }\r\n function _department(data: any, key: any) {\r\n let _arrayDepartment: any = [];\r\n let _arrayDepartmentName: any = [];\r\n console.log(\"per=>data\", data);\r\n\r\n data.map((_department: any) => {\r\n _arrayDepartment.push({\r\n id: _department.DepartmentId.toString(),\r\n name: _department.NameEn,\r\n action: \"\",\r\n });\r\n _arrayDepartmentName.push(_department.NameEn);\r\n });\r\n setValidation({\r\n CompanyValidation: false,\r\n });\r\n setPermissionType((prevState: any) => ({\r\n ...prevState,\r\n ids: _arrayDepartment,\r\n }));\r\n setDepartmentName(_arrayDepartmentName);\r\n setDepartment(data);\r\n\r\n // setCompany(data);\r\n }\r\n\r\n function getPermissionTypeOptions(data: any, key: any) {\r\n let _arrayDepartment: any = [];\r\n let _arrayDepartmentName: any = [];\r\n props.departmentListProps.map((_department: any) => {\r\n _arrayDepartment.push({\r\n id: _department.DepartmentId.toString(),\r\n name: _department.NameEn,\r\n action: \"\",\r\n });\r\n _arrayDepartmentName.push(_department.NameEn);\r\n });\r\n\r\n setPermissionType((prevState: any) => ({\r\n ...prevState,\r\n ids: _arrayDepartment,\r\n }));\r\n }\r\n\r\n function _Action(data: any, key: any) {\r\n let _arrayDepartment: any = [];\r\n let _arrayDepartmentName: any = [];\r\n console.log(\"per=>data\", data);\r\n console.log(\"per=>permissionType\", permissionType);\r\n\r\n setCompanyAction(data);\r\n department.map((_department: any) => {\r\n _arrayDepartment.push({\r\n id: _department.DepartmentId.toString(),\r\n name:\r\n data === undefined || data === null\r\n ? _department.NameEn\r\n : _department.NameEn,\r\n action: data === undefined || data === null ? \"\" : data.Position,\r\n });\r\n _arrayDepartmentName.push(\r\n data === undefined || data === null\r\n ? _department.NameEn\r\n : _department.NameEn + \" | \" + data.Position\r\n );\r\n });\r\n\r\n setDepartmentName(_arrayDepartmentName);\r\n setPermissionType((prevState: any) => ({\r\n ...prevState,\r\n ids: _arrayDepartment,\r\n }));\r\n }\r\n async function _CheckboxCpmponents(data: any, key: any) {\r\n setPermissionType((prevState: any) => ({\r\n ...prevState,\r\n Permission: {\r\n ...permissionType.Permission,\r\n [key]: data === true ? \"T\" : \"F\",\r\n },\r\n }));\r\n }\r\n const InformationValue = [\r\n { Informition: \"EmployeeCode\" },\r\n { Informition: \"EmployeeName\" },\r\n { Informition: \"EmployeePosition\" },\r\n { Informition: \"EmployeeDivision\" },\r\n { Informition: \"EmployeeDepartment\" },\r\n ];\r\n return (\r\n <>\r\n {\r\n // onHide()\r\n }}\r\n onClick={() => console.log(\"informition\", informition)}\r\n className=\"referenceDocumentDialog-dialog\"\r\n breakpoints={{ \"960px\": \"75vw\" }}\r\n style={{ width: \"70vw\" }}\r\n footer={renderFooter()}\r\n >\r\n {\r\n console.log(\"per=>\", { informition });\r\n }}\r\n >\r\n \r\n
\r\n

\r\n Add Permission\r\n

\r\n \r\n \r\n \r\n

\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n {permissionType?.permissiontype === \"Role\" && (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n {\r\n _Role(e.value, \"RoleID\");\r\n }}\r\n optionLabel=\"NameEn\"\r\n placeholder=\"-- Please Select Role --\"\r\n display=\"chip\"\r\n style={{\r\n width: \"100% \",\r\n fontSize: \"13px\",\r\n borderColor: validation.RoleValidation ? \"red\" : \"\",\r\n }}\r\n />\r\n \r\n \r\n \r\n )}\r\n {permissionType?.permissiontype === \"FormControl\" && (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {advanceFormLabalSelect !== undefined &&\r\n advanceFormLabalSelect !== null ? (\r\n Object.keys(advanceFormLabalSelect).length !== 0 ? (\r\n advanceFormLabalSelect.column !== undefined &&\r\n advanceFormLabalSelect.column !== null ? (\r\n advanceFormLabalSelect.column.length !== 0 ? (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n <>\r\n )\r\n ) : (\r\n <>\r\n )\r\n ) : (\r\n <>\r\n )\r\n ) : (\r\n <>\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n {/* {\r\n console.log(\"per=>data\", data);\r\n console.log(\"per=>informition\", informition);\r\n }}\r\n style={{\r\n width: \"100%\",\r\n borderRadius: \"6px 6px 6px 6px\",\r\n }}\r\n options={[\r\n \"Employee Code\",\r\n \"Employee Name\",\r\n \"Employee Position\",\r\n \"Employee Division\",\r\n \"Employee Department\",\r\n ]}\r\n value={\r\n informition && informition. !== \"\"\r\n ? permissionType?.formcontrol?.labelaction\r\n : null\r\n }\r\n key={\"Informition\"}\r\n /> */}\r\n \r\n \r\n \r\n \r\n )}\r\n {permissionType?.permissiontype === \"Department\" && (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n {\r\n _Company(e.value, \"Company\");\r\n }}\r\n optionLabel=\"NameEn\"\r\n placeholder=\"-- Please Select Company --\"\r\n display=\"chip\"\r\n style={{\r\n width: \"100% \",\r\n fontSize: \"13px\",\r\n borderColor: validation.CompanyValidation ? \"red\" : \"\",\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n _department(e.value, \"RoleID\");\r\n }}\r\n optionLabel=\"NameEn\"\r\n placeholder=\"-- Please Select Department --\"\r\n display=\"chip\"\r\n style={{\r\n width: \"100% \",\r\n fontSize: \"13px\",\r\n borderColor: validation.DepartmentValidation ? \"red\" : \"\",\r\n }}\r\n />\r\n \r\n \r\n {permissionType.ids.length !== 0 && (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n {permissionType?.permissiontype === \"FormControl\" && (\r\n <>\r\n {(informition.Informition === \"Employee Department\" ||\r\n informition.Informition === \"Employee Division\") && (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n {\r\n let _newData = permissionType;\r\n _newData.formcontrol.labelaction = data.value;\r\n setPermissionType({ ..._newData });\r\n }}\r\n style={{\r\n width: \"100%\",\r\n borderRadius: \"6px 6px 6px 6px\",\r\n }}\r\n options={[\"Above\", \"Below\"]}\r\n value={\r\n permissionType?.formcontrol?.labelaction !== \"\"\r\n ? permissionType?.formcontrol?.labelaction\r\n : null\r\n }\r\n key={\"Position\"}\r\n />\r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n {permissionType !== undefined &&\r\n permissionType !== null &&\r\n permissionType.length !== 0 && (\r\n <>\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n};\r\n","import { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Toast } from \"primereact/toast\";\r\nimport React, { useEffect, useState, useRef } from \"react\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { FiPlus } from \"react-icons/fi\";\r\nimport { RiFileCopy2Line } from \"react-icons/ri\";\r\nimport { ButtonComponents } from \"../../ButtonComponents/ButtonComponents\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport editIcon from \"../../../assets/edit-icon.png\";\r\nimport binIcon from \"../../../assets/bin-icon.png\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport \"./AuthorizationComponent.css\";\r\nimport { DropdownComponents } from \"../../DropdownComponents/DropdownComponents\";\r\nimport { MultiSelect } from \"primereact/multiselect\";\r\nimport EmployeeDialog from \"../../DataFechDialogComponents/EmployeeDialog/EmployeeDialog\";\r\nimport { IoCloseOutline } from \"react-icons/io5\";\r\nimport { BiSave } from \"react-icons/bi\";\r\nimport { Checkbox } from \"primereact/checkbox\";\r\nimport { GetAllDynamic } from \"../../../Services/DynamicService\";\r\nimport { dataCompany } from \"../../../Services/CompanyService\";\r\nimport { GetDepartment } from \"../../../Services/DepartmentService\";\r\nimport AutoCompleteComponents from \"../../AutoCompleteComponents/AutoCompleteComponents\";\r\nimport {\r\n AuthorizationDepartmentModel,\r\n AuthorizationPermissionModel,\r\n} from \"./AuthorizationModel/AuthorizationModel\";\r\nimport { GetAllEmployee } from \"../../../Services/EmployeeService\";\r\ntype Props = {\r\n setAdvanceForm: any;\r\n advanceForm: any;\r\n controlModel: any;\r\n setControlModel: any;\r\n actionProps?: any;\r\n objectDataAuthorizationProps: any;\r\n setIsLoad?: any;\r\n};\r\n\r\nconst AuthorizationComponent = (props: Props) => {\r\n const toast = useRef(null);\r\n // const [roleData, setRoleData] = useState([]);\r\n // const [companyData, setCompanyData] = useState([]);\r\n // const [departmentData, setDepartmentData] = useState([]);:\r\n const [visibleModel, setVisibleModel] = useState(false);\r\n const [visiblePermissionModel, setVisiblePermissionModel] =\r\n useState(false);\r\n const [departmentList, setDepartmentList] = useState({});\r\n const [roleManage, setRoleManage] = useState();\r\n const [companyManage, setCompanyManage] = useState();\r\n const [companyRequest, setCompanyRequest] = useState();\r\n const [roleManageId, setRoleManageId] = useState();\r\n const [roleRequest, setRoleRequest] = useState();\r\n const [roleRequestId, setRoleRequestId] = useState();\r\n const [departmentManage, setDepartmentManage] = useState([]);\r\n const [departmentCompanyManage, setDepartmentCompanyManage] = useState(\r\n []\r\n );\r\n const [departmentCompanyRequest, setDepartmentCompanyRequest] = useState(\r\n []\r\n );\r\n const [employeeRequest, setEmployeeRequest] = useState([]);\r\n const [departmentRequest, setDepartmentRequest] = useState([]);\r\n const [keyAutoComplete, setKeyAutoComplete] = useState();\r\n const [employee, setEmployee] = useState([]);\r\n const [searchData, setSearchData] = useState(\r\n props.objectDataAuthorizationProps.Employee\r\n );\r\n const [isDialogVisible, setDialogVisible] = useState(false);\r\n const [globalFilterValue, setGlobalFilterValue] = useState(\"\");\r\n const [employeeSelect, setEmployeeSelect] = useState([]);\r\n const [permissionTable, setPermissionTable] = useState([]);\r\n const [Authorization_view, setAuthorization_view] = useState([]);\r\n const [keyAuthorization_view, setKeyAuthorization_view] = useState(\"\");\r\n const [manageCompanyJSON, setManageCompanyJSON] = useState([]);\r\n const [editTablePermission, setEditTablePermission] = useState([]);\r\n const empData = JSON.parse(window.localStorage.getItem(\"userData\") || \"\");\r\n\r\n useEffect(() => {\r\n if (props.controlModel !== undefined) {\r\n _DepartmentGetJson(props.controlModel);\r\n }\r\n if (props.controlModel === undefined || props.controlModel === null) {\r\n } else {\r\n if (props.actionProps === \"edit\") {\r\n let _dataJson =\r\n props.controlModel.Authorization_view === undefined ||\r\n props.controlModel.Authorization_view === null\r\n ? []\r\n : props.controlModel.Authorization_view.length === 0 ||\r\n Object.keys(props.controlModel.Authorization_view).length === 0\r\n ? []\r\n : props.controlModel.Authorization_view;\r\n\r\n setKeyAuthorization_view(\"Authorization_view\");\r\n if (_dataJson.length !== 0) {\r\n let _arrayRoleTable: any = [];\r\n _dataJson.map((data: any) => {\r\n let _arrayRolePermission: any = [];\r\n if (Object.keys(data).length !== 0) {\r\n if (data.Permission.View === \"T\") {\r\n _arrayRolePermission.push(\"View\");\r\n }\r\n if (data.Permission.Print === \"T\") {\r\n _arrayRolePermission.push(\"Print\");\r\n }\r\n if (data.Permission.Copy === \"T\") {\r\n _arrayRolePermission.push(\"Copy\");\r\n }\r\n if (data.permissiontype === \"Role\") {\r\n let _arrayRoleName: any = [];\r\n data.ids.map((_dataRole: any) => {\r\n _arrayRoleName.push(_dataRole.name);\r\n });\r\n\r\n let _objTable = {\r\n Type: data.permissiontype,\r\n Description:\r\n _arrayRoleName.length === 0\r\n ? \"\"\r\n : _arrayRoleName.toString(),\r\n Permission:\r\n _arrayRolePermission.length === 0\r\n ? \"\"\r\n : _arrayRolePermission.toString(),\r\n };\r\n _arrayRoleTable.push(_objTable);\r\n }\r\n if (data.permissiontype === \"Department\") {\r\n let _arrayDepartmentName: any = [];\r\n\r\n data.ids.map((_department: any) => {\r\n _arrayDepartmentName.push(\r\n data === undefined || data === null\r\n ? _department.name\r\n : _department.name + \" | \" + _department.action\r\n );\r\n });\r\n\r\n let _objTable = {\r\n Type: data.permissiontype,\r\n Description:\r\n _arrayDepartmentName.length === 0\r\n ? \"\"\r\n : _arrayDepartmentName.toString(),\r\n Permission:\r\n _arrayRolePermission.length === 0\r\n ? \"\"\r\n : _arrayRolePermission.toString(),\r\n };\r\n _arrayRoleTable.push(_objTable);\r\n }\r\n\r\n if (data.permissiontype === \"FormControl\") {\r\n let _objTable;\r\n\r\n if (data.formcontrol.labeltype === \"Table\") {\r\n _objTable = {\r\n Type: data.permissiontype,\r\n Description:\r\n \"label:\" +\r\n data.formcontrol.label +\r\n \" columnname:\" +\r\n data.formcontrol.labelcolumnname +\r\n \" type:\" +\r\n data.formcontrol.labeltype +\r\n \" valuetype:\" +\r\n data.formcontrol.labelvaluetype +\r\n \" informition:\" +\r\n data.formcontrol.labelInformition,\r\n Permission:\r\n _arrayRolePermission.length === 0\r\n ? \"\"\r\n : _arrayRolePermission.toString(),\r\n };\r\n } else {\r\n _objTable = {\r\n Type: data.permissiontype,\r\n Description:\r\n \"label:\" +\r\n data.formcontrol.label +\r\n \" type:\" +\r\n data.formcontrol.labeltype +\r\n \" valuetype:\" +\r\n data.formcontrol.labelvaluetype +\r\n \" informition:\" +\r\n data.formcontrol.labelInformition,\r\n Permission:\r\n _arrayRolePermission.length === 0\r\n ? \"\"\r\n : _arrayRolePermission.toString(),\r\n };\r\n }\r\n _arrayRoleTable.push(_objTable);\r\n }\r\n if (data.permissiontype === \"Public\") {\r\n let _objTable;\r\n _objTable = {\r\n Type: data.permissiontype,\r\n Description: \"\",\r\n Permission:\r\n _arrayRolePermission.length === 0\r\n ? \"\"\r\n : _arrayRolePermission.toString(),\r\n };\r\n _arrayRoleTable.push(_objTable);\r\n }\r\n }\r\n });\r\n\r\n setPermissionTable(_arrayRoleTable);\r\n setAuthorization_view(_dataJson);\r\n }\r\n } else {\r\n let _dataJson =\r\n props.controlModel.Authorization_view === undefined ||\r\n props.controlModel.Authorization_view === null\r\n ? []\r\n : props.controlModel.Authorization_view.length === 0\r\n ? []\r\n : props.controlModel.Authorization_view;\r\n\r\n setKeyAuthorization_view(\"Authorization_view\");\r\n setAuthorization_view(_dataJson);\r\n }\r\n }\r\n }, [props.controlModel, props.objectDataAuthorizationProps]);\r\n\r\n const labelStyle: any = {\r\n fontStyle: \"normal\",\r\n fontWeight: \"normal\",\r\n fontSize: \"13px\",\r\n lineHeight: \"19px\",\r\n marginLeft: \"5px\",\r\n color: \"#000000\",\r\n };\r\n async function _fechDepartment() {\r\n const _Department = await GetDepartment();\r\n\r\n let _dataFilter = _Department.filter(\r\n (_department: any) => _department.NameEn !== null\r\n );\r\n console.log(\"_dataFilter\", _dataFilter);\r\n\r\n setDepartmentList(_dataFilter);\r\n }\r\n async function _dataTable(data: any) {\r\n if (editTablePermission.length === 0) {\r\n let _array: any = permissionTable;\r\n _array.push(data);\r\n\r\n setPermissionTable(_array);\r\n }\r\n }\r\n\r\n async function _dataAuthorization_view(data: any, key: any) {\r\n let _array: any = Authorization_view;\r\n\r\n _array.push(data);\r\n setAuthorization_view(_array);\r\n props.setControlModel((prevState: any) => {\r\n return {\r\n ...prevState,\r\n [key]: _array,\r\n };\r\n });\r\n }\r\n async function _dataAuthorization_viewEdit(data: any, key: any) {\r\n props.setControlModel((prevState: any) => ({\r\n ...prevState,\r\n ...data,\r\n }));\r\n }\r\n\r\n // const fetchRole = async () => {\r\n // const roles = await GetAllDynamic(\"Roles/GetAll\", undefined);\r\n // setRoleData([...roles]);\r\n // };\r\n // const fetchCompany = async () => {\r\n // const companies = await dataCompany();\r\n // setCompanyData([...companies]);\r\n // };\r\n // const fetchDepartment = async () => {\r\n // const departments = await GetDepartment();\r\n // setDepartmentData([...departments]);\r\n // };\r\n function _VisibleModel(data: any) {\r\n setKeyAutoComplete(data);\r\n\r\n if (data === \"Authorization_view\" || data === \"Authorization_view\") {\r\n setEditTablePermission([]);\r\n setVisiblePermissionModel(!visiblePermissionModel);\r\n } else {\r\n setVisibleModel(!visibleModel);\r\n }\r\n }\r\n function _VisibleEditModel(key: any, data: any, inx: any) {\r\n setKeyAutoComplete(key);\r\n\r\n setEditTablePermission(props.controlModel.Authorization_view[inx.rowIndex]);\r\n setVisiblePermissionModel(!visiblePermissionModel);\r\n }\r\n\r\n async function showModal(key: any) {\r\n if (globalFilterValue != \"\") {\r\n setGlobalFilterValue(\"\");\r\n }\r\n setDialogVisible(!isDialogVisible);\r\n setKeyAutoComplete(key);\r\n }\r\n async function onDeleteRow(dataRow: any, option: any) {\r\n let _arrayPush: any = Authorization_view.filter(\r\n (e: any, idx: any) => idx !== option\r\n );\r\n let _arrayPushPermissionTable: any = [];\r\n\r\n permissionTable.map((data: any, inx: any) => {\r\n if (option !== inx) {\r\n _arrayPushPermissionTable.push(data);\r\n }\r\n });\r\n setAuthorization_view(_arrayPush);\r\n setPermissionTable(_arrayPushPermissionTable);\r\n if (\r\n keyAuthorization_view === undefined ||\r\n keyAuthorization_view === null ||\r\n keyAuthorization_view.length === 0\r\n ) {\r\n } else {\r\n console.log(_arrayPush);\r\n\r\n props.setControlModel((prevState: any) => ({\r\n ...prevState,\r\n [keyAuthorization_view]: _arrayPush,\r\n }));\r\n }\r\n }\r\n function _GameRoleID(data: any, key: any) {\r\n var _dataRole = data.split(\",\");\r\n let _arrayRole: any = [];\r\n _dataRole.map((dataRole: any) => {\r\n let roleDataFilter = props.objectDataAuthorizationProps.Role.filter(\r\n (_dataFilter: any) => _dataFilter.RoleId.toString() === dataRole\r\n );\r\n\r\n if (roleDataFilter.length !== 0) {\r\n _arrayRole.push(roleDataFilter[0]);\r\n }\r\n });\r\n if (key === \"RoleID\") {\r\n setRoleManage(_arrayRole);\r\n } else {\r\n setRoleRequest(_arrayRole);\r\n }\r\n }\r\n function _DepartmentGetJson(data: any) {\r\n if (props.actionProps === \"add\") {\r\n let _SpecificEmployeeId =\r\n data.templateForm.SpecificEmployeeId.length === 0\r\n ? []\r\n : data.templateForm.SpecificEmployeeId.split(\",\");\r\n let _specificArray: any = [];\r\n if (_SpecificEmployeeId.length !== 0) {\r\n let _employeeData =\r\n Object.keys(props.objectDataAuthorizationProps.Employee).length === 0\r\n ? []\r\n : props.objectDataAuthorizationProps.Employee;\r\n\r\n _employeeData.filter((_data: any) => {\r\n let _dataTo = _SpecificEmployeeId.filter(\r\n (dataTo: any) => _data.EmployeeId.toString() === dataTo\r\n );\r\n if (_dataTo.length !== 0) {\r\n _specificArray.push(_data);\r\n }\r\n });\r\n\r\n setEmployeeRequest(_specificArray);\r\n }\r\n if (\r\n data.templateForm.RoleID !== null &&\r\n data.templateForm.RoleID.length !== 0\r\n ) {\r\n _GameRoleID(data.templateForm.RoleID, \"RoleID\");\r\n }\r\n if (\r\n data.templateForm.SpecificRoleID !== null &&\r\n data.templateForm.SpecificRoleID.length !== 0\r\n ) {\r\n _GameRoleID(data.templateForm.SpecificRoleID, \"SpecificRoleID\");\r\n }\r\n\r\n if (data.Authorization_manage_department !== null) {\r\n if (data.Authorization_manage_department.length !== 0) {\r\n let _DepartmentData = data.Authorization_manage_department;\r\n\r\n setDepartmentManage(_DepartmentData);\r\n } else {\r\n setDepartmentManage([]);\r\n }\r\n }\r\n if (\r\n data.Authorization_request_company !== null &&\r\n data.Authorization_request_company.length !== 0\r\n ) {\r\n if (data.Authorization_request_company.length !== 0) {\r\n let _arrayManageCompanyDepartment: any = [];\r\n let _ManageCompany =\r\n data.Authorization_request_company === undefined ||\r\n data.Authorization_request_company === null ||\r\n data.Authorization_request_company.length === 0\r\n ? null\r\n : data.Authorization_request_company;\r\n if (_ManageCompany === null) {\r\n } else {\r\n let _arrayManageCompany: any = [];\r\n _ManageCompany.map((data: any) => {\r\n let companyDataFilter =\r\n props.objectDataAuthorizationProps.Company.filter(\r\n (_data: any) => data.CompanyId === _data.CompanyId.toString()\r\n );\r\n if (companyDataFilter.length !== 0) {\r\n _arrayManageCompany.push(companyDataFilter[0]);\r\n let _dataFilterCompany =\r\n props.objectDataAuthorizationProps.Department.filter(\r\n (item: any) =>\r\n item.CompanyCode === companyDataFilter[0].CompanyCode\r\n );\r\n if (_arrayManageCompanyDepartment.length !== 0) {\r\n // props.setIsLoad(true);\r\n _arrayManageCompanyDepartment = [\r\n ..._arrayManageCompanyDepartment,\r\n ..._dataFilterCompany,\r\n ];\r\n // let _arrayData: any = [];\r\n // for (\r\n // let k = 0;\r\n // k < _arrayManageCompanyDepartment.length;\r\n // k++\r\n // ) {\r\n // // const element = array[index];\r\n // for (let l = 0; l < _dataFilterCompany.length; l++) {\r\n // // const element = _dataFilterCompany[l];\r\n // if (\r\n // _arrayManageCompanyDepartment[k].NameEn ===\r\n // _dataFilterCompany[l].NameEn ||\r\n // _arrayManageCompanyDepartment[k].NameTh ===\r\n // _dataFilterCompany[l].NameTh\r\n // ) {\r\n // _arrayData.push(_arrayManageCompanyDepartment[k]);\r\n // console.log(\r\n // \"_arrayData_arrayData_arrayData_arrayData\",\r\n // _arrayData\r\n // );\r\n // }\r\n // // {_arrayData.push()\r\n // }\r\n // // props.setIsLoad(false);\r\n // }\r\n // _arrayManageCompanyDepartment = _arrayData;\r\n }\r\n // else if (\r\n // _arrayManageCompanyDepartment.length === 0 &&\r\n // _arrayManageCompany.length === 1\r\n // ) {\r\n // _arrayManageCompanyDepartment = [\r\n // ..._arrayManageCompanyDepartment,\r\n // ..._dataFilterCompany,\r\n // ];\r\n // }\r\n }\r\n });\r\n if (_arrayManageCompany.length !== 0) {\r\n setDepartmentCompanyRequest([..._arrayManageCompanyDepartment]);\r\n setCompanyRequest(_arrayManageCompany);\r\n } else {\r\n setDepartmentCompanyRequest([]);\r\n }\r\n }\r\n }\r\n } else {\r\n setDepartmentCompanyRequest([]);\r\n }\r\n if (\r\n data.Authorization_manage_company !== null &&\r\n data.Authorization_manage_company.length !== 0\r\n ) {\r\n if (data.Authorization_manage_company.length !== 0) {\r\n let _ManageCompany =\r\n data.Authorization_manage_company === undefined ||\r\n data.Authorization_manage_company === null ||\r\n data.Authorization_manage_company.length === 0\r\n ? null\r\n : data.Authorization_manage_company;\r\n if (_ManageCompany === null) {\r\n } else {\r\n let _arrayManageCompany: any = [];\r\n let _arrayManageCompanyDepartment: any = [];\r\n _ManageCompany.map((data: any) => {\r\n let companyDataFilter =\r\n props.objectDataAuthorizationProps.Company.filter(\r\n (_data: any) => data.CompanyId === _data.CompanyId.toString()\r\n );\r\n\r\n if (companyDataFilter.length !== 0) {\r\n _arrayManageCompany.push(companyDataFilter[0]);\r\n\r\n let _dataFilterCompany =\r\n props.objectDataAuthorizationProps.Department.filter(\r\n (item: any) =>\r\n item.CompanyCode === companyDataFilter[0].CompanyCode\r\n );\r\n if (_dataFilterCompany.length !== 0) {\r\n // _arrayManageCompanyDepartment.push(_dataFilterCompany);\r\n _arrayManageCompanyDepartment = [\r\n ..._arrayManageCompanyDepartment,\r\n ..._dataFilterCompany,\r\n ];\r\n // if (_arrayManageCompanyDepartment.length !== 0) {\r\n // // props.setIsLoad(true);\r\n // let _arrayData: any = [];\r\n // for (\r\n // let k = 0;\r\n // k < _arrayManageCompanyDepartment.length;\r\n // k++\r\n // ) {\r\n // // const element = array[index];\r\n // for (let l = 0; l < _dataFilterCompany.length; l++) {\r\n // // const element = _dataFilterCompany[l];\r\n // if (\r\n // _arrayManageCompanyDepartment[k].NameEn ===\r\n // _dataFilterCompany[l].NameEn ||\r\n // _arrayManageCompanyDepartment[k].NameTh ===\r\n // _dataFilterCompany[l].NameTh\r\n // ) {\r\n // _arrayData.push(_arrayManageCompanyDepartment[k]);\r\n // console.log(\r\n // \"_arrayData_arrayData_arrayData_arrayData\",\r\n // _arrayData\r\n // );\r\n // }\r\n // // {_arrayData.push()\r\n // }\r\n // // props.setIsLoad(false);\r\n // }\r\n // _arrayManageCompanyDepartment = _arrayData;\r\n // } else if (\r\n // _arrayManageCompanyDepartment.length === 0 &&\r\n // _arrayManageCompany.length === 1\r\n // ) {\r\n // _arrayManageCompanyDepartment = [\r\n // ..._arrayManageCompanyDepartment,\r\n // ..._dataFilterCompany,\r\n // ];\r\n // }\r\n }\r\n }\r\n });\r\n\r\n if (_arrayManageCompany.length !== 0) {\r\n setDepartmentCompanyManage([..._arrayManageCompanyDepartment]);\r\n\r\n setCompanyManage(_arrayManageCompany);\r\n } else {\r\n setDepartmentCompanyManage([]);\r\n }\r\n }\r\n } else {\r\n console.log(\"aaaaaaaaaaaaaaa\");\r\n\r\n setDepartmentCompanyManage([]);\r\n }\r\n } else {\r\n setDepartmentCompanyManage([]);\r\n }\r\n if (\r\n data.Authorization_request_company !== null &&\r\n data.Authorization_request_company.length !== 0\r\n ) {\r\n if (data.Authorization_request_company.length !== 0) {\r\n let _ManageCompany =\r\n data.Authorization_request_company === undefined ||\r\n data.Authorization_request_company === null ||\r\n data.Authorization_request_company.length === 0\r\n ? null\r\n : data.Authorization_request_company;\r\n if (_ManageCompany === null) {\r\n } else {\r\n let _arrayManageCompany: any = [];\r\n _ManageCompany.map((data: any) => {\r\n let companyDataFilter =\r\n props.objectDataAuthorizationProps.Company.filter(\r\n (_data: any) => data.CompanyId === _data.CompanyId.toString()\r\n );\r\n if (companyDataFilter.length !== 0) {\r\n _arrayManageCompany.push(companyDataFilter[0]);\r\n }\r\n });\r\n if (_arrayManageCompany.length !== 0) {\r\n setCompanyRequest(_arrayManageCompany);\r\n }\r\n }\r\n }\r\n }\r\n } else {\r\n if (\r\n data.templateForm.SpecificRoleID !== null &&\r\n data.templateForm.SpecificRoleID.length !== 0\r\n ) {\r\n _GameRoleID(data.templateForm.SpecificRoleID, \"SpecificRoleID\");\r\n }\r\n\r\n if (\r\n data.templateForm.RoleID !== null &&\r\n data.templateForm.RoleID.length !== 0\r\n ) {\r\n _GameRoleID(data.templateForm.RoleID, \"RoleID\");\r\n }\r\n\r\n if (\r\n data.Authorization_manage_company !== null &&\r\n data.Authorization_manage_company.length !== 0\r\n ) {\r\n if (data.Authorization_manage_company.length !== 0) {\r\n let _ManageCompany =\r\n data.Authorization_manage_company === undefined ||\r\n data.Authorization_manage_company === null ||\r\n data.Authorization_manage_company.length === 0\r\n ? null\r\n : data.Authorization_manage_company;\r\n if (_ManageCompany === null) {\r\n } else {\r\n let _arrayManageCompany: any = [];\r\n let _arrayManageCompanyDepartment: any = [];\r\n _ManageCompany.map((data: any) => {\r\n let companyDataFilter =\r\n props.objectDataAuthorizationProps.Company.filter(\r\n (_data: any) => data.CompanyId === _data.CompanyId.toString()\r\n );\r\n console.log(\"datadatadatadatadata\", data, companyDataFilter);\r\n\r\n if (companyDataFilter.length !== 0) {\r\n _arrayManageCompany.push(companyDataFilter[0]);\r\n\r\n let _dataFilterCompany =\r\n props.objectDataAuthorizationProps.Department.filter(\r\n (item: any) =>\r\n item.CompanyCode === companyDataFilter[0].CompanyCode\r\n );\r\n if (_dataFilterCompany.length !== 0) {\r\n console.log(\"_dataFilterCompany[0]\", _dataFilterCompany);\r\n // _arrayManageCompanyDepartment.push(_dataFilterCompany);\r\n _arrayManageCompanyDepartment = [\r\n ..._arrayManageCompanyDepartment,\r\n ..._dataFilterCompany,\r\n ];\r\n // if (_arrayManageCompanyDepartment.length !== 0) {\r\n // // props.setIsLoad(true);\r\n // let _arrayData: any = [];\r\n // for (\r\n // let k = 0;\r\n // k < _arrayManageCompanyDepartment.length;\r\n // k++\r\n // ) {\r\n // // const element = array[index];\r\n // for (let l = 0; l < _dataFilterCompany.length; l++) {\r\n // // const element = _dataFilterCompany[l];\r\n // if (\r\n // _arrayManageCompanyDepartment[k].NameEn ===\r\n // _dataFilterCompany[l].NameEn ||\r\n // _arrayManageCompanyDepartment[k].NameTh ===\r\n // _dataFilterCompany[l].NameTh\r\n // ) {\r\n // _arrayData.push(_arrayManageCompanyDepartment[k]);\r\n // console.log(\r\n // \"_arrayData_arrayData_arrayData_arrayData\",\r\n // _arrayData\r\n // );\r\n // }\r\n // // {_arrayData.push()\r\n // }\r\n // // props.setIsLoad(false);\r\n // }\r\n // _arrayManageCompanyDepartment = _arrayData;\r\n // } else if (\r\n // _arrayManageCompanyDepartment.length === 0 &&\r\n // _arrayManageCompany.length === 1\r\n // ) {\r\n // _arrayManageCompanyDepartment = [\r\n // ..._arrayManageCompanyDepartment,\r\n // ..._dataFilterCompany,\r\n // ];\r\n // }\r\n }\r\n }\r\n });\r\n console.log(\r\n \"_arrayManageCompanyDepartment111111111111111jjjjjjjjj\",\r\n _arrayManageCompanyDepartment,\r\n _arrayManageCompany\r\n );\r\n if (_arrayManageCompany.length !== 0) {\r\n console.log(\r\n \"_arrayManageCompanyDepartment111111111111111\",\r\n _arrayManageCompanyDepartment\r\n );\r\n setDepartmentCompanyManage([..._arrayManageCompanyDepartment]);\r\n setCompanyManage(_arrayManageCompany);\r\n } else {\r\n console.log(\r\n \"_arrayManageCompanyDepartment111111111111111\",\r\n _arrayManageCompanyDepartment\r\n );\r\n setDepartmentCompanyManage([]);\r\n }\r\n }\r\n } else {\r\n console.log(\"aaaaaaaaaaaaaaa\");\r\n\r\n setDepartmentCompanyManage([]);\r\n }\r\n } else {\r\n console.log(\"aaaaaaaaaaaaaaa\");\r\n\r\n setDepartmentCompanyManage([]);\r\n }\r\n if (\r\n data.Authorization_request_company !== null &&\r\n data.Authorization_request_company.length !== 0\r\n ) {\r\n if (data.Authorization_request_company.length !== 0) {\r\n let _arrayManageCompanyDepartment: any = [];\r\n let _ManageCompany =\r\n data.Authorization_request_company === undefined ||\r\n data.Authorization_request_company === null ||\r\n data.Authorization_request_company.length === 0\r\n ? null\r\n : data.Authorization_request_company;\r\n if (_ManageCompany === null) {\r\n } else {\r\n let _arrayManageCompany: any = [];\r\n _ManageCompany.map((data: any) => {\r\n let companyDataFilter =\r\n props.objectDataAuthorizationProps.Company.filter(\r\n (_data: any) => data.CompanyId === _data.CompanyId.toString()\r\n );\r\n if (companyDataFilter.length !== 0) {\r\n _arrayManageCompany.push(companyDataFilter[0]);\r\n let _dataFilterCompany =\r\n props.objectDataAuthorizationProps.Department.filter(\r\n (item: any) =>\r\n item.CompanyCode === companyDataFilter[0].CompanyCode\r\n );\r\n if (_dataFilterCompany.length !== 0) {\r\n // props.setIsLoad(true);\r\n _arrayManageCompanyDepartment = [\r\n ..._arrayManageCompanyDepartment,\r\n ..._dataFilterCompany,\r\n ];\r\n // let _arrayData: any = [];\r\n // for (\r\n // let k = 0;\r\n // k < _arrayManageCompanyDepartment.length;\r\n // k++\r\n // ) {\r\n // // const element = array[index];\r\n // for (let l = 0; l < _dataFilterCompany.length; l++) {\r\n // // const element = _dataFilterCompany[l];\r\n // if (\r\n // _arrayManageCompanyDepartment[k].NameEn ===\r\n // _dataFilterCompany[l].NameEn ||\r\n // _arrayManageCompanyDepartment[k].NameTh ===\r\n // _dataFilterCompany[l].NameTh\r\n // ) {\r\n // _arrayData.push(_arrayManageCompanyDepartment[k]);\r\n // console.log(\r\n // \"_arrayData_arrayData_arrayData_arrayData\",\r\n // _arrayData\r\n // );\r\n // }\r\n // // {_arrayData.push()\r\n // }\r\n // // props.setIsLoad(false);\r\n // }\r\n // _arrayManageCompanyDepartment = _arrayData;\r\n }\r\n }\r\n });\r\n if (_arrayManageCompany.length !== 0) {\r\n setDepartmentCompanyRequest([..._arrayManageCompanyDepartment]);\r\n setCompanyRequest(_arrayManageCompany);\r\n } else {\r\n setDepartmentCompanyRequest([]);\r\n }\r\n }\r\n }\r\n } else {\r\n setDepartmentCompanyRequest([]);\r\n }\r\n if (\r\n data.Authorization_manage_department !== null &&\r\n data.Authorization_manage_department.length !== 0\r\n ) {\r\n if (data.Authorization_manage_department.length !== 0) {\r\n let _ManageCompany =\r\n data.Authorization_manage_department === undefined ||\r\n data.Authorization_manage_department === null ||\r\n data.Authorization_manage_department.length === 0\r\n ? null\r\n : data.Authorization_manage_department;\r\n if (_ManageCompany === null) {\r\n } else {\r\n setDepartmentManage(_ManageCompany);\r\n }\r\n }\r\n } else {\r\n setDepartmentManage([]);\r\n }\r\n if (\r\n data.Authorization_request_department !== null &&\r\n data.Authorization_request_department.length !== 0\r\n ) {\r\n if (data.Authorization_request_department.length !== 0) {\r\n let _ManageCompany =\r\n data.Authorization_request_department === undefined ||\r\n data.Authorization_request_department === null ||\r\n data.Authorization_request_department.length === 0\r\n ? null\r\n : data.Authorization_request_department;\r\n if (_ManageCompany === null) {\r\n } else {\r\n setDepartmentRequest(_ManageCompany);\r\n }\r\n }\r\n } else {\r\n setDepartmentRequest([]);\r\n }\r\n }\r\n // console.log(\"data.templateForm\", data.templateForm);\r\n\r\n let _SpecificEmployeeId =\r\n data.templateForm.SpecificEmployeeId === undefined ||\r\n data.templateForm.SpecificEmployeeId === null ||\r\n data.templateForm.SpecificEmployeeId.length === 0\r\n ? []\r\n : data.templateForm.SpecificEmployeeId.split(\",\");\r\n let _specificArray: any = [];\r\n if (_SpecificEmployeeId.length !== 0) {\r\n let _employeeData =\r\n Object.keys(props.objectDataAuthorizationProps.Employee).length === 0\r\n ? []\r\n : props.objectDataAuthorizationProps.Employee;\r\n\r\n _employeeData.filter((_data: any) => {\r\n let _dataTo = _SpecificEmployeeId.filter(\r\n (dataTo: any) => _data.EmployeeId.toString() === dataTo\r\n );\r\n if (_dataTo.length !== 0) {\r\n _specificArray.push(_data);\r\n }\r\n });\r\n\r\n setEmployeeRequest(_specificArray);\r\n }\r\n }\r\n function _AutoComplete(data: any, key: any) {\r\n let _specificEmployeeId: any = [];\r\n // let _employeeRequest=employeeRequest\r\n\r\n if (key !== \"SpecificEmployeeId\") {\r\n props.setControlModel((prevState: any) => ({\r\n ...prevState,\r\n [key]: data,\r\n }));\r\n } else {\r\n let specificEmployeeId = data;\r\n specificEmployeeId.map((data: any) => {\r\n _specificEmployeeId.push(data.EmployeeId);\r\n });\r\n setEmployeeRequest(data);\r\n\r\n props.setControlModel((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...props.controlModel.templateForm,\r\n [key]:\r\n _specificEmployeeId.length === 0\r\n ? \"\"\r\n : _specificEmployeeId.toString(),\r\n },\r\n }));\r\n }\r\n }\r\n function _Role(data: any, key: any) {\r\n let _RoleIdManage: any = [];\r\n let _RoleIdRequest: any = [];\r\n if (key === \"RoleID\") {\r\n let _roleIdManage = data;\r\n _roleIdManage.map((data: any) => {\r\n _RoleIdManage.push(data.RoleId);\r\n });\r\n\r\n setRoleManage(data);\r\n }\r\n if (key === \"SpecificRoleID\") {\r\n let _roleIdRequest = data;\r\n _roleIdRequest.map((data: any) => {\r\n _RoleIdRequest.push(data.RoleId);\r\n });\r\n setRoleRequest(data);\r\n }\r\n props.setControlModel((prevState: any) => ({\r\n ...prevState,\r\n templateForm: {\r\n ...props.controlModel.templateForm,\r\n [key]:\r\n key === \"RoleID\"\r\n ? _RoleIdManage.toString()\r\n : _RoleIdRequest.toString(),\r\n },\r\n }));\r\n }\r\n function _Company(data: any, key: any) {\r\n let _CompanyManage: any = [];\r\n let _CompanyRequest: any = [];\r\n if (\r\n key === \"Authorization_manage_company\" ||\r\n key === \"Authorization_manage_company\"\r\n ) {\r\n let _companyManage = data;\r\n _companyManage.map((data: any) => {\r\n _CompanyManage.push({\r\n CompanyId: data.CompanyId.toString(),\r\n Name: data.NameEn,\r\n });\r\n });\r\n\r\n setCompanyManage(data);\r\n // for (let i = 0; i < _companyManage.length; i++) {\r\n\r\n // // props.objectDataAuthorizationProps.Department\r\n // let _dataFilterDepartment= props.objectDataAuthorizationProps.Department.filter((item:any)=> item.CompanyCode ===_companyManage[i].CompanyCode)\r\n // if(_dataFilterDepartment.length!==0){\r\n\r\n // }\r\n // }\r\n // console.log(\"_companyManage\", _companyManage);\r\n\r\n // setCompanyManageDepartment(data);\r\n }\r\n if (\r\n key === \"Authorization_request_company\" ||\r\n key === \"Authorization_request_company\"\r\n ) {\r\n let _companyRequest = data;\r\n _companyRequest.map((data: any) => {\r\n _CompanyRequest.push({\r\n CompanyId: data.CompanyId.toString(),\r\n Name: data.NameEn,\r\n });\r\n });\r\n setCompanyRequest(data);\r\n // setCompanyRequestDepartment(data);\r\n }\r\n\r\n props.setControlModel((prevState: any) => ({\r\n ...prevState,\r\n [key]:\r\n key === \"Authorization_manage_company\" ||\r\n key === \"Authorization_manage_company\"\r\n ? _CompanyManage\r\n : _CompanyRequest,\r\n }));\r\n }\r\n\r\n return (\r\n <>\r\n \r\n\r\n \r\n \r\n \r\n Authorization for Manage\r\n

\r\n \r\n \r\n \r\n
\r\n

\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n {\r\n _Role(e.value, \"RoleID\");\r\n }}\r\n optionLabel={\r\n empData.employeeData.Lang == \"EN\" ? \"NameEn\" : \"NameTh\"\r\n }\r\n placeholder=\"-- Please Select Role --\"\r\n display=\"chip\"\r\n filter\r\n resetFilterOnHide\r\n showClear\r\n style={{ width: \"100% \", fontSize: \"13px\" }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n _Company(\r\n e.value,\r\n props.actionProps !== \"add\"\r\n ? \"Authorization_manage_company\"\r\n : \"Authorization_manage_company\"\r\n );\r\n }}\r\n optionLabel={\r\n empData.employeeData.Lang === \"EN\" ? \"NameEn\" : \"NameTh\"\r\n }\r\n placeholder=\"-- Please Select Company --\"\r\n display=\"chip\"\r\n style={{ width: \"100% \", fontSize: \"13px\" }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n _VisibleModel(\r\n props.actionProps !== \"add\"\r\n ? \"Authorization_manage_department\"\r\n : \"Authorization_manage_department\"\r\n )\r\n }\r\n setStyleProps={{\r\n backgroundColor: \"#282f6a\",\r\n border: \"1px solid #282f6a\",\r\n borderTopRightRadius: \"6px\",\r\n borderBottomRightRadius: \"6px\",\r\n boxShadow: \"none\",\r\n height: departmentManage.length === 0 ? \"38px\" : \"100%\",\r\n }}\r\n />\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n Authorization for Request\r\n

\r\n \r\n \r\n \r\n
\r\n

\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n showModal(\"SpecificEmployeeId\")}\r\n setStyleProps={{\r\n backgroundColor: \"#282f6a\",\r\n border: \"1px solid #282f6a\",\r\n borderTopRightRadius: \"6px\",\r\n borderBottomRightRadius: \"6px\",\r\n boxShadow: \"none\",\r\n height:\r\n employeeRequest === undefined || employeeRequest === null\r\n ? \"38px\"\r\n : employeeRequest.length !== 0\r\n ? \"100%\"\r\n : \"38px\",\r\n }}\r\n />\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n {\r\n _Role(e.value, \"SpecificRoleID\");\r\n }}\r\n optionLabel={\r\n empData.employeeData.Lang == \"EN\" ? \"NameEn\" : \"NameTh\"\r\n }\r\n placeholder=\"-- Please Select Role --\"\r\n display=\"chip\"\r\n filter\r\n resetFilterOnHide\r\n showClear\r\n style={{ width: \"100% \", fontSize: \"13px\" }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n _Company(\r\n e.value,\r\n props.actionProps !== \"add\"\r\n ? \"Authorization_request_company\"\r\n : \"Authorization_request_company\"\r\n );\r\n }}\r\n optionLabel={\r\n empData.employeeData.Lang === \"EN\" ? \"NameEn\" : \"NameTh\"\r\n }\r\n filter\r\n placeholder=\"-- Please Select Company --\"\r\n display=\"chip\"\r\n style={{ width: \"100% \", fontSize: \"13px\" }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n _VisibleModel(\r\n props.actionProps !== \"add\"\r\n ? \"Authorization_request_department\"\r\n : \"Authorization_request_department\"\r\n )\r\n }\r\n setStyleProps={{\r\n backgroundColor: \"#282f6a\",\r\n border: \"1px solid #282f6a\",\r\n borderTopRightRadius: \"6px\",\r\n borderBottomRightRadius: \"6px\",\r\n boxShadow: \"none\",\r\n height: departmentRequest.length === 0 ? \"38px\" : \"100%\",\r\n }}\r\n />\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n Authorization for View\r\n

\r\n \r\n \r\n \r\n
\r\n

\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n console.log(\r\n \"Authorization for View,Authorization for View\",\r\n permissionTable\r\n )\r\n }\r\n >\r\n \r\n _VisibleModel(\r\n props.actionProps !== \"add\"\r\n ? \"Authorization_view\"\r\n : \"Authorization_view\"\r\n )\r\n }\r\n setLabelProps={\"Add Permission\"}\r\n setIconProps={}\r\n setClassNameProps={\"p-button-text-position\"}\r\n />\r\n {}}\r\n // selection={selectedApprovals}\r\n onSelectionChange={(e) => {\r\n // setSelectedApprovals(e.value);\r\n }}\r\n responsiveLayout=\"scroll\"\r\n >\r\n }\r\n >\r\n\r\n \r\n }\r\n >\r\n \r\n }\r\n >\r\n\r\n }\r\n body={(rowData: any, inx: any) => (\r\n {\r\n _VisibleEditModel(\r\n props.actionProps !== \"add\"\r\n ? \"Authorization_view\"\r\n : \"Authorization_view\",\r\n rowData,\r\n inx\r\n );\r\n }}\r\n >\r\n \"logo\"\r\n \r\n )}\r\n >\r\n\r\n \r\n }\r\n body={(rowData: any, options: any) => {\r\n return (\r\n {\r\n onDeleteRow(rowData, options.rowIndex);\r\n }}\r\n >\r\n \"logo\"\r\n \r\n );\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 1 ||\r\n departmentCompanyManage.length !== 0\r\n ? departmentCompanyManage\r\n : props.objectDataAuthorizationProps.Department\r\n : keyAutoComplete === \"Authorization_request_department\"\r\n ? props.controlModel?.Authorization_request_company?.length > 1 ||\r\n departmentCompanyRequest.length !== 0\r\n ? departmentCompanyRequest\r\n : props.objectDataAuthorizationProps.Department\r\n : props.objectDataAuthorizationProps.Department\r\n }\r\n setVisibleProps={_VisibleModel}\r\n setControlModel={props.setControlModel}\r\n keyProps={keyAutoComplete}\r\n departmentRequestProp={departmentRequest}\r\n departmentManageProp={departmentManage}\r\n />\r\n \r\n {/* */}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default AuthorizationComponent;\r\n","import moment from \"moment\";\r\n\r\nexport const sorterFunc = (\r\n a: any,\r\n b: any,\r\n key: string,\r\n type: \"dec\" | \"asc\" | null,\r\n filterType: string,\r\n dateFormat?: string | null\r\n) => {\r\n try {\r\n let nameA: any;\r\n let nameB: any;\r\n\r\n if (filterType === \"date\") {\r\n nameA = a[key] || a[key] !== \"\" ? new Date(dateFormat != null ? moment(a[key], dateFormat).format(\"DD MMM YYYY\") : a[key]).getTime() : \"\";\r\n nameB = b[key] || b[key] !== \"\" ? new Date(dateFormat != null ? moment(b[key], dateFormat).format(\"DD MMM YYYY\") : b[key]).getTime() : \"\";\r\n if (type === \"asc\") {\r\n return nameA - nameB;\r\n } else {\r\n return nameB - nameA;\r\n }\r\n } else {\r\n if (typeof a[key] !== \"string\") {\r\n return 0;\r\n }\r\n if (!isNaN(a[key]?.replaceAll(\",\", \"\"))) {\r\n nameA = Number(a[key]?.replaceAll(\",\", \"\"));\r\n nameB = Number(b[key]?.replaceAll(\",\", \"\"));\r\n\r\n if (type === \"asc\") {\r\n return nameA - nameB;\r\n } else {\r\n return nameB - nameA;\r\n }\r\n } else {\r\n nameA = a[key]?.toString().toLowerCase();\r\n nameB = b[key]?.toString().toLowerCase();\r\n if (type === \"asc\") {\r\n if (nameA > nameB) {\r\n return 1;\r\n } else if (nameB > nameA) {\r\n return -1;\r\n }\r\n } else {\r\n if (nameA > nameB) {\r\n return -1;\r\n } else if (nameB > nameA) {\r\n return 1;\r\n }\r\n }\r\n return 0;\r\n }\r\n }\r\n } catch (error) {\r\n console.error(\"helper=>sorterFunc=>error\", error);\r\n return 0;\r\n }\r\n};\r\n","import moment from \"moment\";\r\nimport { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport React, { useEffect } from \"react\";\r\nimport { sorterFunc } from \"../../../../Helper/SortingFunction\";\r\nimport { TextHeaderComponents } from \"../../../TextHeaderComponents/TextHeaderComponents\";\r\n\r\ntype Props = {\r\n dataProps?: any;\r\n setDataProps?: any;\r\n versionCheckProps?: any;\r\n};\r\n\r\nexport const VersionAndHistoryTable = (props: Props) => {\r\n useEffect(() => {\r\n if (props.dataProps) {\r\n props.dataProps.sort((a: any, b: any) => {\r\n return sorterFunc(a, b, \"ModifiedDate\", \"dec\");\r\n });\r\n }\r\n }, [props.dataProps]);\r\n async function previewVersionTemplate(\r\n documentCode: string,\r\n rowIndex: number\r\n ) {\r\n var getUrl = window.location;\r\n var baseUrl = getUrl.protocol + \"//\" + getUrl.host;\r\n window.open(\r\n `${baseUrl}/TemplateDetail?TemplateVersionCode=${documentCode}&VersionTemplate=${\r\n rowIndex + 1\r\n }&Version`,\r\n \"_blank\",\r\n \"noreferrer\"\r\n );\r\n\r\n // window.open(\r\n // `${baseUrl}/Request?MemoID=0&TemplateVersionCode=${documentCode}&VersionTemplate=${\r\n // rowIndex + 1\r\n // }&Version`,\r\n // \"_blank\"\r\n // );\r\n }\r\n const actionBodyTemplate = (rowData: any) => {\r\n let someDateString = moment(rowData.ModifiedDate, \"DD/MM/YYYY HH:mm:ss\");\r\n const NewDate = moment(someDateString).format(\"DD MMM yyyy HH:mm:ss\");\r\n return NewDate;\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n }\r\n headerStyle={{ width: \"3em\" }}\r\n body={(data, options) => {\r\n return (\r\n \r\n previewVersionTemplate(data.DocumentCode, options.rowIndex)\r\n }\r\n >\r\n {options.rowIndex + 1}\r\n \r\n );\r\n }}\r\n >\r\n \r\n }\r\n body={(data, options) => {\r\n return (\r\n \r\n previewVersionTemplate(data.DocumentCode, options.rowIndex)\r\n }\r\n >\r\n {data.TemplateName}\r\n \r\n );\r\n }}\r\n style={{ textAlign: \"start\" }}\r\n >\r\n \r\n }\r\n body={(data, options) => {\r\n return (\r\n \r\n previewVersionTemplate(data.DocumentCode, options.rowIndex)\r\n }\r\n >\r\n {data.TemplateName}\r\n \r\n );\r\n }}\r\n >\r\n \r\n }\r\n body={(data, options) => {\r\n return (\r\n \r\n previewVersionTemplate(data.DocumentCode, options.rowIndex)\r\n }\r\n >\r\n {data.ModifiedByName}\r\n \r\n );\r\n }}\r\n >\r\n\r\n \r\n }\r\n // headerStyle={{ width: \"5rem\" }}\r\n body={actionBodyTemplate}\r\n >\r\n \r\n
\r\n );\r\n};\r\n","import { Toast } from \"primereact/toast\";\r\nimport React, { useEffect } from \"react\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { CheckboxCpmponents } from \"../../CheckboxCpmponents/CheckboxCpmponents\";\r\nimport { InputTextComponents } from \"../../InputTextComponents/InputTextComponents\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport { VersionAndHistoryTable } from \"./VersionAndHistoryTable/VersionAndHistoryTable\";\r\n\r\ntype Props = {\r\n setAdvanceForm: any;\r\n advanceForm: any;\r\n controlModel: any;\r\n setControlModel: any;\r\n actionProps?: any;\r\n setVersionCheckProps?: any;\r\n VersionCheckProps?: any;\r\n VersionDataProps?: any;\r\n SetVersionDataProps: any;\r\n VersionTempVCProps?: any;\r\n version?: any;\r\n templateListVersionHistoryProps?: any;\r\n ObjectDataAuthorizationProps?: any;\r\n};\r\n\r\nconst VersionAndHistoryComponents = (props: Props) => {\r\n useEffect(() => {\r\n console.log(\r\n \"props.templateListVersionHistoryPropsprops.templateListVersionHistoryProps\",\r\n props.templateListVersionHistoryProps,\r\n props.VersionTempVCProps\r\n );\r\n\r\n for (let i = 0; i < props.templateListVersionHistoryProps.length; i++) {\r\n console.log(\r\n \"props.templateListVersionHistoryProps[i]\",\r\n props.templateListVersionHistoryProps[i],\r\n props.ObjectDataAuthorizationProps\r\n );\r\n\r\n let _dataFilter = props.ObjectDataAuthorizationProps.filter(\r\n (item: any) =>\r\n Number(props.templateListVersionHistoryProps[i].ModifiedBy) ===\r\n item.EmployeeId\r\n );\r\n if (_dataFilter.length !== 0) {\r\n props.templateListVersionHistoryProps[i].ModifiedByName =\r\n _dataFilter[0].NameEn;\r\n console.log(\"_dataFilter_dataFilter_dataFilter\", _dataFilter);\r\n } else {\r\n console.log(\"_dataFilter_dataFilter_dataFilter0\", _dataFilter);\r\n }\r\n }\r\n }, [\r\n props.ObjectDataAuthorizationProps,\r\n props.templateListVersionHistoryProps,\r\n ]);\r\n // useEffect(() => {\r\n // console.log(\"props.VersionDataProps.value2\", props.VersionDataProps.value2);\r\n // }, [props.VersionDataProps.value2]);\r\n useEffect(() => {\r\n console.log(\"controlModelVersionDataProps\", props.VersionDataProps);\r\n console.log(\"controlModelVersionTempVCProps\", props.VersionTempVCProps);\r\n console.log(\"controlModelversion\", props.version);\r\n if (\r\n props.VersionDataProps.masterId !== undefined &&\r\n props.VersionDataProps.masterId !== null &&\r\n props.VersionDataProps.masterId.length !== 0\r\n ) {\r\n if (\r\n props.VersionDataProps.value2 !== undefined &&\r\n props.VersionDataProps.value2 !== null &&\r\n props.VersionDataProps.value2.length !== 0 &&\r\n Boolean(props.VersionDataProps.value2)\r\n ) {\r\n // props.SetVersionDataProps((prevState: any) => ({\r\n // ...prevState,\r\n // ...props.VersionDataProps,\r\n // }));\r\n }\r\n } else {\r\n if (\r\n props.VersionDataProps.value2 !== undefined &&\r\n props.VersionDataProps.value2 !== null &&\r\n props.VersionDataProps.value2.length !== 0 &&\r\n Boolean(props.VersionDataProps.value2)\r\n ) {\r\n let value2 = props.version.value2.split(\"|\");\r\n\r\n if (\r\n props.VersionDataProps.value2 === undefined ||\r\n props.VersionDataProps.value2 === null ||\r\n props.VersionDataProps.value2.length === 0 ||\r\n props.VersionDataProps.value3 === undefined ||\r\n props.VersionDataProps.value3 === null ||\r\n props.VersionDataProps.value3.length === 0 ||\r\n props.VersionDataProps.value5 === undefined ||\r\n props.VersionDataProps.value5 === null ||\r\n props.VersionDataProps.value5.length === 0\r\n ) {\r\n props.SetVersionDataProps((prevState: any) => ({\r\n ...prevState,\r\n\r\n ...props.VersionDataProps,\r\n value3: \"Editing\",\r\n value5:\r\n props.VersionDataProps.value5 !== undefined &&\r\n props.VersionDataProps.value5 !== null &&\r\n props.VersionDataProps.value5.length !== 0\r\n ? props.VersionDataProps.value5\r\n : value2[1],\r\n }));\r\n }\r\n }\r\n }\r\n }, [props.VersionDataProps]);\r\n async function _CheckboxCpmponents(data: any, key: any) {\r\n props.setVersionCheckProps(data);\r\n props.SetVersionDataProps((prevState: any) => ({\r\n ...prevState,\r\n\r\n ...props.VersionDataProps,\r\n [key]: data.toString(),\r\n }));\r\n }\r\n return (\r\n <>\r\n \r\n
\r\n \r\n Version and History\r\n

\r\n \r\n \r\n \r\n
\r\n

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n {props.VersionCheckProps && props.VersionDataProps.masterId !== \"\" && (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default VersionAndHistoryComponents;\r\n","import React, { useState } from \"react\";\r\nimport { Dialog } from \"primereact/dialog\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { TextHeaderComponents } from \"../../../TextHeaderComponents/TextHeaderComponents\";\r\nimport { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport { ButtonComponents } from \"../../../ButtonComponents/ButtonComponents\";\r\nimport { IoCloseOutline } from \"react-icons/io5\";\r\nimport { BiSave } from \"react-icons/bi\";\r\ntype Props = {\r\n visible: boolean;\r\n setVisible: (value: boolean) => void;\r\n header: string;\r\n refTemplateList: any[];\r\n rowSelectedData: any;\r\n onSaveObjTable: (Key: string, objTable: any) => void;\r\n};\r\n\r\nconst TableTemplateDialogComponentsFixed: React.FC = ({\r\n header,\r\n setVisible,\r\n visible,\r\n refTemplateList,\r\n rowSelectedData,\r\n onSaveObjTable,\r\n ...props\r\n}) => {\r\n const [objectTable, setObjectTable] = useState([]);\r\n\r\n const onShow = () => {\r\n console.log(\"ref=>rowSelectedData.objTable\", rowSelectedData);\r\n\r\n if (rowSelectedData?.objTable && rowSelectedData?.objTable.length !== 0) {\r\n setObjectTable([...rowSelectedData.objTable]);\r\n } else {\r\n let _objTable: any[] = [];\r\n rowSelectedData.column.forEach((e: any) => {\r\n _objTable.push({\r\n Key: e.control.template.label,\r\n Template: null,\r\n Value: null,\r\n TypeControl: null,\r\n objTable: [],\r\n });\r\n });\r\n setObjectTable([..._objTable]);\r\n }\r\n };\r\n\r\n const convertType = (type: string) => {\r\n let _type = \"\";\r\n if (type === \"an\") {\r\n _type = \"AutoNumber\";\r\n } else if (type === \"tb\") {\r\n _type = \"Table\";\r\n } else if (type === \"t\") {\r\n _type = \"ShortText\";\r\n } else if (type === \"d\") {\r\n _type = \"Calendar\";\r\n } else if (type === \"at\") {\r\n _type = \"Attachmen\";\r\n } else if (type === \"r\") {\r\n _type = \"Radio\";\r\n } else if (type === \"ta\") {\r\n _type = \"MultiLine\";\r\n } else if (type === \"c\") {\r\n _type = \"Decimal\";\r\n } else if (type === \"cb\") {\r\n _type = \"MultiChoice\";\r\n } else if (type === \"dd\") {\r\n _type = \"Dropdown\";\r\n } else if (type === \"ed\") {\r\n _type = \"Editor\";\r\n }\r\n return _type;\r\n };\r\n\r\n function actionBodyTemplate(rowData: any, option: any) {\r\n let options: any[] = [];\r\n\r\n let advanceForm: any = null;\r\n\r\n refTemplateList?.map((temp: any) => {\r\n if (\r\n temp.DocumentCode ===\r\n rowSelectedData.selectedValue.selectedValue.split(\"_\")[0]\r\n ) {\r\n advanceForm = JSON.parse(temp.AdvanceForm);\r\n }\r\n });\r\n if (advanceForm) {\r\n advanceForm.items.forEach((item: any) => {\r\n item.layout.forEach((_layout: any) => {\r\n if (\r\n _layout.template.type === \"tb\" &&\r\n _layout.template.label ===\r\n rowSelectedData.selectedValue.selectedValue.split(\"_\")[1]\r\n ) {\r\n _layout.template.attribute.column.forEach((e: any) => {\r\n options.push({\r\n Key: rowData.Key,\r\n Template: null,\r\n Value: e.control.template.label,\r\n TypeControl: convertType(e.control.template.type),\r\n objTable: [],\r\n });\r\n });\r\n }\r\n });\r\n });\r\n }\r\n\r\n return (\r\n <>\r\n {\r\n try {\r\n let _newObj = objectTable;\r\n _newObj = _newObj.map((obj: any) => {\r\n if (e.value) {\r\n if (obj.Key === e.value.Key) {\r\n obj = e.value;\r\n }\r\n } else if (rowData.Key === obj.Key) {\r\n obj.Value = null;\r\n }\r\n return obj;\r\n });\r\n\r\n setObjectTable([..._newObj]);\r\n } catch (error) {\r\n console.log(\"ref=>error\", error);\r\n }\r\n }}\r\n style={{ width: \"100%\", borderRadius: \"6px 6px 6px 6px\" }}\r\n placeholder=\"--Please Select--\"\r\n />\r\n \r\n );\r\n }\r\n\r\n const dialogFooter = () => {\r\n return (\r\n
\r\n \r\n }\r\n onClickProps={hide}\r\n setClassNameProps=\"p-button-text referenceDocumentDialog-button\"\r\n setStyleProps={{\r\n height: \"38px\",\r\n border: \"0.5px solid #FF2626\",\r\n background: \"#FFFFFF\",\r\n color: \"#FF2626\",\r\n borderRadius: \"6px\",\r\n fontSize: \"13px\",\r\n }}\r\n />\r\n }\r\n onClickProps={() => {\r\n onSaveObjTable(header, objectTable);\r\n }}\r\n setStyleProps={{\r\n height: \"38px\",\r\n borderRadius: \"6px\",\r\n border: \"1px solid rgb(40, 47, 106)\",\r\n fontSize: \"13px\",\r\n }}\r\n />\r\n
\r\n );\r\n };\r\n\r\n const hide = () => {\r\n setVisible(false);\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n }\r\n >\r\n \r\n }\r\n body={actionBodyTemplate}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default TableTemplateDialogComponentsFixed;\r\n","import { Dialog } from \"primereact/dialog\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport React, { useState, useEffect } from \"react\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { BiSave } from \"react-icons/bi\";\r\nimport { IoCloseOutline } from \"react-icons/io5\";\r\nimport { ButtonComponents } from \"../../ButtonComponents/ButtonComponents\";\r\nimport { CheckboxCpmponents } from \"../../CheckboxCpmponents/CheckboxCpmponents\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport \"../../DataFechDialogComponents/ReferenceDocumentDialog/ReferenceDocumentDialog.css\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport { Column } from \"primereact/column\";\r\nimport \"../../DataFechDialogComponents/ReferenceDocumentDialog/TableTemplateComponents/TableTemplateComponents.css\";\r\nimport { AutoComplete } from \"antd\";\r\nimport TableTemplateDialogComponentsFixed from \"../../DataFechDialogComponents/ReferenceDocumentDialog/TableTemplateDialogComponents/TableTemplateDialogComponentsFixed\";\r\nimport { MultiSelect } from \"primereact/multiselect\";\r\nimport { IMasterDataModel } from \"../../../IRequestModel/IMasterDataModel\";\r\nimport \"./ReferenceDocumentComponents.css\";\r\nimport { Button } from \"primereact/button\";\r\nimport {\r\n GetTemplate,\r\n GetTemplateById,\r\n} from \"../../../Services/TemplateService\";\r\n\r\ntype Props = {\r\n listRefTemplateProps: any;\r\n templateList: any[];\r\n visibleRefenceDocumentDialog: boolean;\r\n setVisibleRefenceDocumentDialog: (val: boolean) => void;\r\n advanceForm: any;\r\n controlModel: any;\r\n setControlModelObj?: any;\r\n};\r\nconst ReferenceDocumentDialogFix: React.FC = ({\r\n listRefTemplateProps,\r\n templateList,\r\n visibleRefenceDocumentDialog,\r\n setVisibleRefenceDocumentDialog,\r\n setControlModelObj,\r\n controlModel,\r\n advanceForm,\r\n ...props\r\n}) => {\r\n const [referenceDocumentDialogObject, setReferenceDocumentDialogObject] =\r\n useState({\r\n RefDocDisplay: \"\",\r\n Display: { Position: \"Top\" },\r\n Mode: { Mode: \"Single\" },\r\n Affiliation: false,\r\n Quarter: false,\r\n ReferenceAttachment: false,\r\n IsDefaultLineApprove: false,\r\n DocControl: false,\r\n selectField: { selectField: \"\" },\r\n templateForm: [],\r\n tableDialog: false,\r\n listRefTemplate: [],\r\n rowDataTable: [],\r\n ReferenceForm: \"\",\r\n TemplateNewDoc: [],\r\n TemplateEditDoc: [],\r\n TemplateCancelDoc: [],\r\n SaveDataTable: [],\r\n });\r\n const [searchTemplateList, setSearchTemplateList] = useState([]);\r\n const [selectField, setSelectField] = useState([]);\r\n const [tableRefDialog, setTableRefDialog] = useState(false);\r\n const [tableRefData, setTableRefData] = useState();\r\n const [tableRefDialogHeader, setTableRefDialogHeader] = useState(\"\");\r\n const [templateAddCodeMulti, setTemplateAddCodeMulti] = useState([]);\r\n const [selectFieldtoshow, setSelectFieldtoshow] = useState([]);\r\n const [listMasterData, setListMasterData] = useState();\r\n const [refAd, setRefAd] = useState();\r\n const onShowDialog = async () => {\r\n try {\r\n setSearchTemplateList([...templateList]);\r\n await templateAddCode();\r\n if (controlModel) {\r\n const docControl: {\r\n isDocControl: boolean;\r\n D_NewTpl: any[];\r\n D_EditTpl: any[];\r\n D_CanTpl: any[];\r\n } = _IsDocControl(controlModel);\r\n const templateForm = controlModel.templateForm;\r\n const mappingLstMaster = _IsDocControl(controlModel);\r\n setListMasterData(mappingLstMaster);\r\n console.log(\"ref=>templateForm\", templateForm);\r\n\r\n let display: string[] = templateForm?.RefDocDisplay?.split(\",\");\r\n\r\n const defaultRefModel = {\r\n RefDocDisplay: templateForm.RefDocDisplay,\r\n Display:\r\n display[0] === \"Top\"\r\n ? { Position: \"Top\" }\r\n : display[0] === \"Bottom\"\r\n ? { Position: \"Bottom\" }\r\n : { Position: \"Top\" },\r\n Mode:\r\n display[1] === \"Single\"\r\n ? { Mode: \"Single\" }\r\n : display[1] === \"Multiselect\"\r\n ? { Mode: \"Multiselect\" }\r\n : { Mode: \"Single\" },\r\n ReferenceAttachment: display[5] === \"Yes\",\r\n Affiliation: display[3] === \"Yes\",\r\n Quarter: display[4] === \"Yes\",\r\n IsDefaultLineApprove:\r\n listRefTemplateProps[0]?.IsDefaultLineApprove || false,\r\n DocControl: docControl.isDocControl,\r\n selectField: { selectField: display[2] },\r\n templateForm: [],\r\n listRefTemplate: listRefTemplateProps,\r\n tableDialog: false,\r\n rowDataTable: [],\r\n ReferenceForm: \"\",\r\n TemplateNewDoc: docControl.D_NewTpl,\r\n TemplateEditDoc: docControl.D_EditTpl,\r\n TemplateCancelDoc: docControl.D_CanTpl,\r\n SaveDataTable: [],\r\n };\r\n dynamicSelect(templateForm);\r\n\r\n setReferenceDocumentDialogObject({ ...defaultRefModel });\r\n }\r\n } catch (error) {\r\n console.log(\"ref=>error\", error);\r\n }\r\n };\r\n\r\n function _IsDocControl(_dataTemplate: any) {\r\n let _lstMasterData = _dataTemplate.lstMasterData;\r\n\r\n let res: {\r\n isDocControl: boolean;\r\n D_NewTpl: any[];\r\n D_EditTpl: any[];\r\n D_CanTpl: any[];\r\n } = {\r\n isDocControl: false,\r\n D_NewTpl: [],\r\n D_EditTpl: [],\r\n D_CanTpl: [],\r\n };\r\n if (_lstMasterData) {\r\n if (_lstMasterData?.length !== 0) {\r\n res.isDocControl = true;\r\n const _lstMasterDataSplitD_NewTpl = _lstMasterData\r\n .find((e: any) => e.masterType === \"D_NewTpl\")\r\n ?.value2.split(\",\");\r\n const _lstMasterDataSplitD_EditTpl = _lstMasterData\r\n .find((e: any) => e.masterType === \"D_EditTpl\")\r\n ?.value2.split(\",\");\r\n const _lstMasterDataSplitD_CanTpl = _lstMasterData\r\n .find((e: any) => e.masterType === \"D_CanTpl\")\r\n ?.value2.split(\",\");\r\n\r\n _lstMasterDataSplitD_NewTpl.forEach((data: any, inx: any) => {\r\n templateList.forEach((_data: any, inx: any) => {\r\n if (_data.TemplateId.toString() == data) {\r\n res.D_NewTpl.push(_data);\r\n }\r\n });\r\n });\r\n\r\n _lstMasterDataSplitD_EditTpl.forEach((data: any, inx: any) => {\r\n templateList.forEach((_data: any, inx: any) => {\r\n if (_data.TemplateId.toString() === data) {\r\n res.D_EditTpl.push(_data);\r\n }\r\n });\r\n });\r\n _lstMasterDataSplitD_CanTpl.forEach((data: any, inx: any) => {\r\n templateList.forEach((_data: any, inx: any) => {\r\n if (_data.TemplateId.toString() === data) {\r\n res.D_CanTpl.push(_data);\r\n }\r\n });\r\n });\r\n }\r\n }\r\n\r\n return res;\r\n }\r\n\r\n const dialogHeader = () => {\r\n return (\r\n \r\n \r\n

\r\n Search Reference Document\r\n

\r\n \r\n \r\n );\r\n };\r\n\r\n const dialogFooter = () => {\r\n return (\r\n
\r\n \r\n }\r\n onClickProps={hide}\r\n setClassNameProps=\"p-button-text referenceDocumentDialog-button\"\r\n setStyleProps={{\r\n height: \"38px\",\r\n border: \"0.5px solid #FF2626\",\r\n background: \"#FFFFFF\",\r\n color: \"#FF2626\",\r\n borderRadius: \"6px\",\r\n fontSize: \"13px\",\r\n }}\r\n />\r\n }\r\n onClickProps={() => onSave()}\r\n setStyleProps={{\r\n height: \"38px\",\r\n borderRadius: \"6px\",\r\n border: \"1px solid rgb(40, 47, 106)\",\r\n fontSize: \"13px\",\r\n }}\r\n />\r\n
\r\n );\r\n };\r\n\r\n // const searchTemplate = (event: any) => {\r\n // // let filteredCountries = //suggestions\r\n // // setFilteredCountries(filteredCountries);\r\n // };\r\n\r\n const hide = () => {\r\n setVisibleRefenceDocumentDialog(!visibleRefenceDocumentDialog);\r\n };\r\n\r\n const dynamicSelect = (templateForm: any) => {\r\n let seltectItems: any[] = [];\r\n console.log(\"ref=>s\", 33);\r\n\r\n try {\r\n if (\r\n templateForm.RefDocColumn &&\r\n templateForm.RefDocColumn !== \"\" &&\r\n templateForm.RefDocColumn !== \"[]\"\r\n ) {\r\n const _RefDocColumn = JSON.parse(templateForm.RefDocColumn);\r\n\r\n advanceForm.items.map((item: any) => {\r\n item.layout.forEach((_layout: any) => {\r\n if (\r\n _layout.template.type &&\r\n _layout.template.type !== \"em\" &&\r\n _layout.template.type !== \"l\"\r\n ) {\r\n let selectedCol: any = null;\r\n const _column = _RefDocColumn?.find(\r\n (refColumn: any) => refColumn.Key === _layout.template.label\r\n );\r\n\r\n if (_column) {\r\n if (_layout.template.type === \"tb\") {\r\n const objs = _column.objTable;\r\n selectedCol = _column;\r\n\r\n selectedCol.column = _layout.template.attribute.column;\r\n let newOBJ: any[] = [];\r\n\r\n _layout.template.attribute.column.forEach((col: any) => {\r\n const selectedOBJ = objs?.find(\r\n (obj: any) => obj.Key === col.label\r\n );\r\n if (selectedOBJ) {\r\n newOBJ.push(selectedOBJ);\r\n } else {\r\n newOBJ.push({\r\n Key: col.label,\r\n Template: null,\r\n Value: null,\r\n TypeControl: null,\r\n objTable: [],\r\n });\r\n }\r\n });\r\n\r\n selectedCol.objTable = newOBJ;\r\n selectedCol.selectedValue = {\r\n selectedValue: _column.Value,\r\n type: _column.TypeControl,\r\n };\r\n } else {\r\n selectedCol = _column;\r\n selectedCol.selectedValue = {\r\n selectedValue: _column.Value,\r\n type: _column.TypeControl,\r\n };\r\n }\r\n } else {\r\n if (_layout.template.type === \"tb\") {\r\n selectedCol = {\r\n Key: _layout.template.label,\r\n Template: null,\r\n TypeControl: convertType(_layout.template.type),\r\n column: _layout.template.attribute.column,\r\n objTable: null,\r\n Value: \"\",\r\n };\r\n } else {\r\n selectedCol = {\r\n Key: _layout.template.label,\r\n Template: null,\r\n TypeControl: convertType(_layout.template.type),\r\n Value: \"\",\r\n };\r\n }\r\n }\r\n\r\n if (\r\n (_layout.template.type && _layout.template.type !== \"em\") ||\r\n _layout.template.type === \"l\"\r\n ) {\r\n seltectItems.push(selectedCol);\r\n }\r\n }\r\n });\r\n });\r\n } else {\r\n advanceForm.items.map((item: any) => {\r\n item.layout.forEach((_layout: any) => {\r\n if (\r\n _layout.template.type &&\r\n _layout.template.type !== \"em\" &&\r\n _layout.template.type !== \"l\"\r\n ) {\r\n if (_layout.template.type === \"tb\") {\r\n seltectItems.push({\r\n Key: _layout.template.label,\r\n Template: null,\r\n column: _layout.template.attribute.column,\r\n objTable: null,\r\n });\r\n } else {\r\n seltectItems.push({\r\n Key: _layout.template.label,\r\n selectedValue: null,\r\n });\r\n }\r\n }\r\n });\r\n });\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n\r\n setSelectField([...seltectItems]);\r\n };\r\n\r\n const actionBodyTemplate = (rowData: any) => {\r\n let options: any[] = [\r\n {\r\n selectedValue: \"_\" + \"DocumentNo\",\r\n type: \"system\",\r\n },\r\n {\r\n selectedValue: \"_\" + \"DocumentAmount\",\r\n type: \"system\",\r\n },\r\n {\r\n selectedValue: \"_\" + \"RequestorEmployeeName\",\r\n type: \"system\",\r\n },\r\n {\r\n selectedValue: \"_\" + \"RequestorEmployeePositionTh\",\r\n type: \"system\",\r\n },\r\n {\r\n selectedValue: \"_\" + \"RequestorEmployeePositionEn\",\r\n type: \"system\",\r\n },\r\n {\r\n selectedValue: \"_\" + \"RequestorEmployeeDepartmentTh\",\r\n type: \"system\",\r\n },\r\n {\r\n selectedValue: \"_\" + \"RequestorEmployeeDepartmentEn\",\r\n type: \"system\",\r\n },\r\n {\r\n selectedValue: \"_\" + \"InformationFormName\",\r\n type: \"system\",\r\n },\r\n {\r\n selectedValue: \"_\" + \"InformationRequestDate\",\r\n type: \"system\",\r\n },\r\n {\r\n selectedValue: \"_\" + \"InformationCompany\",\r\n type: \"system\",\r\n },\r\n ];\r\n referenceDocumentDialogObject?.listRefTemplate?.map((temp: any) => {\r\n const _refTemp = templateList.find(\r\n (e) => e.TemplateId === temp.TemplateId\r\n );\r\n if (_refTemp) {\r\n const advanceForm = JSON.parse(_refTemp.AdvanceForm);\r\n advanceForm.items.forEach((item: any) => {\r\n item.layout.forEach((_layout: any) => {\r\n if (\r\n !rowData.column &&\r\n _layout.template.type !== \"em\" &&\r\n _layout.template.type !== \"l\" &&\r\n _layout.template.type !== \"tb\"\r\n ) {\r\n options.push({\r\n selectedValue: temp.DocumentCode + \"_\" + _layout.template.label,\r\n type: convertType(_layout.template.type),\r\n });\r\n } else if (rowData.column) {\r\n if (_layout.template.type === \"tb\") {\r\n options.push({\r\n selectedValue:\r\n temp.DocumentCode + \"_\" + _layout.template.label,\r\n type: convertType(_layout.template.type),\r\n });\r\n }\r\n }\r\n });\r\n });\r\n }\r\n });\r\n if (rowData.column) {\r\n options = options.filter((e) => e.type !== \"system\");\r\n }\r\n return (\r\n {\r\n let _selectField = selectField;\r\n _selectField.map((field: any) => {\r\n if (field.Key === rowData.Key) {\r\n field.selectedValue = e.value;\r\n }\r\n });\r\n setSelectField([..._selectField]);\r\n }}\r\n style={{ width: \"100%\", borderRadius: \"6px 6px 6px 6px\" }}\r\n placeholder=\"--Please Select--\"\r\n />\r\n );\r\n };\r\n\r\n function _ReferenceDocumentDialog(data: any, key: any) {\r\n let _Object: any = referenceDocumentDialogObject;\r\n\r\n _Object[key] = data === null || data === undefined ? _Object[key] : data;\r\n setReferenceDocumentDialogObject((prevState: any) => ({\r\n ...prevState,\r\n ..._Object,\r\n }));\r\n\r\n if (key === \"TemplateNewDoc\") {\r\n Array.prototype.push.apply(data, listMasterData);\r\n setListMasterData((prevState: any) => ({\r\n ...prevState,\r\n D_NewTpl: data,\r\n }));\r\n } else if (key === \"TemplateEditDoc\") {\r\n Array.prototype.push.apply(data, listMasterData);\r\n setListMasterData((prevState: any) => ({\r\n ...prevState,\r\n D_EditTpl: data,\r\n }));\r\n } else if (key === \"TemplateCancelDoc\") {\r\n Array.prototype.push.apply(data, listMasterData);\r\n setListMasterData((prevState: any) => ({\r\n ...prevState,\r\n D_CanTpl: data,\r\n }));\r\n } else if (key === \"DocControl\") {\r\n Array.prototype.push.apply(data, listMasterData);\r\n setListMasterData((prevState: any) => ({\r\n ...prevState,\r\n isDocControl: data,\r\n }));\r\n }\r\n }\r\n\r\n const getOptions = () => {\r\n let _list: any[] = [];\r\n templateList.forEach((e: any) => {\r\n _list.push({ value: e.DocumentCode + \"_\" + e.TemplateName });\r\n });\r\n return _list;\r\n };\r\n\r\n const convertType = (type: string) => {\r\n let _type = \"\";\r\n if (type === \"an\") {\r\n _type = \"AutoNumber\";\r\n } else if (type === \"tb\") {\r\n _type = \"Table\";\r\n } else if (type === \"t\") {\r\n _type = \"ShortText\";\r\n } else if (type === \"d\") {\r\n _type = \"Calendar\";\r\n } else if (type === \"at\") {\r\n _type = \"Attachmen\";\r\n } else if (type === \"r\") {\r\n _type = \"Radio\";\r\n } else if (type === \"ta\") {\r\n _type = \"MultiLine\";\r\n } else if (type === \"c\") {\r\n _type = \"Decimal\";\r\n } else if (type === \"cb\") {\r\n _type = \"MultiChoice\";\r\n } else if (type === \"dd\") {\r\n _type = \"Dropdown\";\r\n } else if (type === \"ed\") {\r\n _type = \"Editor\";\r\n }\r\n return _type;\r\n };\r\n\r\n const onSave = () => {\r\n try {\r\n let _result: any[] = [];\r\n selectField.map((e: any) => {\r\n if (e.selectedValue) {\r\n if (e.selectedValue?.type === \"Table\") {\r\n _result.push({\r\n Key: e.Key,\r\n Template: null,\r\n column: e.column,\r\n objTable: e.objTable,\r\n TypeControl: e.selectedValue?.type,\r\n Value: e.selectedValue.selectedValue,\r\n });\r\n } else {\r\n _result.push({\r\n Key: e.Key,\r\n Template: null,\r\n TypeControl: e.selectedValue?.type,\r\n Value: e.selectedValue.selectedValue,\r\n });\r\n }\r\n }\r\n });\r\n const _controlModel = controlModel;\r\n let display: string[] =\r\n _controlModel?.templateForm.RefDocDisplay?.split(\",\");\r\n display[0] = referenceDocumentDialogObject.Display.Position;\r\n display[1] = referenceDocumentDialogObject.Mode.Mode;\r\n display[2] = referenceDocumentDialogObject.selectField.selectField;\r\n display[3] = referenceDocumentDialogObject.Affiliation ? \"Yes\" : \"No\";\r\n display[4] = referenceDocumentDialogObject.Quarter ? \"Yes\" : \"No\";\r\n display[5] = referenceDocumentDialogObject.ReferenceAttachment\r\n ? \"Yes\"\r\n : \"No\";\r\n let RefTemplate: any[] = [];\r\n referenceDocumentDialogObject.listRefTemplate.map((e: any) => {\r\n RefTemplate.push({\r\n TemplateId: e.TemplateId,\r\n DocumentCode: e.DocumentCode,\r\n TemplateName: e.TemplateName,\r\n TemplateSubject: e.TemplateSubject,\r\n IsDefaultLineApprove:\r\n referenceDocumentDialogObject.IsDefaultLineApprove,\r\n AdvanceForm: e.AdvanceForm,\r\n });\r\n });\r\n\r\n const lstMastData = lstMastDataFunction(\r\n _controlModel.templateForm.TemplateId,\r\n _controlModel.lstMasterData\r\n );\r\n console.log(lstMastData, \"controlModel_lstMastData\");\r\n\r\n _controlModel.lstMasterData = lstMastData;\r\n _controlModel.templateForm.RefDocDisplay = display.join(\",\");\r\n _controlModel.templateForm.RefDocColumn = JSON.stringify(_result);\r\n _controlModel.templateForm.RefTemplate = JSON.stringify(RefTemplate);\r\n _controlModel.listRefTemplate = RefTemplate;\r\n console.log(\"ref=>listRefTemplate=>error\", _controlModel);\r\n setControlModelObj({ ..._controlModel });\r\n setVisibleRefenceDocumentDialog(!visibleRefenceDocumentDialog);\r\n } catch (error) {\r\n console.log(\"ref=>onSave=>error\", error);\r\n }\r\n };\r\n function lstMastDataFunction(templateId: number, _lstMasterData: any) {\r\n const _list = listMasterData;\r\n let array: any[] = [];\r\n\r\n if (_list.isDocControl) {\r\n let newTplId;\r\n let editTplId;\r\n let canTplId;\r\n for (let i = 0; i < _lstMasterData.length; i++) {\r\n const element = _lstMasterData[i];\r\n if (element.masterType === \"D_NewTpl\") {\r\n newTplId = element.masterId;\r\n } else if (element.masterType === \"D_EditTpl\") {\r\n editTplId = element.masterId;\r\n } else if (element.masterType === \"D_CanTpl\") {\r\n canTplId = element.masterId;\r\n }\r\n }\r\n var requestModelD_NewTpl: IMasterDataModel = {\r\n isActive: true,\r\n masterId: newTplId || null,\r\n masterType: \"D_NewTpl\",\r\n createdBy: null,\r\n createdDate: null,\r\n modifiedBy: null,\r\n modifiedDate: null,\r\n seq: null,\r\n value1: templateId.toString(),\r\n value2:\r\n listMasterData.D_NewTpl.map((item: any) => {\r\n return item.TemplateId;\r\n }).join(\",\") || \"\",\r\n value3: null,\r\n value4: null,\r\n value5: null,\r\n };\r\n array.push(requestModelD_NewTpl);\r\n var requestModelD_EditTpl: IMasterDataModel = {\r\n isActive: true,\r\n masterId: editTplId || null,\r\n masterType: \"D_EditTpl\",\r\n createdBy: null,\r\n createdDate: null,\r\n modifiedBy: null,\r\n modifiedDate: null,\r\n seq: null,\r\n value1: templateId.toString(),\r\n value2:\r\n listMasterData.D_EditTpl.map((item: any) => {\r\n return item.TemplateId;\r\n }).join(\",\") || \"\",\r\n value3: null,\r\n value4: null,\r\n value5: null,\r\n };\r\n array.push(requestModelD_EditTpl);\r\n var requestModelD_CanTpl: IMasterDataModel = {\r\n isActive: true,\r\n masterId: canTplId || null,\r\n masterType: \"D_CanTpl\",\r\n createdBy: null,\r\n createdDate: null,\r\n modifiedBy: null,\r\n modifiedDate: null,\r\n seq: null,\r\n value1: templateId.toString(),\r\n value2:\r\n listMasterData.D_CanTpl.map((item: any) => {\r\n return item.TemplateId;\r\n }).join(\",\") || \"\",\r\n value3: null,\r\n value4: null,\r\n value5: null,\r\n };\r\n array.push(requestModelD_CanTpl);\r\n }\r\n return array;\r\n }\r\n function actionBodyTemplateTable(rowData: any, option: any) {\r\n if (rowData?.selectedValue?.type === \"Table\") {\r\n return (\r\n <>\r\n {\r\n setTableRefData({ ...rowData });\r\n setTableRefDialogHeader(rowData.Key);\r\n setTableRefDialog(true);\r\n }}\r\n >\r\n {rowData.Key}\r\n \r\n \r\n );\r\n } else {\r\n return (\r\n <>\r\n

{rowData.Key}

\r\n \r\n );\r\n }\r\n }\r\n\r\n const onTableDialogSave = (Key: string, objTable: any) => {\r\n tableRefData.objTable = objTable;\r\n let _selectField = selectField;\r\n _selectField = _selectField.map((e: any) => {\r\n if (e.Key === Key) {\r\n e.objTable = objTable;\r\n }\r\n return e;\r\n });\r\n setSelectField([..._selectField]);\r\n setTableRefDialog(false);\r\n };\r\n\r\n function templateAddCode() {\r\n let _dataTemplate: any[] = templateList;\r\n _dataTemplate.map((_dataMap: any, inx: any) => {\r\n _dataMap[\"code\"] = _dataMap.TemplateId.toString();\r\n _dataMap[\"TemplateNameWithCodeMulti\"] =\r\n _dataMap.TemplateId.toString() + \": \" + _dataMap.TemplateName;\r\n });\r\n setTemplateAddCodeMulti([..._dataTemplate]);\r\n }\r\n\r\n useEffect(() => {\r\n _MapSelectTable(referenceDocumentDialogObject.listRefTemplate);\r\n }, [referenceDocumentDialogObject]);\r\n async function _MapSelectTable(_data: any) {\r\n try {\r\n let _arraySelect: any = [];\r\n\r\n let _referenceDocumentDialogObject =\r\n referenceDocumentDialogObject.listRefTemplate === undefined ||\r\n referenceDocumentDialogObject.listRefTemplate === null\r\n ? []\r\n : referenceDocumentDialogObject.listRefTemplate;\r\n if (\r\n _referenceDocumentDialogObject !== undefined &&\r\n _referenceDocumentDialogObject !== null &&\r\n _referenceDocumentDialogObject.length !== 0\r\n ) {\r\n _data.map((data: any, inx: any) => {\r\n let _items =\r\n data.AdvanceForm !== undefined\r\n ? data.AdvanceForm !== null\r\n ? data.AdvanceForm.length !== 0\r\n ? JSON.parse(data.AdvanceForm)\r\n : []\r\n : []\r\n : [];\r\n console.log(\"ref=>222\", _items);\r\n if (\r\n _items.items !== undefined &&\r\n _items.items !== null &&\r\n _items.items.length !== 0\r\n ) {\r\n _items.items.map((data: any, inx: any) => {\r\n _arraySelect.push(data);\r\n });\r\n }\r\n });\r\n } else {\r\n _arraySelect = [];\r\n referenceDocumentDialogObject.selectField.selectField = undefined;\r\n }\r\n if (_arraySelect.length !== 0) {\r\n _MapSelectTableItem(_arraySelect);\r\n }\r\n } catch (error) {\r\n console.log(\"ref=>error\", error);\r\n }\r\n }\r\n\r\n async function _MapSelectTableItem(_data: any) {\r\n try {\r\n let _dataItem = _data;\r\n let _arraylayout: any = [];\r\n _dataItem.map((data: any, inx: any) => {\r\n let layout = data.layout;\r\n\r\n for (let i = 0; i < layout.length; i++) {\r\n const element = layout[i].template;\r\n if (\r\n (element.istext !== \"Y\" && element.type === \"t\") ||\r\n (element.istext !== \"Y\" && element.type === \"dd\") ||\r\n (element.istext !== \"Y\" && element.type === \"cb\") ||\r\n (element.istext !== \"Y\" && element.type === \"ta\") ||\r\n (element.istext !== \"Y\" && element.type === \"c\") ||\r\n (element.istext !== \"Y\" && element.type === \"d\") ||\r\n (element.istext !== \"Y\" && element.type === \"an\") ||\r\n (element.istext !== \"Y\" && element.type === \"ed\")\r\n ) {\r\n _arraylayout.push({ selectField: element.label });\r\n }\r\n }\r\n });\r\n\r\n _arraylayout.push({ selectField: \"Information DocumentNo\" });\r\n setSelectFieldtoshow([..._arraylayout]);\r\n } catch (error) {\r\n console.log(\"ref=>error\", error);\r\n }\r\n }\r\n\r\n return (\r\n <>\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n {\r\n _ReferenceDocumentDialog(e.value, \"Display\");\r\n }}\r\n options={[{ Position: \"Top\" }, { Position: \"Bottom\" }]}\r\n optionLabel={\"Position\"}\r\n />\r\n\r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n {\r\n _ReferenceDocumentDialog(e.value, \"Mode\");\r\n }}\r\n style={{ width: \"100%\", borderRadius: \"6px 6px 6px 6px\" }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n {referenceDocumentDialogObject.DocControl && (\r\n <>\r\n \r\n \r\n
\r\n \r\n \r\n \r\n {\r\n _ReferenceDocumentDialog(e.value, \"TemplateNewDoc\");\r\n }}\r\n optionLabel=\"TemplateNameWithCodeMulti\"\r\n placeholder=\"--Please Select--\"\r\n filter\r\n display=\"chip\"\r\n style={{\r\n width: \"100% \",\r\n fontSize: \"13px\",\r\n borderColor:\r\n referenceDocumentDialogObject.DocControl === true\r\n ? referenceDocumentDialogObject.TemplateNewDoc\r\n .length === 0\r\n ? \"red\"\r\n : undefined\r\n : undefined,\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n _ReferenceDocumentDialog(e.value, \"TemplateEditDoc\")\r\n }\r\n optionLabel=\"TemplateNameWithCodeMulti\"\r\n placeholder=\"--Please Select--\"\r\n display=\"chip\"\r\n filter\r\n style={{\r\n width: \"100% \",\r\n fontSize: \"13px\",\r\n borderColor:\r\n referenceDocumentDialogObject.DocControl === true\r\n ? referenceDocumentDialogObject.TemplateEditDoc\r\n .length === 0\r\n ? \"red\"\r\n : undefined\r\n : undefined,\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n _ReferenceDocumentDialog(e.value, \"TemplateCancelDoc\")\r\n }\r\n optionLabel=\"TemplateNameWithCodeMulti\"\r\n placeholder=\"--Please Select--\"\r\n display=\"chip\"\r\n filter\r\n style={{\r\n width: \"100% \",\r\n fontSize: \"13px\",\r\n borderColor:\r\n referenceDocumentDialogObject.DocControl === true\r\n ? referenceDocumentDialogObject.TemplateCancelDoc\r\n .length === 0\r\n ? \"red\"\r\n : undefined\r\n : undefined,\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n // option?.DocumentCode?.toString()\r\n // .toUpperCase()\r\n // .indexOf(inputValue.toUpperCase()) !== -1\r\n option.value\r\n .toLowerCase()\r\n .includes(inputValue.toLowerCase())\r\n }\r\n onChange={(e: any) => {\r\n try {\r\n let value = e.split(\"_\")[0];\r\n setSearchTemplateList([\r\n ...templateList.filter(\r\n (template: any) =>\r\n template.DocumentCode.toLowerCase().startsWith(\r\n value.toLowerCase()\r\n ) ||\r\n template.TemplateSubject.toLowerCase().startsWith(\r\n value.toLowerCase()\r\n ) ||\r\n template.TemplateName.toLowerCase().startsWith(\r\n value.toLowerCase()\r\n )\r\n ),\r\n ]);\r\n } catch (error) {\r\n console.log(\"table=>onFilter=>error\", error);\r\n }\r\n }}\r\n // onBlur={(e: any) => {\r\n // try {\r\n // let value = e.target.value;\r\n // } catch (error) {\r\n // console.log(\"table=>onFilter=>error\", error);\r\n // }\r\n // }}\r\n // onSelect={(e: any) => {\r\n // try {\r\n // let value = e;\r\n // } catch (error) {\r\n // console.log(\"table=>onFilter=>error\", error);\r\n // }\r\n allowClear\r\n // }}\r\n />\r\n
\r\n \r\n {/* \r\n */}\r\n \r\n {\r\n let listRefTemplate = referenceDocumentDialogObject;\r\n listRefTemplate.listRefTemplate = e.value;\r\n _MapSelectTable(listRefTemplate.listRefTemplate);\r\n setReferenceDocumentDialogObject({ ...listRefTemplate });\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n Selected Reference Document\r\n

\r\n

\r\n เอกสารอ้างอิงที่เลือก\r\n

\r\n \r\n
\r\n \r\n
\r\n {/* */}\r\n \r\n \r\n \r\n \r\n (\r\n <>\r\n {\r\n let listRefTemplate = referenceDocumentDialogObject;\r\n listRefTemplate.listRefTemplate =\r\n listRefTemplate.listRefTemplate.filter(\r\n (e: any) => e.TemplateId !== rowData.TemplateId\r\n );\r\n setReferenceDocumentDialogObject({\r\n ...listRefTemplate,\r\n });\r\n }}\r\n />\r\n \r\n )}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n let _refObject = referenceDocumentDialogObject;\r\n _refObject.selectField = e.value;\r\n console.log(\"ref=>_refObject\", _refObject, selectField);\r\n\r\n setReferenceDocumentDialogObject({ ..._refObject });\r\n }}\r\n style={{ width: \"100%\", borderRadius: \"6px 6px 6px 6px\" }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n body={actionBodyTemplateTable}\r\n >\r\n \r\n }\r\n body={actionBodyTemplate}\r\n >\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default ReferenceDocumentDialogFix;\r\n","import { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { FiPlus } from \"react-icons/fi\";\r\nimport { useUserContext } from \"../../../Context/UserContext\";\r\nimport {\r\n GetTemplateByDocTypeCode,\r\n GetTemplateTemplateListVersion,\r\n} from \"../../../Services/TemplateService\";\r\nimport { ButtonComponents } from \"../../ButtonComponents/ButtonComponents\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport \"./ReferenceDocumentComponents.css\";\r\nimport ReferenceDocumentDialogFix from \"./ReferenceDocumentDialogFix\";\r\ntype Props = {\r\n listRefTemplateProps: any;\r\n stateProps: any;\r\n controlModelObj: any;\r\n setControlModelObj: any;\r\n advanceForm: any;\r\n};\r\n\r\nexport const ReferenceDocumentComponentsFix = (props: Props) => {\r\n const [visibleRefenceDocumentDialog, setVisibleRefenceDocumentDialog] =\r\n useState(false);\r\n const [isLoadTemplate, setIsLoadTemplate] = useState(false);\r\n const [userData, setUserData] = useUserContext();\r\n const [mstTemplateList, setMstTemplateList] = useState([]);\r\n\r\n useEffect(() => {\r\n setIsLoadTemplate(true);\r\n fetchTemplate();\r\n fecthRefTemplate();\r\n }, []);\r\n\r\n async function fetchTemplate() {\r\n const empid = userData.EmployeeId;\r\n\r\n const dataJson = {\r\n CreatedBy: empid.toString(),\r\n };\r\n\r\n let _dataTemplatee = await GetTemplateTemplateListVersion(dataJson);\r\n let arrayTemplate: any = [];\r\n _dataTemplatee.map((data: any) => {\r\n if (data.IsTextForm !== true) arrayTemplate.push(data);\r\n });\r\n // templateAddCode([...arrayTemplate]);\r\n setMstTemplateList([...arrayTemplate]);\r\n // setFilters([...arrayTemplate]);\r\n setIsLoadTemplate(false);\r\n }\r\n\r\n const fecthRefTemplate = () => {\r\n if (props.listRefTemplateProps.listRefTemplate.length > 0) {\r\n let newRef: any[] = [];\r\n let _listRefTemp = props.listRefTemplateProps;\r\n _listRefTemp.listRefTemplate.map(async (e: any) => {\r\n const ref = await GetTemplateByDocTypeCode({\r\n DocumentCode: e.DocumentCode,\r\n });\r\n if (ref) {\r\n ref.IsDefaultLineApprove = e.IsDefaultLineApprove;\r\n console.log(\"ref=> ref\", ref);\r\n\r\n newRef.push(ref);\r\n }\r\n props.listRefTemplateProps.listRefTemplate = newRef;\r\n props.setControlModelObj({ ...props.listRefTemplateProps });\r\n });\r\n }\r\n };\r\n\r\n // async function ReferenceDocumentObj(data: any, key: any) {\r\n // let _Object: any = listRefTemplate;\r\n // _Object[key] = data;\r\n\r\n // props.setControlModelObj((prevState: any) => ({\r\n // ...prevState,\r\n // ..._Object,\r\n // }));\r\n // }\r\n // async function ReferenceDocumentActionObj(data: any, key: any) {\r\n // let _Object: any = listRefTemplate;\r\n // _Object.templateForm.RefTemplate = JSON.stringify(data);\r\n // _Object[key] = data;\r\n // if (\r\n // _Object.templateForm.RefTemplate !== undefined &&\r\n // _Object.templateForm.RefTemplate !== null &&\r\n // (_Object.templateForm.RefTemplate.length === 0 ||\r\n // _Object.templateForm.RefTemplate === \"[]\")\r\n // ) {\r\n // _Object.templateForm.RefDocDisplay = \"\";\r\n // _Object.templateForm.RefDocColumn = \"\";\r\n // _Object.templateForm.RefTemplate = \"\";\r\n // }\r\n // props.setControlModelObj((prevState: any) => ({\r\n // ...prevState,\r\n // ..._Object,\r\n // }));\r\n // }\r\n function onClickVisible() {\r\n setVisibleRefenceDocumentDialog(!visibleRefenceDocumentDialog);\r\n }\r\n\r\n const onClickAction = async (event: any) => {\r\n let _event: any = event;\r\n const dataFilter = props.listRefTemplateProps.listRefTemplate.filter(\r\n (item: any) => _event !== item\r\n );\r\n const obj = JSON.parse(\r\n props.listRefTemplateProps.templateForm.RefDocColumn\r\n );\r\n\r\n console.log(\r\n \"Ref\",\r\n obj,\r\n props.listRefTemplateProps.templateForm.RefDocColumn\r\n );\r\n\r\n const filterRefDocColum = obj.filter(\r\n (value: any) => !value.Value.includes(_event.DocumentCode)\r\n );\r\n console.log(\"filterRefDocColum\", filterRefDocColum);\r\n\r\n console.log(\"_event\", _event);\r\n\r\n props.listRefTemplateProps.templateForm.RefDocColumn =\r\n JSON.stringify(filterRefDocColum);\r\n\r\n props.listRefTemplateProps.listRefTemplate = dataFilter;\r\n props.listRefTemplateProps.templateForm.RefTemplate =\r\n JSON.stringify(dataFilter);\r\n props.setControlModelObj({ ...props.listRefTemplateProps });\r\n };\r\n function actionBodyTemplate(rowData: any) {\r\n return (\r\n <>\r\n onClickAction(rowData)}\r\n />\r\n \r\n );\r\n }\r\n return (\r\n <>\r\n \r\n \r\n \r\n Reference Document\r\n

\r\n \r\n \r\n \r\n
\r\n

\r\n \r\n \r\n \r\n \r\n }\r\n setClassNameProps={\"p-button-text-position\"}\r\n disabledProps={\r\n props?.listRefTemplateProps?.templateForm?.IsTextForm\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n style={{ textAlign: \"start\" }}\r\n >\r\n \r\n }\r\n >\r\n \r\n }\r\n >\r\n\r\n \r\n }\r\n headerStyle={{ width: \"5rem\" }}\r\n body={actionBodyTemplate}\r\n >\r\n \r\n \r\n \r\n\r\n \r\n \r\n );\r\n};\r\n","import { Dialog } from \"primereact/dialog\";\r\nimport { Dropdown } from \"primereact/dropdown\";\r\nimport React, { useState, useEffect } from \"react\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { BiSave } from \"react-icons/bi\";\r\nimport { IoCloseOutline } from \"react-icons/io5\";\r\nimport { ButtonComponents } from \"../../ButtonComponents/ButtonComponents\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport \"../../DataFechDialogComponents/ReferenceDocumentDialog/ReferenceDocumentDialog.css\";\r\nimport \"../../DataFechDialogComponents/ReferenceDocumentDialog/TableTemplateComponents/TableTemplateComponents.css\";\r\nimport \"./ReferenceInformationComponents.css\";\r\n\r\ntype Props = {\r\n visibleRefenceDocumentDialog: boolean;\r\n setVisibleRefenceDocumentDialog: (val: boolean) => void;\r\n advanceForm: any;\r\n controlModel: any;\r\n setControlModelObj?: any;\r\n listRefInformationProps: any;\r\n setRefInformation: any;\r\n refInformation: any;\r\n refLogic: any;\r\n dataLogic: any;\r\n setLogicsRefIn: any;\r\n};\r\nconst ReferenceInformationDialog: React.FC = ({\r\n visibleRefenceDocumentDialog,\r\n setVisibleRefenceDocumentDialog,\r\n setControlModelObj,\r\n controlModel,\r\n advanceForm,\r\n listRefInformationProps,\r\n refInformation,\r\n setRefInformation,\r\n refLogic,\r\n dataLogic,\r\n setLogicsRefIn,\r\n ...props\r\n}) => {\r\n const [templateSelected, setTemplateSelected] = useState(\"\");\r\n const [requestSelected, setRequestorSelected] = useState(\"\");\r\n const [templateField, setTemplateField] = useState(\"\");\r\n const [requestField, setRequestorField] = useState(\"\");\r\n\r\n const dialogHeader = () => {\r\n return (\r\n \r\n \r\n

\r\n Search Reference Document\r\n

\r\n \r\n \r\n );\r\n };\r\n\r\n const dialogFooter = () => {\r\n return (\r\n
\r\n \r\n }\r\n onClickProps={hide}\r\n setClassNameProps=\"p-button-text referenceDocumentDialog-button\"\r\n setStyleProps={{\r\n height: \"38px\",\r\n border: \"0.5px solid #FF2626\",\r\n background: \"#FFFFFF\",\r\n color: \"#FF2626\",\r\n borderRadius: \"6px\",\r\n fontSize: \"13px\",\r\n }}\r\n />\r\n }\r\n onClickProps={() => onSave()}\r\n setStyleProps={{\r\n height: \"38px\",\r\n borderRadius: \"6px\",\r\n border: \"1px solid rgb(40, 47, 106)\",\r\n fontSize: \"13px\",\r\n }}\r\n />\r\n
\r\n );\r\n };\r\n useEffect(() => {\r\n fetchTemplatData();\r\n fetchRequestorData();\r\n }, []);\r\n\r\n async function fetchTemplatData() {\r\n let arrayFliedTest: any = [];\r\n const _advanceForm = advanceForm.items;\r\n let label: string;\r\n let key: string;\r\n let type: string;\r\n\r\n for (let i = 0; i < _advanceForm.length; i++) {\r\n let layout = _advanceForm[i].layout;\r\n for (let j = 0; j < layout.length; j++) {\r\n let template = layout[j].template;\r\n if (\r\n template.type !== \"tb\" &&\r\n template.type !== \"l\" &&\r\n template.type !== \"em\" &&\r\n template.type !== \"bt\" &&\r\n template.type !== \"d\"\r\n ) {\r\n label = template.label;\r\n key = template.label;\r\n type = template.type;\r\n arrayFliedTest.push({ label, key, type });\r\n } else if (template.type === \"tb\") {\r\n template.attribute.column.forEach((col: any) => {\r\n arrayFliedTest.push({\r\n label: template.label + \" | \" + col.label,\r\n key: col.label,\r\n type: col.control.template.type,\r\n });\r\n });\r\n }\r\n }\r\n }\r\n setTemplateField(arrayFliedTest);\r\n }\r\n\r\n async function fetchRequestorData() {\r\n const requestorLabel = [\r\n { label: \"Requestor_Employee_code\", key: \"Requestor_Employee_code\" },\r\n { label: \"Requestor_NameEn\", key: \"Requestor_NameEn\" },\r\n { label: \"Requestor_NameTh\", key: \"Requestor_NameTh\" },\r\n { label: \"Requestor_PositionEn\", key: \"Requestor_PositionEn\" },\r\n { label: \"Requestor_PositionTh\", key: \"Requestor_PositionTh\" },\r\n { label: \"Requestor_DivisionEn\", key: \"Requestor_DivisionEn\" },\r\n { label: \"Requestor_DivisionTh\", key: \"Requestor_DivisionTh\" },\r\n { label: \"Requestor_DepartmentEn\", key: \"Requestor_DepartmentEn\" },\r\n { label: \"Requestor_DepartmentTh\", key: \"Requestor_DepartmentTh\" },\r\n { label: \"Requestor_Email\", key: \"Requestor_Email\" },\r\n { label: \"Actor_Employee_code\", key: \"Actor_Employee_code\" },\r\n { label: \"Actor_NameEn\", key: \"Actor_NameEn\" },\r\n { label: \"Actor_NameTh\", key: \"Actor_NameTh\" },\r\n { label: \"Actor_PositionEn\", key: \"Actor_PositionEn\" },\r\n { label: \"Actor_PositionTh\", key: \"Actor_PositionTh\" },\r\n { label: \"Actor_DivisionEn\", key: \"Actor_DivisionEn\" },\r\n { label: \"Actor_DivisionTh\", key: \"Actor_DivisionTh\" },\r\n { label: \"Actor_DepartmentEn\", key: \"Actor_DepartmentEn\" },\r\n { label: \"Actor_DepartmentTh\", key: \"Actor_DepartmentTh\" },\r\n { label: \"Actor_Email\", key: \"Actor_Email\" },\r\n { label: \"Company_Company id\", key: \"Company_Company id\" },\r\n { label: \"Company_Company name\", key: \"Company_Company name\" },\r\n ];\r\n\r\n setRequestorField(requestorLabel);\r\n }\r\n\r\n const hide = () => {\r\n setVisibleRefenceDocumentDialog(!visibleRefenceDocumentDialog);\r\n };\r\n\r\n const onSave = () => {\r\n try {\r\n let refValue;\r\n refValue = {\r\n condition: templateSelected.label,\r\n required: requestSelected.label,\r\n };\r\n\r\n let arrayRef = refInformation ? refInformation : [];\r\n arrayRef.push(refValue);\r\n setRefInformation(arrayRef);\r\n setVisibleRefenceDocumentDialog(!visibleRefenceDocumentDialog);\r\n setTemplateSelected(\"\");\r\n setRequestorSelected(\"\");\r\n\r\n let TemplateLogic: any[] = [];\r\n\r\n let logicControl: any[] = [];\r\n arrayRef.map((cons: any) => {\r\n if (\r\n logicControl.filter((e: any) => e.label === cons.condition).length ===\r\n 0\r\n ) {\r\n logicControl.push({\r\n condition: cons.condition,\r\n required: cons.required,\r\n });\r\n }\r\n });\r\n\r\n logicControl.map((logic: any, idx: number) => {\r\n TemplateLogic.push({\r\n Seq: idx + 1,\r\n Logictype: \"refinfomation\",\r\n Jsonvalue: JSON.stringify(logic),\r\n });\r\n });\r\n\r\n setLogicsRefIn([...TemplateLogic]);\r\n // if (TemplateLogic.length > 0) {\r\n // setControlModelObj((prevState: any) => ({\r\n // ...prevState,\r\n // cMSTTemplateLogic: [...TemplateLogic],\r\n // }));\r\n // }\r\n } catch (error) {\r\n console.error(\"ref=>onSave=>error\", error);\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n \r\n {\r\n console.log(controlModel, \"controlModel\");\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n {\r\n setTemplateSelected(e.value);\r\n }}\r\n optionLabel={\"label\"}\r\n filter\r\n showClear\r\n filterBy={\"label\"}\r\n options={templateField}\r\n />\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {\r\n setRequestorSelected(e.value);\r\n }}\r\n optionLabel={\"label\"}\r\n filter\r\n showClear\r\n filterBy={\"label\"}\r\n options={requestField}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default ReferenceInformationDialog;\r\n","import { Column } from \"primereact/column\";\r\nimport { DataTable } from \"primereact/datatable\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport { FiPlus } from \"react-icons/fi\";\r\nimport { ButtonComponents } from \"../../ButtonComponents/ButtonComponents\";\r\nimport \"./ReferenceInformationComponents.css\";\r\nimport ReferenceInformationDialog from \"./ReferenceInformationDialog\";\r\nimport { TextHeaderComponents } from \"../../TextHeaderComponents/TextHeaderComponents\";\r\nimport { confirmDialog } from \"primereact/confirmdialog\";\r\nimport binIcon from \"../../../assets/bin-icon.png\";\r\nimport { ILogicReferenceInformation } from \"../../../IRequestModel/ILogicModel\";\r\n\r\ntype Props = {\r\n listRefInformationProps: any;\r\n stateProps: any;\r\n controlModelObj: any;\r\n setControlModelObj: any;\r\n advanceForm: any;\r\n dataLogic: any;\r\n setLogicsRefIn: any;\r\n};\r\n\r\nexport const ReferenceInformation = (props: Props) => {\r\n const [visibleRefenceDocumentDialog, setVisibleRefenceDocumentDialog] =\r\n useState(false);\r\n\r\n const [referenceData, setReferenceData] = useState();\r\n const [refLogic, setRefLogic] = useState([]);\r\n\r\n const [refInformation, setRefInformation] = useState();\r\n\r\n useEffect(() => {\r\n if (props.dataLogic) {\r\n setReferenceData([\r\n ...props.dataLogic\r\n .filter(\r\n (e: { Logictype: string; logictype: string }) =>\r\n e.logictype === \"refinfomation\"\r\n )\r\n .map((logic: { jsonvalue: string }) => {\r\n const jsonValue: ILogicReferenceInformation =\r\n logic.jsonvalue &&\r\n logic.jsonvalue.length > 0 &&\r\n JSON.parse(logic.jsonvalue);\r\n\r\n return jsonValue;\r\n }),\r\n ]);\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (referenceData) {\r\n //setReferenceData(props.refInformation);\r\n fecthRefInformation();\r\n }\r\n }, [referenceData]);\r\n const fecthRefInformation = () => {\r\n try {\r\n let TemplateLogic: any[] = [];\r\n let arrayRef = referenceData;\r\n let Logics = [];\r\n // TemplateLogic = Logics;\r\n let logicControl: any[] = [];\r\n arrayRef.map((cons: any) => {\r\n if (\r\n logicControl.filter((e: any) => e.label === cons.condition).length ===\r\n 0\r\n ) {\r\n logicControl.push({\r\n condition: cons.condition,\r\n required: cons.required,\r\n });\r\n }\r\n });\r\n\r\n logicControl.forEach((logic: any, idx: number) => {\r\n TemplateLogic.push({\r\n Seq: idx + 1,\r\n Logictype: \"refinfomation\",\r\n Jsonvalue: JSON.stringify(logic),\r\n LstCondition: [],\r\n });\r\n });\r\n\r\n props.setLogicsRefIn([...TemplateLogic]);\r\n // if (TemplateLogic.length > 0) {\r\n // props.setControlModelObj((prevState: any) => ({\r\n // ...prevState,\r\n // cMSTTemplateLogic: [...TemplateLogic],\r\n // }));\r\n // }\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n };\r\n\r\n function onClickVisible() {\r\n setVisibleRefenceDocumentDialog(!visibleRefenceDocumentDialog);\r\n }\r\n\r\n const onDeleteRow = (data: any, setData: any, rowIdx: number) => {\r\n let selected: any = [...data];\r\n let TemplateLogic: any[] = [];\r\n confirmDialog({\r\n message: \"Do you to delete this row.\",\r\n header: \"Delete Confirmation\",\r\n icon: \"p-confirm-dialog-icon pi pi-info-circle\",\r\n acceptClassName:\r\n \"p-button p-component p-confirm-dialog-accept table-accept p-button-danger table-control-confirm-button p-button-accept-cancel\",\r\n accept: () => {\r\n selected.splice(rowIdx, 1);\r\n selected.map((e: any, idx: number) => {\r\n e.Seq = idx + 1;\r\n });\r\n setData(selected);\r\n setRefInformation(selected);\r\n\r\n let Logics = props.dataLogic.filter(\r\n (element: any) => element.Logictype !== \"refinfomation\"\r\n );\r\n Logics.push(...selected);\r\n console.log(\"refInformationcMSTTemplateLogic\", Logics);\r\n props.setControlModelObj((prevState: any) => ({\r\n ...prevState,\r\n cMSTTemplateLogic: Logics,\r\n }));\r\n },\r\n });\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n Reference Information\r\n

\r\n \r\n \r\n \r\n
\r\n

\r\n \r\n \r\n \r\n \r\n }\r\n setClassNameProps={\"p-button-text-position\"}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n style={{ textAlign: \"start\" }}\r\n body={(rowData, options) => options.rowIndex + 1}\r\n >\r\n \r\n }\r\n style={{ textAlign: \"start\" }}\r\n >\r\n \r\n }\r\n >\r\n\r\n \r\n }\r\n headerStyle={{ width: \"5rem\" }}\r\n body={(rowData: any, options: any) => {\r\n return (\r\n {\r\n onDeleteRow(\r\n referenceData,\r\n setReferenceData,\r\n options.rowIndex\r\n );\r\n }}\r\n >\r\n \"logo\"\r\n \r\n );\r\n }}\r\n >\r\n \r\n \r\n \r\n\r\n \r\n \r\n );\r\n};\r\n","import { createContext, ReactNode, useRef, useState } from \"react\";\r\nimport React from \"react\";\r\nimport { v4 as uuidv4 } from \"uuid\";\r\n\r\ninterface PDFEditorProviderProps {\r\n children: ReactNode;\r\n}\r\n\r\nexport interface ILayoutTemplate {\r\n action: string;\r\n label: string;\r\n type: string;\r\n count: number;\r\n layoutType: string;\r\n value: string;\r\n attribute?: IControlProperty;\r\n}\r\n\r\nexport interface IControlProperty {\r\n default: string;\r\n fontSize: number;\r\n isItalic: boolean;\r\n isUnderlined: boolean;\r\n isBold: boolean;\r\n color: string;\r\n hAlign: string;\r\n vAlign: string;\r\n urlLink: string;\r\n fontFamily: \"Arial\";\r\n hideLabel?: boolean;\r\n column?: ILayoutTemplate[];\r\n backgroundSize: \"contain\" | \"cover\" | \"fill\";\r\n}\r\n\r\nexport interface IControlLayout {\r\n i: string;\r\n x: number;\r\n y: number;\r\n w: number;\r\n h: number;\r\n static: boolean;\r\n minW?: number;\r\n minH?: number;\r\n isDraggable?: boolean;\r\n isResizable?: boolean;\r\n moved?: boolean;\r\n type: \"header\" | \"body\" | \"footer\" | \"content\";\r\n template: ILayoutTemplate;\r\n children?: IControlLayout[];\r\n}\r\n\r\nexport interface IPageProperty {\r\n doctype: \"A4\" | \"Letter\" | \"custom\";\r\n isDragingFromOutSide: boolean;\r\n gridSize: number;\r\n padding: number;\r\n dragingType?: \"header\" | \"body\" | \"footer\" | \"content\";\r\n pageAmount: number;\r\n pageSize: { width: number; height: number };\r\n}\r\n\r\nexport interface IPaperLayout {\r\n header: IControlLayout;\r\n body: IControlLayout;\r\n foot: IControlLayout;\r\n}\r\n\r\ninterface IPDFContextType {\r\n paperLayout: IControlLayout[];\r\n pageProperty: IPageProperty;\r\n setPaperLayout: (panelLayout: IControlLayout[]) => void;\r\n addLayout: (\r\n parent: \"header\" | \"body\" | \"footer\" | \"content\",\r\n item: any,\r\n template: ILayoutTemplate\r\n ) => void;\r\n updatePageProperties: (params: Partial) => void;\r\n refHtml: React.MutableRefObject;\r\n selectionBlock?: IControlLayout;\r\n onSelectChange: (template: IControlLayout) => void;\r\n onSelectPropertyChange: (props: IControlProperty) => void;\r\n onDeselected: () => void;\r\n removeSelectedChild: (parent: string) => void;\r\n changeDocType: (docType: IPageProperty[\"doctype\"]) => void;\r\n}\r\n\r\nconst PDFEditorContext = createContext(null);\r\n\r\nconst PDFEditorProvider: React.FC = (props) => {\r\n const papers: { [name: string]: IPageProperty[\"pageSize\"] } = {\r\n Letter: {\r\n width: 816,\r\n height: 1056,\r\n },\r\n A4: {\r\n width: 794,\r\n height: 1123,\r\n },\r\n };\r\n const [paperLayout, setPaperLayout] = useState([\r\n {\r\n i: \"header\",\r\n x: 0,\r\n y: 0,\r\n w: 12,\r\n h: 4,\r\n static: false,\r\n minW: 12,\r\n type: \"header\",\r\n template: {\r\n label: \"header\",\r\n type: \"header\",\r\n action: \"\",\r\n count: 0,\r\n layoutType: \"\",\r\n value: \"\",\r\n attribute: undefined,\r\n },\r\n children: [],\r\n },\r\n {\r\n i: \"body\",\r\n x: 0,\r\n y: 4,\r\n w: 12,\r\n h: 4,\r\n static: false,\r\n minW: 12,\r\n type: \"body\",\r\n template: {\r\n label: \"body\",\r\n type: \"body\",\r\n action: \"\",\r\n count: 0,\r\n layoutType: \"\",\r\n value: \"\",\r\n },\r\n children: [],\r\n },\r\n {\r\n i: \"footer\",\r\n x: 0,\r\n y: 8,\r\n w: 12,\r\n h: 4,\r\n static: false,\r\n minW: 12,\r\n type: \"footer\",\r\n template: {\r\n label: \"footer\",\r\n type: \"footer\",\r\n action: \"\",\r\n count: 0,\r\n layoutType: \"\",\r\n value: \"\",\r\n },\r\n children: [],\r\n },\r\n ]);\r\n\r\n const [pageProperty, setPageProperty] = useState({\r\n doctype: \"A4\",\r\n pageAmount: 1,\r\n gridSize: 15,\r\n padding: 5,\r\n pageSize: papers[\"A4\"],\r\n isDragingFromOutSide: false,\r\n });\r\n\r\n const [selectionBlock, setSelectionBlock] = useState();\r\n\r\n const refHtml = useRef(null);\r\n\r\n const addLayout = (\r\n parent: \"header\" | \"body\" | \"footer\" | \"content\",\r\n layout: any,\r\n template: ILayoutTemplate\r\n ) => {\r\n try {\r\n let targetParent: IControlLayout | undefined = paperLayout?.find(\r\n (e) => e.type === parent\r\n );\r\n\r\n if (targetParent) {\r\n let childList = targetParent.children;\r\n layout.i = uuidv4();\r\n layout.w = 4;\r\n layout.h = 1;\r\n\r\n if (template.type === \"tb\") {\r\n layout.w = Math.round(\r\n pageProperty.pageSize.width / pageProperty.gridSize\r\n );\r\n layout.h = 3;\r\n layout.minH = 3;\r\n layout.minW = Math.round(\r\n pageProperty.pageSize.width / pageProperty.gridSize\r\n );\r\n } else if (template.type === \"staticImage\") {\r\n layout.w = 10;\r\n layout.h = 10;\r\n layout.minH = 5;\r\n layout.minW = 5;\r\n }\r\n const tempAttibute = template.attribute;\r\n template.attribute = {\r\n default: tempAttibute?.default || \"\",\r\n fontSize: 14,\r\n fontFamily: \"Arial\",\r\n color: \"#000000\",\r\n isBold: false,\r\n isItalic: false,\r\n isUnderlined: false,\r\n hAlign: \"center\",\r\n vAlign: \"center\",\r\n urlLink: \"\",\r\n hideLabel: false,\r\n column: tempAttibute?.column,\r\n backgroundSize: \"contain\",\r\n };\r\n\r\n layout.template = template;\r\n\r\n childList?.push(layout);\r\n\r\n onSelectChange(layout);\r\n setPaperLayout((prev) =>\r\n prev.map((e) => {\r\n if (e.type === parent) {\r\n e.children = childList;\r\n }\r\n return e;\r\n })\r\n );\r\n }\r\n updatePageProperties({ isDragingFromOutSide: false });\r\n } catch (error) {\r\n console.error(error);\r\n updatePageProperties({ isDragingFromOutSide: false });\r\n }\r\n };\r\n\r\n const removeSelectedChild = (parent: string) => {\r\n setPaperLayout((prev) =>\r\n prev.map((e) => {\r\n if (parent === parent) {\r\n e.children = e.children?.filter(\r\n (child) => child.i !== selectionBlock?.i\r\n );\r\n }\r\n return e;\r\n })\r\n );\r\n };\r\n\r\n const updatePageProperties = (params: Partial) => {\r\n setPageProperty((prevSettings) => ({\r\n ...prevSettings,\r\n ...params,\r\n }));\r\n };\r\n\r\n const onSelectChange = (template: IControlLayout) => {\r\n setSelectionBlock(template);\r\n };\r\n\r\n const onDeselected = () => {\r\n setSelectionBlock(undefined);\r\n };\r\n\r\n const onSelectPropertyChange = (props: IControlProperty) => {\r\n if (selectionBlock) {\r\n let _selectionBlock: IControlLayout = selectionBlock;\r\n _selectionBlock.template.attribute = props;\r\n const newLayout = paperLayout.map((layout) => {\r\n layout.children = layout.children?.map((child) => {\r\n if (child.i === selectionBlock.i) {\r\n child.template = _selectionBlock.template;\r\n }\r\n return child;\r\n });\r\n return layout;\r\n });\r\n if (newLayout) setPaperLayout(newLayout);\r\n setSelectionBlock(_selectionBlock);\r\n }\r\n };\r\n\r\n const onGenHtml = () => {\r\n console.log(paperLayout);\r\n };\r\n\r\n const changeDocType = (docType: IPageProperty[\"doctype\"]) => {\r\n updatePageProperties({ doctype: docType, pageSize: papers[docType] });\r\n };\r\n\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n};\r\n\r\nexport { PDFEditorProvider, PDFEditorContext };\r\n","import { useContext } from \"react\";\r\nimport { PDFEditorContext } from \"../Context/PDFEditorContext\";\r\n\r\nconst usePDFEditor = () => {\r\n const context = useContext(PDFEditorContext);\r\n if (!context)\r\n throw new Error(\"PDFEditor Context must be use inside PDFEditor Provider\");\r\n return context;\r\n};\r\n\r\nexport default usePDFEditor;\r\n","import { Col } from \"antd\";\r\nimport React, { useRef } from \"react\";\r\nimport usePDFEditor from \"../../../hooks/usePDFEditor\";\r\n\r\ntype Props = {\r\n label: string;\r\n type: string;\r\n attribute?: any;\r\n icon: React.ReactNode;\r\n layoutType: \"header\" | \"body\" | \"footer\" | \"content\";\r\n};\r\n\r\nconst PDFCompontButton = ({\r\n label,\r\n type,\r\n icon,\r\n layoutType,\r\n attribute,\r\n}: Props) => {\r\n const count = useRef(1);\r\n const { updatePageProperties } = usePDFEditor();\r\n\r\n return (\r\n {\r\n const dataString = JSON.stringify({\r\n action: \"add\",\r\n label: label,\r\n type: type,\r\n count: count.current,\r\n layoutType: layoutType,\r\n value: \"\",\r\n attribute: attribute,\r\n });\r\n updatePageProperties({\r\n dragingType: layoutType,\r\n isDragingFromOutSide: true,\r\n });\r\n e.dataTransfer.setData(\"application/json\", dataString);\r\n }}\r\n onDragEnd={() => {\r\n count.current += 1;\r\n updatePageProperties({\r\n isDragingFromOutSide: false,\r\n });\r\n }}\r\n >\r\n {icon}\r\n \r\n {label}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default PDFCompontButton;\r\n","import { Button, Col, Collapse } from \"antd\";\r\nimport type { CollapseProps } from \"antd\";\r\nimport { MenuItem } from \"primereact/menuitem\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { FaHeading, FaRegImage, FaRegListAlt } from \"react-icons/fa\";\r\nimport { BiText, BiTimeFive } from \"react-icons/bi\";\r\nimport { ImTextHeight } from \"react-icons/im\";\r\nimport { AiOutlineNumber } from \"react-icons/ai\";\r\nimport { FiCalendar } from \"react-icons/fi\";\r\nimport { IoMdRadioButtonOn } from \"react-icons/io\";\r\nimport { MdOutlineCheckBox } from \"react-icons/md\";\r\nimport { CgPlayButtonO } from \"react-icons/cg\";\r\nimport {\r\n BsFileEarmarkRichtext,\r\n BsSortNumericDown,\r\n BsTable,\r\n} from \"react-icons/bs\";\r\nimport { GrAttachment } from \"react-icons/gr\";\r\nimport usePDFEditor from \"../../../hooks/usePDFEditor\";\r\nimport PDFCompontButton from \"./PDFCompontButton\";\r\nimport CollapsePanel from \"antd/lib/collapse/CollapsePanel\";\r\n\r\ntype Props = {\r\n advanceForm: any;\r\n reportTem: any[];\r\n};\r\n\r\nfunction getItem(\r\n label: React.ReactNode,\r\n key: React.Key,\r\n icon?: React.ReactNode,\r\n children?: MenuItem[],\r\n type?: \"group\"\r\n): MenuItem {\r\n return {\r\n key,\r\n icon,\r\n children,\r\n label,\r\n type,\r\n } as MenuItem;\r\n}\r\n\r\nconst items: MenuItem[] = [getItem(\"Option 1\", \"1\"), getItem(\"Option 2\", \"2\")];\r\n\r\nconst PDFToolBar = ({ advanceForm, reportTem }: Props) => {\r\n const [controlItem, setControlItems] = useState(advanceForm.items);\r\n\r\n const { addLayout } = usePDFEditor();\r\n\r\n useEffect(() => {\r\n getItems();\r\n }, []);\r\n\r\n const getItems = () => {\r\n let items: any[] = [];\r\n advanceForm.items.forEach((item: any) => {\r\n item.layout.forEach((layout: any) => {\r\n items.push(layout);\r\n });\r\n });\r\n\r\n setControlItems((prev: any) => items);\r\n };\r\n\r\n const getIcon = (type: string) => {\r\n switch (type) {\r\n case \"l\":\r\n return ;\r\n case \"ed\":\r\n return ;\r\n case \"c\":\r\n return ;\r\n case \"Number\":\r\n return ;\r\n case \"ta\":\r\n return ;\r\n case \"dd\":\r\n return ;\r\n case \"cb\":\r\n return ;\r\n case \"at\":\r\n return ;\r\n case \"t\":\r\n return ;\r\n case \"Text\":\r\n return ;\r\n case \"r\":\r\n return ;\r\n case \"tb\":\r\n return ;\r\n case \"d\":\r\n return ;\r\n case \"Datetime\":\r\n return ;\r\n case \"bt\":\r\n return ;\r\n case \"an\":\r\n return ;\r\n case \"rvs\":\r\n return ;\r\n case \"im\":\r\n return ;\r\n default:\r\n break;\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n {\" \"}\r\n \r\n \r\n \r\n {controlItem\r\n .filter((e: any) => e.template?.type !== \"em\")\r\n .map((item: any) => (\r\n \r\n ))}\r\n \r\n \r\n {reportTem.map((item: any) => (\r\n {\r\n return {\r\n guid: \"0gb2o3crjqs9ijcmisefv6k\",\r\n label: e,\r\n alter: \"\",\r\n control: {\r\n template: {\r\n type: \"t\",\r\n label: e,\r\n alter: \"\",\r\n attribute: {\r\n description: \"\",\r\n default: \"\",\r\n length: \"0\",\r\n require: \"N\",\r\n readonly: \"N\",\r\n widthInTable: \"0\",\r\n hideInPdf: \"N\",\r\n },\r\n },\r\n data: {\r\n value: null,\r\n },\r\n },\r\n };\r\n })\r\n : null,\r\n }}\r\n icon={getIcon(item?.value5)}\r\n layoutType=\"content\"\r\n />\r\n ))}\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default PDFToolBar;\r\n","import React, { useEffect, useState } from \"react\";\r\n\r\ntype Props = {\r\n items: { key: string; label: string }[];\r\n onChange: (key: string) => void;\r\n};\r\n\r\nconst TabsButton = ({ items, onChange }: Props) => {\r\n const [activeKey, setActiveKey] = useState(\"text\");\r\n\r\n useEffect(() => {\r\n onChange(activeKey);\r\n }, [activeKey]);\r\n\r\n return (\r\n <>\r\n
\r\n {items.map((e) => (\r\n {\r\n setActiveKey(e.key);\r\n }}\r\n >\r\n {e.label}\r\n
\r\n ))}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default TabsButton;\r\n","import { Popover, Button } from \"antd\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { ColorResult, SketchPicker } from \"react-color\";\r\nimport { BgColorsOutlined } from \"@ant-design/icons\";\r\n\r\ntype Props = { color: string; onChageColor: (e: ColorResult) => void };\r\n\r\nconst ColorPicker = ({ color, onChageColor }: Props) => {\r\n const [value, setValue] = useState(\"#ffff\");\r\n\r\n return (\r\n {\r\n setValue(color);\r\n }}\r\n content={\r\n {\r\n setValue(e.hex);\r\n }}\r\n onChangeComplete={onChageColor}\r\n />\r\n }\r\n trigger={\"click\"}\r\n >\r\n
\r\n {\r\n if (controlProperty) {\r\n let newProps: IControlProperty = { ...controlProperty };\r\n newProps.backgroundSize = e;\r\n setControlProperty(newProps);\r\n }\r\n }}\r\n options={[\r\n { label: \"Cover\", value: \"cover\" },\r\n { label: \"Contain\", value: \"contain\" },\r\n { label: \"Fill \", value: \"fill\" },\r\n ]}\r\n />\r\n \r\n \r\n );\r\n\r\n const textToolComponent = (\r\n <>\r\n \r\n {\r\n if (controlProperty) {\r\n let newProps: IControlProperty = { ...controlProperty };\r\n newProps.fontFamily = e;\r\n setControlProperty(newProps);\r\n }\r\n }}\r\n options={fontList}\r\n />\r\n \r\n \r\n {\r\n if (controlProperty && e) {\r\n let newProps: IControlProperty = { ...controlProperty };\r\n newProps.fontSize = e;\r\n setControlProperty(newProps);\r\n }\r\n }}\r\n />\r\n \r\n \r\n {\r\n if (controlProperty && e) {\r\n let newProps: IControlProperty = {\r\n ...controlProperty,\r\n };\r\n newProps.color = e.hex;\r\n setControlProperty(newProps);\r\n }\r\n }}\r\n />\r\n \r\n \r\n }\r\n type={controlProperty?.isBold ? \"primary\" : \"default\"}\r\n onClick={() => {\r\n if (controlProperty) {\r\n let newProps: IControlProperty = { ...controlProperty };\r\n newProps.isBold = !newProps.isBold;\r\n setControlProperty(newProps);\r\n }\r\n }}\r\n />\r\n }\r\n type={controlProperty?.isItalic ? \"primary\" : \"default\"}\r\n onClick={() => {\r\n if (controlProperty) {\r\n let newProps: IControlProperty = { ...controlProperty };\r\n newProps.isItalic = !newProps.isItalic;\r\n\r\n setControlProperty(newProps);\r\n }\r\n }}\r\n />\r\n }\r\n type={controlProperty?.isUnderlined ? \"primary\" : \"default\"}\r\n onClick={() => {\r\n if (controlProperty) {\r\n let newProps: IControlProperty = { ...controlProperty };\r\n newProps.isUnderlined = !newProps.isUnderlined;\r\n setControlProperty(newProps);\r\n }\r\n }}\r\n />\r\n \r\n \r\n }\r\n type={\r\n controlProperty?.hAlign === \"flex-start\" ? \"primary\" : \"default\"\r\n }\r\n onClick={() => {\r\n if (controlProperty) {\r\n let newProps: IControlProperty = { ...controlProperty };\r\n newProps.hAlign = \"flex-start\";\r\n setControlProperty(newProps);\r\n }\r\n }}\r\n />\r\n }\r\n type={controlProperty?.hAlign === \"center\" ? \"primary\" : \"default\"}\r\n onClick={() => {\r\n if (controlProperty) {\r\n let newProps: IControlProperty = { ...controlProperty };\r\n newProps.hAlign = \"center\";\r\n setControlProperty(newProps);\r\n }\r\n }}\r\n />\r\n }\r\n type={controlProperty?.hAlign === \"flex-end\" ? \"primary\" : \"default\"}\r\n onClick={() => {\r\n if (controlProperty) {\r\n let newProps: IControlProperty = { ...controlProperty };\r\n newProps.hAlign = \"flex-end\";\r\n setControlProperty(newProps);\r\n }\r\n }}\r\n />\r\n \r\n \r\n }\r\n type={controlProperty?.vAlign === \"flex-end\" ? \"primary\" : \"default\"}\r\n onClick={() => {\r\n if (controlProperty) {\r\n let newProps: IControlProperty = { ...controlProperty };\r\n newProps.vAlign = \"flex-end\";\r\n setControlProperty(newProps);\r\n }\r\n }}\r\n />\r\n }\r\n type={controlProperty?.vAlign === \"center\" ? \"primary\" : \"default\"}\r\n onClick={() => {\r\n if (controlProperty) {\r\n let newProps: IControlProperty = { ...controlProperty };\r\n newProps.vAlign = \"center\";\r\n setControlProperty(newProps);\r\n }\r\n }}\r\n />\r\n }\r\n type={\r\n controlProperty?.vAlign === \"flex-start\" ? \"primary\" : \"default\"\r\n }\r\n onClick={() => {\r\n if (controlProperty) {\r\n let newProps: IControlProperty = { ...controlProperty };\r\n newProps.vAlign = \"flex-start\";\r\n setControlProperty(newProps);\r\n }\r\n }}\r\n />\r\n \r\n {selectionBlock !== undefined && (\r\n \r\n }\r\n type={selectionBlock?.template.value !== \"\" ? \"primary\" : \"default\"}\r\n onClick={() => {\r\n if (\r\n selectionBlock?.template.value &&\r\n selectionBlock?.template.value !== \"\"\r\n ) {\r\n setLinkUrl(selectionBlock?.template?.value);\r\n }\r\n setIsLinkModalOpen(!isLinkModalOpen);\r\n }}\r\n />\r\n \r\n )}{\" \"}\r\n \r\n {\r\n if (controlProperty) {\r\n let newProps: IControlProperty = { ...controlProperty };\r\n newProps.hideLabel = e.target.checked;\r\n setControlProperty(newProps);\r\n }\r\n }}\r\n >\r\n Hide label\r\n \r\n \r\n \r\n );\r\n\r\n const tabsItems = [\r\n {\r\n key: \"layout\",\r\n label: \"Layout\",\r\n children: (\r\n <>\r\n {\" \"}\r\n Page size :\r\n \r\n {\r\n changeDocType(e)\r\n // updatePageProperties({ doctype: e });\r\n }}\r\n options={[\r\n { label: \"A4\", value: \"A4\" },\r\n { label: \"Letter\", value: \"Letter\" },\r\n ]}\r\n />\r\n \r\n Grid size :\r\n \r\n {\r\n if (e) updatePageProperties({ gridSize: e });\r\n }}\r\n />\r\n \r\n Padding :\r\n \r\n {\r\n if (e) updatePageProperties({ padding: e });\r\n }}\r\n />\r\n \r\n \r\n ),\r\n },\r\n {\r\n key: \"text\",\r\n label: selectionBlock?.template.type !== \"staticImage\" ? \"Text\" : \"Image\",\r\n children:\r\n selectionBlock?.template.type !== \"staticImage\"\r\n ? textToolComponent\r\n : imagmeToolComponent,\r\n },\r\n ];\r\n\r\n return (\r\n <>\r\n {\r\n setActiveKey(key);\r\n }}\r\n items={tabsItems}\r\n />\r\n \r\n {tabsItems.find((e) => e.key === activeKey)?.children}\r\n \r\n {\r\n if (selectionBlock) {\r\n setPaperLayout([\r\n ...paperLayout.map((e) => {\r\n if (e.children?.length === 0) return e;\r\n\r\n e.children = e.children?.map((child) => {\r\n if (child.i === selectionBlock.i) {\r\n child.template.value = linkUrl;\r\n }\r\n return child;\r\n });\r\n\r\n return e;\r\n }),\r\n ]);\r\n }\r\n setLinkUrl(\"\");\r\n\r\n setIsLinkModalOpen(!isLinkModalOpen);\r\n }}\r\n onCancel={() => {\r\n setLinkUrl(\"\");\r\n\r\n setIsLinkModalOpen(!isLinkModalOpen);\r\n }}\r\n >\r\n {\r\n setLinkUrl(e.target.value);\r\n }}\r\n />\r\n \r\n \r\n );\r\n};\r\n\r\nexport default PDFEditorToolBar;\r\n","import React, { useEffect, useRef, useState } from \"react\";\r\nimport { ILayoutTemplate } from \"../../../Context/PDFEditorContext\";\r\nimport { Input } from \"antd\";\r\nconst { TextArea } = Input;\r\ntype Props = {\r\n template: ILayoutTemplate;\r\n h: number;\r\n onBlur: (value: string | null) => void;\r\n};\r\n\r\nconst StaticInput = ({ template, h, onBlur }: Props) => {\r\n const [value, setValue] = useState(template.label);\r\n\r\n return (\r\n <>\r\n {\r\n setValue(e.target.value);\r\n }}\r\n onBlur={() => {\r\n onBlur(value);\r\n }}\r\n />\r\n {`${value}`}\r\n \r\n // {\r\n // setValue(e.target.value);\r\n // }}\r\n // onBlur={() => {\r\n // onBlur(value);\r\n // }}\r\n // />\r\n );\r\n};\r\n\r\nexport default StaticInput;\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { ILayoutTemplate } from \"../../../Context/PDFEditorContext\";\r\nimport { Upload, message } from \"antd\";\r\nimport { LoadingOutlined, PlusOutlined } from \"@ant-design/icons\";\r\nimport { useUserContext } from \"../../../Context/UserContext\";\r\nimport { UploadTinyMce } from \"../../../Services/UploadFileService\";\r\n\r\ntype Props = {\r\n template: ILayoutTemplate;\r\n h: number;\r\n w: number;\r\n onUploadComplete: (url: string) => void;\r\n};\r\n\r\nconst StaticImage = ({ template, h, w, onUploadComplete }: Props) => {\r\n const [loading, setLoading] = useState(false);\r\n var _userData = JSON.parse(window.localStorage.getItem(\"userData\") || \"\");\r\n const [userData, setUserData] = useUserContext();\r\n const _sharepointSiteURL = _userData.SharepointSiteURL;\r\n const [imageUrl, setImageUrl] = useState(\"\");\r\n const [visible, setVisible] = useState(false);\r\n useEffect(() => {\r\n const fetchData = () => {\r\n try {\r\n const link = getLink(template.value);\r\n setImageUrl(link);\r\n } catch (error) {\r\n // Handle error\r\n console.error(\"Error fetching image link:\", error);\r\n }\r\n };\r\n\r\n fetchData();\r\n }, [template.value]);\r\n console.log(template);\r\n const imgSize = {\r\n contain:\r\n h > w\r\n ? {\r\n width: \"100%\",\r\n }\r\n : { height: \"100%\", width: \"auto\" },\r\n cover: {},\r\n fill: { width: \"100%\", height: \"100%\" },\r\n };\r\n const getLink = (val: string) => {\r\n if (template.value === \"\") {\r\n return \"\";\r\n }\r\n let imgUrl = \"\";\r\n const protocol = window.location.protocol;\r\n\r\n if (_sharepointSiteURL) {\r\n imgUrl = _sharepointSiteURL + \"/\" + val;\r\n } else {\r\n const _port = window.location.port;\r\n let _tinyURL = _userData.TinyURL;\r\n if (_port) {\r\n _tinyURL = _userData.TinyURL;\r\n }\r\n imgUrl = `${protocol}//` + _tinyURL + val;\r\n }\r\n\r\n return imgUrl !== \"\"\r\n ? imgUrl\r\n : \"https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png\";\r\n };\r\n\r\n const handlePreviewClick = () => {\r\n setVisible(true);\r\n };\r\n\r\n const handleModalClose = () => {\r\n setVisible(false);\r\n };\r\n const checkFile = (file: File) => {\r\n setLoading(true);\r\n const isImage = file.type.startsWith(\"image/\");\r\n if (!isImage) {\r\n message.error(\"You can only upload image files!\");\r\n }\r\n return isImage;\r\n };\r\n\r\n const uploadButton = (\r\n
\r\n {loading ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
Upload
\r\n
\r\n );\r\n\r\n return (\r\n <>\r\n {imageUrl !== \"\" ? (\r\n <>\r\n {template.attribute?.backgroundSize !== \"cover\" ? (\r\n \r\n ) : (\r\n \r\n \r\n \r\n )}\r\n \r\n ) : (\r\n {\r\n if (e.file.originFileObj) {\r\n const uploadedFile = e.file.originFileObj;\r\n if (uploadedFile) {\r\n const file = new File([uploadedFile], uploadedFile.name, {\r\n lastModified: Date.now(),\r\n });\r\n const formData = new FormData();\r\n formData.append(\"file\", file);\r\n formData.append(\"Doclib\", \"TempAttachment\");\r\n formData.append(\"docSet\", \"TinyImages\");\r\n formData.append(\"fileDesc\", \"\");\r\n formData.append(\"actorID\", userData.EmployeeId.toString());\r\n\r\n var response: any = await UploadTinyMce(formData);\r\n console.log(response);\r\n if (response?.data?.result) {\r\n getLink(response.data.pathUrl);\r\n onUploadComplete(response.data.pathUrl);\r\n }\r\n }\r\n }\r\n\r\n setLoading(false);\r\n }}\r\n // fileList={fileList}\r\n style={{ height: \"100%\" }}\r\n >\r\n {uploadButton}\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default StaticImage;\r\n","import React, { useEffect, useMemo, useState } from \"react\";\r\nimport \"../PDFTemplateComponent/PDFTemplateComponent.css\";\r\nimport GridLayout from \"react-grid-layout\";\r\nimport \"react-grid-layout/css/styles.css\"; // CSS for react-grid-layout\r\nimport \"react-resizable/css/styles.css\"; //\r\nimport usePDFEditor from \"../../../hooks/usePDFEditor\";\r\nimport {\r\n IControlLayout,\r\n ILayoutTemplate,\r\n} from \"../../../Context/PDFEditorContext\";\r\nimport StaticInput from \"./StaticInput\";\r\nimport StaticImage from \"./StaticImage\";\r\nimport { FileImageOutlined } from \"@ant-design/icons\";\r\nimport img from \"../../../assets/wolf-slide-left.png\";\r\n\r\ninterface props {\r\n name: \"header\" | \"body\" | \"footer\" | \"content\";\r\n children: IControlLayout[];\r\n paperWidth: number;\r\n}\r\n\r\nconst DropableComponent = ({ name, paperWidth, children }: props) => {\r\n const [rowHeight, setRowHeight] = useState(14);\r\n const [previewImage, setPreviewImage] = useState(false);\r\n const [selectedImg, setSelectedImg] = useState(\"\");\r\n var _userData = JSON.parse(window.localStorage.getItem(\"userData\") || \"\");\r\n const _sharepointSiteURL = _userData.SharepointSiteURL;\r\n\r\n const {\r\n paperLayout,\r\n addLayout,\r\n setPaperLayout,\r\n pageProperty,\r\n onSelectChange,\r\n selectionBlock,\r\n removeSelectedChild,\r\n } = usePDFEditor();\r\n\r\n const tableDisplay = (layout: IControlLayout) => {\r\n let node: React.ReactNode[] = [\r\n
\r\n {layout.template.attribute?.column?.map((e) => {\r\n return (\r\n \r\n {e.label}\r\n \r\n );\r\n })}\r\n ,\r\n ];\r\n // console.log(layout.h * pageProperty.gridSize);\r\n\r\n return node;\r\n };\r\n\r\n useEffect(() => {\r\n const handleKeyDown = (event: { keyCode: number }) => {\r\n if (event.keyCode === 46) {\r\n removeSelectedChild(name);\r\n }\r\n };\r\n\r\n window.addEventListener(\"keydown\", handleKeyDown);\r\n\r\n return () => {\r\n window.removeEventListener(\"keydown\", handleKeyDown);\r\n };\r\n }, [selectionBlock]);\r\n\r\n const imgSize = {\r\n contain: { width: \"100%\" },\r\n cover: { hiegth: \"100%\" },\r\n fill: { width: \"100%\", hiegth: \"100%\" },\r\n };\r\n\r\n const renderContent = (layout: IControlLayout) => {\r\n const isStaticText = layout.template.type === \"staticText\";\r\n const isSelected = selectionBlock?.i === layout.i;\r\n\r\n if (layout.template.type === \"tb\") {\r\n return (\r\n \r\n {tableDisplay(layout)}\r\n
\r\n

{col.headerEn}

\r\n

{col.headerTh}

\r\n
\r\n

EmployeeCode

\r\n

รหัสพนักงาน

\r\n
\r\n

Name

\r\n

ชื่อ

\r\n
\r\n

Position

\r\n

ตำแหน่ง

\r\n
\r\n

Department

\r\n

หน่วยงาน

\r\n
\r\n );\r\n } else if (isStaticText) {\r\n return isSelected ? (\r\n {\r\n if (val !== null) {\r\n setPaperLayout([\r\n ...paperLayout.map((e) => {\r\n if (e.i === name) {\r\n e.children = e.children?.map((child) => {\r\n if (child.i === selectionBlock.i) {\r\n child.template.label = val;\r\n }\r\n\r\n return child;\r\n });\r\n }\r\n return e;\r\n }),\r\n ]);\r\n }\r\n }}\r\n />\r\n ) : (\r\n {`${layout?.template?.label}`}\r\n );\r\n } else if (layout.template.type === \"staticImage\") {\r\n const imgSize = {\r\n contain:\r\n layout.h > layout.w\r\n ? {\r\n width: \"100%\",\r\n }\r\n : { height: \"100%\", width: \"auto\" },\r\n cover: {},\r\n fill: { width: \"100%\", height: \"100%\" },\r\n };\r\n return isSelected ? (\r\n {\r\n if (val !== null) {\r\n setPaperLayout([\r\n ...paperLayout.map((e) => {\r\n if (e.i === name) {\r\n e.children = e.children?.map((child) => {\r\n if (child.i === selectionBlock.i) {\r\n child.template.value = val;\r\n }\r\n\r\n return child;\r\n });\r\n }\r\n return e;\r\n }),\r\n ]);\r\n }\r\n }}\r\n />\r\n ) : layout.template.attribute?.backgroundSize !== \"cover\" ? (\r\n <>\r\n {\" \"}\r\n {layout.template.value === \"\" ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n ) : (\r\n \r\n {layout.template.value === \"\" ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n );\r\n } else if (layout.template.type === \"l\") {\r\n return (\r\n {`${\r\n layout.template.attribute?.hideLabel ? \"\" : layout.template.label\r\n }`}\r\n );\r\n } else {\r\n return (\r\n {`${\r\n layout.template.attribute?.hideLabel\r\n ? \"\"\r\n : layout.template.label + \" : \"\r\n } ${layout?.template?.attribute?.default || \"value\"}`}\r\n );\r\n }\r\n };\r\n\r\n const getLink = (val: string) => {\r\n if (val === \"\") {\r\n return \"\";\r\n }\r\n let imgUrl = \"\";\r\n const protocol = window.location.protocol;\r\n\r\n if (_sharepointSiteURL) {\r\n imgUrl = _sharepointSiteURL + \"/\" + val;\r\n } else {\r\n const _port = window.location.port;\r\n let _tinyURL = _userData.TinyURL;\r\n if (_port) {\r\n _tinyURL = _userData.TinyURL;\r\n }\r\n imgUrl = `${protocol}//` + _tinyURL + val;\r\n }\r\n\r\n return imgUrl !== \"\"\r\n ? imgUrl\r\n : \"https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png\";\r\n };\r\n\r\n const childrenLayout = useMemo(() => {\r\n return children.map((layout, idx) => {\r\n const isSelected = selectionBlock?.i === layout.i;\r\n const isPortrait = layout.h > layout.w;\r\n return (\r\n {\r\n onSelectChange(layout);\r\n }}\r\n >\r\n {renderContent(layout)}\r\n \r\n );\r\n });\r\n }, [paperLayout, selectionBlock]);\r\n\r\n return (\r\n <>\r\n {\" \"}\r\n {\r\n setPaperLayout([\r\n ...paperLayout.map((e) => {\r\n if (e.i === name) {\r\n e.children = e.children?.map((child) => {\r\n const layout = layouts.find((layout) => layout.i === child.i);\r\n if (layout) {\r\n child.x = layout.x;\r\n child.y = layout.y;\r\n }\r\n return child;\r\n });\r\n }\r\n return e;\r\n }),\r\n ]);\r\n }}\r\n onResizeStop={(layouts) => {\r\n if (!pageProperty.isDragingFromOutSide) {\r\n setPaperLayout([\r\n ...paperLayout.map((e) => {\r\n if (e.i === name) {\r\n e.children = e.children?.map((child) => {\r\n const layout = layouts.find(\r\n (layout) => layout.i === child.i\r\n );\r\n\r\n if (layout) {\r\n child.w = layout.w;\r\n child.h = layout.h;\r\n }\r\n\r\n return child;\r\n });\r\n }\r\n return e;\r\n }),\r\n ]);\r\n }\r\n }}\r\n onDrop={(layouts, item: any, e: any) => {\r\n try {\r\n const data: ILayoutTemplate = JSON.parse(\r\n e.dataTransfer.getData(\"application/json\")\r\n );\r\n addLayout(name, item, data);\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n }}\r\n >\r\n {childrenLayout}\r\n \r\n \r\n );\r\n};\r\nexport default DropableComponent;\r\n","import React, {\r\n RefAttributes,\r\n useEffect,\r\n useMemo,\r\n useRef,\r\n useState,\r\n} from \"react\";\r\nimport { Responsive, WidthProvider } from \"react-grid-layout\";\r\nimport \"../PDFTemplateComponent/PDFTemplateComponent.css\";\r\nimport PDFElementBox from \"./PDFElementBox\";\r\nimport GridLayout from \"react-grid-layout\";\r\nimport usePDFEditor from \"../../../hooks/usePDFEditor\";\r\nimport \"react-grid-layout/css/styles.css\"; // CSS for react-grid-layout\r\nimport \"react-resizable/css/styles.css\"; //\r\nimport DropableComponent from \"./DropableComponent\";\r\nimport { DragOutlined } from \"@ant-design/icons\";\r\nimport { Button, Tag } from \"antd\";\r\nimport { IControlLayout } from \"../../../Context/PDFEditorContext\";\r\nimport { findMaxInArrayObject } from \"../../../Helper/arrayHelper\";\r\nconst ResponsiveGridLayout = WidthProvider(Responsive);\r\n\r\ninterface props {\r\n scale: number;\r\n}\r\n\r\nconst PaperLayout = React.memo(({ scale }: props) => {\r\n const {\r\n paperLayout,\r\n addLayout,\r\n pageProperty,\r\n setPaperLayout,\r\n updatePageProperties,\r\n refHtml,\r\n selectionBlock,\r\n onDeselected,\r\n } = usePDFEditor();\r\n\r\n const refPaper = useRef(null);\r\n\r\n useEffect(() => {\r\n const handleZoom = () => {\r\n // Set the scale based on your zoom logic\r\n\r\n // Center the paper div within the board\r\n if (refPaper.current && refPaper.current?.parentElement) {\r\n const boardWidth = refPaper.current?.parentElement?.clientWidth;\r\n const boardHeight = refPaper.current?.parentElement?.clientHeight;\r\n const paperWidth = refPaper.current.clientWidth * scale;\r\n const paperHeight = refPaper.current.clientHeight * scale;\r\n\r\n const offsetX = (boardWidth - paperWidth) / 2;\r\n const offsetY = (boardHeight - paperHeight) / 2;\r\n\r\n refPaper.current.style.transform = `scale(${scale})`;\r\n refPaper.current.style.left = `${offsetX}px`;\r\n // refPaper.current.style.top = `${offsetY}px`;\r\n }\r\n };\r\n\r\n handleZoom();\r\n }, [scale]);\r\n\r\n const checkForNewPage = (height: number) => {\r\n if (height / pageProperty.pageAmount > pageProperty.pageSize?.height) {\r\n updatePageProperties({\r\n pageAmount: pageProperty.pageAmount + 1,\r\n });\r\n } else if (\r\n height > pageProperty.pageSize?.height &&\r\n height <= pageProperty.pageSize?.height * pageProperty.pageAmount &&\r\n height <= pageProperty.pageSize?.height * (pageProperty.pageAmount - 1)\r\n ) {\r\n updatePageProperties({\r\n pageAmount: pageProperty.pageAmount - 1,\r\n });\r\n } else if (\r\n pageProperty.pageAmount - 1 === 1 &&\r\n height < pageProperty.pageSize?.height\r\n ) {\r\n updatePageProperties({\r\n pageAmount: 1,\r\n });\r\n }\r\n };\r\n\r\n const breakPages = () => {\r\n const lines: any[] = [];\r\n for (let i = 1; i < pageProperty.pageAmount; i++) {\r\n lines.push(\r\n \r\n );\r\n }\r\n return lines;\r\n };\r\n\r\n const renderedPaperLayout = useMemo(() => {\r\n return paperLayout.map((e: any) => {\r\n e.isBounded = true;\r\n return (\r\n \r\n {e.i}\r\n \r\n {e.i === \"body\" && breakPages()}\r\n \r\n );\r\n });\r\n }, [paperLayout]);\r\n\r\n return (\r\n <>\r\n \r\n
\r\n {\r\n const bodyElement = refPaper.current?.querySelector(\".body\");\r\n if (bodyElement instanceof HTMLElement) {\r\n checkForNewPage(bodyElement.offsetHeight);\r\n }\r\n }}\r\n onResizeStop={(layouts, oldItem, newItem) => {\r\n setPaperLayout([\r\n ...paperLayout.map((layout) => {\r\n if (layout?.children) {\r\n if (layout.i === newItem.i) {\r\n layout.w = newItem.w;\r\n layout.h = newItem.h;\r\n }\r\n }\r\n\r\n return layout;\r\n }),\r\n ]);\r\n }}\r\n >\r\n {renderedPaperLayout}\r\n \r\n
\r\n \r\n \r\n );\r\n});\r\n\r\nexport default PaperLayout;\r\n","import React, { useEffect, useRef, useState } from \"react\";\r\nimport \"../PDFTemplateComponent/PDFTemplateComponent.css\";\r\n\r\nimport PDFToolBar from \"./PDFToolBar\";\r\nimport usePDFEditor from \"../../../hooks/usePDFEditor\";\r\nimport PDFEditorToolBar from \"./PDFEditorToolBar\";\r\nimport PaperLayout from \"./PaperLayout\";\r\nimport { ZoomInOutlined, ZoomOutOutlined } from \"@ant-design/icons\";\r\nimport { Button, Col, Popover, Row, Spin, Switch, Tabs, TabsProps } from \"antd\";\r\nimport { IControlLayout } from \"../../../Context/PDFEditorContext\";\r\nimport { GetMasterDataReportTem } from \"../../../Services/MasterDataService\";\r\nimport { ITemplatePDF } from \"../../../IRequestModel/CreateFormControl/ITemplatePDF\";\r\n\r\ntype Props = {\r\n advanceForm: any;\r\n templateID: string;\r\n setControlModel: any;\r\n reportTem: any[];\r\n fontList: any[];\r\n templatePDF: ITemplatePDF;\r\n};\r\n\r\nconst PDFTemplateComponent = ({\r\n advanceForm,\r\n templateID,\r\n setControlModel,\r\n reportTem,\r\n fontList,\r\n templatePDF,\r\n}: Props) => {\r\n const {\r\n paperLayout,\r\n pageProperty,\r\n selectionBlock,\r\n setPaperLayout,\r\n updatePageProperties,\r\n onDeselected,\r\n refHtml,\r\n } = usePDFEditor();\r\n const [scale, setScale] = useState(1);\r\n var _userData = JSON.parse(window.localStorage.getItem(\"userData\") || \"\");\r\n const _sharepointSiteURL = _userData.SharepointSiteURL;\r\n const [isEnabled, setIsEnabled] = useState(templatePDF.IsActive);\r\n useEffect(() => {\r\n if (templatePDF.JsonLayout) {\r\n setPaperLayout(JSON.parse(templatePDF.JsonLayout));\r\n updatePageProperties({ ...JSON.parse(templatePDF.JsonProps) });\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n genFormat();\r\n }, [paperLayout, pageProperty, isEnabled]);\r\n\r\n const getLink = (val: string) => {\r\n let imgUrl = \"\";\r\n const protocol = window.location.protocol;\r\n\r\n if (_sharepointSiteURL) {\r\n imgUrl = _sharepointSiteURL + \"/\" + val;\r\n } else {\r\n const _port = window.location.port;\r\n let _tinyURL = _userData.TinyURL;\r\n if (_port) {\r\n _tinyURL = _userData.TinyURL + \":\" + _port;\r\n }\r\n imgUrl = `${protocol}//` + _tinyURL + val;\r\n }\r\n\r\n return imgUrl !== \"\"\r\n ? imgUrl\r\n : \"https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png\";\r\n };\r\n\r\n // const fecthMasterData = async () => {\r\n // const res = await GetMasterDataReportTem();\r\n // console.log(res);\r\n // };\r\n\r\n const genFormat = () => {\r\n try {\r\n let requestResult: any[] = [];\r\n paperLayout.forEach((layout, index) => {\r\n const _layout = layout?.children?.sort((a, b) => a.y - b.y);\r\n if (_layout) {\r\n const elements = refHtml.current?.getElementsByClassName(layout.i);\r\n let allDivElement = elements;\r\n if (elements && elements.length > 0) {\r\n for (let i = 0; i < elements.length; i++) {\r\n const element = elements[i];\r\n const allElements = element.getElementsByClassName(\"child-grid\");\r\n allDivElement = allElements;\r\n }\r\n }\r\n let result: any[][] = [];\r\n let tableCount = _layout.filter(\r\n (e) => e.template.type === \"tb\"\r\n ).length;\r\n let tempAfter: IControlLayout[] = [];\r\n for (let i = 0; i <= tableCount; i++) {\r\n let beforeTb: any[] = [];\r\n let isBeforeTb = true;\r\n let afterTb: any[] = [];\r\n let tableControl: any[] = [];\r\n if (allDivElement) {\r\n if (i === 0) {\r\n for (const item of _layout) {\r\n if (item.template.type === \"tb\") {\r\n isBeforeTb = false;\r\n if (tableControl.length === 0) {\r\n tableControl.push({\r\n i: item.i,\r\n w: item.w,\r\n h: item.h,\r\n x: item.x,\r\n y: item.y,\r\n type: item.template.type,\r\n Alabel: item.template.label,\r\n html: getDivForTemplate(allDivElement, item),\r\n });\r\n }\r\n }\r\n\r\n if (isBeforeTb) {\r\n beforeTb.push({\r\n i: item.i,\r\n w: item.w,\r\n h: item.h,\r\n x: item.x,\r\n y: item.y,\r\n type: item.template.type,\r\n Alabel: item.template.label,\r\n html: getDivForTemplate(allDivElement, item),\r\n });\r\n } else {\r\n afterTb.push(item);\r\n }\r\n }\r\n } else {\r\n tempAfter = tempAfter.slice(1, tempAfter.length);\r\n\r\n const a = tempAfter?.find((e) => e.template.type === \"tb\");\r\n if (a) {\r\n tableControl.push({\r\n i: a.i,\r\n w: a.w,\r\n h: a.h,\r\n x: a.x,\r\n y: a.y,\r\n type: a.template.type,\r\n Alabel: a.template.label,\r\n html: getDivForTemplate(allDivElement, a),\r\n });\r\n }\r\n\r\n for (const item of tempAfter) {\r\n if (item.template.type === \"tb\") {\r\n isBeforeTb = false;\r\n }\r\n\r\n if (isBeforeTb) {\r\n beforeTb.push({\r\n i: item.i,\r\n w: item.w,\r\n h: item.h,\r\n x: item.x,\r\n y: item.y,\r\n type: item.template.type,\r\n Alabel: item.template.label,\r\n html: getDivForTemplate(allDivElement, item),\r\n });\r\n } else {\r\n afterTb.push(item);\r\n }\r\n }\r\n }\r\n }\r\n\r\n result.push(beforeTb);\r\n if (tableControl.length > 0) result.push(tableControl);\r\n\r\n tempAfter = afterTb;\r\n beforeTb = [];\r\n }\r\n\r\n requestResult.push(result);\r\n }\r\n });\r\n console.log(requestResult);\r\n\r\n setControlModel((prevState: any) => ({\r\n ...prevState,\r\n templatePDF: {\r\n ID: 0,\r\n TemplateId: templateID,\r\n JsonProps: JSON.stringify(pageProperty),\r\n JsonLayout: JSON.stringify(paperLayout),\r\n HeaderLayout: JSON.stringify(requestResult[0]),\r\n BodyLayout: JSON.stringify(requestResult[1]),\r\n FooterLayout: JSON.stringify(requestResult[2]),\r\n isActive: isEnabled,\r\n },\r\n }));\r\n } catch (error) {\r\n console.error(\"genFormat=>error\", error);\r\n }\r\n };\r\n\r\n const getDivForTemplate = (\r\n allDivElement: HTMLCollectionOf,\r\n item: IControlLayout\r\n ) => {\r\n const tempDiv = document.createElement(\"div\");\r\n var regex = /(\\btransform:\\s*[^;]+;|position:\\s*absolute;)/g;\r\n for (let i = 0; i < allDivElement.length; i++) {\r\n const element = allDivElement[i];\r\n // Use getElementsByClassName on the individual element to get elements with a new class name\r\n const title = element.getAttribute(\"title\");\r\n if (title === item.i) {\r\n try {\r\n if (item.template.type !== \"staticImage\") {\r\n tempDiv.setAttribute(\"style\", element.getAttribute(\"style\") || \"\");\r\n tempDiv.style.padding = \"\";\r\n tempDiv.style.width = \"100%\";\r\n tempDiv.style.height = \"100%\";\r\n } else {\r\n tempDiv.style.textAlign = \"center\";\r\n }\r\n\r\n const content = element?.getElementsByClassName(\r\n \"content\"\r\n )[0] as HTMLElement;\r\n if(content){\r\n const computedStyle = window.getComputedStyle(content);\r\n content.style.lineHeight = computedStyle.lineHeight;\r\n content.style.fontSize = tempDiv.style.fontSize;\r\n content.style.fontFamily = tempDiv.style.fontFamily;\r\n content.style.fontWeight = tempDiv.style.fontWeight;\r\n }\r\n tempDiv.appendChild(content.cloneNode(true));\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n }\r\n }\r\n\r\n return tempDiv.outerHTML\r\n .replace(regex, \"\")\r\n .replace(/hidden/g, \"\")\r\n .replace(/border:\\s*[^;]+;/g, \"\")\r\n .replace(\"Column value\", \"{value}\")\r\n .replace(\":5001\", \"\");\r\n };\r\n\r\n const zoomIn = () => {\r\n if (scale < 2) {\r\n setScale(scale + 0.1);\r\n }\r\n };\r\n\r\n const zoomOut = () => {\r\n if (scale > 0) {\r\n setScale(scale - 0.1);\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n
\r\n \r\n
\r\n Enabled : \r\n {\r\n setIsEnabled(e);\r\n }}\r\n />\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n );\r\n};\r\n\r\nexport default PDFTemplateComponent;\r\n","export const getScreenWidthWithBreakpoint = () => {\r\n const screenWidth = window.innerWidth;\r\n if (screenWidth >= 1200) {\r\n return \"xl\";\r\n } else if (screenWidth >= 992) {\r\n return \"lg\";\r\n } else if (screenWidth >= 768) {\r\n return \"md\";\r\n } else if (screenWidth >= 576) {\r\n return \"sm\";\r\n } else {\r\n return \"xs\";\r\n }\r\n};\r\n","import { Modal, Form, Col, Row, Input, Select, Space, Button } from \"antd\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport {\r\n PlusOutlined,\r\n MinusCircleOutlined,\r\n CloseOutlined,\r\n} from \"@ant-design/icons\";\r\nimport { BiSave } from \"react-icons/bi\";\r\nimport { ButtonComponents } from \"../../../ButtonComponents/ButtonComponents\";\r\nimport { LogicFormProps, refInfors } from \"../JsonLogicForm\";\r\nimport { enumToObject } from \"../../../../Helper/LogicHelper\";\r\nimport { LogicOperatorType } from \"../../../../constants/logic-type\";\r\nconst { Option, OptGroup } = Select;\r\n\r\ntype Props = {\r\n rowData: any;\r\n onSubmit: (formData: any) => void;\r\n} & LogicFormProps;\r\n\r\nconst ShowHideControlModal = ({\r\n rowData,\r\n onSubmit,\r\n advanceFormItem,\r\n}: Props) => {\r\n const [form] = Form.useForm();\r\n const [formData, setFormData] = useState();\r\n const operators = enumToObject(LogicOperatorType);\r\n\r\n useEffect(() => {\r\n if (rowData) form.setFieldsValue(rowData);\r\n }, [rowData]);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n }\r\n onClickProps={() => {\r\n onSubmit(undefined);\r\n }}\r\n />\r\n \r\n \r\n }\r\n onClickProps={() => {\r\n onSubmit(formData);\r\n }}\r\n />\r\n \r\n \r\n \r\n }\r\n >\r\n {\r\n setFormData(allValues);\r\n }}\r\n >\r\n \r\n {(fields, { add, remove }) => {\r\n return (\r\n <>\r\n {fields.map(({ key, name, ...restField }, idx) => (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n {advanceFormItem.map((item: any, index) => {\r\n if (item.columns) {\r\n return (\r\n \r\n {item.columns.map((option: any) => (\r\n \r\n {option.label}\r\n \r\n ))}\r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n {Object.entries(operators).map(\r\n ([value, label], index) => (\r\n \r\n )\r\n )}\r\n \r\n \r\n {\r\n if (\r\n !value &&\r\n !form.getFieldValue(\"conditions\")[name][\r\n \"comparewith\"\r\n ]\r\n ) {\r\n return Promise.reject(\r\n \"Value or comparewith cannot be empty\"\r\n );\r\n }\r\n return Promise.resolve();\r\n },\r\n },\r\n ]}\r\n >\r\n \r\n \r\n {\r\n if (\r\n !value &&\r\n !form.getFieldValue(\"conditions\")[name][\r\n \"value\"\r\n ]\r\n ) {\r\n return Promise.reject(\r\n \"Value or comparewith cannot be empty\"\r\n );\r\n }\r\n return Promise.resolve();\r\n },\r\n },\r\n ]}\r\n >\r\n \r\n \r\n\r\n remove(name)}\r\n rev={undefined}\r\n />\r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n add()}\r\n block\r\n icon={}\r\n >\r\n Add condition\r\n \r\n \r\n \r\n );\r\n }}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default ShowHideControlModal;\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { Button, Checkbox, Divider, Form, Input, Select, Space } from \"antd\";\r\nimport { PlusOutlined, MinusCircleOutlined } from \"@ant-design/icons\";\r\nimport { getScreenWidthWithBreakpoint } from \"../../../../Helper/ScreenHelper\";\r\nimport ConditionRow from \"./ConditionRow\";\r\nimport { LogicFormProps } from \"../JsonLogicForm\";\r\nimport { ButtonComponents } from \"../../../ButtonComponents/ButtonComponents\";\r\nimport ShowHideControlModal from \"./ShowHideControlModal\";\r\nimport TextArea from \"antd/lib/input/TextArea\";\r\nimport { RuleObject } from \"antd/lib/form\";\r\nimport { StoreValue } from \"antd/lib/form/interface\";\r\nconst { Option, OptGroup } = Select;\r\n\r\nconst HideAndReadOnlyControlForm = ({\r\n advanceFormItem,\r\n form,\r\n}: LogicFormProps) => {\r\n const [breakpoint, setBreakpoint] = useState(getScreenWidthWithBreakpoint());\r\n const [selectedDataIdx, setSelectedDataIdx] = useState(-1);\r\n\r\n const controlOption: any[] = advanceFormItem\r\n .map((item) => {\r\n if (item.type === \"tb\" && item.columns) {\r\n return {\r\n label: item.label,\r\n value: JSON.stringify({\r\n label: item.label,\r\n type: item.type,\r\n }),\r\n options: item.columns.map((col) => ({\r\n label: col.label,\r\n value: JSON.stringify({\r\n label: col.label,\r\n type: col.type,\r\n isInTable: item.label,\r\n }),\r\n })),\r\n };\r\n }\r\n return {\r\n label: item.label,\r\n value: JSON.stringify({\r\n label: item.label,\r\n type: item.type,\r\n }),\r\n };\r\n })\r\n .filter((e) => e.label);\r\n\r\n useEffect(() => {\r\n const handleResize = () => {\r\n setBreakpoint(getScreenWidthWithBreakpoint());\r\n };\r\n\r\n window.addEventListener(\"resize\", handleResize);\r\n\r\n return () => {\r\n window.removeEventListener(\"resize\", handleResize);\r\n };\r\n }, []);\r\n\r\n // Responsive layout\r\n const isSmallScreen = breakpoint === \"xs\" || breakpoint === \"sm\";\r\n\r\n return (\r\n <>\r\n \r\n \r\n {controlOption.map((item: any, index) => {\r\n if (item.options) {\r\n return (\r\n <>\r\n \r\n \r\n {item.options.map((option: any) => (\r\n \r\n ))}\r\n \r\n \r\n );\r\n } else {\r\n return (\r\n \r\n );\r\n }\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n Conditions\r\n {\r\n console.log(val);\r\n\r\n if (!val || val.length < 1) {\r\n return Promise.reject(new Error(\"At least 1 condition\"));\r\n }\r\n },\r\n },\r\n ]}\r\n >\r\n {(fields, { add, remove }, { errors }) => {\r\n return (\r\n <>\r\n {fields.map(({ key, name, ...restField }, idx) => (\r\n \r\n \r\n {\r\n setSelectedDataIdx(idx);\r\n }}\r\n />\r\n \r\n \r\n