{"version":3,"sources":["components/W2X/W29/W29F2088/W29F2088.js","components/W2X/W29/W29F2080/W29F2080.js","components/W2X/W29/W29F2081/W29F2081.js","components/W2X/W29/W29F2082/W29F2082.js","components/W2X/W29/W29F2100/W29F2100.js","components/W2X/W29/W29F2100/W29F2100PopupDetail.js","components/W2X/W29/W29F2085/W29F2085.js","components/W2X/W29/W29F2086/W29F2086.js","components/W2X/W29/W29F2100/group_view.svg","components/W2X/W29/W29F2100/group_view_hover.svg"],"names":["W29F2088","props","location","_useState","useState","_useState2","_slicedToArray","iPermission","setIPermission","_useState3","_useState4","dataForm","setDataForm","_useState5","_useState6","loading","setLoading","_useState7","_useState8","loadingCboEmployees","setLoadingCboEmployees","_useState9","rows","total","_useState10","dataCboEmployees","setDataCboEmployees","_useState11","ApprovalStatus","EmployeeID","DateFrom","DateTo","_useState12","filter","setFilter","_useState13","_Config$profile$UserI","_Config$profile","_filter$ApprovalStatu","_filter$EmployeeID","_filter$DateFrom","_filter$DateTo","UserID","Config","profile","_useState14","dataFilter","setDataFilter","toolFilter","useRef","approvalRef","dispatch","useDispatch","dataCboStatus","useSelector","state","_state$approvals$getC","_state$approvals","approvals","getCboStatus","paramFilterCboEmployees","skip","limit","search","useEffect","generalActions","isPer","_location$state$vouch","_location$state","VoucherID","voucher_id","loadFormInfo","dt","current","showPopup","loadCboEmployees","isReset","param","_objectSpread","Type","FormID","Language","language","err","data","popup","show","_data$rows","_data$total","length","concat","onLoadCboFilter","params","approvalActions","error","loadCboStatus","filterChange","key","_data$value","_data$value$","_data$value2","_data$value$2","_data$value3","_defineProperty","value","onSearch","close","voucherID","cb","_Config$getDivisionID","_Config$profile$UserI2","_Config$profile2","_Config$language","DivisionID","getDivisionID","_err$message","msg","message","lang","React","createElement","Fragment","ActionToolbar","title","Approvals","ref","parentProps","singleClick","isActionPermission","filterRender","Filter","isUseDDCore","dropdownProps","placeholder","showHeader","openOnFieldClick","onOpenLoaded","renderFilter","DateRangePicker","clearAble","controls","label","onChange","e","returnFormat","viewType","Dropdown","valueExpr","keyExpr","displayExpr","dataSource","allowSearch","onInput","_e$target$value","_e$target","target","onLoadMore","_e$skip","_e$limit","style","display","justifyContent","Button","text","color","onClick","startIcon","formInfoRender","_data$AttendanceDate","_data$Reason","_data$Reason2","_data$Note","_data$Note2","_data$AbsentType","Row","Col","xs","sm","md","lg","DatePicker","readOnly","required","displayFormat","AttendanceDate","Tooltip","Reason","width","TextInput","Note","Accordion","expand","AccordionSummary","AccordionDetails","GridContainer","AbsentType","typePaging","pagerFullScreen","showBorders","showColumnLines","showRowLines","hoverStateEnabled","height","marginTop","border","Column","dataField","caption","dataType","format","onSelectionChanged","_regeneratorRuntime","exports","Op","Object","prototype","hasOwn","hasOwnProperty","defineProperty","obj","desc","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","enumerable","configurable","writable","wrap","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","create","context","Context","makeInvokeMethod","tryCatch","fn","arg","type","call","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","method","_invoke","AsyncIterator","PromiseImpl","previousPromise","callInvokeWithMethodAndArg","resolve","reject","invoke","record","result","__await","then","unwrapped","Error","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","done","methodName","undefined","return","TypeError","info","resultName","next","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","i","displayName","isGeneratorFunction","genFun","ctor","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","iter","keys","val","object","reverse","pop","skipTempReset","prev","charAt","slice","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","catch","thrown","delegateYield","connect","bindActionCreators","w29F2080Actions","W29F2080Actions","colors","useTheme","dataDropdownOperator","id","operator","dataGrid","setDataGrid","setPermission","mode","TransID","AppStatusID","dataPopup","setDataPopup","Employee","ShiftID","ShiftName","LateMinute","LateMinuteOP","EarlyMinute","EarlyMinuteOP","InLateMinutes","InLateMinutesOP","OutEarlyMinutes","OutEarlyMinutesOP","dataCboAppStatus","setDataCboAppStatus","dataCboShift","setDataCboShift","_useState15","_useState16","_useState17","_useState18","loadingGrid","setLoadingGrid","_useState19","_useState20","rangeDate","setRangeDate","_useState21","_useState22","showW84F3005Popup","setShowW84F3005Popup","_useState23","_useState24","showW29F2081Popup","setShowW29F2081Popup","filterCboEmployees","strSearch","filterGrid","refGridContainer","w84F3005PopupData","HostID","getCboEmployees","getOperator","find","item","loadGrid","_dataFilter$AppStatus","_getOperator","String","getDataGrid","errors","_ref","_asyncToGenerator","_callee","_context","getPermission","apply","arguments","loadPermission","callChildForm","onAction","setData","onLoadDataFilter","getCboAppStatus","loadCboAppStatus","getCboShifts","handleChange","_ref2","_e$value","dateFrom","Array","isArray","dateTo","renderButtonAction","_e$row","row","IsHideCancel","GridActionBar","className","ButtonIcon","circular","viewBox","onHistoryApproval","disabled","onEdit","_refGridContainer$cur","_refGridContainer$cur2","instance","option","indx","getRowIndexByKey","deleteRow","Status","notify","onDelete","onCancel","_e$data","_e$data$TransID","_e$data$ApprovalLevel","ApprovalLevel","_e$data$AttendanceDat","convertDate","Message","FormGroup","textTransform","W84F3005","open","onClose","W29F2081","isReload","onCloseModal","searchDelayTime","MoneyInput","allowZero","disabledNegative","reference","totalItems","noDataText","onDbCellClick","rowAlternationEnabled","itemPerPage","skipPerPage","onChangePage","page","onChangePerPage","perPage","editing","texts","confirmDeleteMessage","alignment","allowEditing","cellRender","visible","isMobile","_data$EmployeeID","_user$EmployeeID","_user$EmployeeName","_user$DepartmentName","_user$ProjectName","_user$DutyName","_Config$convertDate","_user$DateJoined","_info","user","getUser","userPictureURL","UserPictureURL","EmployeeName","DepartmentName","ProjectName","DutyName","DateJoined","Avatar","src","indexOf","getCDNPath","hoverAble","require","Typography","pumpkin5","violet5","fixed","fixedPosition","useStyles","makeStyles","theme","customRequire","warning","marginRight","customLabel","maxWidth","txtShiftName","whiteSpace","breakpoints","down","_dataCboEmployees$tot","_dataForm$LateMinute","_dataForm$EarlyMinute","_dataForm$InLateMinut","_dataForm$OutEarlyMin","classes","_ref$mode","errorHelperText","_setErrorHelperText","dataOldAttachments","setDataOldAttachments","isModeView","setIsModeView","LateTimeIn","EarLyTimeOut","InLateTimeIn","OutEarlyTimeOut","time","lateTimeIn","earLyTimeOut","inLateTimeIn","outEarlyTimeOut","isChanged","isModeEdit","isChangeAttendanceDate","attachments","deletedFile","loadForm","Mode","w29F2081Actions","getDataForm","_data$0$EmployeeID","_data$","_data$0$ShiftID","_data$2","_data$0$ShiftName","_data$3","_data$0$AttendanceDat","_data$4","_data$0$LateMinute","_data$5","_data$0$EarlyMinute","_data$6","_data$0$InLateMinutes","_data$7","_data$0$OutEarlyMinut","_data$8","_data$0$Reason","_data$9","_data$0$Note","_data$10","setDataShift","_data$13","_data$14","_data$15","_data$16","_data$0$ShiftID2","_data$17","_data$0$ShiftName2","_data$18","_data$19","_data$20","_data$21","_data$22","_data$0$LateTimeIn","_data$23","_data$0$EarLyTimeOut","_data$24","_data$0$InLateTimeIn","_data$25","_data$0$OutEarlyTimeO","_data$26","setTime","loadAttachments","KeyID","TableName","getAttachmentsByTransID","getHREmployeeID","_dataForm$Employee","OTFrom","OTTo","getShift","_data$11","_data$12","loadShift","_time$current","_time$current$lateTim","_time$current2","_time$current3","_time$current$earLyTi","_time$current4","_time$current5","_time$current$inLateT","_time$current6","_time$current7","_time$current$outEarl","_time$current8","nameOperator","minute","moment","isValid","setStateErrorText","objValue","setErrorHelperText","_getAttachments","file","_file$data","dataFile","paths","listAttachments","helpers","getFileInfomations","arrAttachment","att","URL","url","FileName","fileName","FileSize","fileSize","FileExt","split","onClosePopup","checkTime","onSave","_ref3","_dataCboEmployees$row","_dataForm$Employee2","_employeeInfo$Employe","_dataForm$AttendanceD","_dataForm$LateTimeIn","_dataForm$EarLyTimeOu","_dataForm$InLateTimeI","_dataForm$OutEarlyTim","_dataForm$ShiftID","_dataForm$Reason","_dataForm$Note","validateRules","validateForm","dataResUploadFile","arrAttachments","employeeInfo","rules","MForm","formValidation","files","_uploadFile","CDN","uploadFileSync","uploadFile","EarlyTimeOut","JSON","stringify","save","MsgAsk","path","removeFile","errorAttendanceDate","checkLateTimeIn","checkEarLyTimeOut","checkInLateTimeIn","checkOutEarlyTimeOut","Modal","pressESCToClose","moveable","dragAnyWhere","moveOutScreen","ModalHeader","ModalBody","iconExpr","prefix","actionIconAt","Label","decimalDigit","endIcon","size","padding","maxRows","multiline","variant","margin","Attachment","allNewAttached","removedAttached","_toConsumableArray","_arrRemove","map","d","AttachmentID","dataNew","onChangeAttachments","ModalFooter","defaultProps","compose","W29F2081Actions","customLabelText","marginBottom","general","ApprovalActions","setVoucherID","setDateFrom","setDateTo","employee","setDateEmployee","appStatusID","setAppStatusID","selectedRowKey","userPictureUrl","userName","LabelText","fullWidth","allowPadding","Input","disableUnderline","getObjectValue","inputProps","endAdornment","InputAdornment","position","Cancel","max","min","renderSelectedItem","getFormInfo","onDrawerClosed","disableEscapeKeyDown","W29F2100","_React$Component","_inherits","_super","_createSuper","_this","_classCallCheck","toggleWeekends","setState","calendar","calendarWeekends","goPrevMonth","calendarApi","_this$state","cboPeriod","Period","MinDate","checkCbMin","currentMonth","goPrev","calendarComponentRef","getApi","currentDataManager","currentDate","getMonth","Date","viewTitle","disabledLeft","disabledRight","PeriodTime","goNextMonth","_callee2","_this$state2","MaxDate","checkCbMax","goNext","_context2","getInfo","mousedown","isDown","startX","pageX","el","offsetLeft","scrollLeft","cursor","userSelect","mouseleave","removeProperty","mouseup","mousemove","preventDefault","walk","componentDidMount","_callee3","_context3","loadDefaultEmployee","loadCboPeriod","loadNotes","addEventListener","loadDateByTrans","TranMonth","TranYear","getDateByTrans","loadMonthPayroll","loadPeriod","getCboPeriod","_TranMonth","getHRTransMonth","_TranYear","getHRTransYear","Number","_callee4","_context4","arrPer","iPermissions","per","IsPermission","W29F2101","_callee5","_this$getInfo","loadDefault","_context5","employees","loadEmployees","minMaxDate","w29F2100Actions","getMonthPayroll","temp","groupData","_","groupBy","_loop","start","attArr","AttLeaType","Amount","join","leaveArr","leave","extendedProps","dateStr","reduce","a","b","_this$state3","checkMax","checkMin","calendarEvents","totalAtt","totalLeave","dateClick","showW29F2100","getNote","dataNote","_setemployees","isEmpty","handleDateClick","document","querySelector","date","clicked","clicking","img","classList","remove","dataCboProjects","disableCboEmployee","createRef","calendarLoading","_createClass","_this2","this","removeEventListener","_this3","_this$state4","_this$props","disabledCboEmployee","W29F2100PopupDetail","Combo","Employees","acceptCustomValue","subTextExpr","stylingMode","shrink","isHover","onValueChanged","onInputChanged","titleNumber","minWidth","overflow","FullCalendar","timeZone","headerToolbar","titleFormat","year","month","locale","initialDate","eventContent","_event$extendedProps","event","toPlainObject","textAlign","top","dayCellDidMount","evt","dateTop","closest","mainContainer","setAttribute","append","eventDidMount","tdDay","tdDayNumber","tdDayEvent","bgColorByWorkDayType","WorkDayType","ColorCode","bgColor","backgroundColor","newEL","palette","getContrastText","onclick","add","parent","findNewEL","isNull","AmountType","appendChild","eventWillUnmount","firstDay","visibleRange","end","plugins","dayGridPlugin","interactionPlugin","dayHeaderFormat","weekday","displayEventEnd","weekends","events","LoadPanel","my","of","showIndicator","shading","showPane","flexDirection","IconButton","aria-label","divIcon","Icons","index","ColorCodeNote","fontSize","divText","WorkDayTypeName","Component","withStyles","divHeadContainer","divCombo","divEnd","cbEmployees","fontWeight","divNote","paddingLeft","paddingRight","lineHeight","withTheme","_React$PureComponent","arrInfo","arrShift","dataDetailWorkDay","indexTab","checkIsNull","str","loadDetail","loadDetailWorkDay","getDetailWorkday","loadData","TotalOriNormal","TotalLeave","AttendanceCardNo","shifts","TimeWork","DateOn1","TimeOn1","DateOff1","TimeOff1","DateOn2","TimeOn2","DateOff2","TimeOff2","DateOn3","TimeOn3","DateOff3","TimeOff3","DateOn4","TimeOn4","DateOff4","TimeOff4","DateOn5","TimeOn5","DateOff5","TimeOff5","NormalHours","OTHours","Time1","Time2","Time3","Time4","Time5","totalRef","prevProps","_this$props2","Drawer","drawer","paper","drawerPaper","anchor","ModalProps","BackdropProps","invisible","CloseIcon","bodyContainer","Tabs","indicatorColor","textColor","Tab","TabContent","tabContent","activeKey","disableSwipe","lazyLoading","TabPanel","textBold","textTitle","idx","isUndefined","container","PureComponent","_drawer","_drawerPaper","alignItems","closeButton","alignSelf","maxHeight","paddingTop","drawerHeader","spacing","mixins","toolbar","dateInfo","truncatedText","textOverflow","w29F2085Actions","W29F2085Actions","paging","setPaging","isLoadingDataGrid","setLoadingDataGrid","isLoadingCbAppStatus","setLoadingCbAppStatus","setIsPermission","isShowing","showW29F2086","setShowW29F2086","transID","showW84F3005","setShowW84F3005","filters","setFilters","strFiltering","setStrFiltering","omitNullEmptyObj","mapValues","toString","omitBy","loadDataGrid","get","onOpenW29F2086","onFilterChange","filtersValue","onFiltering","renderActions","getCreateUserID","userID","getAppStatusID","isDisabledView","isDisabledDelete","isDisabledCancel","direction","_data$TransID","attendanceDate","W29F2086","iPermissionW29F2085","showColumnHeaders","getHeightGrid","onDbRowClick","dataEmployee","UserImage","UserName","descContent","dataInfo","ApprovalNote","TransTypeID","isDesContent","includes","alignMode","forceDirection","status","rs","_initDataForm","datForm","dataGridEmployee","setDataGridEmployee","setErrors","isLoadingForm","setLoadingForm","isLoadingGrid","isLoadingAttachment","setLoadingAttachment","isShowModalEmployeeChosen","setShowModalEmployeeChosen","filterGridValue","setFilterGridValue","isExpand","setIsExpand","editting","selectedRange","filterColIndx","timer","loadMaster","w29f2086Actions","deleteD09T6668","HREmployeeID","onChooseAttendanDate","_datForm$TransID","getForm","_result$0$AttendanceD","_result$","_result$2","_result$0$TransID","_result$3","_result$0$Reason","_result$4","_result$0$Note","_result$5","_datForm$TransID2","_i$IsUsed","IsUsed","_datForm$TransID3","_dataForm$Note2","_dataForm$Reason2","loadChooseEmployee","_i$IsUsed3","_removeCDN","dataT","validateMasterRules","dtGrid","parse","saveData","_datForm$TransID4","_dataForm$Reason3","_dataForm$Note3","Data","clearTimeout","setTimeout","renderHeaderColumns","HeadClick","dataHeaderCell","allowClick","conditionCopy","eChild","renderAction","saveEditData","onDeleteRow","replace","component","calculateCellIsUsed","isDisable","every","W09F6000","loadParams","dataDefaults","onChosen","uniqBy","_i$IsUsed2","expanded","onExpand","onCollapse","stopPropagation","columnAutoWidth","overflowX","refreshMode","allowUpdating","onEditorPreparing","parentType","updateValueTimeout","editorOptions","filterRow","showOperationChooser","filterPanel","sorting","filterBuilderPopup","onInitialized","dispose","element","onCellSelectionChanged","rowType","onRowUpdated","IsUpdated","onRowValidating","filterValue","onCellPrepared","separator","onFilterGrid","column","columnIndex","f","trim","isClear","fil","itemFilter","getFilterGrid","allowSorting","trueText","falseText","headerCellRender","calculateCellValue","calculateFilterExpression","selectedFilterOperation","allowCopying","allowPasting","maxFile","maxSize","multiple","unitSize","uploadErrorInfo","existingFile","fileType","W29F2086Actions","module"],"mappings":"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","file":"static/js/main~7f3ba665.43bcb127.chunk.js","sourcesContent":["/**\r\n * @Copyright 2021 @DigiNet\r\n * @Author XUANLOC\r\n * @Create 25/10/2021\r\n * @Example\r\n */\r\n\r\nimport { Column } from 'devextreme-react/data-grid';\r\nimport {\r\n Accordion,\r\n AccordionDetails,\r\n AccordionSummary,\r\n Button,\r\n DatePicker,\r\n DateRangePicker,\r\n Dropdown,\r\n TextInput,\r\n Tooltip,\r\n} from 'diginet-core-ui/components';\r\nimport React, { useEffect, useRef, useState } from 'react';\r\nimport { Col, Row } from 'react-bootstrap';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport Config from '../../../../config';\r\nimport * as approvalActions from '../../../../redux/approvals/approvals_actions';\r\nimport * as generalActions from '../../../../redux/general/general_actions';\r\nimport Approvals from '../../../approvals/approvals';\r\nimport ActionToolbar from '../../../common/toolbar/action-toolbar';\r\nimport Filter from '../../../filter/filter';\r\nimport GridContainer from '../../../grid-container/grid-container';\r\n\r\nconst W29F2088 = (props) => {\r\n const { location } = props;\r\n\r\n const [iPermission, setIPermission] = useState(0);\r\n const [dataForm, setDataForm] = useState({});\r\n const [loading, setLoading] = useState(false);\r\n const [loadingCboEmployees, setLoadingCboEmployees] = useState(false);\r\n const [dataCboEmployees, setDataCboEmployees] = useState({\r\n rows: [],\r\n total: 0,\r\n });\r\n const [filter, setFilter] = useState(() => ({\r\n ApprovalStatus: null,\r\n EmployeeID: null,\r\n DateFrom: null,\r\n DateTo: null,\r\n }));\r\n const [dataFilter, setDataFilter] = useState(() => {\r\n return {\r\n UserID: Config?.profile?.UserID ?? '',\r\n ApprovalStatus: filter?.ApprovalStatus ?? null,\r\n EmployeeID: filter?.EmployeeID ?? '',\r\n DateFrom: filter?.DateFrom ?? null,\r\n DateTo: filter?.DateTo ?? null,\r\n };\r\n });\r\n\r\n const toolFilter = useRef(null);\r\n const approvalRef = useRef(null);\r\n\r\n const dispatch = useDispatch();\r\n const dataCboStatus = useSelector((state) => state?.approvals?.getCboStatus ?? []);\r\n\r\n const paramFilterCboEmployees = {\r\n skip: 0,\r\n limit: 10,\r\n search: '',\r\n };\r\n\r\n const loadPermission = () => {\r\n dispatch(\r\n generalActions.getPermission('W29F2088', (isPer) => {\r\n setIPermission(isPer);\r\n })\r\n );\r\n };\r\n\r\n useEffect(() => {\r\n loadPermission();\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, []);\r\n\r\n useEffect(() => {\r\n const VoucherID = location?.state?.voucher_id ?? null;\r\n if (VoucherID) {\r\n loadFormInfo(VoucherID, (dt) => {\r\n dt.VoucherID = VoucherID;\r\n approvalRef.current && approvalRef.current.showPopup(dt);\r\n });\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [location]);\r\n\r\n const loadCboStatus = () => {\r\n const params = {\r\n FormID: 'STANDARD',\r\n Language: Config.language || '84',\r\n };\r\n dispatch(\r\n approvalActions.getCboStatus(params, (error) => {\r\n if (error) {\r\n Config.popup.show('ERROR', error);\r\n return false;\r\n }\r\n })\r\n );\r\n };\r\n\r\n const loadCboEmployees = (isReset) => {\r\n const param = {\r\n Type: 'EmployeeID',\r\n FormID: 'W29F2088',\r\n Language: Config.language || '84',\r\n ...paramFilterCboEmployees,\r\n };\r\n setLoadingCboEmployees(true);\r\n dispatch(\r\n generalActions.getCboEmployees(param, (err, data) => {\r\n setLoadingCboEmployees(false);\r\n if (err) return Config.popup.show('ERROR', err);\r\n if (data) {\r\n const rows = data?.rows ?? data;\r\n const total = data?.total ?? data?.length;\r\n setDataCboEmployees({\r\n rows: isReset ? rows : dataCboEmployees.rows.concat(rows),\r\n total,\r\n });\r\n }\r\n })\r\n );\r\n };\r\n\r\n const onLoadCboFilter = () => {\r\n loadCboStatus();\r\n loadCboEmployees();\r\n };\r\n\r\n const renderFilter = () => {\r\n const { EmployeeID, ApprovalStatus, DateFrom, DateTo } = filter;\r\n return (\r\n {\r\n return (\r\n <>\r\n filterChange('Date', e)}\r\n placeholder={`${Config.lang('Tu_ngay')} - ${Config.lang('Den_ngay')}`}\r\n returnFormat={'YYYY-MM-DD'}\r\n viewType={'outlined'}\r\n />\r\n filterChange('ApprovalStatus', e)}\r\n dataSource={dataCboStatus}\r\n value={ApprovalStatus ?? null}\r\n viewType={'outlined'}\r\n />\r\n filterChange('EmployeeID', e)}\r\n value={EmployeeID ?? null}\r\n viewType={'outlined'}\r\n loading={loadingCboEmployees}\r\n onInput={(e) => {\r\n paramFilterCboEmployees.search = e?.target?.value ?? '';\r\n paramFilterCboEmployees.skip = 0;\r\n loadCboEmployees(true);\r\n }}\r\n onLoadMore={(e) => {\r\n paramFilterCboEmployees.skip = e?.skip ?? 0;\r\n paramFilterCboEmployees.limit = e?.limit ?? 10;\r\n loadCboEmployees();\r\n }}\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 filterChange = (key, data) => {\r\n switch (key) {\r\n case 'EmployeeID':\r\n case 'ApprovalStatus':\r\n setFilter({ ...filter, [key]: data?.value ?? null });\r\n break;\r\n case 'Date':\r\n setFilter({ ...filter, DateFrom: data?.value?.[0] ?? null, DateTo: data?.value?.[1] ?? null });\r\n break;\r\n default:\r\n break;\r\n }\r\n };\r\n\r\n const onSearch = () => {\r\n setDataFilter({ ...dataFilter, ...filter });\r\n if (toolFilter.current) toolFilter.current.close();\r\n };\r\n\r\n const onSelectionChanged = (e) => {\r\n if (!e) return false;\r\n loadFormInfo(e.VoucherID);\r\n };\r\n\r\n const loadFormInfo = (voucherID, cb) => {\r\n const params = {\r\n DivisionID: Config.getDivisionID() ?? '',\r\n FormID: 'W29F2088',\r\n UserID: Config?.profile?.UserID ?? '',\r\n Language: Config?.language ?? '84',\r\n VoucherID: voucherID ?? '',\r\n };\r\n setLoading(true);\r\n dispatch(\r\n approvalActions.getFormInfo(params, (err, dt) => {\r\n setLoading(false);\r\n if (err) {\r\n const msg = err?.message ?? Config.lang('Loi_chua_xac_dinh');\r\n return Config.popup.show('ERROR', msg);\r\n }\r\n if (dt) {\r\n setDataForm(dt);\r\n cb && cb(dt);\r\n }\r\n })\r\n );\r\n };\r\n\r\n const renderFormInfo = (data) => {\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 {Config.lang('Danh_sach_nhan_vien')}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \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 \r\n = 2}\r\n filterRender={renderFilter}\r\n formInfoRender={renderFormInfo}\r\n onSelectionChanged={onSelectionChanged}\r\n />\r\n \r\n );\r\n};\r\n\r\nexport default W29F2088;\r\n","/**\r\n * @copyright 2019 @ DigiNet\r\n * @author NAMDANG\r\n * @create 9/17/2021\r\n * @Example\r\n */\r\n\r\nimport React, {useState, useEffect, useRef} from \"react\";\r\nimport {FormGroup, Row, Col} from \"react-bootstrap\";\r\nimport ActionToolbar from \"../../../common/toolbar/action-toolbar\";\r\nimport {connect} from \"react-redux\";\r\nimport {bindActionCreators} from \"redux\";\r\nimport Config from \"../../../../config\";\r\nimport * as generalActions from \"../../../../redux/general/general_actions\";\r\nimport Filter from \"../../../filter/filter\";\r\nimport * as W29F2080Actions from \"../../../../redux/W2X/W29F2080/W29F2080_actions.js\";\r\nimport GridContainer from \"../../../grid-container/grid-container\";\r\nimport {Column} from \"devextreme-react/data-grid\";\r\nimport GridActionBar from \"../../../grid-container/grid-actionbar\";\r\nimport {\r\n Avatar,\r\n Button,\r\n ButtonIcon,\r\n DateRangePicker,\r\n Dropdown,\r\n MoneyInput,\r\n Typography\r\n} from 'diginet-core-ui/components';\r\nimport Status from \"../../../common/status/status\";\r\nimport W84F3005 from \"../../../W8X/W84/W84F3005/W84F3005\";\r\nimport W29F2081 from \"../W29F2081/W29F2081\";\r\nimport { useTheme } from \"diginet-core-ui/theme\";\r\n\r\nconst W29F2080 = (props) => {\r\n const { colors } = useTheme();\r\n const _initDataSource = {\r\n total: 0,\r\n rows: []\r\n };\r\n\r\n const _initFilter = {\r\n skip: 0,\r\n limit: 20\r\n };\r\n\r\n const dataFilterGrid = {\r\n DateFrom: null,\r\n DateTo: null,\r\n Employee: \"\",\r\n ShiftID: \"\",\r\n ShiftName: \"\",\r\n AppStatusID: null,\r\n LateMinute: null,\r\n LateMinuteOP: \"\",\r\n EarlyMinute: null,\r\n EarlyMinuteOP: \"\",\r\n InLateMinutes: \"\",\r\n InLateMinutesOP: \"\",\r\n OutEarlyMinutes: \"\",\r\n OutEarlyMinutesOP: \"\",\r\n };\r\n\r\n const _w84F3005PopupData = {\r\n TransID: null\r\n };\r\n\r\n const _dataPopup = {\r\n mode: \"\",\r\n TransID: \"\",\r\n AppStatusID: false,\r\n };\r\n\r\n const dataDropdownOperator = [\r\n {id: 1, name: Config.lang(\"Bang1\"), operator: \"=\"},\r\n {id: 2, name: Config.lang(\"Lon_hon_hoac_bang\"), operator: \">=\"},\r\n {id: 3, name: Config.lang(\"Nho_hon_hoac_bang1\"), operator: \"<=\"},\r\n ];\r\n const [dataGrid,setDataGrid] = useState(_initDataSource);\r\n const [dataCboEmployees, setDataCboEmployees] = useState({rows: [], total: 0});\r\n const [iPermission,setPermission] = useState(0);\r\n const [dataPopup, setDataPopup] = useState(_dataPopup);\r\n const [dataFilter, setDataFilter] = useState(dataFilterGrid);\r\n const [dataCboAppStatus, setDataCboAppStatus] = useState([]);\r\n const [dataCboShift, setDataCboShift] = useState([]);\r\n const [loading, setLoading] = useState(false);\r\n const [loadingGrid, setLoadingGrid] = useState(false);\r\n const [rangeDate, setRangeDate] = useState([]);\r\n const [showW84F3005Popup, setShowW84F3005Popup] = useState(false);\r\n const [showW29F2081Popup, setShowW29F2081Popup] = useState(false);\r\n const filterCboEmployees = useRef({skip: 0, limit: 20, strSearch: \"\"});\r\n const filterGrid = useRef(_initFilter);\r\n const refGridContainer = useRef(null);\r\n const w84F3005PopupData = useRef(_w84F3005PopupData);\r\n\r\n const loadCboEmployees = (isReset) => {\r\n const param = {\r\n Type: \"EmployeeID\",\r\n FormID: \"W29F2080\",\r\n HostID: \"\",\r\n Language: Config.language || \"84\",\r\n skip: filterCboEmployees.current.skip,\r\n limit: filterCboEmployees.current.limit,\r\n search: filterCboEmployees.current.strSearch\r\n };\r\n setLoading(true);\r\n props.generalActions.getCboEmployees(param, (error, data) => {\r\n setLoading(false);\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (data) {\r\n const rows = data?.rows || data;\r\n const total = data?.total || data.length;\r\n setDataCboEmployees({\r\n rows: isReset ? rows : dataCboEmployees.rows.concat(rows),\r\n total: total,\r\n })\r\n }\r\n });\r\n };\r\n\r\n const loadCboAppStatus = () => {\r\n const params = {\r\n Language: Config.language || 84\r\n };\r\n setLoading(true);\r\n props.w29F2080Actions.getCboAppStatus(params, (errors, data) => {\r\n setLoading(false);\r\n if (errors) {\r\n Config.popup.show('ERROR', errors);\r\n return false;\r\n }\r\n setDataCboAppStatus(data || []);\r\n });\r\n };\r\n\r\n const loadCboShift = () => {\r\n setLoading(true);\r\n props.w29F2080Actions.getCboShifts((errors, data) => {\r\n setLoading(false);\r\n if (errors) {\r\n Config.popup.show('ERROR', errors);\r\n return false;\r\n }\r\n setDataCboShift(data || []);\r\n });\r\n };\r\n\r\n const getOperator = (data) => {\r\n let text = dataDropdownOperator.find(item => item.id === data);\r\n return text?.operator || \"\";\r\n };\r\n\r\n const loadGrid = () => {\r\n const params = {\r\n FormID : \"W29F2080\",\r\n Language: Config.language || 84,\r\n DateFrom: dataFilter?.DateFrom || null,\r\n DateTo: dataFilter?.DateTo || null,\r\n AppStatusID: String(dataFilter?.AppStatusID ?? \"\"),\r\n ShiftID: dataFilter?.ShiftID || \"\",\r\n LateMinute: dataFilter?.LateMinute || 0,\r\n LateMinuteOP: getOperator(dataFilter?.LateMinuteOP) ?? \"\",\r\n EarlyMinute: dataFilter?.EarlyMinute || 0,\r\n EarlyMinuteOP: getOperator(dataFilter?.EarlyMinuteOP) || \"\",\r\n InLateMinutes: dataFilter?.InLateMinutes || 0,\r\n InLateMinutesOP: getOperator(dataFilter?.InLateMinutesOP) || \"\",\r\n OutEarlyMinutes: dataFilter?.OutEarlyMinutes || 0,\r\n OutEarlyMinutesOP: getOperator(dataFilter?.OutEarlyMinutesOP) || \"\",\r\n EmployeeID: dataFilter?.Employee,\r\n skip: filterGrid.current.skip,\r\n limit: filterGrid.current.limit,\r\n };\r\n setLoadingGrid(true);\r\n props.w29F2080Actions.getDataGrid(params, (errors, data) => {\r\n setLoadingGrid(false);\r\n if (errors) {\r\n Config.popup.show('ERROR', errors);\r\n return false;\r\n }\r\n if(data) {\r\n const rows = data?.rows || data;\r\n const total = data?.total || data.length;\r\n setDataGrid({\r\n rows,\r\n total\r\n })\r\n }\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n const loadPermission = async () => {\r\n await props.generalActions.getPermission(\"W29F2080\", (isPer) => {\r\n setPermission(isPer);\r\n })\r\n };\r\n loadPermission();\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n },[]);\r\n\r\n useEffect(() => {\r\n if(iPermission) {\r\n loadGrid();\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n },[iPermission]);\r\n\r\n useEffect(() => {\r\n Config.callChildForm({\r\n FormID: \"W29F2080\",\r\n keyExpr: \"TransID\",\r\n data: dataGrid.rows || [],\r\n onAction: (e, data) => {\r\n if (data && data.TransID) {\r\n setDataPopup({\r\n mode: \"view\",\r\n TransID: data?.TransID || \"\",\r\n AppStatusID: data?.AppStatusID !== 0\r\n });\r\n setShowW29F2081Popup(true)\r\n }\r\n }\r\n }, props);\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n });\r\n\r\n const setData = (obj) => {\r\n setDataFilter({...dataFilter,...obj})\r\n };\r\n\r\n const onHistoryApproval = (e, data = {}) => {\r\n w84F3005PopupData.current.TransID = data.TransID;\r\n setShowW84F3005Popup(true);\r\n };\r\n\r\n const onLoadDataFilter = () => {\r\n loadCboEmployees();\r\n loadCboAppStatus();\r\n loadCboShift();\r\n };\r\n\r\n const handleChange = (key,e) => {\r\n if(!key ) return false;\r\n const value = e?.value ?? e?.target?.value ?? \"\";\r\n switch (key) {\r\n case \"RangePicker\":\r\n const dateFrom = Array.isArray(value) ? value[0] : value;\r\n const dateTo = Array.isArray(value) ? value[1] : value;\r\n setData({\r\n DateFrom: dateFrom,\r\n DateTo: dateTo\r\n });\r\n setRangeDate([dateFrom, dateTo]);\r\n break;\r\n case \"Employee\":\r\n setData({Employee: value});\r\n break;\r\n case \"ShiftID\":\r\n setData({ShiftID: value});\r\n break;\r\n case \"AppStatusID\":\r\n setData({AppStatusID: value});\r\n break;\r\n case \"LateMinute\":\r\n setData({LateMinute: value});\r\n break;\r\n case \"LateMinuteOP\":\r\n setData({LateMinuteOP: value});\r\n break;\r\n case \"EarlyMinute\":\r\n setData({EarlyMinute: value});\r\n break;\r\n case \"EarlyMinuteOP\":\r\n setData({EarlyMinuteOP: value});\r\n break;\r\n case \"InLateMinutes\":\r\n setData({InLateMinutes: value});\r\n break;\r\n case \"InLateMinutesOP\":\r\n setData({InLateMinutesOP: value});\r\n break;\r\n case \"OutEarlyMinutes\":\r\n setData({OutEarlyMinutes: value});\r\n break;\r\n case \"OutEarlyMinutesOP\":\r\n setData({OutEarlyMinutesOP: value});\r\n break;\r\n default:\r\n break;\r\n }\r\n };\r\n\r\n const onAdd = () => {\r\n setDataPopup({\r\n mode: \"add\"\r\n });\r\n setShowW29F2081Popup(true)\r\n };\r\n\r\n const onEdit = (e) => {\r\n if(!e) return false;\r\n const {data} = e;\r\n setDataPopup({\r\n mode: \"edit\",\r\n TransID: data?.TransID || \"\",\r\n AppStatusID: data?.AppStatusID !== 0\r\n });\r\n setShowW29F2081Popup(true)\r\n };\r\n\r\n const onView = (e) => {\r\n if(!e) return false;\r\n const {data} = e.row;\r\n setDataPopup({\r\n mode: \"view\",\r\n TransID: data?.TransID || \"\",\r\n AppStatusID: data?.AppStatusID !== 0\r\n });\r\n setShowW29F2081Popup(true)\r\n };\r\n\r\n const onDelete = (e) => {\r\n if(!e) return false;\r\n const {data} = e.row;\r\n const params = {\r\n TransID: data?.TransID || \"\"\r\n };\r\n const dataSource = refGridContainer.current?.instance.option(\"dataSource\");\r\n const row = dataSource.find(item => item.TransID === data?.TransID);\r\n const indx = refGridContainer.current?.instance.getRowIndexByKey(row?.TransID);\r\n Config.popup.show('YES_NO',Config.lang(\"Ban_co_chac_chan_xoa\"),\r\n () =>{\r\n props.w29F2080Actions.deleteRow(params, (errors, data) => {\r\n if (errors) {\r\n Config.popup.show('ERROR', errors);\r\n return false;\r\n }\r\n if (data.Status === 0) {\r\n Config.notify.show('success', Config.lang(\"Xoa_thanh_cong\"), 2000);\r\n refGridContainer.current.instance.deleteRow(indx);\r\n }\r\n })\r\n });\r\n };\r\n\r\n const onCloseModal = (isReload) => {\r\n if(isReload) {\r\n loadGrid();\r\n }\r\n setShowW29F2081Popup(false);\r\n };\r\n\r\n const onChangePage = (page) => {\r\n filterGrid.current.skip = page * filterGrid.current.limit;\r\n loadGrid();\r\n };\r\n\r\n const onChangePerPage = (perPage) => {\r\n filterGrid.current.skip = 0;\r\n filterGrid.current.limit = perPage;\r\n loadGrid();\r\n };\r\n\r\n const renderButtonAction = (e) => {\r\n if(!e) return null;\r\n const {\r\n data,\r\n data:{IsHideCancel}\r\n } = e.row;\r\n return (\r\n \r\n
\r\n onHistoryApproval(e, data)}\r\n />\r\n onEdit(e)}\r\n />\r\n onDelete(e)}\r\n />\r\n {!IsHideCancel && \r\n 2) || data?.AppStatusID !== 2}\r\n onClick={() => onCancel(e)}\r\n />\r\n }\r\n
\r\n
\r\n );\r\n };\r\n\r\n const onCancel = (e) => {\r\n if (!e) return;\r\n const { TransID = \"\", ApprovalLevel = null, AttendanceDate = null } = e?.data;\r\n const params = {\r\n TransID,\r\n FormID: \"W29F2080\",\r\n ApprovalLevel,\r\n AttendanceDate: Config.convertDate(AttendanceDate, \"\", \"YYYY-MM-DD\")\r\n };\r\n Config.popup.show(\"YES_NO\", Config.lang(\"Ban_co_muon_huy_phieu_nay?\"), () => {\r\n props.w29F2080Actions.onCancel(params, (err, data) => {\r\n if (err) {\r\n Config.popup.show(\"ERROR\", err);\r\n return false;\r\n } else if(data?.Status === 1) {\r\n Config.popup.show(\"INFO\", data?.Message);\r\n return false;\r\n }\r\n Config.notify.show(\"success\", Config.lang(\"Huy_thanh_cong\"), 3000);\r\n loadGrid();\r\n })\r\n })\r\n };\r\n\r\n const renderTransTypeIDCol = (e) => {\r\n if (!e) return;\r\n let title = \"\";\r\n let color = \"\";\r\n switch (e?.value) {\r\n case \"\":\r\n title = Config.lang(\"Dang_ky_di_tre_ve_som\");\r\n color = colors?.pumpkin5;\r\n break;\r\n case \"cancel\":\r\n title = Config.lang(\"Huy_di_tre_ve_som\");\r\n color = colors?.violet5;\r\n break;\r\n default:\r\n break;\r\n }\r\n return {title};\r\n };\r\n\r\n const renderFilters = () => {\r\n return (\r\n {\r\n return (\r\n <>\r\n \r\n \r\n \r\n handleChange(\"RangePicker\", e)}\r\n placeholder={\"DD/MM/YY - DD/MM/YY\"}\r\n returnFormat={\"YYYY-MM-DD\"}\r\n />\r\n \r\n \r\n \r\n \r\n handleChange(\"Employee\", e)}\r\n dataSource={dataCboEmployees?.rows || []}\r\n total={dataCboEmployees?.total || 0}\r\n skip={filterCboEmployees.current.skip}\r\n limit={filterCboEmployees.current.limit}\r\n value={dataFilter.Employee}\r\n loading={loading}\r\n onInput={(e) => {\r\n filterCboEmployees.current.strSearch = e.target.value;\r\n filterCboEmployees.current.skip = 0;\r\n loadCboEmployees(true);\r\n }}\r\n onLoadMore={(e) => {\r\n filterCboEmployees.current.skip = e.skip;\r\n filterCboEmployees.current.limit = e.limit;\r\n loadCboEmployees();\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n handleChange(\"ShiftID\", e)}\r\n dataSource={dataCboShift}\r\n loading={loading}\r\n value={dataFilter.ShiftID}\r\n />\r\n \r\n \r\n \r\n \r\n handleChange(\"AppStatusID\", e)}\r\n dataSource={dataCboAppStatus}\r\n loading={loading}\r\n value={dataFilter.AppStatusID}\r\n />\r\n \r\n \r\n \r\n \r\n handleChange('LateMinute', e)}\r\n value={dataFilter.LateMinute}\r\n allowZero\r\n disabledNegative\r\n />\r\n \r\n \r\n handleChange(\"LateMinuteOP\", e)}\r\n value={dataFilter.LateMinuteOP}\r\n />\r\n \r\n \r\n\r\n \r\n \r\n handleChange('EarlyMinute', e)}\r\n value={dataFilter.EarlyMinute}\r\n allowZero\r\n disabledNegative\r\n />\r\n \r\n \r\n handleChange(\"EarlyMinuteOP\", e)}\r\n />\r\n \r\n \r\n \r\n \r\n handleChange('InLateMinutes', e)}\r\n value={dataFilter.InLateMinutes}\r\n allowZero\r\n disabledNegative\r\n />\r\n \r\n \r\n handleChange(\"InLateMinutesOP\", e)}\r\n />\r\n \r\n \r\n \r\n \r\n handleChange('OutEarlyMinutes', e)}\r\n value={dataFilter.OutEarlyMinutes}\r\n allowZero\r\n disabledNegative\r\n />\r\n \r\n \r\n handleChange(\"OutEarlyMinutesOP\", 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 const renderStatus = (e) => {\r\n if(!e) return null;\r\n const {data} = e.row;\r\n return ;\r\n };\r\n\r\n const cellRenderEmployee = (e) => {\r\n if(!e) return null;\r\n const {data} = e;\r\n const user = Config.getUser({EmployeeID: data?.EmployeeID ?? \"\"});\r\n const userPictureURL = user?.UserPictureURL || \"\";\r\n const info = {\r\n [Config.lang('Nhan_vien')]: `${user?.EmployeeID ?? \"\"} - ${user?.EmployeeName ?? \"\"}`,\r\n [Config.lang('Phong_ban')]: user?.DepartmentName ?? \"\",\r\n [Config.lang('Du_an')]: user?.ProjectName ?? \"\",\r\n [Config.lang('Chuc_vu')]: user?.DutyName ?? \"\",\r\n [Config.lang('Ngay_vao_lam')]: Config.convertDate(user?.DateJoined ?? \"\", '', 'L') ?? \"\",\r\n };\r\n return (\r\n
\r\n {(userPictureURL) ?\r\n (\r\n \r\n )\r\n : (\r\n \r\n )}\r\n {user?.EmployeeName || \"\"}\r\n
\r\n )\r\n };\r\n\r\n if(!iPermission) return false;\r\n return (\r\n \r\n \r\n \r\n \r\n setShowW84F3005Popup(false)}\r\n FormID=\"W29F2080\" TransID={w84F3005PopupData.current.TransID}/>\r\n {showW29F2081Popup ?\r\n onCloseModal(isReload)} />\r\n : \"\"}\r\n\r\n
{renderFilters()}
\r\n \r\n \r\n \r\n refGridContainer.current = ref}\r\n // use deleteRow Grid Container don't show popup confirm:\r\n style={{ border: \"none\" }}\r\n keyExpr={\"TransID\"}\r\n dataSource={dataGrid.rows || []}\r\n totalItems={dataGrid.total || 0}\r\n showRowLines={true}\r\n showBorders={false}\r\n showColumnLines={false}\r\n noDataText={Config.lang(\"No_data\")}\r\n onDbCellClick={onView}\r\n loading={loadingGrid}\r\n rowAlternationEnabled={false}\r\n hoverStateEnabled={true}\r\n itemPerPage={filterGrid.current.limit}\r\n skipPerPage={filterGrid.current.skip}\r\n typePaging={\"remote\"}\r\n onChangePage={onChangePage}\r\n onChangePerPage={onChangePerPage}\r\n editing={{ texts: { confirmDeleteMessage: \"\" } }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\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 connect(null,\r\n (dispatch) => ({\r\n generalActions: bindActionCreators(generalActions, dispatch),\r\n w29F2080Actions: bindActionCreators(W29F2080Actions, dispatch),\r\n }))(W29F2080);\r\n","/**\r\n * @copyright 2019 @ DigiNet\r\n * @author NAMDANG\r\n * @create 9/17/2021\r\n * @Example\r\n */\r\n\r\nimport React, {useState, useEffect, useRef} from \"react\";\r\nimport { compose, bindActionCreators } from \"redux\";\r\nimport { connect } from \"react-redux\";\r\nimport { Col, Row, FormGroup } from \"react-bootstrap\";\r\nimport { makeStyles } from \"diginet-core-ui/theme\";\r\nimport Config from \"../../../../config\";\r\nimport {MForm} from \"../../../common/form-material\";\r\nimport CDN from \"../../../CDN\";\r\nimport * as W29F2081Actions from \"../../../../redux/W2X/W29F2081/W29F2081_actions\";\r\nimport * as generalActions from \"../../../../redux/general/general_actions\";\r\nimport {\r\n TextInput,\r\n Dropdown,\r\n MoneyInput,\r\n ButtonIcon,\r\n Modal,\r\n ModalHeader,\r\n ModalBody, Typography, ModalFooter, Button, DatePicker, Label, Attachment\r\n} from 'diginet-core-ui/components';\r\nimport moment from \"moment\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nconst useStyles = makeStyles(theme => ({\r\n customRequire: {\r\n color: theme.colors.warning,\r\n marginRight: 90\r\n },\r\n customLabel: {\r\n width: \"100%\",\r\n maxWidth: \"inherit\"\r\n },\r\n txtShiftName: {\r\n marginTop: 35,\r\n whiteSpace: \"pre\",\r\n [theme.breakpoints.down(\"md\")]: {\r\n marginTop: 0\r\n }\r\n },\r\n}));\r\n\r\nconst W29F2081 = (props) => {\r\n const classes = useStyles();\r\n\r\n const _initDataForm = {\r\n Employee : \"\",\r\n AttendanceDate : \"\",\r\n LateMinute: \"\",\r\n LateTimeIn: \"\",\r\n EarlyMinute : \"\",\r\n EarLyTimeOut: \"\",\r\n InLateMinutes: \"\",\r\n InLateTimeIn: \"\",\r\n OutEarlyMinutes: \"\",\r\n OutEarlyTimeOut: \"\",\r\n ShiftID: \"\",\r\n ShiftName: \"\",\r\n Reason: \"\",\r\n Note: \"\",\r\n };\r\n\r\n const {data, open, onClose} = props;\r\n const { mode = \"view\", TransID, AppStatusID } = data || {};\r\n const [dataCboEmployees, setDataCboEmployees] = useState({rows: [], total: 0});\r\n const [errorHelperText, _setErrorHelperText] = useState({});\r\n const [dataOldAttachments, setDataOldAttachments] = useState([]);\r\n const [loading, setLoading] = useState(false);\r\n const [isModeView, setIsModeView] = useState(false);\r\n const [dataForm, setDataForm] = useState(_initDataForm);\r\n const filterCboEmployees = useRef({skip: 0, limit: 20, strSearch: \"\"});\r\n const time = useRef({lateTimeIn: \"\", earLyTimeOut: \"\",inLateTimeIn: \"\", outEarlyTimeOut: \"\"});\r\n const isChanged = useRef(false);\r\n const isModeEdit = useRef(false);\r\n const isChangeAttendanceDate = useRef(false);\r\n const attachments = useRef([]);\r\n const deletedFile = useRef([]);\r\n\r\n const loadCboEmployees = (isReset) => {\r\n const params = {\r\n Type: \"EmployeeID\",\r\n FormID: \"W29F2080\",\r\n HostID: \"\",\r\n Language: Config.language || \"84\",\r\n skip: filterCboEmployees.current.skip,\r\n limit: filterCboEmployees.current.limit,\r\n search: filterCboEmployees.current.strSearch\r\n };\r\n setLoading(true);\r\n props.generalActions.getCboEmployees(params, (error, data) => {\r\n setLoading(false);\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (data) {\r\n const rows = data?.rows || data;\r\n const total = data?.total || data.length;\r\n setDataCboEmployees({\r\n rows: isReset ? rows : dataCboEmployees.rows.concat(rows),\r\n total: total,\r\n })\r\n }\r\n });\r\n };\r\n\r\n const loadForm = () => {\r\n const params = {\r\n FormID: \"W29F2081\",\r\n Language: Config.language || 84,\r\n Mode: 1,\r\n TransID: TransID\r\n };\r\n setLoading(true);\r\n props.w29F2081Actions.getDataForm(params, (errors, data) => {\r\n setLoading(false);\r\n if (errors) {\r\n Config.popup.show('ERROR', errors);\r\n return false;\r\n }\r\n isModeEdit.current = true;\r\n if(data) {\r\n const getUser = Config.getUser({EmployeeID: data?.[0]?.EmployeeID ?? \"\"});\r\n setDataCboEmployees({rows: getUser ? [getUser] : [], total: getUser ? [getUser].length : 0});\r\n setData({\r\n Employee: getUser?.EmployeeID || \"\",\r\n ShiftID: data?.[0]?.ShiftID ?? \"\",\r\n ShiftName: data?.[0]?.ShiftName ?? \"\",\r\n AttendanceDate: data?.[0]?.AttendanceDate ?? \"\",\r\n LateMinute: data?.[0]?.LateMinute ?? \"\",\r\n EarlyMinute: data?.[0]?.EarlyMinute ?? \"\",\r\n InLateMinutes: data?.[0]?.InLateMinutes ?? \"\",\r\n OutEarlyMinutes: data?.[0]?.OutEarlyMinutes ?? \"\",\r\n Reason: data?.[0]?.Reason ?? \"\",\r\n Note: data?.[0]?.Note ?? \"\",\r\n });\r\n }\r\n })\r\n };\r\n\r\n const loadShift = () => {\r\n const params = {\r\n AttendanceDate: dataForm?.AttendanceDate || \"\",\r\n OTFrom: \"\",\r\n OTTo: \"\",\r\n EmployeeID: dataForm?.Employee ?? \"\",\r\n ShiftID: \"\",\r\n Mode: 4,\r\n Language: Config.language || 84\r\n };\r\n setLoading(true);\r\n props.w29F2081Actions.getShift(params, (error, data) => {\r\n setLoading(false);\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if(data?.[0]?.Status === 1) {\r\n let message = data?.[0]?.Message || Config.lang(\"Loi_chua_xac_dinh\");\r\n Config.popup.show('INFO', message);\r\n return false;\r\n } else {\r\n setDataShift(data);\r\n }\r\n });\r\n };\r\n\r\n const setDataShift = (data = []) => {\r\n const lateTimeIn = setTime(data?.[0]?.LateTimeIn, \"add\", dataForm?.LateMinute);\r\n const earLyTimeOut = setTime(data?.[0]?.EarLyTimeOut,\"subtract\", dataForm?.EarlyMinute);\r\n const inLateTimeIn = setTime(data?.[0]?.InLateTimeIn,\"add\", dataForm?.InLateMinutes);\r\n const outEarlyTimeOut = setTime(data?.[0]?.OutEarlyTimeOut,\"subtract\",dataForm?.OutEarlyMinutes);\r\n setData({\r\n ShiftID: data?.[0]?.ShiftID ?? \"\",\r\n ShiftName: data?.[0]?.ShiftName ?? \"\",\r\n LateTimeIn: (isChangeAttendanceDate || isModeEdit.current) ? lateTimeIn : data?.[0]?.LateTimeIn,\r\n EarLyTimeOut: (isChangeAttendanceDate || isModeEdit.current) ? earLyTimeOut : data?.[0]?.EarLyTimeOut,\r\n InLateTimeIn: (isChangeAttendanceDate || isModeEdit.current) ? inLateTimeIn : data?.[0]?.InLateTimeIn,\r\n OutEarlyTimeOut: (isChangeAttendanceDate || isModeEdit.current) ? outEarlyTimeOut : data?.[0]?.OutEarlyTimeOut,\r\n });\r\n time.current.lateTimeIn = data?.[0]?.LateTimeIn ?? \"\";\r\n time.current.earLyTimeOut = data?.[0]?.EarLyTimeOut ?? \"\";\r\n time.current.inLateTimeIn = data?.[0]?.InLateTimeIn ?? \"\";\r\n time.current.outEarlyTimeOut = data?.[0]?.OutEarlyTimeOut ?? \"\";\r\n };\r\n\r\n const loadAttachments = () => {\r\n const param = {\r\n KeyID: TransID || \"\",\r\n TableName: \"D75T4071\"\r\n };\r\n setLoading(true);\r\n props.generalActions.getAttachmentsByTransID(param, (err, data) => {\r\n setLoading(false);\r\n if (err) {\r\n Config.popup.show('ERROR', err);\r\n return false;\r\n }\r\n if (data && data.length > 0) {\r\n setDataOldAttachments(data);\r\n }\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n if(mode === \"add\") {\r\n const getUser = Config.getUser({EmployeeID: Config.getHREmployeeID()});\r\n setDataCboEmployees({rows: getUser ? [getUser] : [], total: getUser ? [getUser].length : 0});\r\n setData({Employee : getUser?.EmployeeID || \"\"});\r\n }\r\n if(mode === \"edit\") {\r\n loadForm();\r\n loadAttachments();\r\n }\r\n if(mode === \"view\") {\r\n setIsModeView(true);\r\n loadForm();\r\n loadAttachments();\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n },[data?.mode]);\r\n\r\n useEffect(() => {\r\n if(isModeEdit.current && dataForm?.LateTimeIn && dataForm?.EarLyTimeOut\r\n && dataForm?.InLateTimeIn && dataForm?.OutEarlyTimeOut\r\n ) {\r\n isModeEdit.current = false;\r\n isChangeAttendanceDate.current = false;\r\n }\r\n }, [dataForm]);\r\n\r\n useEffect(() => {\r\n if(dataForm?.AttendanceDate) {\r\n isChangeAttendanceDate.current = true;\r\n loadShift();\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [dataForm?.AttendanceDate]);\r\n\r\n useEffect(() => {\r\n if(!isModeEdit.current) {\r\n if (dataForm?.LateMinute) {\r\n const lateTimeIn = setTime(time?.current?.lateTimeIn,\"add\",dataForm.LateMinute);\r\n setData({LateTimeIn: lateTimeIn});\r\n } else {\r\n if (isChanged.current) {\r\n setData({LateTimeIn: time?.current?.lateTimeIn ?? \"\"});\r\n }\r\n }\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [dataForm?.LateMinute]);\r\n\r\n useEffect(() => {\r\n if(!isModeEdit.current) {\r\n if (dataForm?.EarlyMinute) {\r\n const earLyTimeOut = setTime(time?.current?.earLyTimeOut,\"subtract\", dataForm.EarlyMinute);\r\n setData({EarLyTimeOut: earLyTimeOut});\r\n } else {\r\n if (isChanged.current) {\r\n setData({EarLyTimeOut: time?.current?.earLyTimeOut ?? \"\"});\r\n }\r\n }\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [dataForm?.EarlyMinute]);\r\n\r\n useEffect(() => {\r\n if(!isModeEdit.current) {\r\n if (dataForm?.InLateMinutes) {\r\n const inLateTimeIn = setTime(time?.current?.inLateTimeIn,\"add\", dataForm.InLateMinutes);\r\n setData({InLateTimeIn: inLateTimeIn});\r\n } else {\r\n if (isChanged.current) {\r\n setData({InLateTimeIn: time?.current?.inLateTimeIn ?? \"\"});\r\n }\r\n }\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [dataForm?.InLateMinutes]);\r\n\r\n useEffect(() => {\r\n if(!isModeEdit.current) {\r\n if (dataForm?.OutEarlyMinutes) {\r\n const outEarlyTimeOut = setTime(time?.current?.outEarlyTimeOut,\"subtract\", dataForm.OutEarlyMinutes);\r\n setData({OutEarlyTimeOut: outEarlyTimeOut})\r\n } else {\r\n if (isChanged.current) {\r\n setData({OutEarlyTimeOut: time?.current?.outEarlyTimeOut ?? \"\"});\r\n }\r\n }\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [dataForm?.OutEarlyMinutes]);\r\n\r\n const setTime = (time, nameOperator = \"add\", minute) => {\r\n if(!time) return false;\r\n return moment(time, \"HH:mm\").isValid() ?\r\n moment(time, \"HH:mm\")[nameOperator](minute, \"minutes\").format(\"HH:mm\") : \"\";\r\n };\r\n\r\n const setStateErrorText = (objValue) => {\r\n if(objValue) {\r\n setErrorHelperText({\r\n ...errorHelperText,\r\n ...objValue\r\n });\r\n return Object.keys(objValue).length !== 0;\r\n } else {\r\n setErrorHelperText({});\r\n return false;\r\n }\r\n };\r\n\r\n const setErrorHelperText = (obj) => {\r\n _setErrorHelperText({...errorHelperText, ...obj});\r\n };\r\n\r\n const setData = (obj) => {\r\n setDataForm({...dataForm,...obj});\r\n };\r\n\r\n const onChangeAttachments = (e) => {\r\n attachments.current = e.allNewAttached ? e.allNewAttached : [];\r\n if (e.removedAttached && e.removedAttached.length > 0) {\r\n deletedFile.current = [ ...e.removedAttached];\r\n const _arrRemove = deletedFile.current.map((d) => d.AttachmentID);\r\n const dataNew = [...dataOldAttachments].filter(att => _arrRemove.indexOf(att.AttachmentID) < 0);\r\n setDataOldAttachments(dataNew);\r\n }\r\n };\r\n\r\n const _getAttachments = (file) => {\r\n const dataFile = file?.data?.paths || [];\r\n const listAttachments = Config.helpers.getFileInfomations(dataFile);\r\n let arrAttachment = [];\r\n listAttachments.forEach((att) => {\r\n arrAttachment.push({\r\n URL: att.url ? att.url : \"\",\r\n FileName: att.fileName ? att.fileName : \"\",\r\n FileSize: att.fileSize ? att.fileSize : \"\",\r\n FileExt: att.fileName ? att.fileName.split('.').pop() : \"\"\r\n });\r\n });\r\n if (dataOldAttachments && dataOldAttachments.length > 0) {\r\n arrAttachment = dataOldAttachments.concat(arrAttachment);\r\n }\r\n\r\n return arrAttachment;\r\n };\r\n\r\n const _uploadFile = (files, isAsync, cb) => {\r\n if (isAsync) {\r\n return CDN.uploadFileSync(files);\r\n } else {\r\n return CDN.uploadFile(files, null, cb);\r\n }\r\n };\r\n\r\n const _removeCDN = () => {\r\n if (deletedFile.current && deletedFile.current.length > 0) {\r\n deletedFile.current.forEach((e) => {\r\n const path = e.URL.split(\"=\");\r\n if (path && path.length > 1) {\r\n const params = {\r\n path: path[1]\r\n };\r\n CDN.removeFile(params);\r\n }\r\n });\r\n deletedFile.current= [];\r\n }\r\n };\r\n\r\n const onClosePopup = (isReload) => {\r\n if(onClose) onClose(isReload);\r\n };\r\n\r\n const handleChange = (key,e) => {\r\n if(!key) return false;\r\n isChanged.current = true;\r\n const value = e?.value ?? e?.target?.value ?? \"\";\r\n if (errorHelperText[key] && value) setErrorHelperText({[key]: \"\"});\r\n switch (key) {\r\n case \"AttendanceDate\":\r\n if(value === \"\") {\r\n setData({\r\n AttendanceDate: value,\r\n ShiftName: \"\",\r\n LateTimeIn: \"\",\r\n EarLyTimeOut: \"\",\r\n InLateTimeIn: \"\",\r\n OutEarlyTimeOut: \"\"\r\n });\r\n } else {\r\n setData({AttendanceDate: value});\r\n }\r\n break;\r\n case \"LateMinute\":\r\n setData({LateMinute: value});\r\n break;\r\n case \"EarlyMinute\":\r\n setData({EarlyMinute: value});\r\n break;\r\n case \"InLateMinutes\":\r\n setData({InLateMinutes: value});\r\n break;\r\n case \"OutEarlyMinutes\":\r\n setData({OutEarlyMinutes: value});\r\n break;\r\n case \"Reason\":\r\n setData({Reason: value});\r\n break;\r\n case \"Note\":\r\n setData({Note: value});\r\n break;\r\n default:\r\n break;\r\n }\r\n };\r\n\r\n const checkTime = (time) => {\r\n return !moment(time, \"HH:mm\").isValid();\r\n };\r\n\r\n const onSave = async () => {\r\n const validateRules = [\r\n {\r\n name: \"AttendanceDate\",\r\n rules: [\"isRequired\"],\r\n value: dataForm.AttendanceDate || \"\"\r\n },\r\n ];\r\n\r\n if(dataForm?.LateMinute === \"\" &&\r\n dataForm?.EarlyMinute === \"\" &&\r\n dataForm?.InLateMinutes === \"\" &&\r\n dataForm?.OutEarlyMinutes === \"\") {\r\n Config.popup.show(\"INFO\", Config.lang(\"Phai_nhap_so_phut_cho_it_nhat_mot_loai_xin_phep\"));\r\n return;\r\n }\r\n\r\n const validateForm = MForm.formValidation(validateRules);\r\n if (Object.keys(validateForm).length > 0) {\r\n setStateErrorText(validateForm);\r\n if(setStateErrorText(validateForm)) return false;\r\n }\r\n const dataResUploadFile = await _uploadFile(attachments.current, true);\r\n const arrAttachments = _getAttachments(dataResUploadFile);\r\n const employeeInfo = dataCboEmployees.rows?.find(item => item.EmployeeID === dataForm?.Employee);\r\n const params = {\r\n Mode: (data.mode === \"edit\") ? 1 : 0,\r\n TransID: TransID ?? \"\",\r\n EmployeeID : dataForm?.Employee ?? \"\",\r\n EmployeeName: employeeInfo?.EmployeeName ?? \"\",\r\n AttendanceDate : dataForm?.AttendanceDate ?? \"\",\r\n LateMinute: dataForm?.LateMinute || null,\r\n LateTimeIn: dataForm?.LateTimeIn ?? \"\",\r\n EarlyMinute : dataForm?.EarlyMinute || null,\r\n EarlyTimeOut: dataForm?.EarLyTimeOut ?? \"\",\r\n InLateMinutes: dataForm?.InLateMinutes || null,\r\n InLateTimeIn: dataForm?.InLateTimeIn ?? \"\",\r\n OutEarlyMinutes: dataForm?.OutEarlyMinutes || null,\r\n OutEarlyTimeOut: dataForm?.OutEarlyTimeOut ?? \"\",\r\n ShiftID: dataForm?.ShiftID ?? \"\",\r\n Reason: dataForm?.Reason ?? \"\",\r\n Note: dataForm?.Note ?? \"\",\r\n arrAttachment: JSON.stringify(arrAttachments),\r\n };\r\n\r\n props.w29F2081Actions.save(params, (errors, data) => {\r\n if (errors) {\r\n Config.popup.show('ERROR', errors);\r\n return false;\r\n }\r\n if (data.Status === 1) {\r\n if(!data.hasOwnProperty(\"MsgAsk\")) {\r\n let message = data.Message || Config.lang(\"Loi_chua_xac_dinh\");\r\n Config.popup.show('INFO', message);\r\n return false;\r\n }\r\n if (data?.MsgAsk === 0) {\r\n let message = data.Message || Config.lang(\"Loi_chua_xac_dinh\");\r\n Config.popup.show('INFO', message);\r\n return false;\r\n }\r\n if(data?.MsgAsk === 1) {\r\n let message = data.Message || Config.lang(\"Loi_chua_xac_dinh\");\r\n Config.popup.show('INFO', message);\r\n }\r\n }\r\n if (data.Status === 0) {\r\n _removeCDN();\r\n Config.notify.show('success', Config.lang(\"Luu_thanh_cong\"), 2000);\r\n onClosePopup(true);\r\n }\r\n })\r\n\r\n };\r\n const errorAttendanceDate = !!errorHelperText['AttendanceDate'] && errorHelperText['AttendanceDate'].length > 0;\r\n const checkLateTimeIn = checkTime(dataForm?.LateTimeIn);\r\n const checkEarLyTimeOut = checkTime(dataForm?.EarLyTimeOut);\r\n const checkInLateTimeIn = checkTime(dataForm?.InLateTimeIn);\r\n const checkOutEarlyTimeOut = checkTime(dataForm?.OutEarlyTimeOut);\r\n return (\r\n <>\r\n onClosePopup()}\r\n open={open}\r\n pressESCToClose={false}\r\n moveable={false}\r\n dragAnyWhere={false}\r\n moveOutScreen={false}\r\n width={\"80%\"}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n handleChange(\"Employee\", e)}\r\n onInput={(e) => {\r\n filterCboEmployees.current.strSearch = e.target.value;\r\n filterCboEmployees.current.skip = 0;\r\n loadCboEmployees(true);\r\n }}\r\n onLoadMore={(e) => {\r\n filterCboEmployees.current.skip = e.skip;\r\n filterCboEmployees.current.limit = e.limit;\r\n loadCboEmployees();\r\n }}\r\n />\r\n \r\n \r\n handleChange('AttendanceDate', e)}\r\n />\r\n \r\n \r\n {dataForm?.ShiftName || \"\"}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n handleChange(\"LateMinute\", e)}\r\n endIcon={\r\n {\r\n setData({LateMinute: \"\"});\r\n }}\r\n />}\r\n />\r\n \r\n \r\n \r\n handleChange(\"EarlyMinute\", e)}\r\n endIcon={\r\n {\r\n setData({EarlyMinute: \"\"});\r\n }}\r\n />}\r\n />\r\n \r\n \r\n \r\n handleChange(\"InLateMinutes\", e)}\r\n endIcon={\r\n {\r\n setData({InLateMinutes: \"\"});\r\n }}\r\n />}\r\n />\r\n \r\n \r\n \r\n handleChange(\"OutEarlyMinutes\", e)}\r\n endIcon={\r\n {\r\n setData({OutEarlyMinutes: \"\"});\r\n }}\r\n />}\r\n />\r\n \r\n \r\n \r\n \r\n handleChange(\"Reason\", e)}\r\n />\r\n \r\n \r\n \r\n \r\n handleChange(\"Note\", e)}\r\n />\r\n \r\n \r\n \r\n \r\n {\r\n onChangeAttachments(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\nW29F2081.propTypes = {\r\n data: PropTypes.object,\r\n open: PropTypes.bool,\r\n onClose:PropTypes.func,\r\n};\r\n\r\nW29F2081.defaultProps = {\r\n data: {},\r\n open: false,\r\n onClose: null,\r\n};\r\n\r\nexport default compose(\r\n connect(null,\r\n (dispatch) => ({\r\n w29F2081Actions: bindActionCreators(W29F2081Actions, dispatch),\r\n generalActions: bindActionCreators(generalActions, dispatch),\r\n })\r\n ),\r\n)(W29F2081);\r\n","/**\r\n * @copyright 2019 @ DigiNet\r\n * @author NAMDANG\r\n * @create 9/14/2021\r\n * @Example\r\n */\r\n\r\nimport React, {useEffect, useRef, useState} from \"react\";\r\nimport {bindActionCreators, compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport {FormGroup, Col, Row} from \"react-bootstrap\";\r\nimport Config from \"../../../../config\";\r\nimport ActionToolbar from \"../../../common/toolbar/action-toolbar\";\r\nimport Approvals from \"../../../approvals/approvals\";\r\nimport LabelText from \"../../../common/label-text/label-text\";\r\nimport {Input} from \"@material-ui/core\";\r\nimport * as ApprovalActions from \"../../../../redux/approvals/approvals_actions\";\r\nimport * as generalActions from \"../../../../redux/general/general_actions\";\r\nimport Filter from \"../../../filter/filter\";\r\nimport {Dropdown, Button, DatePicker, Typography, Avatar } from \"diginet-core-ui/components\";\r\nimport {makeStyles} from \"diginet-core-ui/theme\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\nimport { Cancel } from 'diginet-core-ui/icons';\r\nconst useStyles = makeStyles(theme => ({\r\n txtShiftName: {\r\n marginTop: 35,\r\n whiteSpace: \"pre\",\r\n [theme.breakpoints.down(\"md\")]: {\r\n marginTop: 0\r\n }\r\n },\r\n customLabelText: {\r\n [theme.breakpoints.down(\"md\")]: {\r\n marginBottom: 20\r\n }\r\n },\r\n customRequire: {\r\n color : theme.colors.warning\r\n }\r\n}));\r\n\r\nconst W29F2082 = (props) => {\r\n const {getCboAppStatus} = props;\r\n const [iPermission, setIPermission] = useState(0);\r\n const [dataForm, setDataForm] = useState({});\r\n const filterCboEmployees = useRef({skip: 0, limit: 20, strSearch: \"\"});\r\n const [loading, setLoading] = useState(false);\r\n const [dataCboEmployees, setDataCboEmployees] = useState({rows: [], total: 0});\r\n const [voucherID, setVoucherID] = useState(\"\");\r\n const [dataFilter, setDataFilter] = useState({\r\n DateFrom: null,\r\n DateTo: null,\r\n EmployeeID: \"\",\r\n ApprovalStatus: \"\"\r\n });\r\n const [dateFrom, setDateFrom] = useState(null);\r\n const [dateTo, setDateTo] = useState(null);\r\n const [employee, setDateEmployee] = useState(null);\r\n const [appStatusID, setAppStatusID] = useState(null);\r\n const classes = useStyles();\r\n\r\n const loadCboEmployees = (isReset) => {\r\n const params = {\r\n HostID: \"\",\r\n Type: \"EmployeeID\",\r\n FormID: \"W29F2082\",\r\n Language: Config.language || '84',\r\n skip: filterCboEmployees.current.skip,\r\n limit: filterCboEmployees.current.limit,\r\n search: filterCboEmployees.current.strSearch\r\n };\r\n setLoading(true);\r\n props.generalActions.getCboEmployees(params, (error, data) => {\r\n setLoading(false);\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (data) {\r\n const rows = data?.rows || data;\r\n const total = data?.total || data.length;\r\n setDataCboEmployees({\r\n rows: isReset ? rows : dataCboEmployees.rows.concat(rows),\r\n total: total\r\n });\r\n }\r\n });\r\n };\r\n\r\n const loadFormInfo = (VoucherID) => {\r\n const params = {\r\n DivisionID: Config.getDivisionID(),\r\n FormID: \"W29F2082\",\r\n Language: Config.language || \"84\",\r\n VoucherID: VoucherID ? VoucherID : \"\",\r\n };\r\n setLoading(true);\r\n props.approvalActions.getFormInfo(params, (error, data) => {\r\n setLoading(false);\r\n if (error) return Config.popup.show(\"ERROR\", error);\r\n if (data) {\r\n setDataForm(data);\r\n }\r\n });\r\n };\r\n\r\n const loadCboStatus = () => {\r\n const params = {\r\n FormID: \"W29F2035\",\r\n Language: Config.language || '84'\r\n };\r\n setLoading(true);\r\n props.generalActions.getCboAppStatus(params, (error) => {\r\n setLoading(false);\r\n if (error) {\r\n Config.popup.show('ERROR', error);\r\n return false;\r\n }\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n const loadPermission = () => {\r\n props.generalActions.getPermission(\"W29F2082\", (isPer) => {\r\n setIPermission(isPer);\r\n });\r\n };\r\n loadPermission();\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, []);\r\n\r\n useEffect(() => {\r\n if(iPermission > 0) {\r\n loadCboEmployees();\r\n loadCboStatus();\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [iPermission]);\r\n\r\n const onDrawerClosed = () => {\r\n setVoucherID(\"\");\r\n };\r\n\r\n const onSelectionChanged = (e) => {\r\n if (!e) return false;\r\n loadFormInfo(e?.VoucherID || \"\");\r\n };\r\n\r\n const handleChange = (key, e) => {\r\n if(!key || !e) return false;\r\n const value = e?.value ?? e?.target?.value ?? \"\";\r\n switch (key) {\r\n case \"DateFrom\":\r\n setDateFrom(value || null);\r\n break;\r\n case \"DateTo\":\r\n setDateTo(value || null);\r\n break;\r\n case \"Employee\":\r\n setDateEmployee(value);\r\n break;\r\n case \"AppStatusID\":\r\n setAppStatusID(value || null);\r\n break;\r\n default:\r\n break;\r\n }\r\n };\r\n\r\n const onSearch = () => {\r\n setDataFilter({\r\n ...dataFilter,\r\n ApprovalStatus: appStatusID,\r\n DateFrom: dateFrom,\r\n DateTo: dateTo,\r\n EmployeeID: employee\r\n })\r\n };\r\n\r\n const renderFormInfo = (data) => {\r\n const user = Config.getUser({ EmployeeID: data?.EmployeeID || \"\"});\r\n const userPictureUrl = user?.UserPictureURL || \"\";\r\n const userName = user?.EmployeeName || \"\";\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n (\r\n
\r\n
\r\n {userPictureUrl ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n \r\n
\r\n )}\r\n />\r\n \r\n \r\n handleChange(\"DateFrom\", e)}\r\n />\r\n \r\n \r\n {Config.helpers.getObjectValue(data, \"ShiftName\", \"\")}\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {Config.lang(\"Di_tre\")} *}\r\n fullWidth={true}\r\n inputProps={{\r\n endAdornment: (\r\n \r\n \r\n \r\n )\r\n }}\r\n value={Config.helpers.getObjectValue(data, \"LateMinute\", \"0\")}\r\n />\r\n \r\n \r\n {Config.lang(\"Ve_som\")} *}\r\n fullWidth={true}\r\n inputProps={{\r\n endAdornment: (\r\n \r\n \r\n \r\n )\r\n }}\r\n value={Config.helpers.getObjectValue(data, \"EarlyMinute\", \"0\")}\r\n />\r\n \r\n \r\n {Config.lang(\"Vao_tre\")} *}\r\n fullWidth={true}\r\n inputProps={{\r\n endAdornment: (\r\n \r\n \r\n \r\n )\r\n }}\r\n value={Config.helpers.getObjectValue(data, \"InLateMinutes\", \"0\")}\r\n />\r\n \r\n \r\n {Config.lang(\"Ra_som\")} *}\r\n fullWidth={true}\r\n inputProps={{\r\n endAdornment: (\r\n \r\n \r\n \r\n )\r\n }}\r\n value={Config.helpers.getObjectValue(data, \"OutEarlyMinutes\", \"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 const renderFilter = () => {\r\n return (\r\n {\r\n return (\r\n <>\r\n \r\n \r\n
\r\n {Config.lang(\"Ngay_lam_viec\")}\r\n \r\n
\r\n handleChange(\"DateFrom\", e)}\r\n />\r\n
\r\n \r\n \r\n
\r\n handleChange(\"DateTo\", e)}\r\n />\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n handleChange(\"Employee\", e)}\r\n onInput={(e) => {\r\n filterCboEmployees.current.strSearch = e.target.value;\r\n filterCboEmployees.current.skip = 0;\r\n loadCboEmployees(true);\r\n }}\r\n onLoadMore={(e) => {\r\n filterCboEmployees.current.skip = e.skip;\r\n filterCboEmployees.current.limit = e.limit;\r\n loadCboEmployees();\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n handleChange(\"AppStatusID\", e)}\r\n dataSource={getCboAppStatus}\r\n loading={loading}\r\n value={appStatusID}\r\n />\r\n \r\n \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 (!iPermission) return null;\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\nexport default compose(connect((state) => ({\r\n getCboAppStatus: state.general.getCboAppStatus,\r\n }),\r\n (dispatch) => ({\r\n generalActions: bindActionCreators(generalActions, dispatch),\r\n approvalActions: bindActionCreators(ApprovalActions, dispatch),\r\n })\r\n))(W29F2082);\r\n","/**\r\n * @copyright 2020 @ DigiNet\r\n * @author HUYTRAN\r\n * @create 10/14/2020\r\n * @Example\r\n */\r\nimport React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport * as w29F2100Actions from \"../../../../redux/W2X/W29F2100/W29F2100_actions\";\r\nimport { bindActionCreators, compose } from \"redux\";\r\nimport Config from \"../../../../config\";\r\nimport ActionToolbar from \"../../../common/toolbar/action-toolbar\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport * as generalActions from \"../../../../redux/general/general_actions\";\r\nimport FullCalendar from \"@fullcalendar/react\";\r\nimport dayGridPlugin from \"@fullcalendar/daygrid\";\r\nimport moment from \"moment\";\r\nimport { Row, Col } from \"react-bootstrap\";\r\nimport interactionPlugin from \"@fullcalendar/interaction\"; // needed for dayClick\r\nimport \"./W29F2100.scss\";\r\nimport { Combo } from \"../../../common/form-material\";\r\nimport Icons from \"../../../common/icons\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport _ from \"lodash\";\r\nimport W29F2100PopupDetail from \"./W29F2100PopupDetail\";\r\nimport { LoadPanel } from \"devextreme-react/load-panel\";\r\n\r\nconst styles = (theme) => ({\r\n divIcon: {\r\n width: 24,\r\n height: 24,\r\n backgroundColor: \"#111D5E\",\r\n },\r\n divHeadContainer: {\r\n display: \"flex\",\r\n flexDirection: \"row\",\r\n justifyContent: \"space-between\",\r\n },\r\n divCombo: {\r\n display: \"flex\",\r\n flexDirection: \"row\",\r\n },\r\n divEnd: {\r\n justifyContent: \"flex-end\",\r\n display: \"flex\",\r\n },\r\n cbEmployees: {\r\n width: \"45%\",\r\n marginRight: 10,\r\n marginTop: 11.5,\r\n },\r\n divText: {\r\n fontSize: 14,\r\n fontWeight: 500,\r\n color: \"#7F828E\",\r\n },\r\n divNote: {\r\n display: \"flex\",\r\n flexDirection: \"row\",\r\n justifyContent: \"space-between\",\r\n paddingLeft: 10,\r\n paddingRight: 10,\r\n },\r\n titleNumber: {\r\n flexDirection: \"row-reverse\",\r\n display: \"flex\",\r\n color: \"#0095ff\",\r\n fontSize: \"1rem\",\r\n fontWeight: 700,\r\n },\r\n title: {\r\n fontSize: \"0.75rem\",\r\n fontWeight: 700,\r\n lineHeight: \"14px\",\r\n color: \"#555868\",\r\n paddingRight: \"5px\",\r\n },\r\n text: {\r\n fontSize: 16,\r\n fontWeight: 500,\r\n color: \"#151a30\",\r\n },\r\n});\r\nclass W29F2100 extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n iPermissions: {},\r\n dataCboProjects: {\r\n rows: [],\r\n total: 0,\r\n },\r\n calendar: {\r\n calendarWeekends: true,\r\n calendarEvents: [\r\n // initial event data\r\n ],\r\n },\r\n dataCboEmployees: {\r\n rows: [],\r\n total: 0,\r\n },\r\n error: null,\r\n loadEmployees: false,\r\n employees: {\r\n EmployeeID: \"\",\r\n },\r\n MinDate: null,\r\n MaxDate: null,\r\n Period: {},\r\n cboPeriod: [],\r\n dataNote: [],\r\n totalAtt: 0,\r\n totalLeave: 0,\r\n showW29F2100: false,\r\n currentMonth: \"\",\r\n loadPeriod: false,\r\n disableCboEmployee: false,\r\n disabledLeft: false,\r\n disabledRight: false,\r\n dateClick: {},\r\n };\r\n this.calendarComponentRef = React.createRef();\r\n this.filterCboEmployees = {\r\n skip: 0,\r\n limit: 50,\r\n strSearch: \"\",\r\n };\r\n this.Period = {\r\n TranMonth: \"\",\r\n TranYear: \"\",\r\n };\r\n this.clicking = false;\r\n this.calendarLoading = null;\r\n this.clicked = false;\r\n //grab and sroll\r\n this.el = null;\r\n this.isDown = false;\r\n this.startX = null;\r\n this.scrollLeft = null;\r\n }\r\n\r\n toggleWeekends = () => {\r\n this.setState({\r\n // update a property\r\n ...this.state.calendar,\r\n calendarWeekends: !this.state.calendar.calendarWeekends,\r\n });\r\n };\r\n goPrevMonth = async () => {\r\n let calendarApi = this.calendarComponentRef.current.getApi();\r\n const { cboPeriod, Period, MinDate } = this.state;\r\n let checkCbMin = cboPeriod.indexOf(Period) === cboPeriod.length - 1;\r\n if (\r\n calendarApi.currentDataManager.data.currentDate.getMonth() >\r\n new Date(MinDate).getMonth()\r\n ) {\r\n await calendarApi.prev();\r\n let currentMonth =\r\n calendarApi &&\r\n this.calendarComponentRef.current.getApi().currentDataManager.data\r\n .viewTitle;\r\n this.setState({ currentMonth });\r\n if (\r\n checkCbMin &&\r\n calendarApi.currentDataManager.data.currentDate.getMonth() ===\r\n new Date(MinDate).getMonth()\r\n ) {\r\n this.setState({ disabledLeft: true });\r\n } else {\r\n this.setState({ disabledRight: false });\r\n }\r\n } else {\r\n if (cboPeriod.length > 0) {\r\n let goPrev = cboPeriod[cboPeriod.indexOf(Period) + 1];\r\n this.handleChange(\"PeriodTime\", { value: goPrev.PeriodTime });\r\n }\r\n }\r\n };\r\n goNextMonth = async () => {\r\n let calendarApi = this.calendarComponentRef.current.getApi();\r\n const { cboPeriod, Period, MaxDate } = this.state;\r\n let checkCbMax = cboPeriod.indexOf(Period) === 0;\r\n if (\r\n calendarApi.currentDataManager.data.currentDate.getMonth() <\r\n new Date(MaxDate).getMonth()\r\n ) {\r\n await calendarApi.next();\r\n let currentMonth =\r\n calendarApi &&\r\n this.calendarComponentRef.current.getApi().currentDataManager.data\r\n .viewTitle;\r\n this.setState({ currentMonth });\r\n if (\r\n checkCbMax &&\r\n calendarApi.currentDataManager.data.currentDate.getMonth() ===\r\n new Date(MaxDate).getMonth()\r\n ) {\r\n this.setState({ disabledRight: true });\r\n } else {\r\n this.setState({ disabledLeft: false });\r\n }\r\n } else {\r\n if (cboPeriod.length > 0 && cboPeriod.indexOf(Period) !== 0) {\r\n let goNext = cboPeriod[cboPeriod.indexOf(Period) - 1];\r\n this.handleChange(\"PeriodTime\", { value: goNext.PeriodTime });\r\n }\r\n }\r\n };\r\n getInfo = () => {\r\n return {\r\n EmployeeID: Config.getHREmployeeID(),\r\n };\r\n };\r\n //Grab and scroll\r\n mousedown = (e) => {\r\n this.isDown = true;\r\n // this.el.classList.add('active');\r\n this.startX = e.pageX - this.el.offsetLeft;\r\n this.scrollLeft = this.el.scrollLeft;\r\n this.el.style.cursor = \"grabbing\";\r\n this.el.style.userSelect = \"none\";\r\n };\r\n mouseleave = () => {\r\n this.isDown = false;\r\n // this.el.classList.remove('active');\r\n this.el.style.cursor = \"grab\";\r\n this.el.style.removeProperty(\"user-select\");\r\n };\r\n\r\n mouseup = () => {\r\n this.isDown = false;\r\n // this.el.classList.remove('active');\r\n this.el.style.cursor = \"grab\";\r\n this.el.style.removeProperty(\"user-select\");\r\n };\r\n mousemove = (e) => {\r\n let isDown = this.isDown,\r\n scrollLeft = this.scrollLeft,\r\n startX = this.startX;\r\n if (!isDown) return;\r\n e.preventDefault();\r\n const x = e.pageX - this.el.offsetLeft;\r\n const walk = (x - startX) * 2; //scroll-fast\r\n this.el.scrollLeft = scrollLeft - walk;\r\n // console.log(walk);\r\n };\r\n componentDidMount = async () => {\r\n await this.loadPermission();\r\n await this.loadDefaultEmployee();\r\n this.loadCboEmployees();\r\n this.loadCboPeriod();\r\n this.loadNotes();\r\n if (this.el && !Config.isMobile) {\r\n this.el.addEventListener(\"mousedown\", (e) => {\r\n this.mousedown(e);\r\n });\r\n this.el.addEventListener(\"mouseleave\", () => {\r\n this.mouseleave();\r\n });\r\n this.el.addEventListener(\"mouseup\", () => {\r\n this.mouseup();\r\n });\r\n this.el.addEventListener(\"mousemove\", (e) => {\r\n this.mousemove(e);\r\n });\r\n }\r\n };\r\n componentWillUnmount() {\r\n if (this.el && !Config.isMobile) {\r\n this.el.removeEventListener(\"mousedown\", (e) => {\r\n this.mousedown(e);\r\n });\r\n this.el.removeEventListener(\"mouseleave\", () => {\r\n this.mouseleave();\r\n });\r\n this.el.removeEventListener(\"mouseup\", () => {\r\n this.mouseup();\r\n });\r\n this.el.removeEventListener(\"mousemove\", (e) => {\r\n this.mousemove(e);\r\n });\r\n }\r\n }\r\n\r\n loadDateByTrans = (TranMonth, TranYear) => {\r\n const params = {\r\n TranMonth,\r\n TranYear,\r\n };\r\n this.props.generalActions.getDateByTrans(params, (errors, data) => {\r\n if (errors) {\r\n let message = errors.message || Config.lang(\"DHR_Loi_chua_xac_dinh\");\r\n Config.popup.show(\"INFO\", message);\r\n return false;\r\n }\r\n if (data) {\r\n this.setState(\r\n {\r\n MinDate: null,\r\n MaxDate: null,\r\n },\r\n () => {\r\n this.loadMonthPayroll(TranMonth, TranYear, data);\r\n }\r\n );\r\n }\r\n });\r\n };\r\n loadCboPeriod = () => {\r\n const params = {\r\n DivisionID: Config.getDivisionID(),\r\n };\r\n this.setState({ loadPeriod: true });\r\n this.props.generalActions.getCboPeriod(params, (errors, data) => {\r\n this.setState({ loadPeriod: false });\r\n if (errors) {\r\n let message = errors.message || Config.lang(\"DHR_Loi_chua_xac_dinh\");\r\n Config.popup.show(\"INFO\", message);\r\n return false;\r\n }\r\n if (data) {\r\n let obj = {\r\n _TranMonth: Config.getHRTransMonth(),\r\n _TranYear: Config.getHRTransYear(),\r\n };\r\n const Period = data.find(\r\n (d) =>\r\n Number(d.TranMonth) === Number(obj._TranMonth) &&\r\n Number(d.TranYear) === Number(obj._TranYear)\r\n );\r\n this.setState({ cboPeriod: data, Period }, () => {\r\n this.loadDateByTrans(obj._TranMonth, obj._TranYear);\r\n });\r\n }\r\n });\r\n };\r\n loadPermission = async () => {\r\n await this.props.generalActions.getPermission(\r\n [\"W29F2101\"],\r\n (arrPer) => {\r\n if (arrPer !== 0) {\r\n let iPermissions = {};\r\n arrPer.forEach((per) => {\r\n if (\r\n per.hasOwnProperty(\"FormID\") &&\r\n per.hasOwnProperty(\"IsPermission\")\r\n ) {\r\n iPermissions[per.FormID] = per.IsPermission;\r\n }\r\n });\r\n this.setState({ iPermissions });\r\n } else {\r\n this.setState({\r\n iPermissions: {\r\n W29F2101: 0,\r\n },\r\n });\r\n }\r\n },\r\n true\r\n );\r\n };\r\n loadDefaultEmployee = async () => {\r\n const { EmployeeID } = this.getInfo();\r\n let loadDefault = await Config.getUser({ EmployeeID });\r\n this.setState({\r\n employees: loadDefault,\r\n dataCboEmployees: {\r\n rows: this.state.dataCboEmployees.rows.concat([loadDefault]),\r\n },\r\n });\r\n };\r\n loadCboEmployees = (isReset) => {\r\n const param = {\r\n FormID: \"W29F2101\",\r\n Mode: 0,\r\n Language: Config.language || \"84\",\r\n skip: this.filterCboEmployees.skip,\r\n limit: this.filterCboEmployees.limit,\r\n search: this.filterCboEmployees.strSearch,\r\n };\r\n this.setState({ loadEmployees: true });\r\n this.props.generalActions.getCboEmployees(param, (error, data) => {\r\n this.setState({ loadEmployees: false });\r\n if (error) {\r\n let message = error.message || Config.lang(\"DHR_Loi_chua_xac_dinh\");\r\n Config.popup.show(\"INFO\", message);\r\n return false;\r\n }\r\n if (data) {\r\n const { dataCboEmployees } = this.state;\r\n const rows = data && data.rows ? data.rows : dataCboEmployees.rows;\r\n const total = data && data.total ? data.total : data.length;\r\n this.setState({\r\n dataCboEmployees: {\r\n rows: isReset ? rows : dataCboEmployees.rows.concat(rows),\r\n total: total,\r\n },\r\n });\r\n }\r\n });\r\n };\r\n loadMonthPayroll = (TranMonth, TranYear, minMaxDate) => {\r\n // let minMaxDate = {\r\n // MinDate: \"2020-10-01\",\r\n // MaxDate: \"2020-12-15\",\r\n // }\r\n const { EmployeeID } = this.getInfo();\r\n const param = {\r\n TranMonth,\r\n TranYear,\r\n Language: Config.language || \"84\",\r\n EmployeeID:\r\n (this.state.employees && this.state.employees.EmployeeID) || EmployeeID,\r\n };\r\n this.setState({ loadMonthPayroll: true });\r\n this.props.w29F2100Actions.getMonthPayroll(param, (error, data) => {\r\n this.setState({ loadMonthPayroll: false });\r\n if (error) {\r\n let message = error.message || Config.lang(\"DHR_Loi_chua_xac_dinh\");\r\n Config.popup.show(\"INFO\", message);\r\n return false;\r\n }\r\n if (data) {\r\n let temp = [];\r\n const groupData = _.groupBy(data, \"Date\");\r\n for (let key in groupData) {\r\n const obj = {};\r\n obj.start = key;\r\n const attArr = groupData[key]\r\n .filter((i) => i.AttLeaType === \"ATT\")\r\n .map((item) => item.Amount + \" \" + item.Type)\r\n .join(\"; \");\r\n const leaveArr = groupData[key]\r\n .filter((i) => i.AttLeaType === \"LEAVE\")\r\n .map((item) => item.Amount + \" \" + item.Type)\r\n .join(\"; \");\r\n obj.att = attArr;\r\n obj.leave = leaveArr;\r\n groupData[key].map((item) => {\r\n obj.extendedProps = item;\r\n return item;\r\n });\r\n obj.dateStr = moment(key).format(\"YYYY-MM-DD\");\r\n temp.push(obj);\r\n }\r\n const att = data\r\n .filter((item) => item.AttLeaType === \"ATT\")\r\n .reduce((a, b) => a + b.Amount, 0);\r\n const leave = data\r\n .filter((item) => item.AttLeaType === \"LEAVE\")\r\n .reduce((a, b) => a + b.Amount, 0);\r\n this.setState(\r\n {\r\n // add new event data\r\n MinDate: minMaxDate.MinDate,\r\n MaxDate: minMaxDate.MaxDate,\r\n // allDay: arg.allDay,\r\n },\r\n () => {\r\n const { cboPeriod, Period } = this.state;\r\n let check =\r\n this.calendarComponentRef.current &&\r\n this.calendarComponentRef.current.getApi();\r\n let currentMonth =\r\n check &&\r\n this.calendarComponentRef.current.getApi().currentDataManager\r\n .data;\r\n let checkMax =\r\n currentMonth.currentDate.getMonth() <\r\n new Date(minMaxDate.MaxDate).getMonth();\r\n let checkCbMax = cboPeriod.indexOf(Period) === 0;\r\n let checkMin =\r\n currentMonth.currentDate.getMonth() >\r\n new Date(minMaxDate.MinDate).getMonth();\r\n let checkCbMin = cboPeriod.indexOf(Period) === cboPeriod.length - 1;\r\n this.setState({\r\n calendar: { calendarEvents: temp, calendarWeekends: true },\r\n totalAtt: att,\r\n totalLeave: leave,\r\n currentMonth: currentMonth.viewTitle,\r\n disabledRight: checkCbMax\r\n ? checkMax\r\n ? !checkMax\r\n : checkCbMax\r\n : false,\r\n disabledLeft: checkCbMin\r\n ? checkMin\r\n ? !checkMin\r\n : checkCbMin\r\n : false,\r\n dateClick: {},\r\n showW29F2100: false,\r\n });\r\n }\r\n );\r\n }\r\n });\r\n };\r\n loadNotes = () => {\r\n const param = {\r\n Language: Config.language || \"84\",\r\n };\r\n this.props.w29F2100Actions.getNote(param, (error, data) => {\r\n if (error) {\r\n let message = error.message || Config.lang(\"DHR_Loi_chua_xac_dinh\");\r\n Config.popup.show(\"INFO\", message);\r\n return false;\r\n }\r\n if (data) {\r\n this.setState({\r\n dataNote: data,\r\n });\r\n }\r\n });\r\n };\r\n\r\n handleChange = (key, e) => {\r\n if (!key || !e) return false;\r\n switch (key) {\r\n case \"EmployeeID\": {\r\n const { Period } = this.state;\r\n this._setemployees(key, e.value, () =>\r\n this.loadDateByTrans(Period.TranMonth, Period.TranYear)\r\n );\r\n break;\r\n }\r\n case \"PeriodTime\": {\r\n const { cboPeriod } = this.state;\r\n const Period = cboPeriod.find((d) => d.PeriodTime === e.value);\r\n if (!Config.isEmpty(Period)) {\r\n this.setState({ Period });\r\n this.loadDateByTrans(Period.TranMonth, Period.TranYear);\r\n }\r\n break;\r\n }\r\n default:\r\n break;\r\n }\r\n };\r\n\r\n _setemployees = (key, value, cb) => {\r\n if (!key) return false;\r\n this.setState(\r\n {\r\n employees: { ...value },\r\n },\r\n () => {\r\n if (cb) cb();\r\n }\r\n );\r\n };\r\n\r\n handleDateClick = (e) => {\r\n let img = document.querySelector(`[date=\"${e.date}\"]`);\r\n if (img && this.clicked && Config.isEmpty(this.state.dateClick)) {\r\n this.setState({ showW29F2100: true, dateClick: e });\r\n }\r\n };\r\n onClose = () => {\r\n const { dateClick } = this.state;\r\n this.setState({ showW29F2100: false, dateClick: {} });\r\n if (this.clicking) {\r\n let img = document.querySelector(`[date=\"${dateClick.date}\"]`);\r\n this.clicking.classList.remove(\"bgColor\");\r\n this.clicking = null;\r\n this.clicked = false;\r\n img.src = require(\"./group_view.svg\");\r\n img.style.display = \"none\";\r\n }\r\n };\r\n render() {\r\n let {\r\n dataCboEmployees,\r\n error,\r\n loadEmployees,\r\n employees,\r\n cboPeriod,\r\n Period,\r\n dataNote,\r\n MinDate,\r\n MaxDate,\r\n showW29F2100,\r\n totalAtt,\r\n totalLeave,\r\n currentMonth,\r\n loadMonthPayroll,\r\n loadPeriod,\r\n disabledLeft,\r\n disabledRight,\r\n dateClick,\r\n iPermissions,\r\n } = this.state;\r\n const { EmployeeID } = this.getInfo();\r\n let { classes, theme } = this.props;\r\n // console.log(this.state.dateFrom, this.state.dateTo, this.state.MaxDate, this.state.MinDate);\r\n // console.log(this.calendarComponentRef.current && this.calendarComponentRef.current.getApi() && this.calendarComponentRef.current.getApi().currentDataManager.data.viewTitle);\r\n const disabledCboEmployee = iPermissions && iPermissions.W29F2101 < 2;\r\n // if (!iPermission) return null;\r\n return (\r\n \r\n \r\n \r\n
\r\n \r\n \r\n this.handleChange(\"EmployeeID\", e)}\r\n onInputChanged={(e) => {\r\n this.filterCboEmployees.strSearch = e.target.value;\r\n this.filterCboEmployees.skip = 0;\r\n this.loadCboEmployees(true);\r\n }}\r\n onLoadMore={(e) => {\r\n this.filterCboEmployees.skip = e.skip;\r\n this.filterCboEmployees.limit = e.limit;\r\n this.loadCboEmployees();\r\n }}\r\n />\r\n \r\n \r\n this.handleChange(\"PeriodTime\", e)}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n {Config.lang(\"DHR_Ngay_bat_dau\")}\r\n \r\n \r\n {(MinDate && moment(MinDate).format(\"DD/MM/YYYY\")) || \"\"}\r\n \r\n \r\n \r\n \r\n {Config.lang(\"DHR_Ngay_ket_thuc\")}\r\n \r\n \r\n {(MaxDate && moment(MaxDate).format(\"DD/MM/YYYY\")) || \"\"}\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n {Config.lang(\"DHR_Tong_so_cong\")}\r\n \r\n \r\n {totalAtt}\r\n
\r\n \r\n {Config.lang(\"DHR_Tong_so_phep\")}\r\n \r\n \r\n {totalLeave}\r\n
\r\n \r\n \r\n {/* */}\r\n \r\n \r\n \r\n (this.el = ref)}\r\n >\r\n
\r\n {MinDate && (\r\n {\r\n const event = arg.event.toPlainObject();\r\n const { att, leave } = event.extendedProps;\r\n return (\r\n \r\n
\r\n
\r\n
\r\n {att || \"\"}\r\n
\r\n
\r\n
\r\n
\r\n {leave || \"\"}\r\n
\r\n
\r\n
\r\n
\r\n );\r\n }}\r\n dayCellDidMount={(evt) => {\r\n const tdDay = evt.el.closest(\".fc-daygrid-day\");\r\n const dateTop = tdDay.querySelector(\r\n \".fc-daygrid-day-top\"\r\n );\r\n const mainContainer = document.createElement(\"div\");\r\n mainContainer.setAttribute(\"data-id\", evt.date);\r\n dateTop.append(mainContainer);\r\n }}\r\n eventDidMount={(evt) => {\r\n const event = evt.event.toPlainObject();\r\n const tdDay = evt.el.closest(\".fc-daygrid-day\");\r\n const tdDayNumber = tdDay.querySelector(\r\n \".fc-daygrid-day-top .fc-daygrid-day-number\"\r\n );\r\n const tdDayEvent = tdDay.querySelector(\r\n \".fc-daygrid-event\"\r\n );\r\n const bgColorByWorkDayType = (event.extendedProps && event.extendedProps.WorkDayType === \"NADate\")\r\n ? \"#FFFFFF\"\r\n : event.extendedProps.ColorCode;\r\n const bgColor = event.backgroundColor\r\n ? event.backgroundColor\r\n : event.extendedProps\r\n ? bgColorByWorkDayType\r\n : \"\";\r\n let newEL = document.createElement(\"img\");\r\n newEL.style.display = \"none\";\r\n if (tdDay && tdDayNumber) {\r\n tdDay.style.backgroundColor = bgColor;\r\n tdDayNumber.style.color = theme.palette.getContrastText(\r\n bgColor\r\n );\r\n tdDayEvent.style.color = theme.palette.getContrastText(\r\n bgColor\r\n );\r\n tdDay.addEventListener(\"mouseenter\", (e) => {\r\n e.target.style.backgroundColor = \"#DFEFFF\";\r\n if (_.isEmpty(this.clicking)) {\r\n newEL.style.display = \"block\";\r\n }\r\n });\r\n tdDay.addEventListener(\"mouseleave\", (e) => {\r\n e.target.style.backgroundColor = bgColor;\r\n if (_.isEmpty(this.clicking)) {\r\n newEL.style.display = \"none\";\r\n }\r\n });\r\n newEL.onclick = (e) => {\r\n this.clicked = true;\r\n if (_.isEmpty(this.clicking)) {\r\n e.target.src = require(\"./group_view_hover.svg\");\r\n }\r\n tdDay.addEventListener(\"click\", (e) => {\r\n if (this.clicked) {\r\n e.preventDefault();\r\n if (_.isEmpty(this.clicking)) {\r\n tdDay.classList.add(\"bgColor\");\r\n this.clicking = tdDay;\r\n }\r\n }\r\n });\r\n };\r\n }\r\n //add icon\r\n let date = new Date(event.start);\r\n let parent = document.querySelector(\r\n `[data-id=\"${date}\"]`\r\n );\r\n newEL.setAttribute(\"date\", date);\r\n newEL.src = require(\"./group_view.svg\");\r\n newEL.addEventListener(\"mouseenter\", (e) => {\r\n if (!this.clicked) {\r\n e.target.src = require(\"./group_view_hover.svg\");\r\n }\r\n });\r\n newEL.addEventListener(\"mouseleave\", (e) => {\r\n if (!this.clicked) {\r\n e.target.src = require(\"./group_view.svg\");\r\n }\r\n });\r\n let findNewEL = document.querySelector(\r\n `[date=\"${date}\"]`\r\n );\r\n if (\r\n _.isNull(findNewEL) &&\r\n event.extendedProps.AmountType\r\n ) {\r\n parent.appendChild(newEL);\r\n }\r\n }}\r\n eventWillUnmount={(evt) => {\r\n const event = evt.event.toPlainObject();\r\n const tdDay = evt.el.closest(\".fc-daygrid-day\");\r\n const tdDayNumber = tdDay.querySelector(\r\n \".fc-daygrid-day-top .fc-daygrid-day-number\"\r\n );\r\n const bgColorByWorkDayType = (event.extendedProps && event.extendedProps.WorkDayType === \"NADate\")\r\n ? \"#FFFFFF\"\r\n : event.extendedProps.ColorCode;\r\n const bgColor = event.backgroundColor\r\n ? event.backgroundColor\r\n : event.extendedProps\r\n ? bgColorByWorkDayType\r\n : \"\";\r\n let date = new Date(event.start);\r\n let newEL = document.querySelector(`[date=\"${date}\"]`);\r\n if (tdDay && tdDayNumber) {\r\n tdDay.removeEventListener(\"mouseenter\", (e) => {\r\n e.target.style.backgroundColor = \"#DFEFFF\";\r\n });\r\n tdDay.removeEventListener(\"mouseleave\", (e) => {\r\n e.target.style.backgroundColor = bgColor;\r\n });\r\n newEL.onclick = (e) => {\r\n this.clicked = true;\r\n e.target.src = require(\"./group_view_hover.svg\");\r\n tdDay.removeEventListener(\"click\", (e) => {\r\n if (this.clicked) {\r\n e.preventDefault();\r\n if (_.isEmpty(this.clicking)) {\r\n tdDay.classList.add(\"bgColor\");\r\n this.clicking = tdDay;\r\n }\r\n }\r\n });\r\n };\r\n }\r\n //add icon\r\n newEL.removeEventListener(\"mouseenter\", (e) => {\r\n if (!this.clicked) {\r\n e.target.src = require(\"./group_view_hover.svg\");\r\n }\r\n });\r\n newEL.removeEventListener(\"mouseleave\", (e) => {\r\n if (!this.clicked) {\r\n e.target.src = require(\"./group_view.svg\");\r\n }\r\n });\r\n }}\r\n firstDay=\"1\"\r\n visibleRange={{\r\n start: MinDate,\r\n end: MaxDate,\r\n }}\r\n // validRange={{\r\n // start: moment(MinDate).format(\"YYYY-MM-DD\"),\r\n // end: moment(MaxDate).format(\"YYYY-MM-DD\")\r\n // }}\r\n plugins={[\r\n dayGridPlugin,\r\n // timeGridPlugin,\r\n interactionPlugin,\r\n // listPlugin,\r\n ]}\r\n dayHeaderFormat={{ weekday: \"long\" }}\r\n displayEventEnd\r\n ref={this.calendarComponentRef}\r\n weekends={this.state.calendar.calendarWeekends}\r\n events={this.state.calendar.calendarEvents}\r\n dateClick={this.handleDateClick}\r\n />\r\n )}\r\n {_.isNull(MinDate) && (\r\n (this.calendarLoading = ref)}\r\n style={{\r\n height: \"100%\",\r\n width: \"100%\",\r\n backgroundColor: \"#ececee\",\r\n }}\r\n />\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
{currentMonth || \"\"}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n {dataNote.length > 0\r\n ? dataNote.map((item, index) => {\r\n const ColorCodeNote = item.WorkDayType === \"NADate\" ? \"#FFFFFF\" : item.ColorCode;\r\n return (\r\n \r\n \r\n \r\n {item.WorkDayTypeName}\r\n \r\n \r\n );\r\n })\r\n : null}\r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default compose(\r\n connect(\r\n (state) => ({}),\r\n (dispatch) => ({\r\n generalActions: bindActionCreators(generalActions, dispatch),\r\n w29F2100Actions: bindActionCreators(w29F2100Actions, dispatch),\r\n })\r\n ),\r\n withStyles(styles, { withTheme: true })\r\n)(W29F2100);\r\n","/**\r\n * @copyright 2020 @ DigiNet\r\n * @author HUYTRAN\r\n * @create 10/14/2020\r\n * @Example\r\n */\r\nimport React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport * as w29F2100Actions from \"../../../../redux/W2X/W29F2100/W29F2100_actions\";\r\nimport { bindActionCreators, compose } from \"redux\";\r\nimport Config from \"../../../../config\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport * as generalActions from \"../../../../redux/general/general_actions\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\n\r\nimport \"./W29F2100.scss\";\r\nimport _ from \"lodash\";\r\nimport { Drawer, IconButton, Tab, Tabs, Typography } from \"@material-ui/core\";\r\nimport TabContent, { TabPanel } from \"../../../common/tabs/tab-content\";\r\nimport { LoadPanel } from \"devextreme-react/load-panel\";\r\nconst styles = (theme) => ({\r\n divIcon: {\r\n width: 30,\r\n height: 30,\r\n },\r\n headerToolbar: {\r\n height: 50,\r\n top: 0,\r\n width: \"100%\",\r\n padding: 15,\r\n display: \"flex\",\r\n justifyContent: \"space-between\",\r\n flexDirection: \"row\",\r\n backgroundColor: \"#EDEEF3\",\r\n alignItems: \"center\",\r\n },\r\n closeButton: {\r\n alignSelf: \"start\",\r\n maxHeight: \"calc(100% - 30px)\",\r\n },\r\n bodyContainer: {\r\n backgroundColor: \"#FFFFFF\",\r\n height: \"100%\",\r\n width: \"100%\",\r\n },\r\n container: {\r\n\r\n },\r\n tabContent: {\r\n padding: \"0px 24px\",\r\n paddingTop: 20,\r\n },\r\n drawerHeader: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n padding: theme.spacing(0, 1),\r\n // necessary for content to be below app bar\r\n ...theme.mixins.toolbar,\r\n justifyContent: 'flex-end',\r\n },\r\n drawer: {\r\n width: \"40%\",\r\n [theme.breakpoints.down('sm')]: {\r\n width: \"100%\",\r\n },\r\n flexShrink: 0,\r\n },\r\n drawerPaper: {\r\n width: \"40%\",\r\n [theme.breakpoints.down('sm')]: {\r\n width: \"100%\",\r\n },\r\n top: 50,\r\n boxShadow: \"0px 4px 4px rgba(0, 0, 0, 0.25)\",\r\n borderRadius: \"4px\",\r\n },\r\n text: {\r\n fontSize: 16,\r\n fontWeight: 500,\r\n color: \"#151a30\",\r\n },\r\n textBold: {\r\n fontSize: \"16px\",\r\n fontWeight: 700,\r\n color: \"#555868\",\r\n },\r\n textTitle: {\r\n fontSize: \"14px\",\r\n fontWeight: 500,\r\n color: \"#7f828e\",\r\n },\r\n titleNumber: {\r\n flexDirection: \"row-reverse\",\r\n display: \"flex\",\r\n color: \"#0095ff\",\r\n fontSize: \"1rem\",\r\n fontWeight: 700,\r\n }\r\n});\r\nclass W29F2100PopupDetail extends React.PureComponent {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n indexTab: 0,\r\n obj: {},\r\n arrInfo: [],\r\n arrShift: [],\r\n loadDetailWorkDay: false,\r\n dataDetailWorkDay: []\r\n };\r\n this.totalRef = null;\r\n }\r\n onCloseModal = () => {\r\n const { onClose } = this.props;\r\n this.setState({\r\n obj: {},\r\n arrInfo: [],\r\n arrShift: [],\r\n dataDetailWorkDay: []\r\n });\r\n if (onClose) onClose();\r\n };\r\n handleChange = (e, value) => {\r\n this.setState({ indexTab: value });\r\n };\r\n checkIsNull = (str, key) => {\r\n if (str !== null && str !== \"\" && str !== undefined) {\r\n return str + key;\r\n }\r\n return \"\";\r\n };\r\n loadDetail = () => {\r\n const { dateClick, EmployeeID } = this.props;\r\n this.setState({ loadDetailWorkDay: true });\r\n if (Config.isEmpty(dateClick)) return null;\r\n const param = {\r\n AttendanceDate: dateClick.dateStr,\r\n EmployeeID,\r\n Language: Config.language || \"84\",\r\n };\r\n this.props.w29F2100Actions.getDetailWorkday(param, (error, data) => {\r\n this.setState({ loadDetailWorkDay: false });\r\n if (error) {\r\n let message = error.message || Config.lang(\"DHR_Loi_chua_xac_dinh\");\r\n Config.popup.show(\"INFO\", message);\r\n return false;\r\n }\r\n if (data) {\r\n this.loadData(data);\r\n }\r\n });\r\n };\r\n loadData = (data) => {\r\n if (data.length > 0) {\r\n let obj = {\r\n title: `${data[0].EmployeeName} - ${data[0].AttendanceDate}`,\r\n TotalOriNormal: data[0].TotalOriNormal || \"\",\r\n TotalLeave: data[0].TotalLeave || \"\",\r\n };\r\n obj.info = {\r\n AttendanceCardNo: data[0].AttendanceCardNo || \"\",\r\n DutyName: data[0].DutyName || \"\",\r\n DepartmentName: data[0].DepartmentName || \"\",\r\n ProjectName: data[0].ProjectName || \"\",\r\n };\r\n obj.shifts = data.map((item) => {\r\n return {\r\n ShiftName: item.ShiftName || \"\",\r\n ShiftID: item.ShiftID || \"\",\r\n TimeWork: item.TimeWork || \"\",\r\n DateOn1:\r\n (item.DateOn1 && Config.convertDate(item.DateOn1, null, \"DD/MM/YYYY\")) || \"\",\r\n TimeOn1: item.TimeOn1 || \"\",\r\n DateOff1:\r\n (item.DateOff1 && Config.convertDate(item.DateOff1, null, \"DD/MM/YYYY\")) || \"\",\r\n TimeOff1: item.TimeOff1 || \"\",\r\n DateOn2:\r\n (item.DateOn2 && Config.convertDate(item.DateOn2, null, \"DD/MM/YYYY\")) || \"\",\r\n TimeOn2: item.TimeOn2 || \"\",\r\n DateOff2:\r\n (item.DateOff2 && Config.convertDate(item.DateOff2, null, \"DD/MM/YYYY\")) || \"\",\r\n TimeOff2: item.TimeOff2 || \"\",\r\n DateOn3:\r\n (item.DateOn3 && Config.convertDate(item.DateOn3, null, \"DD/MM/YYYY\")) || \"\",\r\n TimeOn3: item.TimeOn3 || \"\",\r\n DateOff3:\r\n (item.DateOff3 && Config.convertDate(item.DateOff3, null, \"DD/MM/YYYY\")) || \"\",\r\n TimeOff3: item.TimeOff3 || \"\",\r\n DateOn4:\r\n (item.DateOn4 && Config.convertDate(item.DateOn4, null, \"DD/MM/YYYY\")) || \"\",\r\n TimeOn4: item.TimeOn4 || \"\",\r\n DateOff4:\r\n (item.DateOff4 && Config.convertDate(item.DateOff4, null, \"DD/MM/YYYY\")) || \"\",\r\n TimeOff4: item.TimeOff4 || \"\",\r\n DateOn5:\r\n (item.DateOn5 && Config.convertDate(item.DateOn5, null, \"DD/MM/YYYY\")) || \"\",\r\n TimeOn5: item.TimeOn5 || \"\",\r\n DateOff5:\r\n (item.DateOff5 && Config.convertDate(item.DateOff5, null, \"DD/MM/YYYY\")) || \"\",\r\n TimeOff5: item.TimeOff5 || \"\",\r\n // Time1: item.Time1 || \"\",\r\n // Time2: item.Time2 || \"\",\r\n // Time3: item.Time3 || \"\",\r\n // Time4: item.Time4 || \"\",\r\n // Time5: item.Time5 || \"\",\r\n NormalHours: item.NormalHours || \"\",\r\n OTHours: item.OTHours || \"\",\r\n };\r\n });\r\n let arrInfo = [\r\n {\r\n title: Config.lang(\"DHR_Ma_the_cham_cong\"),\r\n value: obj.info.AttendanceCardNo,\r\n },\r\n {\r\n title: Config.lang(\"DHR_Chuc_vu\"),\r\n value: obj.info.DutyName,\r\n },\r\n {\r\n title: Config.lang(\"DHR_Phong_ban\"),\r\n value: obj.info.DepartmentName,\r\n },\r\n {\r\n title: Config.lang(\"DHR_Du_an\"),\r\n value: obj.info.ProjectName,\r\n },\r\n ];\r\n\r\n let arrShift = [];\r\n obj.shifts.map((item) => {\r\n arrShift.push([\r\n {\r\n title: Config.lang(\"DHR_Ten_ca\"),\r\n value: item.ShiftName,\r\n },\r\n {\r\n title: Config.lang(\"DHR_Ma_ca\"),\r\n value: item.ShiftID,\r\n },\r\n {\r\n title: Config.lang(\"DHR_Thoi_gian\"),\r\n value: item.TimeWork,\r\n },\r\n {\r\n title: Config.lang(\"DHR_Ngay_chot_van_tay\"),\r\n Time1: `${this.checkIsNull(item.DateOn1, \",\")} ${this.checkIsNull(\r\n item.TimeOn1,\r\n \";\"\r\n )} ${this.checkIsNull(item.DateOff1, \",\")} ${item.TimeOff1}`,\r\n Time2: `${this.checkIsNull(item.DateOn2, \",\")} ${this.checkIsNull(\r\n item.TimeOn2,\r\n \";\"\r\n )} ${this.checkIsNull(item.DateOff2, \",\")} ${item.TimeOff2}`,\r\n Time3: `${this.checkIsNull(item.DateOn3, \",\")} ${this.checkIsNull(\r\n item.TimeOn3,\r\n \";\"\r\n )} ${this.checkIsNull(item.DateOff3, \",\")} ${item.TimeOff3}`,\r\n Time4: `${this.checkIsNull(item.DateOn4, \",\")} ${this.checkIsNull(\r\n item.TimeOn4,\r\n \";\"\r\n )} ${this.checkIsNull(item.DateOff4, \",\")} ${item.TimeOff4}`,\r\n Time5: `${this.checkIsNull(item.DateOn5, \",\")} ${this.checkIsNull(\r\n item.TimeOn5,\r\n \";\"\r\n )} ${this.checkIsNull(item.DateOff5, \",\")} ${item.TimeOff5}`,\r\n },\r\n {\r\n title: Config.lang(\"DHR_So_gio\"),\r\n value: item.NormalHours,\r\n },\r\n {\r\n title: Config.lang(\"DHR_So_gio_tang_ca\"),\r\n value: item.OTHours,\r\n },\r\n ]);\r\n return item;\r\n });\r\n this.setState({ obj, arrInfo, arrShift });\r\n }\r\n };\r\n\r\n // componentDidMount() {\r\n // this.loadDetail();\r\n // }\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.showW29F2100 !== this.props.showW29F2100) {\r\n this.loadDetail();\r\n }\r\n }\r\n render() {\r\n const { indexTab, obj, arrInfo, arrShift, loadDetailWorkDay } = this.state;\r\n let { classes, showW29F2100 } = this.props;\r\n return (\r\n \r\n\r\n \r\n {/* */}\r\n \r\n
\r\n {obj.title}\r\n\r\n \r\n \r\n \r\n
\r\n
\r\n this.handleChange(e, value)}\r\n // textColor=\"primary\"\r\n indicatorColor={\"primary\"}\r\n textColor={\"primary\"}\r\n style={{ fontSize: \"16px\" }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n {Config.lang(\"DHR_Cong_hanh_chinh_trong_ngay\")}:\r\n
\r\n \r\n {obj?.TotalOriNormal}\r\n
\r\n
\r\n
\r\n \r\n {Config.lang(\"DHR_Nghi_phep_trong_ngay\")}:\r\n
\r\n \r\n {obj?.TotalLeave}\r\n
\r\n
\r\n {/* ------------------ title -------------------*/}\r\n
\r\n \r\n {Config.lang(\"DHR_Thong_tin_nhan_su\")}\r\n
\r\n \r\n {/* ------------------ title -------------------*/}\r\n {arrInfo.length > 0 && arrInfo.map((item, index) => {\r\n return (\r\n
\r\n \r\n {item.title}:\r\n
\r\n \r\n {item.value}\r\n \r\n \r\n );\r\n })}\r\n {/* ------------------ title -------------------*/}\r\n\r\n {/* ------------------ title -------------------*/}\r\n {arrShift.length > 0 && arrShift.map((val, idx) => {\r\n return (\r\n \r\n
\r\n \r\n {Config.lang(\"DHR_Ca_lam_viec\")}\r\n
\r\n \r\n {val.map((item, index) => {\r\n return (\r\n
\r\n \r\n {item.title}:\r\n
\r\n {_.isUndefined(item.value) ? (\r\n \r\n
{item.Time1}
\r\n
{item.Time2}
\r\n
{item.Time3}
\r\n
{item.Time4}
\r\n
{item.Time5}
\r\n \r\n ) : (\r\n \r\n {item.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
asjdoasjoajsodjasd
\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 compose(\r\n connect(\r\n (state) => ({}),\r\n (dispatch) => ({\r\n generalActions: bindActionCreators(generalActions, dispatch),\r\n w29F2100Actions: bindActionCreators(w29F2100Actions, dispatch),\r\n })\r\n ),\r\n withStyles(styles, { withTheme: true })\r\n)(W29F2100PopupDetail);\r\n","import React, {useState, useEffect} from 'react';\r\nimport {Col, Row} from \"react-bootstrap\";\r\nimport {makeStyles} from \"diginet-core-ui/theme\";\r\nimport ActionToolbar from \"../../../common/toolbar/action-toolbar\";\r\nimport Config from \"../../../../config\";\r\nimport {Button, ButtonIcon, DateRangePicker, Dropdown, Tooltip, Typography} from \"diginet-core-ui/components\";\r\nimport GridContainer from \"../../../grid-container/grid-container\";\r\nimport _ from \"lodash\";\r\nimport {Column} from \"devextreme-react/data-grid\";\r\nimport UserImage from \"../../../common/user/user-image\";\r\nimport UserName from \"../../../common/user/user-name\";\r\nimport {connect} from \"react-redux\";\r\nimport {bindActionCreators} from \"redux\";\r\nimport * as generalActions from \"../../../../redux/general/general_actions\";\r\nimport * as W29F2085Actions from \"../../../../redux/W2X/W29F2085/W29F2085_actions\";\r\nimport Filter from \"../../../filter/filter\";\r\nimport Status from \"../../../common/status/status\";\r\nimport W84F3005 from \"../../../W8X/W84/W84F3005/W84F3005\";\r\nimport W29F2086 from \"../W29F2086/W29F2086\";\r\nimport moment from \"moment\";\r\n\r\nconst useStyles = makeStyles(() => ({\r\n dateInfo: {\r\n display: 'flex',\r\n alignItems: 'center'\r\n },\r\n divText: {\r\n fontWeight: 500,\r\n },\r\n truncatedText: {\r\n maxWidth: 450,\r\n whiteSpace: \"nowrap\",\r\n overflow: \"hidden\",\r\n textOverflow: \"ellipsis\"\r\n }\r\n}));\r\nconst FormID = \"W29F2085\";\r\nconst Language = Config.language || \"84\";\r\n\r\nconst W29F2085 = ({w29F2085Actions, generalActions, getCboAppStatus, location}) => {\r\n const classes = useStyles();\r\n const [dataGrid, setDataGrid] = useState({rows: [], total: 0});\r\n\r\n const [paging, setPaging] = useState({skip: 0, limit: 10});\r\n\r\n const [isLoadingDataGrid, setLoadingDataGrid] = useState(false);\r\n const [isLoadingCbAppStatus, setLoadingCbAppStatus] = useState(false);\r\n\r\n const [iPermission, setIsPermission] = useState(0);\r\n\r\n const [showW29F2086, setShowW29F2086] = useState({isShowing: false, data: {}, mode: \"\"});\r\n const [showW84F3005, setShowW84F3005] = useState({isShowing: false, transID: \"\"})\r\n\r\n const [filters, setFilters] = useState({\r\n AppStatusID: \"\",\r\n DateFrom: null,\r\n DateTo: null,\r\n });\r\n\r\n const [strFiltering, setStrFiltering] = useState(\"reset\");\r\n\r\n useEffect(() => {\r\n (async () => {\r\n await generalActions.getPermission(\"W29F2085\", (isPer) => {\r\n setIsPermission(isPer);\r\n });\r\n })();\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, []);\r\n\r\n const omitNullEmptyObj = (obj) => _(obj).mapValues(_.toString).omitBy(_.isEmpty);\r\n\r\n const loadGrid = () => {\r\n const {DateFrom, DateTo, AppStatusID} = filters;\r\n const {skip, limit} = paging;\r\n const params = {\r\n FormID,\r\n Language,\r\n DateFrom,\r\n DateTo,\r\n ShiftID: \"\",\r\n TransID: \"\",\r\n AppStatusID,\r\n skip,\r\n limit\r\n };\r\n setLoadingDataGrid(true);\r\n w29F2085Actions.loadDataGrid(omitNullEmptyObj(params), (err, data) => {\r\n setLoadingDataGrid(false);\r\n if (err) {\r\n Config.popup.show(\"ERROR\", err);\r\n return false;\r\n }\r\n if (data) {\r\n const rows = _.get(data, \"rows\", []);\r\n const total = _.get(data, \"total\", 0);\r\n setDataGrid({rows, total});\r\n }\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n loadGrid();\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [paging.skip, paging.limit, strFiltering]);\r\n\r\n useEffect(() => {\r\n setLoadingCbAppStatus(true)\r\n generalActions.getCboAppStatus({FormID: \"STANDARD\", Language}, (err) => {\r\n setLoadingCbAppStatus(false)\r\n if (err) {\r\n Config.popup.show(\"ERROR\", err);\r\n return false;\r\n }\r\n })\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, []);\r\n\r\n useEffect(() => {\r\n Config.callChildForm({\r\n FormID: \"W29F2085\",\r\n keyExpr: \"TransID\",\r\n data: dataGrid && dataGrid.rows ? dataGrid.rows : [],\r\n onAction: (e, data) => onOpenW29F2086(\"view\", data),\r\n }, {location});\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n });\r\n\r\n const onChangePage = (page) => setPaging({...paging, skip: page * paging.limit});\r\n\r\n const onChangePerPage = (perPage) => setPaging({skip: 0, limit: perPage});\r\n\r\n const onFilterChange = (key, e) => {\r\n const value = _.get(e, \"value\", _.get(e, \"target.value\", \"\"));\r\n let filtersValue;\r\n if (key === \"Date\") {\r\n filtersValue = {\r\n ...filters,\r\n DateFrom: _.get(value, \"[0]\", null),\r\n DateTo: _.get(value, \"[1]\", null)\r\n }\r\n } else {\r\n filtersValue = {...filters, [key]: value};\r\n }\r\n if (!omitNullEmptyObj(filtersValue).size()) setStrFiltering(\"reset\");\r\n setFilters(filtersValue);\r\n };\r\n\r\n const onFiltering = () => setStrFiltering(_.join(_.values(filters), \"-\"));\r\n\r\n const onDelete = (data) => {\r\n const TransID = _.get(data, \"TransID\", \"\");\r\n Config.popup.show(\"YES_NO\", Config.lang(\"Ban_co_chac_muon_xoa?\"), () => {\r\n w29F2085Actions.deleteRow({TransID}, (err) => {\r\n if (err) {\r\n Config.popup.show(\"ERROR\", err);\r\n return false;\r\n }\r\n Config.notify.show(\"success\", Config.lang(\"Xoa_thanh_cong\"), 3000);\r\n setStrFiltering(`deleted ${TransID}`);\r\n })\r\n });\r\n };\r\n\r\n const onCancel = (data) => {\r\n const attendanceDate = moment(data?.AttendanceDate, \"DD/MM/YYYY\").isValid() ?\r\n moment(data.AttendanceDate, \"DD/MM/YYYY\").format(\"YYYY-MM-DD\") : null;\r\n const params = {\r\n TransID: data?.TransID ?? \"\",\r\n FormID: FormID,\r\n AttendanceDate: attendanceDate,\r\n ApprovalLevel: data?.ApprovalLevel || null,\r\n };\r\n\r\n Config.popup.show(\"YES_NO\", Config.lang(\"Ban_co_muon_huy_phieu_nay?\"), () => {\r\n w29F2085Actions.onCancel(params, (err, data) => {\r\n if (err) {\r\n Config.popup.show(\"ERROR\", err);\r\n return false;\r\n }\r\n if(data?.Status === 1) {\r\n Config.popup.show(\"INFO\", data.Message);\r\n return false;\r\n }\r\n Config.notify.show(\"success\", Config.lang(\"Huy_thanh_cong\"), 3000);\r\n loadGrid();\r\n })\r\n });\r\n\r\n };\r\n\r\n const onOpenW29F2086 = (mode = \"add\", data = {}) => setShowW29F2086({isShowing: true, data, mode});\r\n\r\n const onCloseW29F2086 = (isReload = false) => {\r\n if (isReload) setStrFiltering(\"reload\");\r\n setShowW29F2086({isShowing: false, data: {}, mode: \"\"})\r\n }\r\n\r\n const renderEmpProfile = (e) => {\r\n const {data} = e.row;\r\n const dataEmployee = Config.getUser({UserID: _.get(data, \"CreateUserID\", \"\")});\r\n return (\r\n
\r\n \r\n
\r\n
\r\n \r\n {dataEmployee?.EmployeeID || \"\"}\r\n
\r\n
\r\n
\r\n );\r\n };\r\n\r\n const renderInfo = (e) => {\r\n const {data} = e.row;\r\n const descContent = [Config.lang(\"Ly_do\"), Config.lang(\"Ghi_chu\")];\r\n const dataInfo = _.filter([\r\n {\r\n label: Config.lang(\"Ngay\"),\r\n value: data?.AttendanceDate\r\n },\r\n {\r\n label: descContent[0],\r\n value: data?.Reason\r\n },\r\n {\r\n label: descContent[1],\r\n value: data?.ApprovalNote\r\n }\r\n ], item => !!item.value);\r\n return <>\r\n {data?.TransTypeID === \"cancel\" ? (\r\n {Config.lang(\"Huy_di_tre_ve_som\")}\r\n ) : (\r\n {Config.lang(\"Dang_ky_di_tre_ve_som\")}\r\n )}\r\n {_.map(dataInfo, (item, i) => {\r\n const isDesContent = _.includes(descContent, item.label);\r\n return (\r\n
\r\n
{item.label}
\r\n
:
\r\n
{item.value}
\r\n
\r\n
)\r\n })}\r\n ;\r\n };\r\n\r\n const renderAppStatus = (e) => {\r\n const {data} = e.row;\r\n const status = getCboAppStatus.find(rs => Number(rs.AppStatusID) === Number(data.AppStatusID));\r\n return status && ;\r\n }\r\n\r\n const renderActions = (e) => {\r\n const {\r\n data,\r\n data:{IsHideCancel}\r\n } = e.row;\r\n const getCreateUserID = _.get(data, \"CreateUserID\", \"\");\r\n const userID = Config.getHREmployeeID();\r\n const getAppStatusID = +_.get(data, \"AppStatusID\", 1);\r\n const isDisabledView = (iPermission < 3 && userID !== getCreateUserID) || getAppStatusID !== 0;\r\n const isDisabledDelete = (iPermission < 4 && userID !== getCreateUserID) || getAppStatusID !== 0;\r\n const isDisabledCancel = iPermission < 3 || getAppStatusID !== 2;\r\n\r\n return (
\r\n \r\n setShowW84F3005({isShowing: true, transID: _.get(data, \"TransID\", \"\")})}\r\n />\r\n \r\n \r\n onOpenW29F2086(\"edit\", data)}\r\n />\r\n \r\n \r\n onDelete(data)}\r\n />\r\n \r\n {!IsHideCancel && \r\n \r\n onCancel(data)}\r\n />\r\n \r\n }\r\n
)\r\n }\r\n\r\n const renderFilter = () => {\r\n return (\r\n {\r\n return (\r\n <>\r\n \r\n \r\n onFilterChange(\"Date\", e)}\r\n placeholder={`${Config.lang('Tu_ngay')} - ${Config.lang('Den_ngay')}`}\r\n returnFormat={'YYYY-MM-DD'}\r\n viewType={'outlined'}\r\n />\r\n \r\n \r\n \r\n \r\n onFilterChange(\"AppStatusID\", e)}\r\n loading={isLoadingCbAppStatus}\r\n dataSource={getCboAppStatus}\r\n value={filters.AppStatusID}\r\n />\r\n \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 {showW29F2086.isShowing ? : \"\"}\r\n {showW84F3005.isShowing ?\r\n setShowW84F3005({isShowing: false, transID: \"\"})}\r\n FormID={\"W29F2085\"} TransID={showW84F3005.transID}/> : \"\"}\r\n
{renderFilter()}
\r\n \r\n onOpenW29F2086(\"add\")}\r\n />\r\n \r\n onOpenW29F2086(\"view\", data)}\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 connect(state => ({\r\n getCboAppStatus: state.general.getCboAppStatus,\r\n}), dispatch => ({\r\n generalActions: bindActionCreators(generalActions, dispatch),\r\n w29F2085Actions: bindActionCreators(W29F2085Actions, dispatch)\r\n}))(W29F2085);","/**\r\n * @copyright 2019 @ DigiNet\r\n * @author NAMDANG\r\n * @create 10/25/2021\r\n * @Example\r\n */\r\n\r\nimport React, {useEffect, useState, useRef} from 'react';\r\nimport {bindActionCreators, compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport * as generalActions from \"../../../../redux/general/general_actions\";\r\n\r\nimport * as W29F2086Actions from \"../../../../redux/W2X/W29F2086/W29F2086_actions\";\r\nimport _ from \"lodash\";\r\n\r\nimport {Col, FormGroup, Row} from \"react-bootstrap\";\r\nimport {Column} from \"devextreme-react/data-grid\";\r\nimport {\r\n Accordion,\r\n AccordionSummary,\r\n AccordionDetails,\r\n ModalHeader,\r\n Modal,\r\n ModalBody,\r\n ModalFooter,\r\n Button,\r\n ButtonIcon,\r\n TextInput, DatePicker, Attachment,\r\n} from \"diginet-core-ui/components\";\r\nimport Config from \"../../../../config\";\r\nimport CDN from \"../../../CDN\";\r\nimport W09F6000 from \"../../../W0X/W09/W09F6000/W09F6000\";\r\nimport GridActionBar from \"../../../grid-container/grid-actionbar\";\r\nimport GridContainer from \"../../../grid-container/grid-container\";\r\nimport {MForm} from \"../../../common/form-material\";\r\nimport HeadClick from \"../../../grid-container/head-click\";\r\nimport moment from \"moment\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nconst _initDataForm = {\r\n TransID : \"\",\r\n AttendanceDate: \"\",\r\n Reason : \"\",\r\n Note : \"\",\r\n};\r\n\r\nconst W29F2086 = (props) => {\r\n const {open, mode, iPermissionW29F2085, data: datForm, onClose} = props;\r\n const Language = Config.language || \"84\";\r\n const [dataForm, setDataForm] = useState(_initDataForm);\r\n const [dataGridEmployee, setDataGridEmployee] = useState([]);\r\n const [dataOldAttachments, setDataOldAttachments] = useState([]);\r\n const [errors, setErrors] = useState({\r\n AttendanceDate: \"\"\r\n });\r\n const [isLoadingForm, setLoadingForm] = useState(false);\r\n const [isLoadingGrid, setLoadingGrid] = useState(false);\r\n const [isLoadingAttachment, setLoadingAttachment] = useState(false);\r\n const [isShowModalEmployeeChosen, setShowModalEmployeeChosen] = useState(false);\r\n const [filterGridValue, setFilterGridValue] = useState([]);\r\n const [isExpand, setIsExpand] = useState(false);\r\n\r\n const editting = useRef(0);\r\n const attachments = useRef([]);\r\n const deletedFile = useRef([]);\r\n const selectedRange = useRef(null);\r\n const filterColIndx = useRef(null);\r\n const filterGrid = useRef({});\r\n const isChanged = useRef(false);\r\n let dataGrid = useRef(null);\r\n const timer = useRef(0);\r\n\r\n useEffect(() => {\r\n if (mode !== \"add\") {\r\n loadMaster();\r\n loadDetail();\r\n loadAttachments();\r\n }\r\n setIsExpand(mode !== \"add\");\r\n return function deleteD09T6668() {\r\n props.w29f2086Actions.deleteD09T6668(\r\n { EmployeeID: Config.profile.HREmployeeID, FormID: \"W29F2086\" },\r\n error => {\r\n if (error) Config.popup.show(\"ERROR\", error);\r\n }\r\n );\r\n };\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (isChanged.current) {\r\n onChooseAttendanDate();\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [dataForm?.AttendanceDate]);\r\n\r\n const loadMaster = () => {\r\n const params = {\r\n Language: Language,\r\n FormID : \"W29F2085\",\r\n TransID : datForm?.TransID ?? \"\",\r\n Mode : 0,\r\n };\r\n setLoadingForm(true);\r\n props.w29f2086Actions.getForm(params, (error, result) => {\r\n setLoadingForm(false);\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (result) {\r\n const attendanceDate = moment(result?.[0]?.AttendanceDate ?? \"\").isValid() ?\r\n moment(result?.[0]?.AttendanceDate).format('YYYY-MM-DD') : \"\";\r\n setDataForm({\r\n TransID : result?.[0]?.TransID ?? \"\",\r\n AttendanceDate: attendanceDate,\r\n Reason : result?.[0]?.Reason ?? \"\",\r\n Note : result?.[0]?.Note ?? \"\",\r\n })\r\n }\r\n })\r\n };\r\n\r\n const loadDetail = () => {\r\n const params = {\r\n Language: Language,\r\n FormID : \"W29F2085\",\r\n TransID : datForm?.TransID ?? \"\",\r\n Mode : 1,\r\n };\r\n setLoadingForm(true);\r\n props.w29f2086Actions.getForm(params, (error, result) => {\r\n setLoadingForm(false);\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (result) {\r\n const dt = result?.map(i => ({\r\n ...i,\r\n IsUsed: i?.IsUsed ?? false\r\n })) || [];\r\n setDataGridEmployee(dt || []);\r\n }\r\n })\r\n };\r\n\r\n const loadAttachments = () => {\r\n const param = {\r\n KeyID : datForm?.TransID ?? \"\",\r\n TableName: \"D75T4075\"\r\n };\r\n setLoadingAttachment(true);\r\n props.generalActions.getAttachmentsByTransID(param, (error, data) => {\r\n setLoadingAttachment(false);\r\n if (error) {\r\n Config.popup.show('ERROR', error);\r\n return false;\r\n }\r\n setDataOldAttachments(data || []);\r\n });\r\n };\r\n\r\n const onChosenEmployees = () => {\r\n if(dataGrid) {\r\n dataGrid.instance.saveEditData();\r\n const dataSource = dataGrid.instance.option(\"dataSource\");\r\n const params = {\r\n FormID : \"W29F2086\",\r\n AttendanceDate: dataForm?.AttendanceDate || null,\r\n Note : dataForm?.Note ?? \"\",\r\n Reason : dataForm?.Reason ?? \"\",\r\n TransID : datForm?.TransID || \"\",\r\n };\r\n setShowModalEmployeeChosen(false);\r\n setLoadingGrid(true);\r\n props.w29f2086Actions.loadChooseEmployee(params, (error, result) => {\r\n setLoadingGrid(false);\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (result) {\r\n let employees = _.uniqBy([...dataSource, ...result], \"EmployeeID\");\r\n employees = employees.map(i => ({\r\n ...i,\r\n IsUsed: i?.IsUsed ?? false\r\n }));\r\n setDataGridEmployee(employees);\r\n setIsExpand(true);\r\n }\r\n });\r\n }\r\n };\r\n\r\n const onChooseAttendanDate = () => {\r\n const params = {\r\n FormID : \"W29F2086\",\r\n AttendanceDate: dataForm?.AttendanceDate || null,\r\n Note : dataForm?.Note ?? \"\",\r\n Reason : dataForm?.Reason ?? \"\",\r\n TransID : datForm?.TransID || \"\",\r\n };\r\n setLoadingGrid(true);\r\n props.w29f2086Actions.loadChooseEmployee(params, (error, result) => {\r\n setLoadingGrid(false);\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (result) {\r\n const dt = result?.map(i => ({\r\n ...i,\r\n IsUsed: i?.IsUsed ?? false\r\n })) || [];\r\n setDataGridEmployee(dt || []);\r\n }\r\n });\r\n };\r\n\r\n const onDeleteRow = (e) => {\r\n if (!e) return null;\r\n if(dataGrid) {\r\n dataGrid.instance.saveEditData();\r\n const dataSource = dataGrid.instance.option(\"dataSource\");\r\n const {data} = e.row;\r\n const params = {\r\n FormID: \"W29F2085\",\r\n EmployeeID: data?.EmployeeID ?? \"\"\r\n };\r\n Config.popup.show(\"YES_NO\", Config.lang(\"Ban_co_chac_chan_muon_xoa_du_lieu_nay\"), () => {\r\n setLoadingGrid(true);\r\n props.w29f2086Actions.deleteRow(params, (error, result) => {\r\n setLoadingGrid(false);\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (result) {\r\n const filterGrid = dataSource.filter(i => i.EmployeeID !== data?.EmployeeID);\r\n setDataGridEmployee(filterGrid || []);\r\n }\r\n });\r\n });\r\n }\r\n };\r\n\r\n const onClosePopup = (isReload = false) => {\r\n if (onClose) onClose(isReload);\r\n };\r\n\r\n const saveGrid = () => {\r\n if(dataGrid) {\r\n dataGrid.instance.saveEditData().done(() => {\r\n setTimeout(() => {\r\n if (editting.current === 0) {\r\n onSave();\r\n } else {\r\n editting.current = 0;\r\n }\r\n }, 200);\r\n });\r\n }\r\n\r\n };\r\n\r\n const onChangeAttachments = (e) => {\r\n attachments.current = e.allNewAttached ? e.allNewAttached : [];\r\n if (e.removedAttached && e.removedAttached.length > 0) {\r\n deletedFile.current = [...e.removedAttached];\r\n const _arrRemove = deletedFile.current.map((d) => d.AttachmentID);\r\n const dataNew = [...dataOldAttachments].filter(att => _arrRemove.indexOf(att.AttachmentID) < 0);\r\n setDataOldAttachments(dataNew);\r\n }\r\n };\r\n\r\n const _getAttachments = (file) => {\r\n const dataFile = file?.data?.paths || [];\r\n const listAttachments = Config.helpers.getFileInfomations(dataFile);\r\n let arrAttachment = [];\r\n listAttachments.forEach((att) => {\r\n arrAttachment.push({\r\n URL : att.url ? att.url : \"\",\r\n FileName: att.fileName ? att.fileName : \"\",\r\n FileSize: att.fileSize ? att.fileSize : \"\",\r\n FileExt : att.fileName ? att.fileName.split('.').pop() : \"\"\r\n });\r\n });\r\n if (dataOldAttachments && dataOldAttachments.length > 0) {\r\n arrAttachment = dataOldAttachments.concat(arrAttachment);\r\n }\r\n return arrAttachment;\r\n };\r\n\r\n const _uploadFile = (files, isAsync, cb) => {\r\n if (isAsync) {\r\n return CDN.uploadFileSync(files);\r\n } else {\r\n return CDN.uploadFile(files, null, cb);\r\n }\r\n };\r\n\r\n const _removeCDN = () => {\r\n if (deletedFile.current && deletedFile.current.length > 0) {\r\n deletedFile.current.forEach((e) => {\r\n const path = e.URL.split(\"=\");\r\n if (path && path.length > 1) {\r\n const params = {\r\n path: path[1]\r\n };\r\n CDN.removeFile(params);\r\n }\r\n });\r\n deletedFile.current = [];\r\n }\r\n };\r\n\r\n const onSave = async () => {\r\n const dataSource = dataGrid.instance.option(\"dataSource\");\r\n const dataT = JSON.parse(JSON.stringify(dataSource));\r\n const dataNew = dataT.map((item) => {\r\n item.IsUsed = +!!item.IsUsed;\r\n item.LateMinute = item.LateMinute || 0;\r\n item.EarlyMinute = item.EarlyMinute || 0;\r\n item.InLateMinutes = item.InLateMinutes || 0;\r\n item.OutEarlyMinutes = item.OutEarlyMinutes || 0;\r\n return item;\r\n });\r\n const validateMasterRules = [\r\n {\r\n name : \"AttendanceDate\",\r\n rules: [\"isRequired\"],\r\n value: dataForm.AttendanceDate || \"\"\r\n }\r\n ];\r\n const validateForm = MForm.formValidation(validateMasterRules);\r\n if (Object.keys(validateForm).length > 0) {\r\n setErrors(validateForm);\r\n return;\r\n }\r\n\r\n const dataResUploadFile = await _uploadFile(attachments.current, true);\r\n const arrAttachments = _getAttachments(dataResUploadFile);\r\n\r\n if (dataNew.find(i => !i.LateMinute && !i.EarlyMinute && !i.InLateMinutes && !i.OutEarlyMinutes)) {\r\n const dtGrid = dataNew.filter(i => i.LateMinute || i.EarlyMinute || i.InLateMinutes || i.OutEarlyMinutes);\r\n Config.popup.show(\"YES_NO\", Config.lang(\"Nhung_dong_chua_nhap_so_phut_dang_ky_se_bi_xoa.Ban_co_muon_luu_khong\"), () => {\r\n saveData(dtGrid, arrAttachments);\r\n });\r\n } else {\r\n saveData(dataNew, arrAttachments);\r\n }\r\n };\r\n\r\n const saveData = (dt = [], arrAttachments = []) => {\r\n const params = {\r\n TransID : datForm?.TransID ?? \"\",\r\n AttendanceDate: dataForm?.AttendanceDate || null,\r\n Reason : dataForm?.Reason ?? \"\",\r\n Note : dataForm?.Note ?? \"\",\r\n Mode : mode === \"add\" ? 0 : 1,\r\n FormID : \"W29F2085\",\r\n Language : Language,\r\n ApprovalStatus: 0,\r\n Data : dt ? JSON.stringify(dt) : \"\",\r\n arrAttachment : JSON.stringify(arrAttachments || [])\r\n };\r\n props.w29f2086Actions.save(params, (errors, result) => {\r\n if (errors) {\r\n Config.popup.show('ERROR', errors);\r\n return false;\r\n }\r\n if (result) {\r\n if (result.Status === 0) {\r\n Config.notify.show('success', Config.lang(\"Luu_thanh_cong\"), 2000);\r\n onClosePopup(true);\r\n _removeCDN();\r\n } else {\r\n const msg = result.Message || Config.lang(\"Loi_chua_xac_dinh\");\r\n Config.popup.show('INFO', msg);\r\n }\r\n }\r\n });\r\n };\r\n\r\n const getFilterGrid = (isClear) => {\r\n if (isClear) filterGrid.current = {};\r\n const filter = filterGrid.current;\r\n const dataFilter = [];\r\n Object.keys(filter).forEach(fil => {\r\n const itemFilter = filter[fil];\r\n if (itemFilter && itemFilter.length > 0) {\r\n dataFilter.push(filter[fil]);\r\n dataFilter.push(\"and\");\r\n }\r\n });\r\n dataFilter.pop();\r\n return dataFilter;\r\n };\r\n\r\n const handleChange = (key, e) => {\r\n if (!key) return false;\r\n if(!isChanged.current) {\r\n isChanged.current = true;\r\n }\r\n const value = _.get(e, 'value', _.get(e, 'target.value', ''));\r\n if ([\"AttendanceDate\"].includes(key)) {\r\n if (!value || value.length === 0) {\r\n setErrors({\r\n ...errors,\r\n [key]: Config.lang('Truong_nay_bat_buoc_nhap')\r\n });\r\n } else {\r\n setErrors({\r\n ...errors,\r\n [key]: ''\r\n });\r\n }\r\n setDataForm({\r\n ...dataForm,\r\n [key]: value\r\n });\r\n } else {\r\n if(timer.current) clearTimeout(timer.current);\r\n timer.current = setTimeout(() => {\r\n setDataForm({\r\n ...dataForm,\r\n [key]: value\r\n });\r\n }, 500);\r\n }\r\n };\r\n\r\n const renderHeaderColumns = (e) => {\r\n if (!e) return false;\r\n return (\r\n {\r\n const {data} = eChild;\r\n const dataSource = dataGrid.instance.option(\"dataSource\");\r\n return (dataSource.find(i => !!i.IsUsed) && eChild.key !== \"IsUsed\") ?\r\n data.IsUsed : (!data?.ShiftID ? data.IsUsed : 1) ;\r\n }}\r\n />\r\n )\r\n };\r\n\r\n const renderAction = (e) => {\r\n return (\r\n \r\n onDeleteRow(e)}/>\r\n \r\n )\r\n };\r\n\r\n const cellRenderShiftID = (e) => {\r\n if (!e || !e.row) return;\r\n const {data} = e.row;\r\n return (\r\n <>\r\n {!data?.ShiftID ?\r\n (!)\r\n : \"\"}\r\n \r\n )\r\n };\r\n\r\n const onInput = (e) => {\r\n if(String(e.event.target.value).includes(\"-\") ||\r\n String(e.event.target.value).includes(\"e\") ||\r\n String(e.event.target.value).includes(\"E\")) {\r\n e.event.target.value = e.event.target.value.replace(/[-eE]/, \"\");\r\n e.component.option(\"value\", e.event.target.value);\r\n }\r\n };\r\n\r\n const calculateCellIsUsed = (data) => {\r\n return !!data.IsUsed;\r\n };\r\n\r\n const calculateFilterIsUsed = (filterValue, selectedFilterOperation, target) => {\r\n if(target === \"filterBuilder\") {\r\n return [calculateCellIsUsed, selectedFilterOperation || '=', filterValue];\r\n }\r\n };\r\n\r\n const isDisable = !dataGridEmployee.every(item => item.ShiftID !== \"\");\r\n return <>\r\n {isShowModalEmployeeChosen &&\r\n setShowModalEmployeeChosen(false)}\r\n />\r\n }\r\n onClosePopup()}\r\n >\r\n {Config.lang(\"Dang_ky_di_tre_ve_som_hang_loat\")}\r\n \r\n \r\n \r\n handleChange(\"AttendanceDate\", e)}\r\n />\r\n \r\n \r\n handleChange('Reason', e)}\r\n value={dataForm?.Reason}\r\n label={Config.lang('Ly_do')}\r\n />\r\n \r\n \r\n \r\n \r\n handleChange('Note', e)}\r\n value={dataForm?.Note}\r\n label={Config.lang('Ghi_chu')}\r\n />\r\n \r\n \r\n\r\n \r\n setIsExpand(true)} onCollapse={() => setIsExpand(false)}>\r\n \r\n
\r\n
\r\n {Config.lang(\"Danh_sach_nhan_vien\")}\r\n {\r\n e.stopPropagation();\r\n setShowModalEmployeeChosen(true);\r\n }}\r\n />\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n dataGrid = ref}\r\n keyExpr={\"EmployeeID\"}\r\n columnAutoWidth={true}\r\n showRowLines={true}\r\n showBorders={false}\r\n showColumnLines={false}\r\n loading={isLoadingGrid}\r\n noDataText={Config.lang(\"No_data\")}\r\n hoverStateEnabled={true}\r\n rowAlternationEnabled={false}\r\n style={{\r\n border : \"none\",\r\n overflowX: \"scroll\"\r\n }}\r\n height={Config.getHeightGrid() - 280}\r\n typePaging={\"remote\"}\r\n pagerFullScreen={false}\r\n editing={{\r\n mode : 'cell',\r\n refreshMode : 'full',\r\n allowUpdating: mode !== \"view\",\r\n }}\r\n onEditorPreparing={(e) => {\r\n if (!e || !e.row) return;\r\n const {data} = e.row;\r\n if ((e.parentType === \"searchPanel\" || e.parentType === \"filterRow\") && e.dataField === \"EmployeeID\") {\r\n e.updateValueTimeout = 2500;\r\n }\r\n // check disable click row\r\n if (e.parentType === \"dataRow\" && e.dataField === \"IsUsed\") {\r\n e.editorOptions.disabled = data?.ShiftID === \"\"\r\n }\r\n if (e.parentType === \"dataRow\" && e.dataField === \"InLateMinutes\") {\r\n e.editorOptions.disabled = data?.InLateTimeIn === \"\"\r\n }\r\n if (e.parentType === \"dataRow\" && e.dataField === \"OutEarlyMinutes\") {\r\n e.editorOptions.disabled = data?.OutEarlyTimeOut === \"\"\r\n }\r\n }}\r\n filterRow={{\r\n visible : true,\r\n showOperationChooser: false,\r\n }}\r\n filterPanel={{\r\n visible: true\r\n }}\r\n sorting={{\r\n mode: \"none\"\r\n }}\r\n filterBuilderPopup={{\r\n onInitialized: (e) => {\r\n e.component.dispose();\r\n e.element.remove();\r\n }\r\n }}\r\n onCellSelectionChanged={(e) => {\r\n if (e.selectedRange && e.selectedRange.rowType !== \"header\") {\r\n selectedRange.current = e.selectedRange;\r\n }\r\n }}\r\n onRowUpdated={(e) => {\r\n e.data.IsUpdated = 1;\r\n }}\r\n onRowValidating={e => {\r\n editting.current = +!e.isValid;\r\n }}\r\n filterValue={filterGridValue}\r\n onCellPrepared={e => e.separator = \",\"}\r\n onFilterGrid={(e) => {\r\n let {column, filterValue, columnIndex} = e;\r\n filterColIndx.current = columnIndex;\r\n e.component.saveEditData();\r\n if (column) {\r\n if (column.dataField === \"EmployeeID\") {\r\n let dataFilter = [];\r\n if (filterValue) {\r\n if (filterValue.indexOf(\",\") > -1) {\r\n const arrFilters = filterValue.split(\",\");\r\n arrFilters.forEach(f => {\r\n dataFilter.push([\"EmployeeID\", \"=\", f.trim()]);\r\n dataFilter.push(\"or\");\r\n });\r\n dataFilter.pop();\r\n } else {\r\n dataFilter = [\"EmployeeID\", \"contains\", filterValue];\r\n }\r\n }\r\n filterGrid.current.EmployeeID = dataFilter;\r\n } else {\r\n let operator = \"contains\";\r\n if ([\"IsUsed\", \"AttendanceDate\", \"LateMinute\", \"EarlyMinute\", \"InLateMinutes\", \"OutEarlyMinutes\"].includes(column.dataField)) operator = \"=\";\r\n filterGrid.current[column.dataField] = (filterValue || typeof filterValue === \"boolean\") ? [column.dataField, operator, filterValue] : [];\r\n }\r\n setFilterGridValue(getFilterGrid());\r\n } else {\r\n filterGrid.current = {};\r\n setFilterGridValue([]);\r\n }\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n onInput(e),\r\n }}\r\n headerCellRender={renderHeaderColumns}\r\n allowEditing={true}\r\n allowCopying={true}\r\n allowPasting={true}\r\n />\r\n onInput(e),\r\n }}\r\n headerCellRender={renderHeaderColumns}\r\n allowEditing={true}\r\n allowCopying={true}\r\n allowPasting={true}\r\n />\r\n onInput(e),\r\n }}\r\n headerCellRender={renderHeaderColumns}\r\n allowEditing={true}\r\n allowCopying={true}\r\n allowPasting={true}\r\n />\r\n onInput(e),\r\n }}\r\n headerCellRender={renderHeaderColumns}\r\n allowEditing={true}\r\n allowCopying={true}\r\n allowPasting={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 {Config.lang(\"Dinh_kem\")}\r\n \r\n \r\n {\r\n onChangeAttachments(e)\r\n }}\r\n uploadErrorInfo={{\r\n existingFile: Config.lang('File_da_duoc_dinh_kem'),\r\n maxFile : Config.lang('File_vuot_qua_so_luong_cho_phep'),\r\n maxSize : Config.lang('File_vuot_qua_dung_luong_cho_phep'),\r\n fileType : Config.lang(\"File_khong_dung_dinh_dang\"),\r\n }}\r\n\r\n />\r\n \r\n \r\n \r\n
\r\n \r\n