{"version":3,"sources":["components/W0X/W09/W09F2150/W09F2150.js","components/W0X/W09/W09F2092/W09F2092.js","components/W0X/W09/W09F2090/W09F2090.js","components/W0X/W09/W09F2091/W09F2091.js","components/W0X/W09/W09F2081/W09F2081Popup.js","components/W0X/W09/W09F2070/W09F2070Popup.js","components/W0X/W09/W09F2080/W09F2080Popup.js","components/W0X/W09/W09F2150/W09F2150Popup.js","components/W0X/W09/W09F2061/W09F2061.js","components/W0X/W09/W09F2070/W09F2070.js","components/W0X/W09/W09F2071/W09F2071.js","components/W0X/W09/W09F2080/W09F2080.js","components/W0X/W09/W09F2081/W09F2081.js"],"names":["_regeneratorRuntime","exports","Op","Object","prototype","hasOwn","hasOwnProperty","defineProperty","obj","key","desc","value","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","enumerable","configurable","writable","err","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","state","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","length","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","W09F2150","_React$Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","loadPermission","_asyncToGenerator","_callee","_context","generalActions","getPermission","isPer","setState","iPermission","onSearch","loadDataGrid","onChangePageProfile","data","browserHistory","pathname","Config","getRootPath","EmployeeID","loadRewardCaption","W09F2150Actions","Language","language","message","lang","popup","show","onAdd","typeAdd","arguments","mode","showW09F2150Popup","onView","e","row","rowData","onDelete","ProTransID","params","DivisionID","getDivisionID","Mode","deleteGrid","notify","loadCboEmployees","isReset","param","Type","FormID","skip","filterCboEmployees","limit","search","strSearch","loading","cboEmployees","getCboEmployees","dataCboEmployees","rows","total","concat","loadCboProjects","filterCboProject","cboProjects","getCboProjects","dataCboProjects","loadCboDuty","getCboDuty2","loadCboAppStatus","getCboAppStatus","VoucherID","voucher_id","getUrlParams","_this$state","ProDateTo","ProDateFrom","_this$filter","filter","Employee","Project","AppStatusID","DutyID","TransID","ProjectID","String","gridLoading","componentDidMount","_callee2","_context2","onChangePage","page","onChangePerPage","perPage","onCloseModal","filterChange","_","get","includes","_defineProperty","renderFilter","_this$props","getCboDuty","classes","_this$filter2","_this$state2","React","createElement","Filter","placeholder","openOnFieldClick","Fragment","FormGroup","style","marginBottom","Row","Col","xs","sm","md","lg","display","alignItems","className","divText","DateBoxPicker","dateBoxProps","max","moment","marginLeft","onValueChanged","useMaskBehavior","showClearButton","toLowerCase","min","Combo","label","dataSource","displayExpr","valueExpr","LoadMore","keyExpr","stylingMode","itemRender","EmployeeName","onInputChanged","target","onLoadMore","ProjectName","storeDataSoureDevExtreme","item","DutyName","justifyContent","padding","ButtonGeneral","typeButton","size","color","variant","onClick","renderItem","date","ProposalDate","utc","format","UserImage","fontSize","UserName","DepartmentName","dateInfo","Image","src","require","paddingLeft","renderInfo","ProNotice","ProposerName","ApproverName","AppDepartmentID","ApprovalDate","ApprovalNotes","renderStatus","Status","renderAction","ButtonIcon","circular","viewType","onHistory","disabled","Number","showW84F3005Popup","timer","_createClass","prevProps","prevState","snapshot","_this2","getDataGrid","this","callChildForm","onLoad","ID","onAction","_this3","_this$state3","Modal","open","maxWidth","fullWidth","onClose","title","W09F2150Popup","W84F3005","ActionToolbar","textTransform","GridContainer","border","totalItems","itemPerPage","skipPerPage","height","getHeightGrid","typePaging","rowAlternationEnabled","showRowLines","showBorders","showColumnLines","showColumnHeaders","noDataText","Column","dataField","cellRender","visible","alignment","minWidth","width","Component","compose","connect","general","dispatch","bindActionCreators","withStyles","fontWeight","divDateText","withTheme","useStyles","makeStyles","theme","divFormInfo","gap","gridTemplateColumns","divDynamicGrid","marginTop","W09F2092","location","_useState","useState","_useState2","_slicedToArray","setIPermission","_useState3","_useState4","loadingCboEmployees","setLoadingCboEmployees","_useState5","_useState6","setDataCboEmployees","_useState7","ApprovalStatus","DateFrom","DateTo","_useState8","setFilter","_useState9","_useState10","setLoading","_useState11","_useState12","dataForm","setDataForm","_useState13","_useState14","dynamicColumn1","setDynamicColumn1","_useState15","_useState16","dynamicColumn2","setDynamicColumn2","_useState17","_Config$profile$UserI","_Config$profile","_filter$ApprovalStatu","_filter$EmployeeID","_filter$DutyID","_filter$DateFrom","_filter$DateTo","UserID","profile","_useState18","dataFilter","setDataFilter","toolFilter","useRef","approvalRef","paramFilterCboEmployees","useDispatch","dataCboStatus","useSelector","approvals","getCboStatus","dataCboDuty","loadDynamicColumn","W09F2092Actions","dt","useEffect","_location$state$vouch","_location$state","loadFormInfo","current","showPopup","_objectSpread","_data$rows","_data$total","onLoadCboFilter","approvalActions","loadCboStatus","_data$value","_data$value2","_data$value$","_data$value3","_data$value$2","_data$value4","close","voucherID","cb","_Config$getDivisionID","_Config$profile$UserI2","_Config$profile2","_Config$language","_err$message","msg","renderDynamicColumn","_dataForm","isNew","_e$data","FieldName","toLocaleString","Approvals","ref","singleClick","filterRender","isUseDDCore","dropdownProps","showHeader","onOpenLoaded","_filter$DateFrom2","_filter$DateTo2","_filter$DutyID2","_filter$ApprovalStatu2","_filter$EmployeeID2","DateRangePicker","clearAble","controls","onChange","returnFormat","Dropdown","allowSearch","renderSelectedItem","onInput","_e$target$value","_e$target","_e$skip","_e$limit","Button","text","startIcon","formInfoRender","_data$EmployeeID","_user$EmployeeID","_data$Validdate","_data$NewDivisionName","_data$NewDivisionName2","_data$NewDivisionName3","_data$NewDepartmentNa","_data$NewDepartmentNa2","_data$NewDepartmentNa3","_data$NewDutyName","_data$NewDutyName2","_data$NewDutyName3","_data$Note","_data$Note2","_data$IsSalaryAdjustm","_dynamicColumn1$lengt","_dynamicColumn2$lengt","user","getUser","required","readOnly","iconExpr","prefix","getCDNPath","DatePicker","displayFormat","Validdate","Tooltip","NewDivisionName","NewDepartmentName","NewDutyName","Note","TextInput","Checkbox","checked","Boolean","IsSalaryAdjustment","hoverStateEnabled","pagerFullScreen","caption","onSelectionChanged","W09F2090","getCboDepartments","getCboDivisions","w09f2090Actions","W09F2090Actions","dataGrid","setDataGrid","W09F5602","setPermission","dataPopup","setDataPopup","DepartmentID","loadingGrid","setLoadingGrid","setShowW84F3005Popup","showW09F2091Popup","setShowW09F2091Popup","_useState19","_useState20","rangeDate","setRangeDate","filterGrid","w84F3005PopupData","HostID","loadGrid","_dataFilter$AppStatus","errors","arrPer","permissions","Array","isArray","per","IsPermission","_params$ID","setData","onLoadDataFilter","getCboDepartment","getCboDivision","handleChange","_ref","_e$value","dateFrom","dateTo","renderButtonAction","GridActionBar","viewBox","onHistoryApproval","onEdit","IsUpdate","deleteRow","W09F2091","isReload","_dataCboEmployees$tot","searchDelayTime","onDbCellClick","allowEditing","isMobile","_info","userPictureURL","UserPictureURL","convertDate","DateJoined","Avatar","indexOf","hoverAble","Typography","validdate","isValid","whiteSpace","tooltipMaxWidth","overflow","textOverflow","fixed","fixedPosition","customTypography","margin","customTitle","breakpoints","down","getColumns","getCoefficients","errorHelperText","_setErrorHelperText","dataOldAttachments","setDataOldAttachments","dtBase","dataBase","setDataBase","dtNewBase","dataNewBase","setDataNewBase","dtCE","dataCE","setDataCE","dtNewCE","dataNewCE","setDataNewCE","isModeView","setIsModeView","_useState21","_useState22","isSalaryAdjustment","setIsSalaryAdjustment","_useState23","_useState24","dataCboDepartments","setDataCboDepartments","attachments","deletedFile","isChanged","loadForm","w09f2091Actions","getDataForm","setAll","loadCoefficient","loadColumn","loadCboDivision","loadAttachments","KeyID","TableName","getAttachmentsByTransID","_dataForm$Employee","getDataEmployeeByID","loadDataEmployeeID","_dataForm$Employee2","_dataForm$DivisionID","loadCboDepartment","_data$TransID","_data$NewDutyID","_data$NewDepartmentID","_data$NewDivisionID","getDataByName","NewDutyID","NewDepartmentID","NewDivisionID","nameField","_i","_Object$entries","entries","_Object$entries$_i","num","setStateErrorText","objValue","setErrorHelperText","_getAttachments","file","_file$data","dataFile","paths","listAttachments","helpers","getFileInfomations","arrAttachment","att","URL","url","FileName","fileName","FileSize","fileSize","FileExt","split","setFieldName","fieldName","_i2","_Object$entries2","_Object$entries2$_i","_ref4","_e$value3","_e$target3","onSave","_ref5","_isSalaryAdjustment","_dataForm$Employee3","_dataForm$DivisionID2","_dataForm$DepartmentI","_dataForm$DutyID","_isSalaryAdjustment2","_dataForm$Note","validateRules","validateForm","modeSave","dataResUploadFile","arrAttachments","proBaseSalary","proCoefficient","_dataForm$TransID","rules","MForm","formValidation","files","_uploadFile","CDN","uploadFileSync","uploadFile","IsAdjustSalary","JSON","stringify","Message","path","removeFile","onClosePopup","apply","errorEmployee","errorValiddate","errorDivisionID","errorDepartmentID","errorDutyID","pressESCToClose","moveable","dragAnyWhere","moveOutScreen","ModalHeader","ModalBody","getUserPicture","hoverTooltip","lineClamp","actionIconAt","maxRows","multiline","map","idx","_item$FieldName$slice","_item$FieldName","_dataBase$item$FieldN","_dataNewBase","_item$CaptionName","oldValue","newValue","uppercase","CaptionName","MoneyInput","thousandSeparator","decimalDigit","Decimals","disabledNegative","_ref2","handleChangeBase","_item$FieldName$slice2","_item$FieldName2","_dataCE$item$FieldNam","_dataNewCE","_item$CaptionName2","_ref3","_e$value2","_e$target2","handleChangeCE","Attachment","allNewAttached","removedAttached","_toConsumableArray","_arrRemove","d","AttachmentID","dataNew","onChangeAttachments","ModalFooter","defaultProps","W09F2091Actions","_useTheme","useTheme","spacing","colors","useStyle","animation","transition","noWrap","leftBox","paddingRight","position","divider","right","top","hideCloseButton","getCboStatusWork","W09F2081Actions","saveApprovals","minimum","setMinimum","selectedRowKeys","setSelectedRowKeys","isShowSelected","setIsShowSelected","dataOrg","setDataOrg","dataProject","setDataProject","dataDuty","setDataDuty","dataDepartment","setDataDepartment","cboOrgLoading","setCboOrgLoading","cboProjectLoading","setCboProjectLoading","cboDutyLoading","setCboDutyLoading","selectedRowDatas","changePage","changeShow","tmpCurrentSelectedRowKeys","gridRef","_useState25","OrgChartID","_useState26","filterSearch","setFilterSearch","filterCboProjects","filterCboDuty","filterCboDepartment","loadDataOrgChart","evt","_evt$value","_evt$target","_filter$current","selectedRow","status","notes","action","listEmail","p","Email","all","_dataGrid","_selectedRowKeys","_selectedRowDatas$cur2","isCheck","_step","dataKeys","_iterator","_createForOfIteratorHelper","s","n","f","_checkSelectedRowsKeys","showClose","Divider","backgroundColor","fill","left","leftColItem","multiple","TreeView","disabledRelevantValue","id","multipleValueMode","parentID","reference","columnAutoWidth","selection","allowSelectAll","selectAllMode","showCheckBoxesMode","_selectedRowDatas$cur","_e$currentDeselectedR","_e$currentSelectedRow","tmpSelectedRowKeys","tmpSelectedRowDatas","currentDeselectedRowKeys","currentSelectedRowKeys","selectedRowsData","_data$EmployeeID3","idxKey","idxData","findIndex","_data$EmployeeID2","allowColumnResizing","onContentReady","clearTimeout","setTimeout","component","selectRows","dataSelected","instance","getSelectedRowKeys","confirmSave","W09F2070Popup","_React$PureComponent","employeeLoading","_d","loadCboDisRewardForm","w09f2070Actions","loadCboProDisRewardLevel","loadCboDisViolationActGroup","loadCboDisViolationAct","DisViolationActGroupID","proCoefficients","convertProCoefficients","loadRequiredFields","getRequiredFields","ModuleID","CheckMode","getRewardCaption","proCoefficientArr","Disabled","Code","_setDataForm","_this$state$dataForm","ValidDate","ValidEndDate","NumMonth","_NumMonth","diff","Math","round","NumDays","_ValidEndDate","add","_this$state$dataForm2","_ValidDate","subtract","_val","_this$state$dataForm3","abs","isEdit","listDataForm","dataRequired","filterAttachment","SqlFieldName","field","ValidMode","isEmpty","rule","HREmployeeID","getHREmployeeID","ProTeamID","ProDepartmentID","ProAuthority","ProResponsibility","ProDivisionID","TranMonth","getHRTransMonth","TranYear","getHRTransYear","code","resetForm","ProDisRewardFormID","ProDisRewardLevelID","DisViolationActID","ProContent","onAttachment","attRef","fileExt","onUploading","uploading","uploadedFiles","deletedFiles","showW09F2070Popup","_this$props2","stateError","_this$props3","getCboProDisRewardLevel","getCboDisRewardForm","getCboDisViolationActGroup","getCboDisViolationAct","employee","Content","valueObjectDefault","subText","_data$data","_data$data2","_data$data3","inputProps","FormControl","InputLabel","shrink","FormLabel","TextField","InputLabelProps","subTextExpr","searchEnabled","helperText","helperTextQuantity","NumberFormat","Short","customInput","onValueChange","InputProps","Attachments","showButton","maxLength","onChanged","Actions","IconButton","aria-label","AttachFileIcon","OnlyWatch","PureComponent","getLeaveTypes","W09F2070","getForm","W09F2070Actions","avatar","borderRadius","marginRight","imgAvatar","maxHeight","objectFit","chip","W09F2080Popup","iPermissions","projectsLoading","loadCboTeam","CompanyID","getCboTeam","dataTeam","loadCboWorks","getCboWorks","getCaption","w09f2080Actions","dataOldForm","TeamID","WorkID","TeamName","WorkName","BASE01","BASE02","BASE03","BASE04","DirectManagerID","DirectManagerName","NewTeamID","NewWorkID","NewProject","NewProjectName","NewBASE01","NewBASE02","NewBASE03","NewBASE04","NewDirectManagerID","no","loadDynamicColumnSalary","getDynamicColumnSalary","dataColumnSalary","loadCboReasons","getCboReasons","TypeID","cboCboEmployeesLoading","loadCboDirectManagers","cboDirectManagersLoading","getCboDirectManagers","dataCboDirectManagers","setDataCboDirectManager","dtCboDirectManagers","employeeId","loadCboPosition","isChangeForm","departmentID","team","_employeeID","loadCaption","W09F5650","loadDataPopup","loadFormPopup","_initDataForm","NewProjectID","IsDutyAdjustment","dataDefaultEmployee","isAsync","_callee3","dtReason","_context3","find","ReasonID","TempDepartmentID","TempTeamID","TempWorkID","TempProjectID","ProWorkID","ProProjectID","ProBaseSalary01","ProBaseSalary02","ProBaseSalary03","ProBaseSalary04","customMessage","_removeCDN","handleTabChange","tabKey","_e$removedAttached","handleChangeDataSalary","index","onChangeChkSalary","onChangeDutyAdjustment","w09F2150Actions","dataFormSalary","_dataCboProjects$tota","getCboPosition","iPermissionW09F2080","TabContainer","TabHeader","TabItem","TabPanel","_data$EmployeeName","_data$UserPictureURL","_data$EmployeeName2","_e$data$ProContent","_data$ReasonID","_data$ProContent","Accordion","expanded","boxShadow","AccordionSummary","AccordionDetails","decimalScale","expandIcon","expand","expandIconAt","Intl","indx","maxFile","maxSize","unitSize","uploadErrorInfo","existingFile","fileType","W09F2080","W09F2080Actions","loadDynamicFields","getDynamicFields","ProDutyID","TempDutyID","chk","_this$props4","isExpanded","_getCboEmployees$find","_state$Employee","_this$props5","disabledEmp","ExpansionPanel","expandPanel","ExpansionPanelSummary","href","expandSummary","ExpansionPanelDetails","expandDetail","numberInput","isExpaned","alt","TempDutyName","minHeight","W09F2061","omit","getGridApprovals","handleFilter","searchValue","loadingCboEmployee","loadingCboProject","getFormInfo","w09f2060Actions","renderFormInfo","validDate","getObjectValue","objFields","labelNameTitle","labelIDTitle","labelName","labelID","Department","toUpperCase","LabelText","divAvatar","divAvatarText","InlineSVG","Input","disableUnderline","vl","onDrawerClosed","Label","searchvalue","filterCboEmployee","getGridApproval","refs","allowHistoryApproval","selectedRowKey","W09F2060","ApprovalActions","w09f2060","palette","primary","main","Languaghe","renderEmpProfile","_Config$coreTheme","_Config$coreTheme$col","_Config$coreTheme2","_Config$coreTheme2$co","Icon","coreTheme","system","rest","deleteDataGrid","onViewHistory","showW84F3005","paddingTop","paddingBottom","toString","loadAppStatus","isSaved","_rowData$ProTransID","_this$filter3","onCellClick","onDetail","W09F2071","W09F2071Actions","allowPadding","startAdornment","items","parseInt","parentProps","_Component","loadData","loadCboDeparments","showW09F2080Popup","CreateDate","allowDelete","getData","dataRows","totalRow","W09F2081","w09F2081Actions","allowZero","disabledApproval"],"mappings":"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","file":"static/js/main~de5eb0a1.0c03ea60.chunk.js","sourcesContent":["/**\r\n * @copyright 2019 @ DigiNet\r\n * @author TRIHAO\r\n * @create 9/25/2020\r\n * @Example\r\n */\r\n\r\nimport React from \"react\";\r\nimport {bindActionCreators, compose} from \"redux\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport {connect} from \"react-redux\";\r\nimport ActionToolbar from \"../../../common/toolbar/action-toolbar\";\r\nimport ButtonGeneral from \"../../../common/button/button-general\";\r\nimport Modal from \"../../../common/modal/modal\";\r\nimport {Combo} from \"../../../common/form-material\";\r\nimport DateBoxPicker from \"../../../common/form-material/date-box\";\r\nimport UserImage from \"../../../common/user/user-image\";\r\nimport UserName from \"../../../common/user/user-name\";\r\nimport Status from \"../../../common/status/status\";\r\nimport GridContainer from \"../../../grid-container/grid-container\";\r\nimport Filter from \"../../../filter/filter\";\r\nimport Config from \"../../../../config\";\r\nimport * as generalActions from \"../../../../redux/general/general_actions\";\r\nimport * as W09F2150Actions from \"../../../../redux/W0X/W09F2150/W09F2150_actions\";\r\nimport {Column} from \"devextreme-react/data-grid\";\r\nimport {Image, FormGroup, Row, Col} from \"react-bootstrap\";\r\nimport moment from \"moment\";\r\nimport {browserHistory} from \"react-router\";\r\nimport _ from \"lodash\";\r\nimport W09F2150Popup from \"./W09F2150Popup\";\r\nimport {ButtonIcon} from 'diginet-core-ui/components';\r\nimport W84F3005 from '../../../W8X/W84/W84F3005/W84F3005';\r\n\r\nconst styles = {\r\n dateInfo: {\r\n display: \"flex\",\r\n alignItems: \"center\"\r\n },\r\n divText: {\r\n // fontSize: \"14px\",\r\n fontWeight: 500,\r\n // color: \"#575757\"\r\n },\r\n divDateText: {\r\n fontSize: \"14px\",\r\n fontWeight: 400,\r\n color: \"#000000\"\r\n },\r\n};\r\n\r\nclass W09F2150 extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n iPermission: 0,\r\n mode: \"add\",\r\n rowData: null,\r\n ProDateTo: \"\",\r\n ProDateFrom: \"\",\r\n showW09F2150Popup: false,\r\n dataCboEmployees: {\r\n rows: [],\r\n total: 0\r\n },\r\n dataCboProjects: {\r\n rows: [],\r\n total: 0\r\n },\r\n loading: {\r\n cboEmployees: false,\r\n cboProjects: false,\r\n },\r\n showW84F3005Popup: null\r\n };\r\n this.loading = {\r\n cboEmployees: false,\r\n cboProjects: false,\r\n };\r\n this.filter = {\r\n Employee: \"%\",\r\n Project: \"%\",\r\n AppStatusID: \"%\",\r\n DutyID: \"\",\r\n skip: 0,\r\n limit: 10\r\n };\r\n this.filterCboEmployees = {\r\n timer: null,\r\n strSearch: \"\",\r\n skip: 0,\r\n limit: 50\r\n };\r\n this.filterCboProject = {\r\n timer: null,\r\n strSearch: \"\",\r\n skip: 0,\r\n limit: 50\r\n };\r\n }\r\n\r\n loadPermission = async () => {\r\n await this.props.generalActions.getPermission(\"W09F2150\", (isPer) => {\r\n this.setState({iPermission: isPer});\r\n });\r\n };\r\n\r\n onSearch = () => {\r\n this.loadDataGrid();\r\n };\r\n\r\n onChangePageProfile = data => {\r\n browserHistory.push({\r\n pathname: Config.getRootPath() + \"W09F2000\",\r\n state: {EmployeeID: data.EmployeeID}\r\n });\r\n };\r\n\r\n loadRewardCaption = () => {\r\n this.props.W09F2150Actions.loadRewardCaption({Language: Config.language || \"84\"}, (error) => {\r\n if (error) {\r\n let message = error.message || Config.lang(\"Loi_chua_xac_dinh\");\r\n Config.popup.show(\"INFO\", message);\r\n return false;\r\n }\r\n });\r\n };\r\n\r\n onAdd = (typeAdd = 0) => {\r\n this.setState({\r\n mode: \"add\",\r\n showW09F2150Popup: true,\r\n typeAdd,\r\n });\r\n };\r\n\r\n onView = (e) => {\r\n const {data} = e.row;\r\n this.setState({\r\n mode: \"view\",\r\n rowData: data,\r\n showW09F2150Popup: true\r\n });\r\n };\r\n\r\n onDelete = data => {\r\n const {ProTransID} = data;\r\n const params = {\r\n DivisionID: Config.getDivisionID(),\r\n ProTransID,\r\n Mode: 2\r\n };\r\n Config.popup.show(\"YES_NO\", Config.lang(\"Ban_co_chac_muon_xoa?\"), () => {\r\n this.props.W09F2150Actions.deleteGrid(params, error => {\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n } else {\r\n Config.notify.show(\"success\", Config.lang(\"Xoa_thanh_cong\"), 3000);\r\n this.loadDataGrid();\r\n }\r\n });\r\n });\r\n };\r\n\r\n loadCboEmployees = (isReset) => {\r\n const param = {\r\n Type: \"EmployeeID\",\r\n FormID: \"W09F2150\",\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.loading.cboEmployees = true;\r\n this.setState({loading: this.loading});\r\n this.props.generalActions.getCboEmployees(param, (error, data) => {\r\n this.loading.cboEmployees = false;\r\n this.setState({loading: this.loading});\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\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 : data;\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\r\n loadCboProjects = (isReset) => {\r\n const param = {\r\n FormID: \"W09F2150\",\r\n skip: this.filterCboProject.skip,\r\n limit: this.filterCboProject.limit,\r\n search: this.filterCboProject.strSearch\r\n };\r\n this.loading.cboProjects = true;\r\n this.setState({loading: this.loading});\r\n this.props.generalActions.getCboProjects(param, (error, data) => {\r\n this.loading.cboProjects = false;\r\n this.setState({loading: this.loading});\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (data) {\r\n const {dataCboProjects} = this.state;\r\n const rows = data && data.rows ? data.rows : data;\r\n const total = data && data.total ? data.total : data.length;\r\n this.setState({\r\n dataCboProjects: {\r\n rows: isReset ? rows : dataCboProjects.rows.concat(rows),\r\n total: total\r\n }\r\n })\r\n }\r\n });\r\n };\r\n\r\n loadCboDuty = () => {\r\n this.props.generalActions.getCboDuty2(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 loadCboAppStatus = () => {\r\n const param = {\r\n FormID: \"W09F2150\",\r\n Language: Config.language || \"84\"\r\n };\r\n\r\n this.props.generalActions.getCboAppStatus(param, 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 loadDataGrid = (VoucherID) => {\r\n const {voucher_id} = Config.getUrlParams(this.props);\r\n VoucherID = VoucherID ? VoucherID : voucher_id;\r\n const {ProDateTo, ProDateFrom} = this.state;\r\n const {Employee, Project, AppStatusID, DutyID, limit, skip} = this.filter;\r\n const param = {\r\n TransID: VoucherID || \"\",\r\n Language: Config.language || 84,\r\n ProDateFrom: ProDateFrom || null,\r\n ProDateTo: ProDateTo || null,\r\n EmployeeID: Employee && Employee.EmployeeID ? Employee.EmployeeID : \"%\",\r\n ProjectID: Project && Project.ProjectID ? Project.ProjectID : \"%\",\r\n AppStatusID: AppStatusID || AppStatusID === 0 ? String(AppStatusID) : \"%\",\r\n DutyID: DutyID || \"%\",\r\n skip: skip,\r\n limit: limit\r\n };\r\n this.setState({gridLoading: true});\r\n this.props.W09F2150Actions.loadDataGrid(param, error => {\r\n this.setState({gridLoading: 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 componentDidMount = async () => {\r\n await this.loadPermission();\r\n if (this.state.iPermission <= 0) return;\r\n this.loadCboEmployees();\r\n this.loadCboProjects();\r\n this.loadCboAppStatus();\r\n this.loadCboDuty();\r\n this.loadDataGrid();\r\n };\r\n\r\n componentDidUpdate (prevProps, prevState, snapshot) {\r\n const {getDataGrid} = this.props;\r\n Config.callChildForm({\r\n FormID: \"W09F2150\",\r\n // ID: voucher_id,\r\n keyExpr: \"ProTransID\",\r\n data: getDataGrid && getDataGrid.rows ? getDataGrid.rows : [],\r\n onLoad: (params) => this.loadDataGrid(params && params.ID),\r\n onAction: (e, data) => this.onView({ row: { data: data } })\r\n }, this.props);\r\n }\r\n\r\n onChangePage = page => {\r\n this.filter.skip = page * this.filter.limit;\r\n this.loadDataGrid();\r\n };\r\n\r\n onChangePerPage = perPage => {\r\n this.filter.skip = 0;\r\n this.filter.limit = perPage;\r\n this.loadDataGrid();\r\n };\r\n\r\n onCloseModal = (mode) => {\r\n if(mode !== \"close\") {\r\n this.loadDataGrid();\r\n }\r\n this.setState({\r\n showW09F2150Popup: false\r\n });\r\n };\r\n\r\n filterChange = (key, data) => {\r\n const value = _.get(data, \"value\", _.get(data, \"target.value\", \"\"));\r\n const keyState = [\"ProDateFrom\", \"ProDateTo\"];\r\n if (keyState.includes(key)) {\r\n this.setState({\r\n [key]: value\r\n });\r\n return;\r\n }\r\n this.filter[key] = value;\r\n };\r\n\r\n renderFilter = () => {\r\n const {\r\n getCboDuty,\r\n getCboAppStatus,\r\n classes\r\n } = this.props;\r\n const {Project, AppStatusID, Employee, DutyID} = this.filter;\r\n const {ProDateTo, ProDateFrom, dataCboEmployees, dataCboProjects, loading} = this.state;\r\n\r\n return (\r\n {\r\n return (\r\n <>\r\n \r\n \r\n \r\n
\r\n
\r\n {Config.lang(\"Tu\")}\r\n
\r\n this.filterChange(\"ProDateFrom\", e)}\r\n useMaskBehavior={true}\r\n showClearButton={true}\r\n placeholder={\"DD/MM/YYYY\"}\r\n value={ProDateFrom || \"\"}\r\n />\r\n
\r\n \r\n \r\n
\r\n
\r\n {Config.lang(\"Den\").toLowerCase()}\r\n
\r\n this.filterChange(\"ProDateTo\", e)}\r\n useMaskBehavior={true}\r\n showClearButton={true}\r\n placeholder={\"DD/MM/YYYY\"}\r\n value={ProDateTo || \"\"}\r\n />\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n this.filterChange(\"AppStatusID\", e)}\r\n showClearButton={true}\r\n value={AppStatusID === \"%\" ? \"\" : AppStatusID}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n const {data} = e;\r\n if (!data) return null;\r\n return data.EmployeeID + ' - ' + data.EmployeeName;\r\n }}\r\n showClearButton={true}\r\n // showCheckBoxMode={\"none\"}\r\n onValueChanged={e => this.filterChange(\"Employee\", 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 \r\n \r\n \r\n \r\n {\r\n const {data} = e;\r\n if (!data) return null;\r\n return data.ProjectID + ' - ' + data.ProjectName;\r\n }}\r\n showClearButton={true}\r\n // showCheckBoxMode={\"none\"}\r\n onValueChanged={e => this.filterChange(\"Project\", e)}\r\n onInputChanged={(e) => {\r\n this.filterCboProject.strSearch = e.target.value;\r\n this.filterCboProject.skip = 0;\r\n this.loadCboProjects(true);\r\n }}\r\n onLoadMore={(e) => {\r\n this.filterCboProject.skip = e.skip;\r\n this.filterCboProject.limit = e.limit;\r\n this.loadCboProjects();\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n item && `${item.DutyID} - ${item.DutyName}`\r\n }\r\n valueExpr={\"DutyID\"}\r\n stylingMode={\"outlined\"}\r\n value={DutyID}\r\n showClearButton={true}\r\n label={Config.lang(\"Chuc_vu\")}\r\n onValueChanged={e => this.filterChange(\"DutyID\", e)}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }}\r\n />\r\n );\r\n };\r\n\r\n renderItem = (e) => {\r\n const {classes} = this.props;\r\n const { data } = e.row;\r\n const date = data.ProposalDate ? moment.utc(data.ProposalDate).format(\"DD/MM/YYYY HH:mm:ss\") : \"\";\r\n return (\r\n
\r\n \r\n
\r\n
\r\n
{data.DepartmentName || \"\"}
\r\n
\r\n \r\n
\r\n {data.ProposalDate && date}\r\n
\r\n
\r\n
\r\n
\r\n );\r\n };\r\n\r\n renderInfo = e => {\r\n const { data } = e.row;\r\n const { classes } = this.props;\r\n return (\r\n
\r\n {data.ProNotice && (\r\n
{Config.lang(\"Ghi_chu\") + \": \" + (data.ProNotice || \"\")}
\r\n )}\r\n {data.ProjectName && (\r\n
{Config.lang(\"Du_an_cong_trinh\") + \": \" + (data.ProjectName || \"\")}
\r\n )}\r\n {data.ProposerName && (\r\n
{Config.lang(\"Nguoi_lap\") + \": \" + (data.ProposerName || \"\")}
\r\n )}\r\n {data.DutyName && (\r\n
{Config.lang(\"Chuc_vu\") + \": \" + (data.DutyName || \"\")}
\r\n )}\r\n {data.ApproverName && (\r\n
{Config.lang(\"Nguoi_duyet\")}: {data.ApproverName || \"\"} - {\" \"}\r\n {data.AppDepartmentID || \"\"} - {data.ApprovalDate || \"\"}\r\n
\r\n )}\r\n {data.AppStatusID > 0 &&
\r\n {Config.lang(\"Ghi_chu_duyet\") + \": \" + (data.ApprovalNotes || \"\")}\r\n
}\r\n
\r\n );\r\n };\r\n\r\n renderStatus = e => {\r\n const {data} = e.row;\r\n return ;\r\n };\r\n\r\n renderAction = e => {\r\n const {data} = e.row;\r\n return (\r\n
\r\n this.onHistory(data?.ProTransID)}\r\n />\r\n this.onView(e)}\r\n />\r\n this.onDelete(data)}\r\n />\r\n
\r\n );\r\n };\r\n\r\n onHistory = (value = null) => {\r\n this.setState({ showW84F3005Popup: value });\r\n };\r\n\r\n render() {\r\n const {getDataGrid} = this.props;\r\n const {iPermission, gridLoading, showW09F2150Popup, mode, rowData, showW84F3005Popup} = this.state;\r\n if (iPermission <= 0) return null;\r\n\r\n return (\r\n <>\r\n this.onCloseModal('close')}\r\n title={Config.lang(\"Lap_de_xuat_thay_doi_chuc_danh\")}\r\n >\r\n this.onCloseModal()}\r\n />\r\n \r\n\r\n {/*Modal xem lịch sử*/}\r\n {showW84F3005Popup &&\r\n this.onHistory()}\r\n FormID=\"W09F2150\"\r\n TransID={showW84F3005Popup}\r\n />\r\n }\r\n\r\n
{this.renderFilter()}
\r\n \r\n = 2}\r\n typeButton={'add'}\r\n style={{ textTransform: 'uppercase' }}\r\n size={\"large\"}\r\n onClick={this.onAdd} />\r\n \r\n \r\n \r\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(\r\n connect(\r\n state => ({\r\n getCboDuty: state.general.getCboDuty2,\r\n getCboAppStatus: state.general.getCboAppStatus,\r\n getDataGrid: state.W09F2150.getDataGrid,\r\n }),\r\n dispatch => ({\r\n generalActions: bindActionCreators(generalActions, dispatch),\r\n W09F2150Actions: bindActionCreators(W09F2150Actions, dispatch)\r\n })\r\n ),\r\n withStyles(styles, {withTheme: true})\r\n)(W09F2150);\r\n","/**\r\n * @copyright 2021 @ DigiNet\r\n * @author XUANLOC\r\n * @create 28/9/2021\r\n * @Example\r\n */\r\n\r\nimport { makeStyles } from '@material-ui/styles';\r\nimport { Button, Checkbox, DatePicker, DateRangePicker, Dropdown, TextInput, Tooltip } from 'diginet-core-ui/components';\r\nimport React, { useEffect, useRef, useState } from 'react';\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 * as W09F2092Actions from '../../../../redux/W0X/W09F2092/W09F2092_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\nimport { Column } from 'devextreme-react/data-grid';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n divFormInfo: {\r\n display: 'grid',\r\n gap: 10,\r\n gridTemplateColumns: 'repeat(auto-fit, minmax(200px, 1fr))',\r\n },\r\n divDynamicGrid: {\r\n display: 'grid',\r\n gridTemplateColumns: 'repeat(auto-fit, minmax(330px, 1fr))',\r\n gap: 10,\r\n marginTop: 20,\r\n },\r\n}));\r\n\r\nconst W09F2092 = (props) => {\r\n const { location } = props;\r\n\r\n const classes = useStyles();\r\n\r\n const [iPermission, setIPermission] = useState(0);\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 DutyID: '',\r\n ApprovalStatus: null,\r\n EmployeeID: '',\r\n DateFrom: null,\r\n DateTo: null,\r\n }));\r\n const [loading, setLoading] = useState(false);\r\n const [dataForm, setDataForm] = useState([]);\r\n const [dynamicColumn1, setDynamicColumn1] = useState([]);\r\n const [dynamicColumn2, setDynamicColumn2] = useState([]);\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 DutyID: filter?.DutyID ?? '',\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 paramFilterCboEmployees = {\r\n skip: 0,\r\n limit: 10,\r\n search: '',\r\n };\r\n\r\n const dispatch = useDispatch();\r\n const dataCboStatus = useSelector((state) => state.approvals.getCboStatus);\r\n const dataCboDuty = useSelector((state) => state.general.getCboDuty2);\r\n\r\n const loadPermission = () => {\r\n dispatch(\r\n generalActions.getPermission('W09F2092', (isPer) => {\r\n setIPermission(isPer);\r\n })\r\n );\r\n };\r\n\r\n const loadDynamicColumn = (type = 'SALBA') => {\r\n const params = {\r\n Type: type,\r\n };\r\n dispatch(W09F2092Actions.getDynamicColumn(params, (err, dt) => {\r\n if (err) {\r\n Config.popup.show('ERROR', err);\r\n return false;\r\n }\r\n if (dt) {\r\n switch (type) {\r\n case 'SALBA':\r\n setDynamicColumn1(dt);\r\n break;\r\n case 'SALCE':\r\n setDynamicColumn2(dt);\r\n break;\r\n default:\r\n break;\r\n }\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 if (!iPermission) return;\r\n loadDynamicColumn();\r\n loadDynamicColumn('SALCE');\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [iPermission]);\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 loadCboDuty = () => {\r\n dispatch(\r\n generalActions.getCboDuty2((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 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: 'W09F2092',\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 loadCboDuty();\r\n loadCboStatus();\r\n loadCboEmployees();\r\n };\r\n\r\n const renderFilter = () => {\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('DutyID', e)}\r\n dataSource={dataCboDuty}\r\n value={filter?.DutyID ?? null}\r\n viewType={'outlined'}\r\n />\r\n filterChange('ApprovalStatus', e)}\r\n dataSource={dataCboStatus}\r\n value={filter?.ApprovalStatus ?? null}\r\n viewType={'outlined'}\r\n />\r\n filterChange('EmployeeID', e)}\r\n value={filter?.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 'ApprovalStatus':\r\n setFilter({ ...filter, [key]: data?.value ?? null });\r\n break;\r\n case 'DutyID':\r\n case 'EmployeeID':\r\n setFilter({ ...filter, [key]: data?.value ?? '' });\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: 'W09F2092',\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 renderDynamicColumn = (e, isNew = false) => {\r\n const { data = {} } = e;\r\n const value = dataForm?.[isNew ? 'New' + data?.FieldName : data?.FieldName] ?? 0;\r\n return value?.toLocaleString('en-US');\r\n };\r\n\r\n const renderFormInfo = (data) => {\r\n const user = Config.getUser({ EmployeeID: data?.EmployeeID ?? '' });\r\n return (\r\n <>\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n {data?.IsSalaryAdjustment === 1 && \r\n (
\r\n \r\n \r\n renderDynamicColumn(e)} />\r\n renderDynamicColumn(e, true)} />\r\n \r\n \r\n \r\n renderDynamicColumn(e)} />\r\n renderDynamicColumn(e, true)} />\r\n \r\n
)\r\n }\r\n \r\n );\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default W09F2092;\r\n","/**\r\n * @copyright 2019 @ DigiNet\r\n * @author NAMDANG\r\n * @create 9/24/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 W09F2090Actions from \"../../../../redux/W0X/W09F2090/W09F2090_actions\";\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, Checkbox,\r\n DateRangePicker,\r\n Dropdown,\r\n Typography,\r\n Tooltip\r\n} from 'diginet-core-ui/components';\r\nimport Status from \"../../../common/status/status\";\r\nimport W84F3005 from \"../../../W8X/W84/W84F3005/W84F3005\";\r\nimport W09F2091 from \"../W09F2091/W09F2091\";\r\nimport moment from \"moment\";\r\nconst W09F2090 = (props) => {\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 AppStatusID: \"\",\r\n DepartmentID: \"\",\r\n DivisionID: \"\",\r\n DutyID: \"\",\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 {getCboAppStatus, getCboDepartments, getCboDivisions, getCboDuty} = props;\r\n const [dataGrid,setDataGrid] = useState(_initDataSource);\r\n const [dataCboEmployees, setDataCboEmployees] = useState({rows: [], total: 0});\r\n const [iPermission,setPermission] = useState({W09F2090: 0, W09F5602: 0});\r\n const [dataPopup, setDataPopup] = useState(_dataPopup);\r\n const [dataFilter, setDataFilter] = useState(dataFilterGrid);\r\n const [loading, setLoading] = useState(false);\r\n const [loadingGrid, setLoadingGrid] = useState(false);\r\n const [showW84F3005Popup, setShowW84F3005Popup] = useState(false);\r\n const [showW09F2091Popup, setShowW09F2091Popup] = useState(false);\r\n const [rangeDate, setRangeDate] = useState([]);\r\n const filterCboEmployees = useRef({skip: 0, limit: 20, strSearch: \"\"});\r\n const filterGrid = useRef(_initFilter);\r\n const w84F3005PopupData = useRef(_w84F3005PopupData);\r\n\r\n const loadCboEmployees = (isReset) => {\r\n const param = {\r\n Type: \"EmployeeID\",\r\n FormID: \"W09F2090\",\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.w09f2090Actions.getCboAppStatus(params, (errors) => {\r\n setLoading(false);\r\n if (errors) {\r\n Config.popup.show('ERROR', errors);\r\n return false;\r\n }\r\n });\r\n };\r\n\r\n const loadCboDivision = () => {\r\n setLoading(true);\r\n props.w09f2090Actions.getCboDivision((errors) => {\r\n setLoading(false);\r\n if (errors) {\r\n Config.popup.show('ERROR', errors);\r\n return false;\r\n }\r\n });\r\n };\r\n\r\n const loadCboDepartment = () => {\r\n const params = {\r\n DivisionID: \"\"\r\n };\r\n setLoading(true);\r\n props.w09f2090Actions.getCboDepartment(params, (errors) => {\r\n setLoading(false);\r\n if (errors) {\r\n Config.popup.show('ERROR', errors);\r\n return false;\r\n }\r\n });\r\n };\r\n\r\n\r\n const loadCboDuty = () => {\r\n props.generalActions.getCboDuty2(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 const loadGrid = (TransID = \"\") => {\r\n const params = {\r\n TransID: TransID,\r\n DivisionID: dataFilter?.DivisionID || \"\",\r\n DepartmentID: dataFilter?.DepartmentID || \"\",\r\n AppStatusID: String(dataFilter?.AppStatusID ?? \"\"),\r\n DutyID: dataFilter?.DutyID || \"\",\r\n EmployeeID: dataFilter?.Employee || \"\",\r\n FormID : \"W09F2090\",\r\n Language: Config.language || 84,\r\n DateFrom: dataFilter?.DateFrom || null,\r\n DateTo: dataFilter?.DateTo || null,\r\n skip: filterGrid.current.skip,\r\n limit: filterGrid.current.limit,\r\n };\r\n setLoadingGrid(true);\r\n props.w09f2090Actions.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: rows,\r\n total: total\r\n })\r\n }\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n const loadPermission = () => {\r\n props.generalActions.getPermission([\"W09F2090\", \"W09F5602\"], (arrPer) => {\r\n const permissions = {};\r\n if(Array.isArray(arrPer)) {\r\n arrPer.forEach(per => {\r\n permissions[per.FormID] = per?.IsPermission || 0;\r\n });\r\n }\r\n setPermission(permissions);\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?.W09F2090) {\r\n loadGrid();\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n },[iPermission?.W09F2090]);\r\n\r\n useEffect(() => {\r\n Config.callChildForm({\r\n FormID: \"W09F2090\",\r\n // ID: voucher_id,\r\n keyExpr: \"TransID\",\r\n data: dataGrid.rows,\r\n onLoad: (params) => loadGrid(params?.ID ?? \"\"),\r\n onAction: (e, data) => onView({ row: { data: data } })\r\n }, props);\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n });\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 loadCboDuty();\r\n loadCboAppStatus();\r\n loadCboDepartment();\r\n loadCboDivision();\r\n loadCboEmployees();\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 \"AppStatusID\":\r\n setData({AppStatusID: value});\r\n break;\r\n case \"DepartmentID\":\r\n setData({DepartmentID: value});\r\n break;\r\n case \"DivisionID\":\r\n setData({DivisionID: value});\r\n break;\r\n case \"DutyID\":\r\n setData({DutyID: value});\r\n break;\r\n case \"Employee\":\r\n setData({Employee: 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 setShowW09F2091Popup(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 setShowW09F2091Popup(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 setShowW09F2091Popup(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 Config.popup.show('YES_NO',Config.lang(\"Ban_co_chac_chan_xoa\"),\r\n () =>{\r\n props.w09f2090Actions.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 loadGrid();\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 setShowW09F2091Popup(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 {data} = 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
\r\n
\r\n );\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(\"DutyID\", e)}\r\n dataSource={getCboDuty}\r\n loading={loading}\r\n value={dataFilter?.DutyID}\r\n />\r\n \r\n \r\n \r\n \r\n handleChange(\"DepartmentID\", e)}\r\n dataSource={getCboDepartments}\r\n loading={loading}\r\n value={dataFilter?.DepartmentID}\r\n />\r\n \r\n \r\n \r\n \r\n handleChange(\"DivisionID\", e)}\r\n dataSource={getCboDivisions}\r\n loading={loading}\r\n value={dataFilter?.DivisionID}\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={dataFilter?.AppStatusID}\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 \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 || null});\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
\r\n {user?.EmployeeName || \"\"}\r\n {user?.EmployeeID || \"\"}\r\n
\r\n
\r\n )\r\n };\r\n\r\n const cellRenderInfo = (e) => {\r\n if(!e) return null;\r\n const { data } = e || {};\r\n const validdate = moment(data.Validdate).isValid() ? moment(data.Validdate).format(\"DD/MM/YYYY\") : null;\r\n return (\r\n
\r\n {data?.NewDutyName ? (\r\n
\r\n {Config.lang(\"Kiem_nhiem\")}: {data.NewDutyName || \"\"}\r\n
\r\n ) : \"\"}\r\n {data?.Validdate ? (\r\n
\r\n {Config.lang(\"Ngay_hieu_luc\")}: {validdate}\r\n
\r\n ) : \"\"}\r\n {Number(data.IsSalaryAdjustment) >= 0 ? (\r\n \r\n ) : \"\"}\r\n
\r\n );\r\n };\r\n\r\n const cellRenderNote = (e) => {\r\n if(!e) return null;\r\n const {data} = e;\r\n return (\r\n
\r\n {data?.Note ? (\r\n <>\r\n {Config.lang(\"Ghi_chu\")} :\r\n \r\n {data?.Note || \"\"}\r\n \r\n \r\n ) : \"\"}\r\n
\r\n )\r\n };\r\n if(!iPermission?.W09F2090) return false;\r\n return (\r\n \r\n \r\n \r\n \r\n setShowW84F3005Popup(false)}\r\n FormID=\"W09F2090\" TransID={w84F3005PopupData.current.TransID}/>\r\n {showW09F2091Popup ?\r\n onCloseModal(isReload)} />\r\n : \"\"}\r\n\r\n
{renderFilters()}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\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((state => ({\r\n getCboDuty: state.general.getCboDuty2,\r\n getCboAppStatus: state.W09F2090.getCboAppStatus,\r\n getCboDepartments: state.W09F2090.getCboDepartments,\r\n getCboDivisions: state.W09F2090.getCboDivisions,\r\n })),\r\n (dispatch) => ({\r\n generalActions: bindActionCreators(generalActions, dispatch),\r\n w09f2090Actions: bindActionCreators(W09F2090Actions, dispatch),\r\n }))(W09F2090);\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 W09F2091Actions from \"../../../../redux/W0X/W09F2091/W09F2091_actions\";\r\nimport * as generalActions from \"../../../../redux/general/general_actions\";\r\nimport {\r\n TextInput,\r\n Dropdown,\r\n MoneyInput,\r\n Modal,\r\n ModalHeader,\r\n ModalBody, Typography, ModalFooter, Button, DatePicker, Attachment, Checkbox, Avatar,\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 customTypography: {\r\n margin: \"20px 0 20px 0\",\r\n },\r\n customTitle : {\r\n [theme.breakpoints.down(\"sm\")]: {\r\n marginBottom: 30\r\n }\r\n }\r\n}));\r\nconst W09F2091 = (props) => {\r\n const classes = useStyles();\r\n\r\n const _initDataForm = {\r\n TransID: \"\",\r\n Employee: \"\",\r\n Validdate: \"\",\r\n DutyID: \"\",\r\n DepartmentID: \"\",\r\n DivisionID: \"\",\r\n Note: \"\",\r\n };\r\n\r\n const initDataBase = () => {\r\n const dtBase = {};\r\n for (let i = 1; i <= 4; i++) {\r\n dtBase['BASE0' + i] = null;\r\n }\r\n return dtBase;\r\n };\r\n\r\n const initDataNewBase = () => {\r\n const dtNewBase = {};\r\n for (let i = 1; i <= 4; i++) {\r\n dtNewBase['NewBASE0' + i] = null;\r\n }\r\n return dtNewBase;\r\n };\r\n\r\n const initDataCE = () => {\r\n const dtCE = {};\r\n for (let i = 1; i <= 20; i++) {\r\n dtCE['CE' + (i <= 9 ? `0${i}` : i)] = null;\r\n }\r\n return dtCE;\r\n };\r\n\r\n const initDataNewCE = () => {\r\n const dtNewCE = {};\r\n for (let i = 1; i <= 20; i++) {\r\n dtNewCE['NewCE' + (i <= 9 ? `0${i}` : i)] = null;\r\n }\r\n return dtNewCE;\r\n };\r\n\r\n const {data, open, onClose, iPermission, getCboDuty,\r\n getCboDivisions, getColumns, getCoefficients, AppStatusID} = props;\r\n const {mode, TransID} = 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 [dataBase, setDataBase] = useState(initDataBase);\r\n const [dataNewBase, setDataNewBase] = useState(initDataNewBase);\r\n const [dataCE, setDataCE] = useState(initDataCE);\r\n const [dataNewCE, setDataNewCE] = useState(initDataNewCE);\r\n const [loading, setLoading] = useState(false);\r\n const [isModeView, setIsModeView] = useState(false);\r\n const [dataForm, setDataForm] = useState(_initDataForm);\r\n const [isSalaryAdjustment, setIsSalaryAdjustment] = useState(false);\r\n const [dataCboDepartments, setDataCboDepartments] = useState([]);\r\n const filterCboEmployees = useRef({skip: 0, limit: 20, strSearch: \"\"});\r\n const attachments = useRef([]);\r\n const deletedFile = useRef([]);\r\n const isChanged = useRef(false);\r\n\r\n const loadCboEmployees = (isReset) => {\r\n const param = {\r\n Type: \"EmployeeID\",\r\n FormID: \"W09F2090\",\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 loadDataEmployeeID = () => {\r\n const params = {\r\n FormID: \"W09F2090\",\r\n Mode: mode === \"add\" ? 0 : 1,\r\n Language: Config.language || \"84\",\r\n EmployeeID: dataForm?.Employee ?? \"\",\r\n TransID: \"\",\r\n };\r\n setLoading(true);\r\n props.w09f2091Actions.getDataEmployeeByID(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 setAll(data);\r\n }\r\n });\r\n };\r\n\r\n const loadForm = () => {\r\n const params = {\r\n FormID: \"W09F2090\",\r\n Language: Config.language || 84,\r\n Mode: 1,\r\n TransID: TransID\r\n };\r\n setLoading(true);\r\n props.w09f2091Actions.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 if (data && data[0]) {\r\n setAll(data[0])\r\n }\r\n })\r\n };\r\n\r\n const loadCoefficient = () => {\r\n setLoading(true);\r\n props.w09f2091Actions.getCoefficients((errors) => {\r\n setLoading(false);\r\n if (errors) {\r\n Config.popup.show('ERROR', errors);\r\n return false;\r\n }\r\n });\r\n };\r\n\r\n const loadColumn = () => {\r\n setLoading(true);\r\n props.w09f2091Actions.getColumns((errors) => {\r\n setLoading(false);\r\n if (errors) {\r\n Config.popup.show('ERROR', errors);\r\n return false;\r\n }\r\n });\r\n };\r\n\r\n const loadCboDivision = () => {\r\n setLoading(true);\r\n props.w09f2091Actions.getCboDivisions((errors) => {\r\n setLoading(false);\r\n if (errors) {\r\n Config.popup.show('ERROR', errors);\r\n return false;\r\n }\r\n });\r\n };\r\n\r\n const loadCboDuty = () => {\r\n props.generalActions.getCboDuty2(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 const loadCboDepartment = () => {\r\n const params = {\r\n DivisionID: dataForm?.DivisionID ?? \"\"\r\n };\r\n setLoading(true);\r\n props.w09f2091Actions.getCboDepartments(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 setDataCboDepartments(data || [])\r\n });\r\n };\r\n\r\n const loadAttachments = () => {\r\n const param = {\r\n KeyID: TransID || \"\",\r\n TableName: \"D09T2090\"\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 loadCboDivision();\r\n loadCboEmployees();\r\n loadCoefficient();\r\n loadColumn();\r\n loadCboDuty();\r\n }\r\n if (mode === \"edit\") {\r\n loadCboDivision();\r\n loadCoefficient();\r\n loadColumn();\r\n loadCboDuty();\r\n loadAttachments();\r\n loadForm();\r\n }\r\n if (mode === \"view\") {\r\n setIsModeView(true);\r\n loadCboDivision();\r\n loadCoefficient();\r\n loadColumn();\r\n loadCboDuty();\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(dataForm?.Employee && mode === \"add\") {\r\n loadDataEmployeeID();\r\n }\r\n // xet lai combo ko load api loadCboEmployees khi mode edit || view\r\n if(dataForm?.Employee && (mode === \"edit\" || mode === \"view\")) {\r\n const user = Config.getUser({EmployeeID: dataForm?.Employee ?? \"\"});\r\n setDataCboEmployees({\r\n rows: user ? [user] : null,\r\n total: 1\r\n });\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [dataForm?.Employee]);\r\n\r\n useEffect(() => {\r\n if(dataForm?.DivisionID) {\r\n loadCboDepartment()\r\n }\r\n if(isChanged.current && dataForm?.DivisionID === \"\") {\r\n setData({DepartmentID: \"\", DutyID: \"\"});\r\n setDataCboDepartments([]);\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [dataForm?.DivisionID]);\r\n\r\n const setAll = (data = {}) => {\r\n const dtBase = getDataByName(data,\"BASE\");\r\n const dtNewBase = getDataByName(data,\"NewBASE\");\r\n const dtCE = getDataByName(data,\"CE\");\r\n const dtNewCE = getDataByName(data,\"NewCE\");\r\n setDataBase({...dataBase,...dtBase});\r\n setDataNewBase({...dataNewBase,...dtNewBase});\r\n setDataCE({...dataCE,...dtCE});\r\n setDataNewCE({...dataNewCE,...dtNewCE});\r\n setData({\r\n TransID: data?.TransID ?? \"\",\r\n Employee: data?.EmployeeID ?? \"\",\r\n Validdate: data?.Validdate ?? \"\",\r\n DutyID: data?.NewDutyID ?? \"\",\r\n DepartmentID: data?.NewDepartmentID ?? \"\",\r\n DivisionID: data?.NewDivisionID ?? \"\",\r\n Note: data?.Note ?? \"\",\r\n });\r\n setIsSalaryAdjustment(!!data?.IsSalaryAdjustment);\r\n };\r\n\r\n const getDataByName = (data = {}, nameField = \"\") => {\r\n const dt = {};\r\n for(let [key, val] of Object.entries(data)) {\r\n let num = key.slice(-2);\r\n let name = `${nameField}${num}`;\r\n if(key === name) {\r\n dt[key] = val;\r\n }\r\n }\r\n return dt;\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 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 setFieldName = (data, fieldName) => {\r\n const name = fieldName === \"NewBASE\" ? \"ProBaseSalary\" : \"ProCoefficient\";\r\n const dt = {};\r\n for(let [key,value] of Object.entries(data)) {\r\n let num = key.slice(-2);\r\n if(key.includes(fieldName)) {\r\n dt[`${name}${num}`] = value || 0;\r\n }\r\n }\r\n return dt;\r\n };\r\n\r\n const handleChangeBase = (key,e) => {\r\n if(!key) return null;\r\n const value = e?.value ?? e?.target?.value ?? null;\r\n setDataNewBase({...dataNewBase,[key]: value});\r\n };\r\n\r\n const handleChangeCE = (key, e) => {\r\n if(!key) return null;\r\n const value = e?.value ?? e?.target?.value ?? null;\r\n setDataNewCE({...dataNewCE, [key]: value});\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 = e?.value ?? e?.target?.value ?? \"\";\r\n if (errorHelperText[key] && value) setErrorHelperText({[key]: \"\"});\r\n switch (key) {\r\n case \"Employee\":\r\n setData({Employee: value});\r\n break;\r\n case \"Validdate\":\r\n setData({Validdate: value});\r\n break;\r\n case \"DutyID\":\r\n setData({DutyID: value});\r\n break;\r\n case \"DepartmentID\":\r\n setData({DepartmentID: value});\r\n break;\r\n case \"DivisionID\":\r\n setData({DivisionID: 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 onSave = async () => {\r\n const validateRules = [\r\n {\r\n name: \"Employee\",\r\n rules: [\"isRequired\"],\r\n value: dataForm.Employee || \"\"\r\n },\r\n {\r\n name: \"Validdate\",\r\n rules: [\"isRequired\"],\r\n value: dataForm.Validdate || \"\"\r\n },\r\n {\r\n name: \"DutyID\",\r\n rules: [\"isRequired\"],\r\n value: dataForm.DutyID || \"\"\r\n },\r\n {\r\n name: \"DepartmentID\",\r\n rules: [\"isRequired\"],\r\n value: dataForm.DepartmentID || \"\"\r\n },\r\n {\r\n name: \"DivisionID\",\r\n rules: [\"isRequired\"],\r\n value: dataForm.DivisionID || \"\"\r\n },\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 modeSave = mode === \"edit\" ? \"update\" : \"save\";\r\n const dataResUploadFile = await _uploadFile(attachments.current, true);\r\n const arrAttachments = _getAttachments(dataResUploadFile);\r\n const proBaseSalary = setFieldName(dataNewBase, \"NewBASE\");\r\n const proCoefficient = setFieldName(dataNewCE, \"NewCE\");\r\n let params = {\r\n FormID: \"W09F2090\",\r\n Language: Config.language || 84,\r\n IsAdjustSalary: +isSalaryAdjustment ?? 0,\r\n EmployeeID: dataForm?.Employee ?? \"\",\r\n NewDivisionID: dataForm?.DivisionID ?? \"\",\r\n NewDepartmentID: dataForm?.DepartmentID ?? \"\",\r\n NewDutyID: dataForm?.DutyID ?? \"\",\r\n Validdate: moment(dataForm?.Validdate).isValid() ?\r\n moment(dataForm?.Validdate).format(\"YYYY-MM-DD\") : null,\r\n IsSalaryAdjustment: +isSalaryAdjustment ?? 0,\r\n Note: dataForm?.Note ?? \"\",\r\n arrAttachment: JSON.stringify(arrAttachments),\r\n ...proBaseSalary,\r\n ...proCoefficient\r\n };\r\n\r\n if(mode === \"edit\") {\r\n params = {...params, TransID: dataForm?.TransID ?? \"\"}\r\n }\r\n\r\n props.w09f2091Actions[modeSave](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 let message = data.Message || Config.lang(\"DHR_Loi_chua_xac_dinh\");\r\n Config.popup.show('INFO', message);\r\n }\r\n if (data.Status === 0) {\r\n Config.notify.show('success', Config.lang(\"Luu_thanh_cong\"), 2000);\r\n _removeCDN();\r\n onClosePopup(true);\r\n }\r\n })\r\n\r\n };\r\n\r\n const onClosePopup = (isReload) => {\r\n if (onClose) onClose(isReload);\r\n };\r\n\r\n const errorEmployee = !!errorHelperText['Employee'] && errorHelperText['Employee'].length > 0;\r\n const errorValiddate = !!errorHelperText['Validdate'] && errorHelperText['Validdate'].length > 0;\r\n const errorDivisionID = !!errorHelperText['DivisionID'] && errorHelperText['DivisionID'].length > 0;\r\n const errorDepartmentID = !!errorHelperText['DepartmentID'] && errorHelperText['DepartmentID'].length > 0;\r\n const errorDutyID = !!errorHelperText['DutyID'] && errorHelperText['DutyID'].length > 0;\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 {\r\n const {data: item} = data;\r\n return (\r\n
\r\n \r\n {`${item?.EmployeeID} - ${item?.EmployeeName}`}\r\n
\r\n );\r\n }}\r\n label={Config.lang(\"Nhan_vien\")}\r\n placeholder={Config.lang(\"Chon\")}\r\n displayExpr={\"{EmployeeID} - {EmployeeName}\"}\r\n onChange={(e) => 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('Validdate', e)}\r\n />\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n handleChange(\"DivisionID\", e)}\r\n dataSource={getCboDivisions}\r\n disabled={loading || isModeView}\r\n value={dataForm?.DivisionID}\r\n />\r\n \r\n \r\n handleChange(\"DepartmentID\", e)}\r\n dataSource={dataCboDepartments}\r\n disabled={loading || isModeView}\r\n value={dataForm?.DepartmentID}\r\n />\r\n \r\n \r\n handleChange(\"DutyID\", e)}\r\n dataSource={getCboDuty}\r\n disabled={loading || isModeView}\r\n value={dataForm?.DutyID}\r\n />\r\n \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 {iPermission.W09F5602 > 0 ?\r\n \r\n \r\n \r\n setIsSalaryAdjustment(e.target.checked)}\r\n checked={isSalaryAdjustment}/>\r\n \r\n \r\n \r\n : \"\"}\r\n\r\n \r\n {isSalaryAdjustment ?\r\n \r\n \r\n \r\n \r\n {iPermission.W09F5602 > 0 && getColumns.map((item, idx) => {\r\n const num = item?.FieldName?.slice(-2) ?? \"\";\r\n const oldValue = dataBase[item?.FieldName] ?? null;\r\n const newValue = dataNewBase[`New${item?.FieldName}`] ?? null;\r\n return (\r\n \r\n \r\n \r\n {idx === 0 ?\r\n {Config.lang(\"Muc_luong\")}\r\n : \"\"\r\n }\r\n {item?.CaptionName ?? \"\"}\r\n \r\n {iPermission.W09F5602 > 0 ?\r\n \r\n {idx === 0 ?\r\n {Config.lang(\"Cu\")}\r\n : \"\"\r\n }\r\n \r\n \r\n : \"\"}\r\n\r\n {iPermission.W09F5602 > 1 ?\r\n \r\n {idx === 0 ?\r\n {Config.lang(\"Moi\")}\r\n : \"\"\r\n }\r\n handleChangeBase(`NewBASE${num}`,e)}\r\n />\r\n \r\n : \"\"}\r\n\r\n \r\n \r\n )\r\n })}\r\n \r\n \r\n {iPermission.W09F5602 > 0 && getCoefficients.map((item, idx) => {\r\n const num = item?.FieldName?.slice(-2) ?? \"\";\r\n const oldValue = dataCE[item?.FieldName] ?? null;\r\n const newValue = dataNewCE[`New${item?.FieldName}`] ?? null;\r\n return (\r\n \r\n \r\n \r\n {idx === 0 ?\r\n {Config.lang(\"He_so\")}\r\n : \"\"\r\n }\r\n {item?.CaptionName ?? \"\"}\r\n \r\n {iPermission.W09F5602 > 0 ?\r\n \r\n {idx === 0 ?\r\n {Config.lang(\"Cu\")}\r\n : \"\"\r\n }\r\n \r\n \r\n : \"\"}\r\n {iPermission.W09F5602 > 1 ?\r\n \r\n {idx === 0 ?\r\n {Config.lang(\"Moi\")}\r\n : \"\"\r\n }\r\n handleChangeCE(`NewCE${num}`,e)}/>\r\n \r\n : \"\"}\r\n\r\n \r\n \r\n )\r\n })}\r\n\r\n \r\n \r\n \r\n \r\n : \"\"}\r\n \r\n \r\n \r\n \r\n {\r\n 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\nW09F2091.propTypes = {\r\n data: PropTypes.object,\r\n open: PropTypes.bool,\r\n onClose: PropTypes.func,\r\n iPermission: PropTypes.object,\r\n};\r\n\r\nW09F2091.defaultProps = {\r\n data: {},\r\n open: false,\r\n onClose: null,\r\n iPermission: {},\r\n};\r\n\r\nexport default compose(\r\n connect((state) => ({\r\n getCboDuty: state.general.getCboDuty2,\r\n getCoefficients: state.W09F2091.getCoefficients,\r\n getColumns: state.W09F2091.getColumns,\r\n getCboDivisions: state.W09F2091.getCboDivisions,\r\n }),\r\n (dispatch) => ({\r\n w09f2091Actions: bindActionCreators(W09F2091Actions, dispatch),\r\n generalActions: bindActionCreators(generalActions, dispatch),\r\n })\r\n ),\r\n)(W09F2091);\r\n","/**\r\n * @copyright 2023 @ DigiNet\r\n * @author TRNGHOANG\r\n * @create 08/03/2023\r\n * @Example\r\n */\r\nimport React, { useEffect, useState, useRef } from \"react\";\r\nimport { connect, useDispatch } from \"react-redux\";\r\nimport PropTypes from \"prop-types\";\r\nimport * as W09F2081Actions from \"../../../../redux/W0X/W09F2081/W09F2081_actions\";\r\nimport * as generalActions from \"../../../../redux/general/general_actions\";\r\nimport { bindActionCreators, compose } from \"redux\";\r\nimport Config from \"../../../../config\";\r\nimport { Column } from \"devextreme-react/data-grid\";\r\nimport GridContainer from \"../../../grid-container/grid-container\";\r\nimport {\r\n Modal,\r\n ModalHeader,\r\n ModalBody,\r\n Button,\r\n Checkbox,\r\n Dropdown,\r\n TreeView,\r\n Divider,\r\n ButtonIcon,\r\n Row,\r\n Col,\r\n Typography,\r\n ModalFooter,\r\n TextInput,\r\n} from \"diginet-core-ui/components\";\r\nimport { makeStyles, useTheme } from \"diginet-core-ui/theme\";\r\nconst { spacing, colors } = useTheme();\r\n\r\nconst useStyle = makeStyles(() => ({\r\n animation: {\r\n transition: \"all 1s\",\r\n },\r\n noWrap: {\r\n whiteSpace: \"pre\",\r\n },\r\n leftBox: {\r\n paddingRight: spacing(4),\r\n position: \"relative\",\r\n transition: \"all 1s\",\r\n overflow: \"hidden\",\r\n },\r\n divider: {\r\n position: \"absolute\",\r\n right: 0,\r\n top: 0,\r\n width: 1,\r\n height: \"100%\",\r\n },\r\n hideCloseButton: {\r\n \"&#W09F2081PopupHeader\":{\r\n \"& .DGN-UI-Modal-Header-Title\": {\r\n display: \"none\",\r\n }\r\n }\r\n }\r\n}));\r\n\r\nconst W09F2081Popup = props => {\r\n const { open, onClose, data, saveApprovals } = props;\r\n\r\n const [loading, setLoading] = useState(false);\r\n const [minimum, setMinimum] = useState(false);\r\n const [selectedRowKeys, setSelectedRowKeys] = useState([]);\r\n\r\n const [isShowSelected, setIsShowSelected] = useState(false);\r\n\r\n const [dataOrg, setDataOrg] = useState([]);\r\n const [dataProject, setDataProject] = useState({ rows: [], total: 0 });\r\n const [dataDuty, setDataDuty] = useState([]);\r\n const [dataGrid, setDataGrid] = useState({ rows: [], total: 0 });\r\n const [dataDepartment, setDataDepartment] = useState([]);\r\n\r\n const [cboOrgLoading, setCboOrgLoading] = useState(false);\r\n const [cboProjectLoading, setCboProjectLoading] = useState(false);\r\n const [cboDutyLoading, setCboDutyLoading] = useState(false);\r\n\r\n const selectedRowDatas = useRef(null);\r\n const changePage = useRef(false);\r\n const changeShow = useRef(false);\r\n const tmpCurrentSelectedRowKeys = useRef([]);\r\n const timer = useRef(null);\r\n\r\n\r\n const gridRef = useRef(null);\r\n const [filterSearch, setFilterSearch] = useState({\r\n EmployeeID: \"\",\r\n ProjectID: [],\r\n OrgChartID: [],\r\n DepartmentID: [],\r\n DutyID: [],\r\n });\r\n const filter = useRef({\r\n skip: 0,\r\n limit: 10,\r\n })\r\n const filterCboProjects = useRef({\r\n skip: 0,\r\n limit: 50,\r\n });\r\n const filterCboDuty = useRef({\r\n skip: 0,\r\n limit: 50,\r\n })\r\n const filterCboDepartment = useRef({\r\n skip: 0,\r\n limit: 50,\r\n })\r\n\r\n const dispatch = useDispatch();\r\n\r\n const classes = useStyle();\r\n\r\n useEffect(() => {\r\n loadDataOrgChart(); \r\n loadCboProjects();\r\n loadCboDuty();\r\n loadCboDepartment();\r\n loadGrid();\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, []);\r\n\r\n /**\r\n * Func thay đổi data filter\r\n * @param key\r\n * @param evt\r\n */\r\n const filterChange = (key, evt) => {\r\n if (!key || !evt) return;\r\n const value = evt?.value ?? evt?.target?.value ?? \"\";\r\n setFilterSearch({...filterSearch, [key]: value})\r\n };\r\n\r\n /**\r\n * load data dropdown cơ cấu tổ chức bên thanh filter trái\r\n */\r\n const loadDataOrgChart = () => {\r\n setCboOrgLoading(true);\r\n dispatch(\r\n generalActions.getOrgCharts({}, (error, data) => {\r\n setCboOrgLoading(false);\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n }\r\n setDataOrg(data || []);\r\n })\r\n );\r\n };\r\n\r\n /**\r\n * load data dropdown dự án bên thanh filter trái\r\n * @param isReset\r\n */\r\n const loadCboProjects = isReset => {\r\n const param = {\r\n HostID: \"\",\r\n FormID: \"W09F1120\",\r\n ...filterCboProjects.current,\r\n };\r\n setCboProjectLoading(true);\r\n dispatch(\r\n generalActions.getCboProjects(param, (error, data) => {\r\n setCboProjectLoading(false);\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n }\r\n if (data) {\r\n const rows = data && data.rows ? data.rows : data;\r\n const total = data && data.total ? data.total : data.length;\r\n setDataProject({\r\n rows: isReset ? rows : dataProject.rows.concat(rows),\r\n total: total,\r\n });\r\n }\r\n })\r\n );\r\n };\r\n\r\n /**\r\n * load data lưới chính\r\n */\r\n const loadGrid = () => {\r\n const {EmployeeID, DepartmentID, ProjectID, DutyID, OrgChartID} = filterSearch;\r\n const {skip, limit} = filter.current;\r\n const params = {\r\n Employee: EmployeeID,\r\n DepartmentID,\r\n ProjectID,\r\n DutyID,\r\n OrgChartID,\r\n FormID: \"W09F2081\",\r\n skip,\r\n limit,\r\n };\r\n setLoading(true);\r\n dispatch(\r\n W09F2081Actions.loadGrid(params, (error, data) => {\r\n setLoading(false);\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n }\r\n setDataGrid(data || []);\r\n })\r\n );\r\n };\r\n\r\n const loadCboDepartment = () => {\r\n const param = {\r\n HostID: \"\",\r\n FormID: \"W09F2081\",\r\n DivisionID: Config.getDivisionID(),\r\n Language: Config.language || \"84\",\r\n };\r\n\r\n props.generalActions.getCboDepartments(param, (error, data) => {\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n setDataDepartment(data || []);\r\n });\r\n };\r\n\r\n const loadCboDuty = () => {\r\n setCboDutyLoading(true);\r\n props.generalActions.getCboDuty2((error, data) => {\r\n setCboDutyLoading(false);\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n setDataDuty(data || []);\r\n });\r\n };\r\n\r\n /**\r\n * Confirm danh sách nhân viên được chọn phải có đính kèm và mẫu báo cáo\r\n */\r\n const confirmSave = () => {\r\n let dataSelected = gridRef.current.instance.getSelectedRowKeys();\r\n if (!dataSelected?.length) {\r\n Config.popup.show(\"WARNING\", Config.lang(\"Ban_chua_chon_nhan_vien\"));\r\n return;\r\n }\r\n onSave();\r\n };\r\n const onCloseWithoutSave = () => {\r\n const {selectedRow, status, notes} = data;\r\n const action = status === \"approve\" ? 1 : 100;\r\n Config.popup.show(\"YES_NO\", Config.lang(\"Neu_ban_dong_popup_thi_se_khong_gui_thong_bao\"), \r\n () => {\r\n saveApprovals(action, notes, selectedRow);\r\n onClose()\r\n } , () => {\r\n return;\r\n });\r\n }\r\n /**\r\n * thực thi lưu data cả lưới\r\n * lưu theo từng dòng: lưu CDN đính kèm thành công => tiếp theo sẽ lưu 1 dòng trên lưới\r\n * @type {Function}\r\n */\r\n const onSave = async () => {\r\n const {selectedRow, status, notes} = data;\r\n const action = status === \"approve\" ? 1 : 100;\r\n const listEmail = [];\r\n selectedRowDatas.current.forEach(p => listEmail.push(p.Email));\r\n setLoading(true);\r\n const params = {\r\n VoucherID: selectedRow?.VoucherID,\r\n EmployeeID: JSON.stringify(selectedRowKeys),\r\n Email: JSON.stringify(listEmail),\r\n };\r\n Promise.all([dispatch(\r\n W09F2081Actions.choose(params, err => {\r\n setLoading(false);\r\n if (err) Config.popup.show(\"ERROR\", err);\r\n else {\r\n onClose && onClose();\r\n }\r\n })\r\n ), saveApprovals(action, notes, selectedRow)])\r\n };\r\n\r\n const onChangePage = (page) => {\r\n changePage.current = true;\r\n filter.current.skip = page * filter.current.limit;\r\n loadGrid();\r\n };\r\n\r\n const onChangePerPage = (perPage) => {\r\n changePage.current = true;\r\n filter.current.skip = 0;\r\n filter.current.limit = perPage;\r\n loadGrid();\r\n };\r\n\r\n const search = () => {\r\n changePage.current = true;\r\n filter.current.skip = 0;\r\n loadGrid();\r\n };\r\n\r\n const onSelectionChanged = (e) => {\r\n let tmpSelectedRowKeys = [...selectedRowKeys];\r\n let tmpSelectedRowDatas = [...(selectedRowDatas.current ?? [])];\r\n\r\n if (e?.currentDeselectedRowKeys?.length > 0) {\r\n if (changePage.current && !isShowSelected) {\r\n changePage.current = false;\r\n } else {\r\n e.currentDeselectedRowKeys.forEach((key) => {\r\n tmpSelectedRowKeys = tmpSelectedRowKeys.filter((i) => i !== key);\r\n tmpSelectedRowDatas = tmpSelectedRowDatas.filter((i) => i.EmployeeID !== key);\r\n });\r\n }\r\n }\r\n\r\n if (e?.currentSelectedRowKeys?.length > 0) {\r\n e.selectedRowsData.forEach((data) => {\r\n const idxKey = tmpSelectedRowKeys.indexOf(data?.EmployeeID ?? '');\r\n const idxData = tmpSelectedRowDatas.findIndex((i) => i.EmployeeID === (data?.EmployeeID ?? ''));\r\n if (idxKey === -1) {\r\n tmpSelectedRowKeys.push(data?.EmployeeID ?? '');\r\n }\r\n if (idxData === -1) {\r\n tmpSelectedRowDatas.push(data);\r\n }\r\n });\r\n changePage.current = false;\r\n }\r\n\r\n setSelectedRowKeys(tmpSelectedRowKeys);\r\n selectedRowDatas.current = tmpSelectedRowDatas;\r\n };\r\n\r\n const changeTypeShow = (e) => {\r\n if (!e) return false;\r\n changePage.current = true;\r\n changeShow.current = true;\r\n const value = e?.value ?? false;\r\n setIsShowSelected(value);\r\n };\r\n\r\n //true: Con key chua duoc select; false: da select het..\r\n const _checkSelectedRowsKeys = (dataSource) => {\r\n let isCheck = false;\r\n if (dataSource && dataSource.length > 0 && selectedRowDatas.current?.length > 0) {\r\n const dataKeys = dataSource.map(d => d.EmployeeID);\r\n for (let key of selectedRowDatas.current) {\r\n if (!dataKeys.includes(key)) {\r\n isCheck = true;\r\n break;\r\n }\r\n }\r\n }\r\n return isCheck;\r\n };\r\n\r\n\r\n let _dataGrid = dataGrid.rows;\r\n let _selectedRowKeys = selectedRowKeys;\r\n if (isShowSelected) {\r\n tmpCurrentSelectedRowKeys.current = selectedRowKeys;\r\n if (selectedRowDatas.current) {\r\n _dataGrid = selectedRowDatas.current;\r\n if (_selectedRowKeys.length === tmpCurrentSelectedRowKeys.current.length) changeShow.current = false;\r\n _selectedRowKeys = tmpCurrentSelectedRowKeys.current;\r\n }\r\n } else if (changeShow.current) {\r\n if (!_checkSelectedRowsKeys(_dataGrid)) changeShow.current = false;\r\n }\r\n\r\n return (\r\n <>\r\n \r\n \r\n {Config.lang(\"Bo_sung_nguoi_nhan_thong_bao_va_mail\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n setMinimum(!minimum)}\r\n />\r\n {!minimum && (\r\n \r\n {Config.lang(\"Tieu_chi_loc\")}\r\n \r\n )}\r\n
\r\n {!minimum && (\r\n setMinimum(!minimum)}\r\n />\r\n )}\r\n \r\n {!minimum && (\r\n \r\n \r\n \r\n \r\n \r\n filterChange(\"EmployeeID\", e)}\r\n />\r\n \r\n\r\n \r\n filterChange(\"OrgChartID\", e)}\r\n >\r\n filterChange(\"OrgChartID\", e)}\r\n parentID={\"OrgChartParentID\"}\r\n value={filterSearch.OrgChartID}\r\n valueExpr={\"OrgChartID\"}\r\n />\r\n \r\n \r\n\r\n \r\n filterChange(\"ProjectID\", e)}\r\n onInput={e => {\r\n filterCboProjects.current.search = e.target.value;\r\n filterCboProjects.current.skip = 0;\r\n loadCboProjects(true);\r\n }}\r\n onLoadMore={e => {\r\n filterCboProjects.current.skip = e.skip;\r\n filterCboProjects.current.limit = e.limit;\r\n loadCboProjects();\r\n }}\r\n />\r\n \r\n \r\n filterChange(\"DepartmentID\", e)}\r\n value={filterSearch.DepartmentID}\r\n onInput={e => {\r\n filterCboDepartment.current.search = e.target.value;\r\n filterCboDepartment.current.skip = 0;\r\n loadCboProjects(true);\r\n }}\r\n onLoadMore={e => {\r\n filterCboDepartment.current.skip = e.skip;\r\n filterCboDepartment.current.limit = e.limit;\r\n loadCboProjects();\r\n }}\r\n />\r\n \r\n \r\n filterChange(\"DutyID\", e)}\r\n value={filterSearch.DutyID}\r\n onInput={e => {\r\n filterCboDuty.current.search = e.target.value;\r\n filterCboDuty.current.skip = 0;\r\n loadCboDuty(true);\r\n }}\r\n onLoadMore={e => {\r\n filterCboDuty.current.skip = e.skip;\r\n filterCboDuty.current.limit = e.limit;\r\n loadCboDuty();\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n (gridRef.current = ref)}\r\n dataSource={_dataGrid || []}\r\n totalItems={dataGrid.total}\r\n keyExpr={\"EmployeeID\"}\r\n pagerFullScreen={false}\r\n typePaging={\"remote\"}\r\n showBorders={false}\r\n columnAutoWidth={true}\r\n loading={loading}\r\n height={Config.getHeightGrid() - 180}\r\n selection={{\r\n allowSelectAll: true,\r\n mode: \"multiple\",\r\n selectAllMode: \"allPages\",\r\n showCheckBoxesMode: \"always\",\r\n }}\r\n selectedRowKeys={_selectedRowKeys}\r\n onSelectionChanged={onSelectionChanged}\r\n onChangePage={onChangePage}\r\n onChangePerPage={onChangePerPage}\r\n allowColumnResizing={true}\r\n onContentReady={(e) => {\r\n if(timer.current) clearTimeout(timer.current);\r\n timer.current = setTimeout(() => {\r\n e.component.selectRows(selectedRowKeys)\r\n }, 300)\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n confirmSave()}\r\n />\r\n \r\n
\r\n \r\n );\r\n};\r\n\r\nW09F2081Popup.propTypes = {\r\n FormID: PropTypes.string,\r\n open: PropTypes.bool,\r\n dataDefaults: PropTypes.object,\r\n\r\n onClose: PropTypes.func,\r\n data: PropTypes.object,\r\n saveApprovals: PropTypes.func,\r\n};\r\n\r\nexport default compose(\r\n connect(\r\n state => ({\r\n getCboStatusWork: state.general.getCboStatusWork,\r\n getCboProjects: state.general.getCboProjects,\r\n getCboDuty: state.general.getCboDuty2,\r\n }),\r\n dispatch => ({\r\n W09F2081Actions: bindActionCreators(W09F2081Actions, dispatch),\r\n generalActions: bindActionCreators(generalActions, dispatch),\r\n })\r\n )\r\n)(W09F2081Popup);\r\n","/**\r\n * @copyright 2019 @ DigiNet\r\n * @author TRIHAO\r\n * @create 2/12/2020\r\n * @Example\r\n */\r\nimport React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport PropTypes from \"prop-types\";\r\nimport * as W09F2070Actions from \"../../../../redux/W0X/W09F2070/W09F2070_actions\";\r\nimport { bindActionCreators, compose } from \"redux\";\r\nimport Config from \"../../../../config\";\r\nimport { Row, Col, FormGroup } from \"react-bootstrap\";\r\nimport ButtonGeneral from \"../../../common/button/button-general\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport { Combo, MForm, TextField } from \"../../../common/form-material\";\r\nimport * as generalActions from \"../../../../redux/general/general_actions\";\r\nimport moment from \"moment\";\r\nimport DateBoxPicker from \"../../../common/form-material/date-box\"\r\nimport Attachments from \"../../../common/attachments/attachments\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport AttachFileIcon from \"@material-ui/icons/AttachFile\";\r\nimport Modal from \"../../../common/modal/modal\";\r\nimport FormLabel from \"@material-ui/core/FormLabel\";\r\nimport { FormControl, InputLabel } from \"@material-ui/core\";\r\nimport _ from 'lodash';\r\nimport NumberFormat from \"react-number-format\";\r\nimport { Avatar, Dropdown, Typography } from 'diginet-core-ui/components';\r\n\r\nconst styles = {\r\n avatar: {\r\n width: 30,\r\n height: 30,\r\n borderRadius: \"50%\",\r\n border: \"1px solid #ddd\",\r\n overflow: \"hidden\",\r\n marginRight: 8\r\n },\r\n imgAvatar: {\r\n maxWidth: \"100%\",\r\n maxHeight: \"100%\",\r\n objectFit: \"contain\"\r\n },\r\n chip: {\r\n fontSize: \"1rem\",\r\n fontWeight: 400,\r\n border: \"none\",\r\n backgroundColor: \"#EBEBEB\"\r\n }\r\n};\r\n\r\nclass W09F2070Popup extends React.PureComponent {\r\n constructor(props) {\r\n super(props);\r\n const proCoefficients = this.convertProCoefficients();\r\n this.state = {\r\n showW09F2070Popup: false,\r\n dataGrid: [],\r\n disabled: false,\r\n error: {},\r\n loading: false,\r\n uploading: false,\r\n dataOldAttachments: [],\r\n dataForm: {\r\n Employee: null,\r\n ProDisRewardFormID: \"\",\r\n ProDisRewardLevelID: \"\",\r\n DisViolationActGroupID: \"\",\r\n DisViolationActID: \"\",\r\n ProContent: \"\",\r\n ProNotice: \"\",\r\n ValidDate: moment().format(\"YYYY-MM-DD\"),\r\n ValidEndDate: null,\r\n NumMonth: 0,\r\n ...proCoefficients\r\n },\r\n employeeLoading: false,\r\n dataCboEmployees: {\r\n rows: [],\r\n total: 0,\r\n },\r\n };\r\n this.attachments = [];\r\n this.deletedFile = [];\r\n this.filterCboEmployees = {\r\n timer: null,\r\n strSearch: \"\",\r\n skip: 0,\r\n limit: 50,\r\n };\r\n }\r\n\r\n\r\n loadCboEmployees = (isReset) => {\r\n const param = {\r\n HostID: \"\",\r\n Type: \"EmployeeID\",\r\n FormID: \"W09F2070\",\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({ employeeLoading: true });\r\n this.props.generalActions.getCboEmployees(param, (error, data) => {\r\n this.setState({ employeeLoading: 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 { dataCboEmployees } = this.state;\r\n const _d = data && data.rows ? data.rows : [];\r\n const total = data && data.total ? data.total : 0;\r\n this.setState({\r\n dataCboEmployees: {\r\n rows: isReset ? _d : dataCboEmployees.rows.concat(_d),\r\n total: total,\r\n },\r\n });\r\n }\r\n });\r\n };\r\n\r\n loadCboDisRewardForm = () => {\r\n this.props.w09f2070Actions.loadCboDisRewardForm(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 loadCboProDisRewardLevel = () => {\r\n this.props.w09f2070Actions.loadCboProDisRewardLevel(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 loadCboDisViolationActGroup = () => {\r\n this.props.w09f2070Actions.loadCboDisViolationActGroup(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 loadCboDisViolationAct = () => {\r\n const { dataForm } = this.state;\r\n const params = {\r\n DisViolationActGroupID: dataForm && dataForm.DisViolationActGroupID ? dataForm.DisViolationActGroupID : \"\"\r\n };\r\n this.props.w09f2070Actions.loadCboDisViolationAct(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 loadForm = () => {\r\n const { data } = this.props;\r\n const param = {\r\n ProTransID: data && data.ProTransID ? data.ProTransID : \"\"\r\n };\r\n this.setState({ loading: true });\r\n this.props.w09f2070Actions.loadForm(param, (error, data) => {\r\n this.setState({ loading: 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 proCoefficients = this.convertProCoefficients(data);\r\n const user = Config.getUser({ EmployeeID: data.EmployeeID });\r\n this.setState({\r\n dataForm: {\r\n ...data,\r\n Employee: user ? user : data,\r\n ...proCoefficients\r\n }\r\n }, () => {\r\n this.loadCboDisViolationAct();\r\n });\r\n }\r\n });\r\n };\r\n\r\n loadRequiredFields = () => {\r\n const params = {\r\n FormID: 'W09F2070',\r\n ModuleID: '09',\r\n CheckMode: 0\r\n };\r\n this.setState({ loading: true });\r\n this.props.generalActions.getRequiredFields(params, error => {\r\n this.setState({ loading: 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 convertProCoefficients = data => {\r\n const { getRewardCaption } = this.props;\r\n const proCoefficientArr = {};\r\n if (getRewardCaption) {\r\n getRewardCaption.forEach(item => {\r\n if (item.Disabled === 0) {\r\n proCoefficientArr[item.Code] = data ? data[item.Code] : 0;\r\n }\r\n });\r\n }\r\n return proCoefficientArr;\r\n };\r\n\r\n handleChange = (key, e) => {\r\n if (!key || !e) return false;\r\n switch (key) {\r\n case \"DisViolationActGroupID\":\r\n this._setDataForm(key, e.value, () => {\r\n this.loadCboDisViolationAct();\r\n });\r\n break;\r\n case \"ValidDate\":\r\n this._setDataForm(key, e.value, () => {\r\n const { ValidDate, ValidEndDate, NumMonth } = this.state.dataForm;\r\n if (ValidDate) {\r\n if (ValidEndDate) {\r\n const _NumMonth = moment(ValidEndDate).diff(moment(ValidDate), 'days');\r\n this._setDataForm(\"NumMonth\", Math.round(_NumMonth / 30));\r\n } else if (NumMonth) {\r\n const NumDays = NumMonth * 30;\r\n const _ValidEndDate = moment(ValidDate).add(NumDays, 'days').format(\"YYYY-MM-DD\");\r\n this._setDataForm(\"ValidEndDate\", _ValidEndDate);\r\n }\r\n }\r\n });\r\n break;\r\n case \"ValidEndDate\":\r\n this._setDataForm(key, e.value, () => {\r\n const { ValidDate, ValidEndDate, NumMonth } = this.state.dataForm;\r\n if (ValidEndDate) {\r\n if (ValidDate) {\r\n const _NumMonth = moment(ValidEndDate).diff(moment(ValidDate), 'days');\r\n this._setDataForm(\"NumMonth\", Math.round(_NumMonth / 30));\r\n } else if (NumMonth) {\r\n const NumDays = NumMonth * 30;\r\n const _ValidDate = moment(ValidEndDate).subtract(NumDays, 'days').format(\"YYYY-MM-DD\");\r\n this._setDataForm(\"ValidDate\", _ValidDate);\r\n }\r\n }\r\n });\r\n break;\r\n case \"NumMonth\":\r\n const _val = e.target.value < 0 ? 0 : e.target.value;\r\n this._setDataForm(key, _val, () => {\r\n const { ValidDate, ValidEndDate, NumMonth } = this.state.dataForm;\r\n if (NumMonth) {\r\n if (ValidDate) {\r\n const NumDays = NumMonth * 30;\r\n const _ValidEndDate = moment(ValidDate).add(NumDays, 'days').format(\"YYYY-MM-DD\");\r\n this._setDataForm(\"ValidEndDate\", _ValidEndDate);\r\n } else if (ValidEndDate) {\r\n const NumDays = NumMonth * 30;\r\n const _ValidDate = moment(ValidEndDate).subtract(NumDays, 'days').format(\"YYYY-MM-DD\");\r\n this._setDataForm(\"ValidDate\", _ValidDate);\r\n }\r\n }\r\n });\r\n break;\r\n case \"EmployeeID\":\r\n this._setDataForm(\"Employee\", e.data);\r\n break;\r\n default:\r\n let value = e.value || e.target?.value || \"\";\r\n if (key.indexOf(\"ProCoefficient\") > -1 && value) {\r\n value = Math.abs(Number(value));\r\n }\r\n this._setDataForm(key, value);\r\n break;\r\n }\r\n };\r\n\r\n componentDidMount() {\r\n const { mode, data } = this.props;\r\n this.loadCboDisRewardForm();\r\n this.loadCboProDisRewardLevel();\r\n this.loadCboDisViolationActGroup();\r\n this.loadRequiredFields();\r\n if (mode === \"view\") {\r\n this.loadForm();\r\n this.loadAttachments();\r\n if (data && (Number(data.AppStatusID) !== 0)) {\r\n this.setState({ disabled: true });\r\n }\r\n } else {\r\n this.loadCboEmployees();\r\n this.loadCboDisViolationAct();\r\n }\r\n }\r\n\r\n _setDataForm = (key, value, cb) => {\r\n if (!key) return false;\r\n this.setState({\r\n dataForm: {\r\n ...this.state.dataForm,\r\n [key]: value\r\n }\r\n }, () => {\r\n if (cb) cb();\r\n });\r\n };\r\n\r\n setStateErrorText(objValue, key) {\r\n const stateError = key ? key : \"error\";\r\n this.setState({\r\n [stateError]: {\r\n ...(this.state[stateError] ? this.state[stateError] : {}),\r\n ...objValue\r\n }\r\n });\r\n return Object.keys(objValue).length !== 0;\r\n }\r\n\r\n onSave = () => {\r\n const { mode, data, getRequiredFields } = this.props;\r\n const isEdit = mode === \"view\";\r\n const { dataForm, dataOldAttachments } = this.state;\r\n const listDataForm = Object.keys(dataForm);\r\n let dataRequired = [\"EmployeeID\", \"ValidDate\"];\r\n const filterAttachment = getRequiredFields && getRequiredFields.filter(item =>\r\n item.SqlFieldName === 'Attachment'\r\n );\r\n getRequiredFields && getRequiredFields.forEach((field) => {\r\n if ((field.ValidMode && field.ValidMode === \"O\"\r\n && field.SqlFieldName && listDataForm.indexOf(field.SqlFieldName) > -1\r\n && dataRequired.indexOf(field.SqlFieldName) < 0)\r\n || ((filterAttachment[0].ValidMode === \"O\" && _.isEmpty(this.attachments) && _.isEmpty(dataOldAttachments)) ? (field.SqlFieldName === 'Attachment') : '')\r\n ) {\r\n dataRequired.push(field.SqlFieldName);\r\n }\r\n });\r\n //validate form..\r\n const validateRules = [];\r\n dataRequired && dataRequired.forEach((item) => {\r\n let rule = {};\r\n switch (item) {\r\n case \"EmployeeID\":\r\n rule = {\r\n name: \"EmployeeID\",\r\n rules: [\"isRequired\"],\r\n value: dataForm && dataForm.Employee && dataForm.Employee.EmployeeID ? dataForm.Employee.EmployeeID : \"\"\r\n };\r\n break;\r\n default:\r\n rule = {\r\n name: item,\r\n rules: [\"isRequired\"],\r\n value: dataForm[item]\r\n };\r\n break;\r\n }\r\n validateRules.push(rule);\r\n });\r\n const validateForm = MForm.formValidation(validateRules);\r\n if (Object.keys(validateForm).length > 0) {\r\n this.setStateErrorText(validateForm);\r\n return false;\r\n } else {\r\n const arrAttachments = this._getAttachments();\r\n const params = {\r\n HREmployeeID: Config.getHREmployeeID(),\r\n ProTransID: data && data.ProTransID ? data.ProTransID : \"\",\r\n ProposalDate: data && data.ProposalDate ? data.ProposalDate : \"\",\r\n ProTeamID: \"\",\r\n ProDepartmentID: \"\",\r\n ProAuthority: \"\",\r\n ProResponsibility: \"\",\r\n ProDivisionID: \"\",\r\n ...dataForm,\r\n //EmployeeID, ProContent, ValidDate, ValidEndDate, ProNotice\r\n //NumMonth, DisViolationActGroupID, DisViolationActID, ProDisRewardLevelID, ProDisRewardFormID,\r\n EmployeeID: dataForm && dataForm.Employee && dataForm.Employee.EmployeeID ? dataForm.Employee.EmployeeID : \"\",\r\n Language: Config.language || \"84\",\r\n DivisionID: Config.getDivisionID(),\r\n TranMonth: Config.getHRTransMonth(),\r\n TranYear: Config.getHRTransYear(),\r\n arrAttachment: JSON.stringify(arrAttachments)\r\n };\r\n if (isEdit) {\r\n params.ProTransID = data && data.ProTransID ? data.ProTransID : \"\";\r\n }\r\n\r\n this.setState({ loading: true });\r\n this.props.w09f2070Actions[isEdit ? \"edit\" : \"save\"](params, (error) => {\r\n this.setState({ loading: false });\r\n if (error) {\r\n let message = Config.lang(\"DHR_Loi_chua_xac_dinh\");\r\n switch (error.code) {\r\n case \"F2000E002\":\r\n message = \"Mode \" + Config.lang(\"DHR_Bat_buoc\");\r\n break;\r\n case \"F2000E003\":\r\n message = \"LeaveTypeID \" + Config.lang(\"DHR_Bat_buoc\");\r\n break;\r\n case \"F2000E004\":\r\n message = \"IsRegisterType \" + Config.lang(\"DHR_Bat_buoc\");\r\n break;\r\n case \"F2000E001\":\r\n message = Config.lang(\"DHR_Luu_khong_thanh_cong\");\r\n break;\r\n default:\r\n break;\r\n }\r\n Config.popup.show(\"INFO\", message);\r\n return false;\r\n }\r\n Config.notify.show('success', Config.lang(\"DHR_Luu_thanh_cong\"), 2000);\r\n this.props.onClose(true);\r\n }\r\n );\r\n }\r\n };\r\n\r\n resetForm = () => {\r\n this.setState({\r\n dataForm: {\r\n Employee: null,\r\n ProDisRewardFormID: \"\",\r\n ProDisRewardLevelID: \"\",\r\n DisViolationActGroupID: \"\",\r\n DisViolationActID: \"\",\r\n ProContent: \"\",\r\n ProNotice: \"\",\r\n ValidDate: moment().format(\"YYYY-MM-DD\"),\r\n ValidEndDate: null,\r\n NumMonth: 0\r\n }\r\n });\r\n };\r\n\r\n onAttachment = () => {\r\n if (this.attRef) {\r\n this.attRef.onAttachment();\r\n }\r\n };\r\n\r\n _getAttachments = () => {\r\n const listAttachments = Config.helpers.getFileInfomations(this.attachments);\r\n const { dataOldAttachments } = this.state;\r\n\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.fileExt ? att.fileExt : \"\"\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 loadAttachments = () => {\r\n const { data } = this.props;\r\n const param = {\r\n KeyID: data && data.ProTransID ? data.ProTransID : \"\",\r\n };\r\n this.props.generalActions.getAttachmentsByTransID(param, (error, data) => {\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (data && data.length > 0) {\r\n this.setState({\r\n dataOldAttachments: data\r\n });\r\n }\r\n });\r\n };\r\n\r\n onUploading = (value) => {\r\n this.setState({ uploading: value });\r\n };\r\n\r\n onChangeAttachments = (e) => {\r\n this.attachments = e.uploadedFiles ? e.uploadedFiles : [];\r\n if (e.deletedFiles && e.deletedFiles.length > 0) {\r\n this.deletedFile = [...e.deletedFiles];\r\n const _arrRemove = this.deletedFile.map((d) => d.AttachmentID);\r\n this.setState(prevState => ({\r\n dataOldAttachments: prevState.dataOldAttachments.filter((att) => {\r\n return _arrRemove.indexOf(att.AttachmentID) < 0;\r\n })\r\n }));\r\n }\r\n };\r\n\r\n render() {\r\n let { getCboProDisRewardLevel, getCboDisRewardForm, getRewardCaption,\r\n getCboDisViolationActGroup, getCboDisViolationAct, mode, data\r\n } = this.props;\r\n const { uploading, dataForm, error, loading, dataOldAttachments, disabled, dataCboEmployees, employeeLoading } = this.state;\r\n\r\n const employee = Config.getUser({EmployeeID: dataForm?.Employee?.EmployeeID});\r\n return (\r\n <>\r\n \r\n \r\n \r\n {\r\n return (\r\n
\r\n \r\n {`${data?.data?.EmployeeID} - ${data?.data?.EmployeeName}`}\r\n
\r\n );\r\n }}\r\n value={dataForm?.Employee?.EmployeeID}\r\n disabled={mode === \"view\" || loading || disabled}\r\n label={Config.lang(\"Nhan_vien\")}\r\n inputProps={{\r\n readOnly: disabled,\r\n }}\r\n iconExpr={{\r\n key: \"UserPictureURL\",\r\n prefix: Config.getCDNPath(),\r\n }}\r\n onChange={(e) => this.handleChange(\"EmployeeID\", e)}\r\n onInput={(e) => {\r\n this.filterCboEmployees.skip = 0;\r\n this.filterCboEmployees.strSearch = e.target.value;\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 \r\n \r\n \r\n \r\n {Config.lang(\"DHR_Thoi_gian_hieu_luc\")}\r\n \r\n \r\n \r\n
\r\n {Config.lang(\"DHR_Tu\")}\r\n this.handleChange(\"ValidDate\", e)}\r\n margin={\"normal\"}\r\n disabled={disabled || loading}\r\n error={error && error[\"ValidDate\"]}\r\n />\r\n
\r\n \r\n \r\n
\r\n {Config.lang(\"DHR_Den\")}\r\n this.handleChange(\"ValidEndDate\", e)}\r\n margin={\"normal\"}\r\n disabled={disabled || loading}\r\n />\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n this.handleChange('NumMonth', e)}\r\n fullWidth\r\n />\r\n \r\n
\r\n \r\n \r\n this.handleChange(\"DisViolationActGroupID\", e)}\r\n margin={\"normal\"}\r\n />\r\n \r\n \r\n \r\n this.handleChange(\"DisViolationActID\", e)\r\n }\r\n margin={\"normal\"}\r\n />\r\n \r\n \r\n \r\n \r\n this.handleChange(\"ProDisRewardFormID\", e)}\r\n margin={\"normal\"}\r\n />\r\n \r\n \r\n this.handleChange(\"ProDisRewardLevelID\", e)}\r\n margin={\"normal\"}\r\n />\r\n \r\n \r\n \r\n \r\n this.handleChange(\"ProContent\", e)}\r\n fullWidth\r\n />\r\n \r\n \r\n \r\n \r\n this.handleChange(\"ProNotice\", e)}\r\n fullWidth\r\n />\r\n \r\n \r\n \r\n \r\n {getRewardCaption && getRewardCaption.map((item, i) => {\r\n if (item.Disabled === 0) {\r\n return \r\n this.handleChange(item.Code, e)}\r\n fullWidth\r\n disabled={loading || disabled}\r\n InputLabelProps={{\r\n shrink: true\r\n }}\r\n variant={\"standard\"}\r\n margin={\"normal\"}\r\n helperText={this.state.helperTextQuantity}\r\n InputProps={{ inputProps: { min: 0 } }}\r\n />\r\n \r\n } else {\r\n return null;\r\n }\r\n })}\r\n \r\n \r\n \r\n this.attRef = ref}\r\n showButton={true}\r\n files={dataOldAttachments}\r\n disabled={disabled || loading || uploading}\r\n maxLength={5}\r\n uploading={loading}\r\n onUploading={this.onUploading}\r\n onChanged={this.onChangeAttachments}\r\n />\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n );\r\n }\r\n}\r\n\r\nW09F2070Popup.propTypes = {\r\n open: PropTypes.bool,\r\n mode: PropTypes.string,\r\n data: PropTypes.any,\r\n\r\n onClose: PropTypes.func\r\n};\r\n\r\nexport default compose(\r\n connect(\r\n state => ({\r\n getCboEmployees: state.general.getCboEmployees,\r\n getLeaveTypes: state.W09F2070.getLeaveTypes,\r\n loadForm: state.W09F2070.loadForm,\r\n getCboDisRewardForm: state.W09F2070.getCboDisRewardForm,\r\n getCboProDisRewardLevel: state.W09F2070.getCboProDisRewardLevel,\r\n getCboDisViolationActGroup: state.W09F2070.getCboDisViolationActGroup,\r\n getCboDisViolationAct: state.W09F2070.getCboDisViolationAct,\r\n getRewardCaption: state.W09F2070.getRewardCaption,\r\n getForm: state.W09F2070.getForm,\r\n getRequiredFields: state.general.getRequiredFields,\r\n getAttachmentsByTransID: state.general.getAttachmentsByTransID\r\n }),\r\n dispatch => ({\r\n w09f2070Actions: bindActionCreators(W09F2070Actions, dispatch),\r\n generalActions: bindActionCreators(generalActions, dispatch)\r\n })\r\n ),\r\n withStyles(styles)\r\n)(W09F2070Popup);\r\n","/**\r\n * @copyright 2019 @ DigiNet\r\n * @author TRIHAO\r\n * @create 2/12/2020\r\n * @Example\r\n */\r\nimport React from \"react\";\r\nimport {connect} from \"react-redux\";\r\nimport PropTypes from \"prop-types\";\r\nimport {bindActionCreators, compose} from \"redux\";\r\nimport Config from \"../../../../config\";\r\nimport {Row, Col, FormGroup} from \"react-bootstrap\";\r\nimport {MForm, TextField} from \"../../../common/form-material\";\r\nimport * as generalActions from \"../../../../redux/general/general_actions\";\r\nimport * as W09F2080Actions from \"../../../../redux/W0X/W09F2080/W09F2080_actions\";\r\nimport moment from \"moment\";\r\nimport Modal from \"../../../common/modal/modal\";\r\nimport CDN from \"../../../CDN\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport * as W09F2150Actions from \"../../../../redux/W0X/W09F2150/W09F2150_actions\";\r\nimport {\r\n Button,\r\n Dropdown,\r\n TextInput,\r\n Checkbox,\r\n DatePicker,\r\n Avatar,\r\n Typography,\r\n Attachment,\r\n TabContainer,\r\n TabHeader,\r\n TabItem,\r\n TabPanel,\r\n Accordion,\r\n AccordionDetails,\r\n AccordionSummary\r\n} from \"diginet-core-ui/components\";\r\n\r\nclass W09F2080Popup extends React.PureComponent {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n iPermissions: {},\r\n showW09F2070Popup: false,\r\n tabKey: 0,\r\n disabled: false,\r\n error: {},\r\n loading: false,\r\n uploading: false,\r\n dataTeam: [],\r\n dataFormSalary: {},\r\n dataColumnSalary: [],\r\n dataOldAttachments: [],\r\n dataOldForm: {\r\n DepartmentID: \"\",\r\n DutyName: \"\",\r\n DutyID: \"\",\r\n TeamID: \"\",\r\n WorkID: \"\",\r\n ProjectID: \"\",\r\n DepartmentName: \"\",\r\n TeamName: \"\",\r\n WorkName: \"\",\r\n ProjectName: \"\",\r\n BASE01: 0,\r\n BASE02: 0,\r\n BASE03: 0,\r\n BASE04: 0,\r\n },\r\n dataForm: {\r\n Employee: null,\r\n NewDutyID: \"\",\r\n NewDepartmentID: \"\",\r\n NewTeamID: \"\",\r\n NewWorkID: \"\",\r\n NewProject: null,\r\n NewProjectName: \"\",\r\n ProContent: \"\",\r\n ProNotice: \"\",\r\n ValidDate: moment().format(\"YYYY-MM-DD\"),\r\n NewBASE01: 0,\r\n NewBASE02: 0,\r\n NewBASE03: 0,\r\n NewBASE04: 0,\r\n IsSalaryAdjustment: 0,\r\n NewDirectManagerID: \"\",\r\n IsDutyAdjustment: 0,\r\n },\r\n dataCboProjects: {\r\n rows: [],\r\n total: 0\r\n },\r\n dataCboEmployees: {\r\n rows: [],\r\n total: 0\r\n },\r\n dataCboDirectManagers: [],\r\n dataDefaultEmployee: {},\r\n cboDirectManagersLoading: false,\r\n cboCboEmployeesLoading: false,\r\n projectsLoading: false,\r\n };\r\n this.attachments = [];\r\n this.deletedFile = [];\r\n this.filterCboProject = {\r\n strSearch: \"\",\r\n skip: 0,\r\n limit: 50\r\n };\r\n this.filterCboEmployees = {\r\n search: \"\",\r\n skip: 0,\r\n limit: 50\r\n };\r\n this.isChangeForm = false;\r\n this.dataCboDirectManagers = [];\r\n }\r\n\r\n loadPermission = async () => {\r\n await this.props.generalActions.getPermission([\"W09F5650\", \"W09F5602\", \"W09F2150\"], (arrPer) => {\r\n const permissions = {\"W09F5650\": 0, \"W09F5602\": 0, \"W09F2150\": 0};\r\n if (Array.isArray(arrPer)) {\r\n arrPer.forEach(per => {\r\n if (per?.FormID && per?.IsPermission) {\r\n permissions[per.FormID] = per.IsPermission;\r\n }\r\n });\r\n }\r\n this.setState({iPermissions: permissions});\r\n }, true);\r\n };\r\n\r\n loadCboProjects = (isReset) => {\r\n const param = {\r\n HostID: \"\",\r\n FormID: \"W09F2080\",\r\n Language: Config.language || \"84\",\r\n skip: this.filterCboProject.skip,\r\n limit: this.filterCboProject.limit,\r\n search: this.filterCboProject.strSearch\r\n };\r\n this.setState({ projectsLoading: true});\r\n this.props.generalActions.getCboProjects(param, (error, data) => {\r\n this.setState({ projectsLoading: 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 {dataCboProjects} = this.state;\r\n const rows = data && data.rows ? data.rows : data;\r\n const total = data && data.total ? data.total : data.length;\r\n this.setState({\r\n dataCboProjects: {\r\n rows: isReset ? rows : dataCboProjects.rows.concat(rows),\r\n total: total\r\n },\r\n });\r\n }\r\n });\r\n };\r\n\r\n loadCboDepartment = () => {\r\n const param = {\r\n HostID: \"\",\r\n FormID: \"W09F2080\",\r\n DivisionID: Config.getDivisionID(),\r\n Language: Config.language || \"84\"\r\n };\r\n\r\n this.props.generalActions.getCboDepartments(param, 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 loadCboTeam = () => {\r\n const params = {\r\n DivisionID: Config.getDivisionID(),\r\n CompanyID: \"\",\r\n HostID: \"\",\r\n FormID: \"W09F2080\",\r\n Language: Config.language || \"84\"\r\n };\r\n this.props.generalActions.getCboTeam(params, (error, data) => {\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (data) {\r\n this.setState({dataTeam: data});\r\n }\r\n });\r\n };\r\n\r\n loadCboWorks = () => {\r\n const params = {\r\n Language: Config.language || \"84\"\r\n };\r\n this.props.generalActions.getCboWorks(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 loadForm = (EmployeeID) => {\r\n const {getCaption} = this.props;\r\n const param = {\r\n EmployeeID: EmployeeID || Config.getHREmployeeID()\r\n };\r\n this.setState({loading: true});\r\n this.props.w09f2080Actions.loadForm(param, (error, data) => {\r\n this.setState({loading: 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 dataOldForm= {\r\n DutyName: data?.DutyName || \"\",\r\n DutyID: data?.DutyID || \"\",\r\n DepartmentID: data.DepartmentID ? data.DepartmentID : \"\",\r\n TeamID: data.TeamID ? data.TeamID : \"\",\r\n WorkID: data.WorkID ? data.WorkID : \"\",\r\n ProjectID: data.ProjectID ? data.ProjectID : \"\",\r\n DepartmentName: data.DepartmentName ? data.DepartmentName : \"\",\r\n TeamName: data.TeamName ? data.TeamName : \"\",\r\n WorkName: data.WorkName ? data.WorkName : \"\",\r\n ProjectName: data.ProjectName ? data.ProjectName : \"\",\r\n BASE01: data.BASE01 || data.BASE01 === 0 ? Number(data.BASE01) : 0,\r\n BASE02: data.BASE02 || data.BASE02 === 0 ? Number(data.BASE02) : 0,\r\n BASE03:data.BASE03 || data.BASE03 === 0 ? Number(data.BASE03) : 0,\r\n BASE04: data.BASE04 || data.BASE04 === 0 ? Number(data.BASE04) : 0,\r\n DirectManagerID: data?.DirectManagerID || \"\",\r\n DirectManagerName: data?.DirectManagerName || \"\",\r\n };\r\n const dataForm= {\r\n ...this.state.dataForm,\r\n NewDutyID: data?.NewDutyID || \"\",\r\n NewDepartmentID: data.DepartmentID ? data.DepartmentID : \"\",\r\n NewTeamID: data.TeamID ? data.TeamID : \"\",\r\n NewWorkID: data.WorkID ? data.WorkID : \"\",\r\n NewProject: data?.ProjectID || \"\",\r\n NewProjectName: data?.ProjectName || \"\",\r\n IsSalaryAdjustment: data.IsSalaryAdjustment ? data.IsSalaryAdjustment : 0,\r\n NewBASE01: data.NewBASE01 ? data.NewBASE01 : 0,\r\n NewBASE02: data.NewBASE02 ? data.NewBASE02 : 0,\r\n NewBASE03: data.NewBASE03 ? data.NewBASE03 : 0,\r\n NewBASE04: data.NewBASE04 ? data.NewBASE04 : 0,\r\n NewDirectManagerID: data?.DirectManagerID || \"\",\r\n DirectManagerName: data?.DirectManagerName || \"\",\r\n };\r\n getCaption.forEach(field => {\r\n if (!field.Disabled) {\r\n let no = field && field.Code ? field.Code.slice(-2) : \"\";\r\n dataForm[\"NewSalCoefficient\" + no] = data[\"NewSalCoefficient\" + no];\r\n dataOldForm[\"SalCoefficient\" + no] = data[\"SalCoefficient\" + no];\r\n }\r\n });\r\n this.setState({\r\n dataOldForm,\r\n dataForm\r\n });\r\n }\r\n });\r\n };\r\n\r\n loadRequiredFields = () => {\r\n this.setState({loading: true});\r\n this.props.w09f2080Actions.getRequiredFields((error) => {\r\n this.setState({loading: 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 loadDynamicColumnSalary = () => {\r\n const params = {\r\n Language: Config.language || 84\r\n };\r\n this.setState({loading: true});\r\n this.props.w09f2080Actions.getDynamicColumnSalary(params,(error,data) => {\r\n this.setState({loading: false});\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if(data) {\r\n this.setState({dataColumnSalary : data});\r\n }\r\n });\r\n };\r\n\r\n loadCboReasons = () => {\r\n this.setState({loading: true});\r\n this.props.w09f2080Actions.getCboReasons({TypeID: 3},(error) => {\r\n this.setState({loading: 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 loadCboEmployees = (isReset) => {\r\n const params = {\r\n Type: \"EmployeeID\",\r\n FormID: \"W09F2080\",\r\n Language: Config.language || \"84\",\r\n skip: this.filterCboEmployees.skip,\r\n limit: this.filterCboEmployees.limit,\r\n search: this.filterCboEmployees.search\r\n };\r\n this.setState({cboCboEmployeesLoading: true});\r\n this.props.generalActions.getCboEmployees(params, (error, data) => {\r\n this.setState({cboCboEmployeesLoading: 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 {dataCboEmployees} = this.state;\r\n const rows = data?.rows || data;\r\n const 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\r\n loadCboDirectManagers = () => {\r\n const params = {\r\n FormID: \"W09F2080\",\r\n };\r\n this.setState({cboDirectManagersLoading: true});\r\n this.props.w09f2080Actions.getCboDirectManagers(params, (error, data) => {\r\n this.setState({cboDirectManagersLoading: false});\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n this.dataCboDirectManagers = data?.[0] || [];\r\n this.setState({\r\n dataCboDirectManagers: data?.[0] || []\r\n })\r\n });\r\n };\r\n\r\n setDataCboDirectManager = (employeeId = \"\") => {\r\n let dtCboDirectManagers;\r\n if(employeeId) {\r\n dtCboDirectManagers = this.dataCboDirectManagers.filter(i => i.EmployeeID !== employeeId);\r\n } else {\r\n dtCboDirectManagers = this.dataCboDirectManagers;\r\n }\r\n this.setState({dataCboDirectManagers: dtCboDirectManagers})\r\n };\r\n loadCboPosition = () => {\r\n this.setState({loading: true});\r\n this.props.generalActions.getCboDuty2(error => {\r\n this.setState({loading: 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 handleChange = (key, e) => {\r\n if (!key || !e) return false;\r\n const {mode} = this.props;\r\n if(!this.isChangeForm){\r\n this.isChangeForm = true;\r\n }\r\n switch (key) {\r\n case \"EmployeeID\":\r\n this._setDataForm(\"Employee\", e.value, () => {\r\n const EmployeeID = e?.value || \"\";\r\n if (EmployeeID && mode === 'add') {\r\n this.loadForm(EmployeeID);\r\n }\r\n });\r\n this.setDataCboDirectManager(e.value);\r\n break;\r\n case \"NewDutyID\":\r\n this._setDataForm(key, e.value);\r\n break;\r\n case \"ValidDate\":\r\n this._setDataForm(key, e.value);\r\n break;\r\n case \"NewDepartmentID\":\r\n const {getCboTeam} = this.props;\r\n const departmentID = e.value;\r\n this._setDataForm(key, departmentID, () => {\r\n if (departmentID && getCboTeam && getCboTeam.length > 0) {\r\n this.setState({\r\n dataTeam: getCboTeam.filter(team => team.DepartmentID === departmentID),\r\n dataForm: {\r\n ...this.state.dataForm,\r\n NewTeamID: \"\"\r\n }\r\n });\r\n }\r\n });\r\n break;\r\n case \"NewTeamID\":\r\n this._setDataForm(key, e.value);\r\n break;\r\n case \"ProjectID\":\r\n this._setDataForm(\"NewProject\", e.value);\r\n break;\r\n case \"NewWorkID\":\r\n this._setDataForm(key, e.value);\r\n break;\r\n case \"ProContent\":\r\n this._setDataForm(key, e?.value || e?.target?.value || \"\");\r\n break;\r\n case \"ProNotice\":\r\n this._setDataForm(key, e.target.value);\r\n break;\r\n case \"NewDirectManagerID\":\r\n this._setDataForm(key, e.value);\r\n break;\r\n default:\r\n let value = e.value ? e.value : (e.target && e.target.value ? e.target.value : \"\");\r\n this._setDataForm(key, value);\r\n break;\r\n }\r\n };\r\n\r\n componentDidMount = async () => {\r\n await this.loadPermission();\r\n const {mode, data} = this.props;\r\n this.loadCboProjects();\r\n this.loadCboDepartment();\r\n this.loadCboTeam();\r\n this.loadCboWorks();\r\n this.loadRequiredFields();\r\n this.loadDynamicColumnSalary();\r\n this.loadCaption();\r\n this.loadCboReasons();\r\n this.loadCboDirectManagers();\r\n this.loadCboPosition();\r\n const _employeeID = Config.getHREmployeeID();\r\n if (mode === 'add') {\r\n this.loadCboEmployees();\r\n const {iPermissions} = this.state;\r\n if (iPermissions?.W09F5650 <= 2) {\r\n const user = Config.getUser({EmployeeID: _employeeID});\r\n this._setDataForm('EmployeeID', user?.EmployeeID || \"\");\r\n this.loadForm(user?.EmployeeID || \"\");\r\n }\r\n } else {\r\n this.loadDataPopup();\r\n this.loadAttachments();\r\n if (data && (Number(data.AppStatusID) !== 0)) {\r\n this.setState({disabled: true});\r\n }\r\n }\r\n };\r\n\r\n loadDataPopup = () => {\r\n const {data} = this.props;\r\n const param = {\r\n ProTransID: data && data.ProTransID ? data.ProTransID : \"\"\r\n };\r\n this.setState({loading: true});\r\n this.props.w09f2080Actions.loadFormPopup(param, (error, data) => {\r\n this.setState({loading: false});\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (data) {\r\n this._initDataForm(data);\r\n }\r\n });\r\n };\r\n\r\n _initDataForm = (data) => {\r\n const {getCaption} = this.props;\r\n const EmployeeID = data && data.EmployeeID ? data.EmployeeID : \"\";\r\n const user = Config.getUser({EmployeeID: EmployeeID});\r\n if (user?.UserPictureURL) {\r\n if (user.UserPictureURL.indexOf('http') < 0) {\r\n user.UserPictureURL = Config.getCDNPath() + user.UserPictureURL;\r\n }\r\n }\r\n const Employee = {\r\n EmployeeID: EmployeeID,\r\n EmployeeName: data && data.EmployeeName ? data.EmployeeName : (user ? user.EmployeeName : \"\"),\r\n UserPictureURL: data && data.UserPictureURL ? data.UserPictureURL : (user ? user.UserPictureURL : \"\"),\r\n };\r\n let dataOldForm = {\r\n DutyName: data?.DutyName || \"\",\r\n DutyID: data?.DutyID || \"\",\r\n DepartmentID: data && data.DepartmentID ? data.DepartmentID : \"\",\r\n TeamID: data && data.TeamID ? data.TeamID : \"\",\r\n WorkID: data && data.WorkID ? data.WorkID : \"\",\r\n ProjectID: data && data.ProjectID ? data.ProjectID : \"\",\r\n DepartmentName: data && data.DepartmentName ? data.DepartmentName : \"\",\r\n TeamName: data && data.TeamName ? data.TeamName : \"\",\r\n WorkName: data && data.WorkName ? data.WorkName : \"\",\r\n ProjectName: data && data.ProjectName ? data.ProjectName : \"\",\r\n BASE01: data.BASE01 || data.BASE01 === 0 ? Number(data.BASE01) : 0,\r\n BASE02: data.BASE02 || data.BASE02 === 0 ? Number(data.BASE02) : 0,\r\n BASE03:data.BASE03 || data.BASE03 === 0 ? Number(data.BASE03) : 0,\r\n BASE04: data.BASE04 || data.BASE04 === 0 ? Number(data.BASE04) : 0,\r\n DirectManagerID: data?.DirectManagerID || \"\",\r\n DirectManagerName: data?.DirectManagerName || \"\",\r\n };\r\n let dataForm = {\r\n Employee: EmployeeID,\r\n DutyName: data?.DutyName || \"\",\r\n NewDutyID: data?.NewDutyID || \"\",\r\n NewDepartmentID: data && data.NewDepartmentID ? data.NewDepartmentID : \"\",\r\n NewTeamID: data && data.NewTeamID ? data.NewTeamID : \"\",\r\n NewWorkID: data && data.NewWorkID ? data.NewWorkID : \"\",\r\n NewProject: data?.NewProjectID || \"\",\r\n NewProjectName: data?.NewProjectName || \"\",\r\n ProContent: data && data.ProContent ? data.ProContent : \"\",\r\n ProNotice: data && data.ProNotice ? data.ProNotice : \"\",\r\n ValidDate: data && data.ValidDate ? moment.utc(data.ValidDate).format(\"YYYY-MM-DD\") : moment().format(\"YYYY-MM-DD\"),\r\n IsSalaryAdjustment: data.IsSalaryAdjustment ? Number(data.IsSalaryAdjustment) : 0,\r\n IsDutyAdjustment: Number(!!data?.IsDutyAdjustment),\r\n NewBASE01: data.NewBASE01 || data.NewBASE01 === 0 ? Number(data.NewBASE01) : 0,\r\n NewBASE02: data.NewBASE02 || data.NewBASE02 === 0 ? Number(data.NewBASE02) : 0,\r\n NewBASE03: data.NewBASE03 || data.NewBASE03 === 0 ? Number(data.NewBASE03) : 0,\r\n NewBASE04: data.NewBASE04 || data.NewBASE04 === 0 ? Number(data.NewBASE04) : 0,\r\n NewDirectManagerID: data?.NewDirectManagerID || \"\",\r\n\r\n };\r\n getCaption.forEach(field => {\r\n if (!field.Disabled) {\r\n let no = field && field.Code ? field.Code.slice(-2) : \"\";\r\n dataForm[\"NewSalCoefficient\" + no] = data[\"NewSalCoefficient\" + no];\r\n dataOldForm[\"SalCoefficient\" + no] = data[\"SalCoefficient\" + no];\r\n }\r\n });\r\n\r\n this.setState({\r\n dataOldForm,\r\n dataForm: {...this.state.dataForm, ...dataForm},\r\n dataDefaultEmployee: Employee,\r\n });\r\n };\r\n\r\n _setDataForm = (key, value, cb) => {\r\n if (!key) return false;\r\n this.setState({\r\n dataForm: {\r\n ...this.state.dataForm,\r\n [key]: value\r\n }\r\n }, () => {\r\n if (cb) cb();\r\n });\r\n };\r\n\r\n setStateErrorText(objValue, key) {\r\n const stateError = key ? key : \"error\";\r\n this.setState({\r\n [stateError]: {\r\n ...(this.state[stateError] ? this.state[stateError] : {}),\r\n ...objValue\r\n }\r\n });\r\n return Object.keys(objValue).length !== 0;\r\n }\r\n\r\n _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 onSave = async () => {\r\n const {mode, data, getRequiredFields, getCaption, getCboReasons} = this.props;\r\n const isEdit = mode === \"view\";\r\n const {dataForm, dataOldForm} = this.state;\r\n const listDataForm = Object.keys(dataForm);\r\n let dataRequired = [\"EmployeeID\", \"ValidDate\", \"NewDepartmentID\"];\r\n getRequiredFields && getRequiredFields.forEach((field) => {\r\n if (field.ValidMode && field.ValidMode === \"O\"\r\n && field.SqlFieldName && listDataForm.indexOf(field.SqlFieldName) > -1\r\n && dataRequired.indexOf(field.SqlFieldName) < 0\r\n ) {\r\n dataRequired.push(field.SqlFieldName);\r\n }\r\n });\r\n //validate form..\r\n const validateRules = [];\r\n dataRequired && dataRequired.forEach((item) => {\r\n let rule;\r\n switch (item) {\r\n case \"EmployeeID\":\r\n rule = {\r\n name: item,\r\n rules: [\"isRequired\"],\r\n value: dataForm?.Employee || \"\"\r\n };\r\n break;\r\n case \"ProjectID\":\r\n rule = {\r\n name: item,\r\n rules: [\"isRequired\"],\r\n value: dataForm?.NewProject || \"\"\r\n };\r\n break;\r\n default:\r\n rule = {\r\n name: item,\r\n rules: [\"isRequired\"],\r\n value: dataForm[item]\r\n };\r\n break;\r\n }\r\n validateRules.push(rule);\r\n });\r\n const validateForm = MForm.formValidation(validateRules);\r\n if (Object.keys(validateForm).length > 0) {\r\n this.setStateErrorText(validateForm);\r\n return false;\r\n } else {\r\n const dataResUploadFile = await this._uploadFile(this.attachments, true);\r\n const arrAttachments = this._getAttachments(dataResUploadFile);\r\n const dtReason = getCboReasons.find(i => i.ReasonID === dataForm.ProContent);\r\n let params = {\r\n DivisionID: Config.getDivisionID(),\r\n HostID: \"\",\r\n Language: Config.language || \"84\",\r\n EmployeeID: dataForm?.Employee || \"\",\r\n NewDutyID: dataForm?.NewDutyID,\r\n DutyID: dataOldForm?.DutyID || \"\",\r\n IsDutyAdjustment: Number(!!dataForm?.IsDutyAdjustment),\r\n ValidDate: dataForm && dataForm.ValidDate ? dataForm.ValidDate : \"\",\r\n ProContent: dtReason?.ProContent || dataForm.ProContent || \"\",\r\n ProNotice: dataForm && dataForm.ProNotice ? dataForm.ProNotice : \"\",\r\n\r\n TempDepartmentID: dataOldForm && dataOldForm.DepartmentID ? dataOldForm.DepartmentID : \"\",\r\n TempTeamID: dataOldForm && dataOldForm.TeamID ? dataOldForm.TeamID : \"\",\r\n TempWorkID: dataOldForm && dataOldForm.WorkID ? dataOldForm.WorkID : \"\",\r\n TempProjectID: dataOldForm && dataOldForm.ProjectID ? dataOldForm.ProjectID : \"\",\r\n\r\n ProDepartmentID: dataForm && dataForm.NewDepartmentID ? dataForm.NewDepartmentID : \"\",\r\n ProTeamID: dataForm && dataForm.NewTeamID ? dataForm.NewTeamID : \"\",\r\n ProWorkID: dataForm && dataForm.NewWorkID ? dataForm.NewWorkID : \"\",\r\n ProProjectID: dataForm?.NewProject || \"\",\r\n NewDirectManagerID: dataForm?.NewDirectManagerID || \"\",\r\n DirectManagerID: dataForm?.DirectManagerID || dataOldForm?.DirectManagerID || \"\",\r\n TranMonth: Config.getHRTransMonth(),\r\n TranYear: Config.getHRTransYear(),\r\n IsSalaryAdjustment: dataForm && dataForm.IsSalaryAdjustment ? Number(dataForm.IsSalaryAdjustment) : 0,\r\n ProBaseSalary01: Number(dataForm.IsSalaryAdjustment) === 0 ? 0 : (dataForm && dataForm.NewBASE01 ? Number(dataForm.NewBASE01) : 0),\r\n ProBaseSalary02: Number(dataForm.IsSalaryAdjustment) === 0 ? 0 : (dataForm && dataForm.NewBASE02 ? Number(dataForm.NewBASE02) : 0),\r\n ProBaseSalary03: Number(dataForm.IsSalaryAdjustment) === 0 ? 0 : (dataForm && dataForm.NewBASE03 ? Number(dataForm.NewBASE03) : 0),\r\n ProBaseSalary04: Number(dataForm.IsSalaryAdjustment) === 0 ? 0 : (dataForm && dataForm.NewBASE04 ? Number(dataForm.NewBASE04) : 0),\r\n arrAttachment: JSON.stringify(arrAttachments),\r\n };\r\n getCaption.forEach(field => {\r\n if (!field.Disabled) {\r\n let no = field && field.Code ? field.Code.slice(-2) : \"\";\r\n params[\"NewSalCoefficient\" + no] = Number(dataForm.IsSalaryAdjustment) === 0 ? 0 : (dataForm?.[\"NewSalCoefficient\" + no] ? Number(dataForm[\"NewSalCoefficient\" + no] || 0) : 0);\r\n }\r\n });\r\n if (isEdit) {\r\n params.ProTransID = data && data.ProTransID ? data.ProTransID : \"\";\r\n delete params.DirectManagerID;\r\n }\r\n\r\n this.setState({loading: true});\r\n this.props.w09f2080Actions[isEdit ? \"update\" : \"save\"](params, (error, data) => {\r\n this.setState({loading: false});\r\n if (error) {\r\n error.customMessage = {\r\n \"F2000E002\" : \"Mode \" + Config.lang(\"Bat_buoc\"),\r\n \"F2000E003\" : \"LeaveTypeID \" + Config.lang(\"Bat_buoc\"),\r\n \"F2000E004\" : \"IsRegisterType \" + Config.lang(\"Bat_buoc\"),\r\n \"F2000E001\" : Config.lang(\"Luu_khong_thanh_cong\"),\r\n };\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (data) {\r\n if (data.Status === 1) {\r\n Config.popup.show('INFO', data.Message);\r\n return false;\r\n } else if (data.Status === 0) {\r\n this._removeCDN();\r\n this.props.onClose(true);\r\n Config.notify.show('success', Config.lang(\"Luu_thanh_cong\"), 2000);\r\n } else {\r\n Config.popup.show('INFO', Config.lang(\"Luu_khong_thanh_cong\"));\r\n return false;\r\n }\r\n }\r\n });\r\n }\r\n\r\n };\r\n\r\n _removeCDN = () => {\r\n if (this.deletedFile && this.deletedFile.length > 0) {\r\n this.deletedFile.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 this.deletedFile = [];\r\n }\r\n };\r\n\r\n handleTabChange = (key) => {\r\n this.setState({tabKey: key});\r\n };\r\n\r\n resetForm = () => {\r\n this.setState({\r\n dataOldForm: {\r\n DutyID: \"\",\r\n DutyName: \"\",\r\n DepartmentID: \"\",\r\n TeamID: \"\",\r\n WorkID: \"\",\r\n ProjectID: \"\",\r\n DepartmentName: \"\",\r\n TeamName: \"\",\r\n WorkName: \"\",\r\n ProjectName: \"\",\r\n BASE01: 0,\r\n BASE02: 0,\r\n BASE03: 0,\r\n BASE04: 0,\r\n\r\n },\r\n dataForm: {\r\n Employee: null,\r\n NewDutyID: \"\",\r\n NewDepartmentID: \"\",\r\n NewTeamID: \"\",\r\n NewWorkID: \"\",\r\n NewProject: null,\r\n NewProjectName: \"\",\r\n ProContent: \"\",\r\n ProNotice: \"\",\r\n ValidDate: moment().format(\"YYYY-MM-DD\"),\r\n IsSalaryAdjustment: 0,\r\n NewBASE01: 0,\r\n NewBASE02: 0,\r\n NewBASE03: 0,\r\n NewBASE04: 0,\r\n }\r\n });\r\n };\r\n\r\n onClose = () => {\r\n const {onClose} = this.props;\r\n this.resetForm();\r\n if (onClose) onClose();\r\n };\r\n\r\n _getAttachments = (file) => {\r\n const dataFile = file?.data?.paths || [];\r\n const listAttachments = Config.helpers.getFileInfomations(dataFile);\r\n const {dataOldAttachments} = this.state;\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 loadAttachments = () => {\r\n const {data} = this.props;\r\n const param = {\r\n KeyID: data && data.ProTransID ? data.ProTransID : \"\",\r\n };\r\n this.props.generalActions.getAttachmentsByTransID(param, (error, data) => {\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (data && data.length > 0) {\r\n this.setState({\r\n dataOldAttachments: data\r\n });\r\n }\r\n });\r\n };\r\n\r\n onUploading = (value) => {\r\n this.setState({uploading: value});\r\n };\r\n\r\n onChangeAttachments = (e) => {\r\n this.attachments = e?.allNewAttached || [];\r\n if (e?.removedAttached?.length > 0) {\r\n this.deletedFile = [...e.removedAttached];\r\n const _arrRemove = this.deletedFile.map((d) => d.AttachmentID);\r\n this.setState((prevState) => ({\r\n dataOldAttachments: prevState.dataOldAttachments.filter((att) => {\r\n return _arrRemove.indexOf(att.AttachmentID) < 0;\r\n }),\r\n }));\r\n }\r\n };\r\n\r\n handleChangeDataSalary = (index,data) => {\r\n this._setDataForm(index, data.value);\r\n };\r\n\r\n onChangeChkSalary = () => {\r\n const { dataForm, dataOldForm, dataColumnSalary } = this.state;\r\n this.setState({\r\n dataForm: {\r\n ...this.state.dataForm,\r\n IsSalaryAdjustment: !dataForm.IsSalaryAdjustment,\r\n }\r\n }, () => {\r\n const {IsSalaryAdjustment} = this.state.dataForm;\r\n if (IsSalaryAdjustment) {\r\n let obj = {};\r\n dataColumnSalary && dataColumnSalary.forEach(d => {\r\n let key = d.Code.slice(-2);\r\n obj[\"NewBASE\" + key] = dataOldForm[\"BASE\" + key];\r\n });\r\n this.setState({\r\n dataForm: {\r\n ...this.state.dataForm,\r\n ...obj\r\n }\r\n });\r\n }\r\n });\r\n };\r\n\r\n onChangeDutyAdjustment = () => {\r\n const {dataForm} = this.state;\r\n this.setState({dataForm: {...dataForm, IsDutyAdjustment: +!dataForm.IsDutyAdjustment}})\r\n };\r\n\r\n loadCaption = () => {\r\n this.props.w09F2150Actions.loadCaption({Language: Config.language || \"84\" },(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 render() {\r\n let {getCboDepartments, getCboWorks, mode, getCaption, getCboReasons, getCboPosition, iPermissionW09F2080\r\n } = this.props;\r\n const {iPermissions, uploading, dataForm, dataOldForm, error, loading, dataOldAttachments, disabled, tabKey,\r\n dataTeam, dataCboProjects, projectsLoading , cboDirectManagersLoading, cboCboEmployeesLoading,\r\n dataColumnSalary, dataCboEmployees, dataCboDirectManagers, dataDefaultEmployee,\r\n } = this.state;\r\n return (\r\n <>\r\n \r\n \r\n \r\n this.handleTabChange(0)}\r\n />\r\n this.handleTabChange(1)}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n {\r\n if (!e) return null;\r\n const {data} = e;\r\n return (\r\n
\r\n \r\n {`${data?.EmployeeID ?? \"\"} - ${data?.EmployeeName ?? \"\"}`}\r\n
\r\n )\r\n }}\r\n onChange={e => this.handleChange(\"EmployeeID\", e)}\r\n onInput={(e) => {\r\n this.filterCboEmployees.search = 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(\"ValidDate\", e)}\r\n />\r\n \r\n
\r\n \r\n \r\n this.handleChange(\"NewDepartmentID\", e)}\r\n dataSource={getCboDepartments}\r\n disabled={disabled || loading}\r\n value={dataForm.NewDepartmentID}\r\n />\r\n \r\n \r\n this.handleChange(\"NewTeamID\", e)}\r\n dataSource={dataTeam}\r\n disabled={disabled || loading}\r\n value={dataForm.NewTeamID}\r\n />\r\n \r\n \r\n \r\n \r\n {\r\n const {data} = e;\r\n if (!data) return null;\r\n return data.ProjectID + ' - ' + data.ProjectName;\r\n }}\r\n onChange={e => this.handleChange(\"ProjectID\", e)}\r\n onInput={(e) => {\r\n this.filterCboProject.strSearch = e.target.value;\r\n this.filterCboProject.skip = 0;\r\n this.loadCboProjects(true);\r\n }}\r\n onLoadMore={(e) => {\r\n this.filterCboProject.skip = e.skip;\r\n this.filterCboProject.limit = e.limit;\r\n this.loadCboProjects();\r\n }}\r\n />\r\n \r\n \r\n this.handleChange(\"NewWorkID\", e)}\r\n dataSource={getCboWorks}\r\n disabled={disabled || loading}\r\n value={dataForm.NewWorkID}\r\n />\r\n \r\n \r\n \r\n \r\n {\r\n if (!e) return null;\r\n const {data} = e;\r\n if (data?.UserPictureURL) {\r\n if (data.UserPictureURL.indexOf('http') < 0) {\r\n data.UserPictureURL = Config.getCDNPath() + data.UserPictureURL;\r\n }\r\n }\r\n return (\r\n
\r\n \r\n {data?.EmployeeName ?? \"\"}\r\n
\r\n )\r\n }}\r\n onChange={(e) => this.handleChange(\"NewDirectManagerID\", e)}\r\n />\r\n \r\n
\r\n \r\n \r\n e?.data?.ProContent ?? \"\"}\r\n renderItem={e => {\r\n if(!e) return null;\r\n const {data} = e;\r\n return `${data?.ReasonID ?? \"\"} \r\n ${data?.ReasonID ? \"-\" : \"\"}\r\n ${data?.ProContent ?? \"\"}`\r\n }}\r\n label={Config.lang(\"Ly_do\")}\r\n onChange={e => this.handleChange(\"ProContent\", e)}\r\n dataSource={getCboReasons}\r\n disabled={disabled || loading}\r\n value={dataForm.ProContent}\r\n onInput={e => this.handleChange(\"ProContent\", e)}\r\n />\r\n \r\n \r\n \r\n \r\n this.handleChange(\"ProNotice\", e)}\r\n />\r\n \r\n \r\n \r\n {iPermissions?.W09F5602 > 1 && }\r\n \r\n \r\n \r\n \r\n \r\n {\r\n iPermissions?.W09F5602 > 1 && Number(dataForm.IsSalaryAdjustment) === 1 && dataColumnSalary && dataColumnSalary.map((data, index) => {\r\n if(data.Disabled) return null;\r\n let key = data.Code.slice(-2);\r\n const value = dataForm[\"NewBASE\" + key] || dataForm[\"NewBASE\" + key] === 0 ? Number(dataForm[\"NewBASE\" + key]) : 0;\r\n return(\r\n \r\n this.handleChangeDataSalary(\"NewBASE\" + key,e)}\r\n fullWidth\r\n InputLabelProps={{\r\n shrink: true\r\n }}\r\n // variant={\"standard\"}\r\n // margin={\"normal\"}\r\n />\r\n \r\n )\r\n })\r\n }\r\n {\r\n iPermissions?.W09F5602 > 1 && Number(dataForm.IsSalaryAdjustment) === 1 && getCaption && getCaption.map((data, index) => {\r\n if(data.Disabled) return null;\r\n let key = data.Code.slice(-2);\r\n const value = dataForm[\"NewSalCoefficient\" + key] || dataForm[\"NewSalCoefficient\" + key] === 0 ? Number(dataForm[\"NewSalCoefficient\" + key]) : 0;\r\n return(\r\n \r\n this.handleChangeDataSalary(\"NewSalCoefficient\" + key,e)}\r\n fullWidth\r\n InputLabelProps={{\r\n shrink: true\r\n }}\r\n variant={\"standard\"}\r\n margin={\"normal\"}\r\n />\r\n \r\n )\r\n })\r\n }\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleChange(\"NewDutyID\", e)}/>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {Config.lang(\"Thong_tin_cu\")}\r\n \r\n \r\n \r\n \r\n {Config.lang(\"Phong_ban\")}: \r\n {dataOldForm.DepartmentName || \"\"}\r\n \r\n \r\n {Config.lang(\"To_nhom\")}: \r\n {dataOldForm.TeamName || \"\"}\r\n \r\n \r\n {Config.lang(\"Du_an\")}: \r\n {dataOldForm.ProjectName || \"\"}\r\n \r\n \r\n {Config.lang(\"Cong_viec\")}: \r\n {dataOldForm.WorkName || \"\"}\r\n \r\n \r\n {Config.lang(\"Nguoi_quan_ly_truc_tiep\")}: \r\n {dataOldForm.DirectManagerName || \"\"}\r\n \r\n {\r\n iPermissions?.W09F5602 > 0 && dataColumnSalary && dataColumnSalary.map((data, index) => {\r\n if(data.Disabled) return null;\r\n let key = data.Code.slice(-2);\r\n return(\r\n \r\n {data.CaptionName}: \r\n {dataOldForm[\"BASE\" + key] || dataOldForm[\"BASE\" + key] === 0 ? new Intl.NumberFormat().format(Number(dataOldForm[\"BASE\" + key])) : \"\"}\r\n \r\n )\r\n })\r\n }\r\n {iPermissions?.W09F5602 > 0 && getCaption && getCaption.map((field, indx) => {\r\n if (field.Disabled) return null;\r\n const no = field && field.Code ? field.Code.slice(-2) : \"\";\r\n const dataField = \"SalCoefficient\" + no;\r\n return (\r\n \r\n {field.CaptionName || \"\"}: \r\n {Number(dataOldForm[dataField] || 0).toLocaleString()}\r\n \r\n );\r\n })}\r\n \r\n {Config.lang(\"Chuc_danh\")}: \r\n {dataOldForm.DutyName || \"\"}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nW09F2080Popup.propTypes = {\r\n open: PropTypes.bool,\r\n mode: PropTypes.string,\r\n data: PropTypes.any,\r\n\r\n onClose: PropTypes.func\r\n};\r\n\r\nexport default compose(\r\n connect(\r\n state => ({\r\n getCboDepartments: state.general.getCboDepartments,\r\n getCboTeam: state.general.getCboTeam,\r\n getCboWorks: state.general.getCboWorks,\r\n getCboPosition: state.general.getCboDuty2,\r\n getRequiredFields: state.W09F2080.getRequiredFields,\r\n getCboReasons: state.W09F2080.getCboReasons,\r\n getAttachmentsByTransID: state.general.getAttachmentsByTransID,\r\n getCaption: state.W09F2150.getCaption,\r\n }),\r\n dispatch => ({\r\n w09f2080Actions: bindActionCreators(W09F2080Actions, dispatch),\r\n w09F2150Actions: bindActionCreators(W09F2150Actions, dispatch),\r\n generalActions: bindActionCreators(generalActions, dispatch)\r\n })\r\n )\r\n)(W09F2080Popup);\r\n","/**\r\n * @copyright 2019 @ DigiNet\r\n * @author TRIHAO\r\n * @create 9/25/2020\r\n * @Example\r\n */\r\n\r\nimport React from \"react\";\r\nimport {connect} from \"react-redux\";\r\nimport {bindActionCreators, compose} from \"redux\";\r\nimport PropTypes from \"prop-types\";\r\nimport {Row, Col, FormGroup, Image} from \"react-bootstrap\";\r\nimport {\r\n withStyles,\r\n ExpansionPanel,\r\n ExpansionPanelSummary,\r\n ExpansionPanelDetails,\r\n} from \"@material-ui/core\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport {\r\n Combo,\r\n MForm,\r\n TextField,\r\n Checkbox\r\n} from \"../../../common/form-material\";\r\nimport Attachments from \"../../../common/attachments/attachments\";\r\nimport Modal from \"../../../common/modal/modal\";\r\nimport ButtonGeneral from \"../../../common/button/button-general\";\r\nimport * as generalActions from \"../../../../redux/general/general_actions\";\r\nimport * as W09F2150Actions from \"../../../../redux/W0X/W09F2150/W09F2150_actions\";\r\nimport Config from \"../../../../config\";\r\nimport DateBoxPicker from \"../../../common/form-material/date-box\";\r\nimport { Avatar, Dropdown, Typography, ButtonIcon } from 'diginet-core-ui/components';\r\n\r\nconst styles = {\r\n expandPanel: {\r\n boxShadow: 'none'\r\n },\r\n expandSummary: {\r\n minHeight: '37px !important',\r\n padding: 0,\r\n '& .MuiExpansionPanelSummary-content': {\r\n margin: 0\r\n }\r\n },\r\n expandDetail: {\r\n display: 'block',\r\n padding: '0 0 10px 0'\r\n }\r\n};\r\n\r\nclass W09F2150Popup extends React.PureComponent {\r\n constructor (props) {\r\n super(props);\r\n this.state = {\r\n //dataForm\r\n Employee: null,\r\n ValidDate: null,\r\n ProDutyID: \"\",\r\n ProContent: \"\",\r\n ProNotice: \"\",\r\n IsSalaryAdjustment: 0,\r\n\r\n isExpanded: false,\r\n disabled: false,\r\n error: {},\r\n loading: false,\r\n uploading: false,\r\n dataOldAttachments: [],\r\n\r\n dataForm: {},\r\n dataOldForm: {},\r\n iPermissions: {},\r\n dataCboEmployees: {\r\n rows: [],\r\n total: 0,\r\n },\r\n employeeLoading: false\r\n };\r\n this.attachments = [];\r\n this.deletedFile = [];\r\n this.filterCboEmployees = {\r\n timer: null,\r\n strSearch: \"\",\r\n skip: 0,\r\n limit: 50,\r\n };\r\n }\r\n\r\n loadPermission = async () => {\r\n await this.props.generalActions.getPermission([\"W09F5602\"], (arrPer) => {\r\n const permissions = {\"W09F5602\": 0};\r\n if (Array.isArray(arrPer)) {\r\n arrPer.forEach(per => {\r\n if (per?.FormID && per?.IsPermission) {\r\n permissions[per.FormID] = per.IsPermission;\r\n }\r\n });\r\n }\r\n this.setState({iPermissions: permissions});\r\n }, true);\r\n };\r\n\r\n loadForm = () => {\r\n const {mode, data} = this.props;\r\n const params = {\r\n ProTransID: data && data.ProTransID ? data.ProTransID : \"\",\r\n Language: Config.language || \"84\"\r\n };\r\n this.setState({loading: true});\r\n this.props.W09F2150Actions.loadForm(params, (error, data) => {\r\n this.setState({loading: 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 user = Config.getUser({EmployeeID: data.EmployeeID});\r\n this.setState({\r\n ...this.state,\r\n ...data,\r\n ...(mode !== \"add\" ? {Employee: user ? user : data} : {}),\r\n dataOldForm: data\r\n });\r\n }\r\n });\r\n };\r\n\r\n loadDynamicFields = () => {\r\n this.setState({loading: true});\r\n this.props.W09F2150Actions.loadDynamicFields((error) => {\r\n this.setState({loading: 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 loadCaption = () => {\r\n this.setState({loading: true});\r\n this.props.W09F2150Actions.loadCaption({Language: Config.language || \"84\" },(error, data) => {\r\n this.setState({loading: 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 loadAttachments = () => {\r\n const {data} = this.props;\r\n const param = {\r\n KeyID: data && data.ProTransID ? data.ProTransID : \"\"\r\n };\r\n this.setState({loading: true});\r\n this.props.generalActions.getAttachmentsByTransID(param, (error, data) => {\r\n if (error) {\r\n this.setState({loading: false});\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (data && data.length > 0) {\r\n this.setState({\r\n dataOldAttachments: data,\r\n }, () => {\r\n this.setState({loading: false});\r\n });\r\n }\r\n });\r\n };\r\n\r\n loadCboDuty = () => {\r\n this.props.generalActions.getCboDuty2(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 componentDidMount () {\r\n this.loadPermission();\r\n const {mode} = this.props;\r\n this.loadDynamicFields();\r\n this.loadCaption();\r\n this.loadCboEmployees();\r\n if (mode !== \"add\") {\r\n this.loadForm();\r\n this.loadAttachments();\r\n this.setState({disabled: true});\r\n }\r\n if(mode === \"view\") {\r\n this.loadCboDuty();\r\n }\r\n }\r\n\r\n handleChange = (key, e) => {\r\n if (!key) return false;\r\n const {getDynamicFields, getCaption} = this.props;\r\n switch (key) {\r\n case \"ProContent\": {\r\n this.setState({ProContent: e.target.value});\r\n break;\r\n }\r\n case \"ProNotice\": {\r\n this.setState({ProNotice: e.target.value});\r\n break;\r\n }\r\n case \"EmployeeID\": {\r\n this.setState({\r\n Employee: e.data,\r\n dataOldForm: e.data,\r\n\r\n }, () => {\r\n let obj = {};\r\n getDynamicFields.forEach(d => {\r\n let no = d && d.Code ? d.Code.slice(-2) : \"\";\r\n obj['ProBaseSalary' + no] = \"\";\r\n });\r\n getCaption.forEach(d => {\r\n let no = d && d.Code ? d.Code.slice(-2) : \"\";\r\n obj['NewSalCoefficient' + no] = \"\";\r\n });\r\n this.setState({\r\n ...this.state.dataForm,\r\n ...obj\r\n });\r\n });\r\n break;\r\n }\r\n case \"ProDutyID\": {\r\n this.setState({ProDutyID: e.value});\r\n break;\r\n }\r\n case \"ValidDate\": {\r\n this.setState({ValidDate: e.value});\r\n break;\r\n }\r\n default:\r\n if (key.indexOf(\"BaseSalary\") > -1 || key.indexOf(\"SalCoefficient\") > -1) {\r\n this.setState({[key]: e.value});\r\n }\r\n break;\r\n }\r\n };\r\n\r\n setStateErrorText (objValue, key) {\r\n const {errorHelperText} = this.state;\r\n const stateError = key ? key : \"error\";\r\n this.setState({\r\n [stateError]: {\r\n ...errorHelperText, ...objValue\r\n }\r\n });\r\n return Object.keys(objValue).length !== 0;\r\n }\r\n\r\n onSave = () => {\r\n const {mode, data, getDynamicFields, getCaption} = this.props;\r\n const isEdit = mode === \"view\" || false;\r\n const state = this.state;\r\n const {\r\n ProContent, ProNotice, Employee, ValidDate, IsSalaryAdjustment,dataOldForm\r\n } = state;\r\n\r\n const arrAttachments = this._getAttachments();\r\n let params = {\r\n FormID: \"W09F2151\",\r\n EmployeeID: Employee && Employee.EmployeeID ? Employee.EmployeeID : \"\",\r\n TempDutyID: dataOldForm.TempDutyID ? dataOldForm.TempDutyID : (state.TempDutyID ? state.TempDutyID : \"\"),\r\n ProDutyID: state.ProDutyID ? state.ProDutyID : \"\",\r\n IsSalaryAdjustment: IsSalaryAdjustment || 0,\r\n ProContent: ProContent,\r\n ProNotice: ProNotice,\r\n ValidDate: ValidDate,\r\n Language: Config.language || \"84\",\r\n DivisionID: Config.getDivisionID(),\r\n arrAttachment: JSON.stringify(arrAttachments)\r\n };\r\n\r\n getDynamicFields.forEach(field => {\r\n if (!field.Disabled) {\r\n let no = field && field.Code ? field.Code.slice(-2) : \"\";\r\n params[\"TempBaseSalary\" + no] = state[\"TempBaseSalary\" + no] ? state[\"TempBaseSalary\" + no] : dataOldForm[\"TempBaseSalary\" + no];\r\n params[\"ProBaseSalary\" + no] = state[\"ProBaseSalary\" + no] ? state[\"ProBaseSalary\" + no] : 0;\r\n }\r\n });\r\n\r\n getCaption.forEach(field => {\r\n if (!field.Disabled) {\r\n let no = field && field.Code ? field.Code.slice(-2) : \"\";\r\n params[\"SalCoefficient\" + no] = state[\"SalCoefficient\" + no] ? state[\"SalCoefficient\" + no] : dataOldForm[\"SalCoefficient\" + no];\r\n params[\"NewSalCoefficient\" + no] = state[\"NewSalCoefficient\" + no] ? Number(state[\"NewSalCoefficient\" + no] || 0) : 0;\r\n }\r\n });\r\n\r\n if (isEdit) params.ProTransID = data && data.ProTransID ? data.ProTransID : \"\";\r\n const validateRules = [\r\n {\r\n name: \"EmployeeID\",\r\n rules: [\"isRequired\"],\r\n value: params.EmployeeID ? params.EmployeeID : \"\"\r\n },\r\n {\r\n name: \"ValidDate\",\r\n rules: [\"isRequired\"],\r\n value: params.ValidDate ? params.ValidDate : null\r\n },\r\n {\r\n name: \"ProDutyID\",\r\n rules: [\"isRequired\"],\r\n value: params.ProDutyID ? params.ProDutyID : \"\"\r\n },\r\n\r\n ];\r\n const validateForm = MForm.formValidation(validateRules);\r\n if (Object.keys(validateForm).length > 0) {\r\n this.setStateErrorText(validateForm);\r\n return false;\r\n } else {\r\n this.setState({loading: true});\r\n this.props.W09F2150Actions[isEdit ? \"edit\" : \"save\"](params, (error,data) => {\r\n this.setState({loading: false});\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if(data) {\r\n if(data.Status === 1) {\r\n let message = data.Message || Config.lang(\"DHR_Loi_chua_xac_dinh\");\r\n Config.popup.show(\"INFO\", message);\r\n return false;\r\n }\r\n }\r\n Config.notify.show('success', Config.lang(\"DHR_Luu_thanh_cong\"), 2000);\r\n this.onClose();\r\n });\r\n }\r\n };\r\n\r\n resetForm = () => {\r\n this.setState({\r\n Employee: null,\r\n ValidDate: null,\r\n DutyID: \"\",\r\n ProContent: \"\",\r\n ProNotice: \"\",\r\n\r\n IsSalaryAdjustment: 0,\r\n disabled: false,\r\n loading: false,\r\n uploading: false,\r\n dataOldAttachments: [],\r\n dataForm: {},\r\n dataOldForm: {},\r\n\r\n error: {}\r\n });\r\n };\r\n\r\n onClose = () => {\r\n const {onClose} = this.props;\r\n this.resetForm();\r\n if (onClose) onClose();\r\n };\r\n\r\n onAttachment = () => {\r\n if (this.attRef) {\r\n this.attRef.onAttachment();\r\n }\r\n };\r\n\r\n onUploading = value => {\r\n this.setState({uploading: value});\r\n };\r\n\r\n _getAttachments = () => {\r\n const listAttachments = Config.helpers.getFileInfomations(this.attachments);\r\n const {dataOldAttachments} = this.state;\r\n\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.fileExt ? att.fileExt : \"\"\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 onChangeAttachments = (e) => {\r\n this.attachments = e.uploadedFiles ? e.uploadedFiles : [];\r\n if (e.deletedFiles && e.deletedFiles.length > 0) {\r\n this.deletedFile = [...e.deletedFiles];\r\n const _arrRemove = this.deletedFile.map((d) => d.AttachmentID);\r\n this.setState(prevState => ({\r\n dataOldAttachments: prevState.dataOldAttachments.filter((att) => {\r\n return _arrRemove.indexOf(att.AttachmentID) < 0;\r\n })\r\n }));\r\n }\r\n };\r\n\r\n onChangeChkSalary = (chk) => {\r\n const { getDynamicFields, getCaption } = this.props;\r\n const { Employee } = this.state;\r\n\r\n this.setState({\r\n IsSalaryAdjustment: chk && chk.target.checked ? 1 :0\r\n }, () => {\r\n let obj = {};\r\n getDynamicFields.forEach(d => {\r\n let no = d && d.Code ? d.Code.slice(-2) : \"\";\r\n obj['ProBaseSalary' + no] = Employee?.['TempBaseSalary' + no];\r\n });\r\n getCaption.forEach(d => {\r\n let no = d && d.Code ? d.Code.slice(-2) : \"\";\r\n obj['NewSalCoefficient' + no] = Employee?.['SalCoefficient' + no];\r\n });\r\n this.setState({\r\n ...this.state.dataForm,\r\n ...obj\r\n });\r\n })\r\n\r\n };\r\n\r\n loadCboEmployees = (isReset) => {\r\n const param = {\r\n HostID: \"\",\r\n Type: \"EmployeeID\",\r\n FormID: \"W09F2150\",\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({employeeLoading: true});\r\n this.props.generalActions.getCboEmployees(param, (error, data) => {\r\n this.setState({employeeLoading: 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 {dataCboEmployees} = this.state;\r\n const _d = data && data.rows ? data.rows : [];\r\n const total = data && data.total ? data.total : 0;\r\n this.setState({\r\n dataCboEmployees: {\r\n rows: isReset ? _d : dataCboEmployees.rows.concat(_d),\r\n total: total,\r\n },\r\n });\r\n }\r\n });\r\n };\r\n\r\n render () {\r\n let {classes, getCboDuty, getDynamicFields, data, mode, getCaption, getCboEmployees} = this.props;\r\n const state = this.state;\r\n const {\r\n uploading,\r\n error,\r\n loading,\r\n dataOldAttachments,\r\n disabled,\r\n disabledEmp,\r\n isExpanded,\r\n dataOldForm,\r\n iPermissions,\r\n dataCboEmployees,\r\n employeeLoading\r\n } = state;\r\n const employee = getCboEmployees?.find?.(i=>i.EmployeeID === state.Employee);\r\n return (\r\n <>\r\n \r\n \r\n \r\n {\r\n const {data: item}= data;\r\n return (\r\n
\r\n \r\n {`${item?.EmployeeID} - ${item?.EmployeeName}`}\r\n
\r\n );\r\n }}\r\n loading={employeeLoading}\r\n total={dataCboEmployees.total}\r\n skip={this.filterCboEmployees.skip}\r\n limit={this.filterCboEmployees.limit}\r\n value={state?.Employee?.EmployeeID}\r\n clearAble\r\n iconExpr={{key: 'UserPictureURL', prefix: Config.getCDNPath()}}\r\n label={Config.lang(\"Nhan_vien\")}\r\n placeholder={Config.lang('Chon')}\r\n onChange={(e) => this.handleChange(\"EmployeeID\", e)}\r\n onInput={(e) => {\r\n this.filterCboEmployees.skip = 0;\r\n this.filterCboEmployees.strSearch = e.target.value;\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(\"ValidDate\", e)}\r\n margin={\"normal\"}\r\n disabled={loading || Number(data?.AppStatusID) === 4}\r\n error={error && error[\"ValidDate\"]}\r\n required={true}\r\n />\r\n \r\n
\r\n \r\n \r\n this.handleChange(\"ProDutyID\", e)}\r\n showClearButton={true}\r\n value={state && state.ProDutyID}\r\n />\r\n \r\n \r\n \r\n \r\n this.handleChange(\"ProContent\", e)}\r\n fullWidth\r\n />\r\n \r\n \r\n \r\n \r\n this.handleChange(\"ProNotice\", e)}\r\n fullWidth\r\n />\r\n \r\n \r\n \r\n {iPermissions?.W09F5602 > 1 && \r\n \r\n \r\n \r\n {iPermissions?.W09F5602 > 1 && \r\n \r\n {getDynamicFields && getDynamicFields.map((data, index) => {\r\n if (data.Disabled) return null;\r\n let no = data && data.Code ? data.Code.slice(-2) : \"\";\r\n const dataField = \"ProBaseSalary\" + no;\r\n return (\r\n this.handleChange(dataField, e)}\r\n fullWidth\r\n disabled={Number(data?.AppStatusID) === 4}\r\n InputLabelProps={{\r\n shrink: true\r\n }}\r\n variant={\"standard\"}\r\n margin={\"normal\"}\r\n />\r\n );\r\n })}\r\n {getCaption && getCaption.map((data, index) => {\r\n if (data.Disabled) return null;\r\n let no = data && data.Code ? data.Code.slice(-2) : \"\";\r\n const dataField = \"NewSalCoefficient\" + no;\r\n return (\r\n this.handleChange(dataField, e)}\r\n fullWidth\r\n disabled={Number(data?.AppStatusID) === 4}\r\n InputLabelProps={{\r\n shrink: true\r\n }}\r\n variant={\"standard\"}\r\n margin={\"normal\"}\r\n />\r\n );\r\n })}\r\n \r\n }\r\n }\r\n \r\n \r\n {\r\n this.setState({isExpanded: isExpaned})\r\n }}>\r\n }\r\n aria-label=\"Expand\"\r\n >\r\n
{Config.lang(\"DHR_Thong_tin_cu\")}
 \r\n {isExpanded ?\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_Chuc_vu\")}: \r\n {dataOldForm.TempDutyName || \"\"}\r\n \r\n \r\n \r\n {iPermissions?.W09F5602 > 0 && getDynamicFields && getDynamicFields.map((field, indx) => {\r\n if (field.Disabled) return null;\r\n const no = field && field.Code ? field.Code.slice(-2) : \"\";\r\n const dataField = \"TempBaseSalary\" + no;\r\n return (\r\n \r\n {field.CaptionName || \"\"}: \r\n {Number(dataOldForm[dataField] || 0).toLocaleString()}\r\n \r\n );\r\n })}\r\n {iPermissions?.W09F5602 > 0 && getCaption && getCaption.map((field, indx) => {\r\n if (field.Disabled) return null;\r\n const no = field && field.Code ? field.Code.slice(-2) : \"\";\r\n const dataField = \"SalCoefficient\" + no;\r\n return (\r\n \r\n {field.CaptionName || \"\"}: \r\n {Number(employee?.[dataField] || 0).toLocaleString()}\r\n \r\n );\r\n })}\r\n \r\n \r\n
\r\n
\r\n \r\n this.attRef = ref}\r\n showButton={true}\r\n files={dataOldAttachments}\r\n disabled={loading || uploading || Number(data?.AppStatusID) === 4}\r\n maxLength={5}\r\n uploading={loading}\r\n onUploading={this.onUploading}\r\n onChanged={this.onChangeAttachments}\r\n />\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nW09F2150Popup.defaultProps = {\r\n};\r\nW09F2150Popup.propTypes = {\r\n open: PropTypes.bool,\r\n mode: PropTypes.string,\r\n data: PropTypes.any,\r\n\r\n onClose: PropTypes.func\r\n};\r\n\r\nexport default compose(connect(state => ({\r\n getCboDuty: state.general.getCboDuty2,\r\n getCboEmployees: state.general.getCboEmployees,\r\n loadForm: state.W09F2150.loadForm,\r\n getDynamicFields: state.W09F2150.getDynamicFields,\r\n getCaption: state.W09F2150.getCaption,\r\n getAttachmentsByTransID: state.general.getAttachmentsByTransID\r\n}), dispatch => ({\r\n W09F2150Actions: bindActionCreators(W09F2150Actions, dispatch),\r\n generalActions: bindActionCreators(generalActions, dispatch)\r\n})), withStyles(styles))(W09F2150Popup);\r\n","/**\r\n * @copyright 2019 @ DigiNet\r\n * @author TRIHAO\r\n * @create 2/7/2020\r\n * @Example\r\n */\r\nimport React from \"react\";\r\nimport {connect} from \"react-redux\";\r\nimport {bindActionCreators, compose} from \"redux\";\r\nimport Config from \"../../../../config\";\r\nimport {Row, Col, FormGroup, Image} from \"react-bootstrap\"\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport Approvals from \"../../../approvals/approvals\";\r\nimport * as ApprovalActions from \"../../../../redux/approvals/approvals_actions\";\r\nimport * as w09f2060 from \"../../../../redux/W0X/W09F2060/W09F2060_actions\";\r\nimport LabelText from \"../../../common/label-text/label-text\";\r\nimport InlineSVG from \"react-inlinesvg\";\r\nimport {Input, FormLabel as Label} from \"@material-ui/core\";\r\nimport Filter from \"../../../filter/filter\";\r\nimport ActionToolbar from \"../../../common/toolbar/action-toolbar\";\r\nimport * as generalActions from \"../../../../redux/general/general_actions\";\r\nimport DateBoxPicker from \"../../../common/form-material/date-box\";\r\nimport { Combo } from \"../../../common/form-material\";\r\nimport ButtonGeneral from \"../../../common/button/button-general\";\r\nimport _ from \"lodash\";\r\n\r\nconst styles = theme => ({\r\n divAvatar: {\r\n width: 32,\r\n height: 32,\r\n borderRadius: '50%',\r\n border: '1px solid #ddd',\r\n overflow: 'hidden',\r\n marginRight: 8\r\n },\r\n imgAvatar: {\r\n maxWidth: '100%',\r\n maxHeight: '100%',\r\n objectFit: 'contain'\r\n },\r\n divAvatarText: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n backgroundColor: theme.palette.primary.main,\r\n fontWeight: 600,\r\n fontSize: \"1rem\",\r\n color: \"#FFF\"\r\n }\r\n});\r\nclass W09F2061 extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n iPermission: 0,\r\n loading: false,\r\n loadingCboProject: false,\r\n loadingCboEmployee: false,\r\n dataForm: {},\r\n dataCboEmployees: { rows:[], total: 0 },\r\n dataCboProjects: { rows:[], total: 0 },\r\n DateFrom: null,\r\n DateTo: null,\r\n };\r\n this.filter = {\r\n Project: \"\",\r\n Employee: \"\",\r\n DepartmentID: \"\",\r\n ApprovalStatus:\"\",\r\n searchvalue: \"\",\r\n skip: 0,\r\n limit: 10\r\n };\r\n this.filterCboProject = {\r\n strSearch: \"\",\r\n skip: 0,\r\n limit: 50\r\n };\r\n this.filterCboEmployee = {\r\n strSearch: \"\",\r\n skip: 0,\r\n limit: 50\r\n };\r\n this.filterCboEmployees = {\r\n strSearch: \"\",\r\n skip: 0,\r\n limit: 50\r\n }\r\n }\r\n\r\n loadPermission = async () => {\r\n await this.props.generalActions.getPermission(\"W09F2061\", (isPer) => {\r\n this.setState({iPermission: isPer});\r\n });\r\n };\r\n\r\n\r\n loadGrid = (VoucherID) => {\r\n const {voucher_id} = Config.getUrlParams(this.props);\r\n VoucherID = VoucherID ? VoucherID : (voucher_id ? voucher_id : \"\");\r\n const { DateFrom, DateTo } = this.state;\r\n const { Employee, Project } = this.filter;\r\n const params = {\r\n VoucherID,\r\n FormID: \"W09F2061\",\r\n Language: Config.language || '84',\r\n DivisionID: Config.getDivisionID(),\r\n ..._.omit(this.filter, [\"Employee\", \"Project\"]),\r\n EmployeeID: _.get(Employee, \"EmployeeID\", \"\"),\r\n ProjectID: _.get(Project, \"ProjectID\", \"\"),\r\n DateFrom, \r\n DateTo,\r\n };\r\n this.setState({ loading: true });\r\n this.props.approvalActions.getGridApprovals(params, (err) => {\r\n this.setState({ loading: false });\r\n if (err) return Config.popup.show(\"INFO\", _.get(err, \"message\", \"\") || Config.lang(\"DHR_Loi_chua_xac_dinh\"));\r\n });\r\n };\r\n\r\n handleFilter = (key,e) => {\r\n const value = _.get(e,\"value\", _.get(e,\"target.value\", \"\"));\r\n const arrDataField = [\"DateFrom\", \"DateTo\"];\r\n if(arrDataField.includes(key)){\r\n this.setState({\r\n [key]: value\r\n });\r\n return;\r\n }\r\n this.filter[key] = value;\r\n }\r\n\r\n loadCboEmployees = (isReset) => {\r\n const params = {\r\n HostID: \"\",\r\n Type: \"EmployeeID\",\r\n FormID: \"W09F2061\",\r\n Language: Config.language || '84',\r\n skip: this.filterCboEmployees.skip,\r\n limit: this.filterCboEmployees.limit,\r\n search: this.state.searchValue\r\n };\r\n this.setState({loadingCboEmployee: true});\r\n this.props.generalActions.getCboEmployees(params, (error, data) => {\r\n this.setState({loadingCboEmployee: 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 {dataCboEmployees} = this.state;\r\n const rows = data && data.rows ? data.rows : data;\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 \r\n loadCboProjects = (isReset) => {\r\n const params = {\r\n HostID: \"\",\r\n FormID: \"W09F2061\",\r\n Language: Config.language || \"84\",\r\n skip: this.filterCboProject.skip,\r\n limit: this.filterCboProject.limit,\r\n search: this.filterCboProject.strSearch\r\n };\r\n this.setState({loadingCboProject: true})\r\n this.props.generalActions.getCboProjects(params, (error, data) => {\r\n this.setState({loadingCboProject: 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 {dataCboProjects} = this.state;\r\n const rows = data && data.rows ? data.rows : data;\r\n const total = data && data.total ? data.total : data.length;\r\n this.setState({\r\n dataCboProjects: {\r\n rows: isReset ? rows : dataCboProjects.rows.concat(rows),\r\n total: total\r\n }\r\n })\r\n }\r\n });\r\n };\r\n \r\n loadCboDepartment = () => {\r\n const params = {\r\n HostID: \"\",\r\n FormID: \"W09F2061\",\r\n DivisionID: Config.getDivisionID(),\r\n Language: Config.language || \"84\"\r\n };\r\n this.props.generalActions.getCboDepartments(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 loadFormInfo = (VoucherID, cb) => {\r\n const params = {\r\n DivisionID: Config.getDivisionID(),\r\n FormID: \"W09F2061\",\r\n Language: Config.language || \"84\",\r\n VoucherID: VoucherID ? VoucherID : \"\",\r\n };\r\n this.setState({loading: true});\r\n this.props.approvalActions.getFormInfo(params, (error, data) => {\r\n this.setState({loading: false});\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (data) {\r\n this.setState({\r\n dataForm: data\r\n });\r\n cb && cb (data);\r\n }\r\n });\r\n };\r\n\r\n loadDynamicFields = () => {\r\n this.props.w09f2060Actions.loadRewardCaption((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 componentDidMount = async () => {\r\n await this.loadPermission();\r\n if (!this.state.iPermission) return;\r\n this.loadGrid();\r\n this.loadCboEmployees();\r\n this.loadCboProjects();\r\n this.loadDynamicFields();\r\n this.loadCboDepartment();\r\n };\r\n\r\n componentDidUpdate (prevProps, prevState, snapshot) {\r\n const {getGridApproval} = this.props;\r\n Config.callChildForm({\r\n FormID: \"W09F2061\",\r\n // ID: voucher_id,\r\n keyExpr: \"VoucherID\",\r\n data: getGridApproval && getGridApproval.rows ? getGridApproval.rows : [],\r\n onLoad: (params) => this.loadGrid(params && params.ID),\r\n onAction: (e, data) => {\r\n const {ID} = e || \"\";\r\n this.refs['Approvals'].showPopup(data);\r\n this.loadFormInfo(ID);\r\n }\r\n }, this.props);\r\n }\r\n\r\n //Form info..\r\n renderFormInfo = (data) => {\r\n const {classes, getRewardCaption} = this.props;\r\n const validDate = Config.helpers.getObjectValue(data, 'ValidDate', '');\r\n \r\n const type = _.get(data, \"Type\", \"Employee\")\r\n // switch (_.get(data, \"Type\", \"\")) {\r\n // case \"Employee\":\r\n // templateField = \r\n \r\n // break;\r\n // case \"Department\":\r\n // templateField = \r\n // break;\r\n // case \"Project\":\r\n \r\n // break;\r\n // default:\r\n // break;\r\n // }\r\n const objFields = {\r\n Employee: {\r\n labelNameTitle: Config.lang(\"DHR_Nhan_vien\"),\r\n labelIDTitle: Config.lang(\"DHR_Ma_nhan_vien\"),\r\n labelName: _.get(data, \"EmployeeName\", \"\"),\r\n labelID: _.get(data, \"EmployeeID\", \"\"),\r\n avatar: _.get(data, \"UserPictureURL\", \"\"),\r\n },\r\n Department: {\r\n labelNameTitle: Config.lang(\"DHR_Phong_ban\"),\r\n labelIDTitle: Config.lang(\"DHR_Ma_phong_ban\"),\r\n labelName: _.get(data, \"DepartmentName\", \"\"),\r\n labelID: _.get(data, \"DepartmentID\", \"\"),\r\n avatar: _.get(data, \"DepartmentName\", \"\") ? _.get(data, \"DepartmentName\", \"\").charAt(0).toUpperCase() : \"\",\r\n },\r\n Project: {\r\n labelNameTitle: Config.lang(\"DHR_Du_an\"),\r\n labelIDTitle: Config.lang(\"DHR_Ma_du_an\"),\r\n labelName: _.get(data, \"ProjectName\", \"\"),\r\n labelID: _.get(data, \"ProjectID\", \"\"),\r\n avatar: _.get(data, \"ProjectName\", \"\") ? _.get(data, \"ProjectName\", \"\").charAt(0).toUpperCase() : \"\",\r\n },\r\n };\r\n return (\r\n <>\r\n \r\n \r\n \r\n {\r\n return (\r\n
\r\n
\r\n {type === \"Employee\" ? (\r\n objFields[type].avatar ? (\r\n \r\n ) : (\r\n \r\n )\r\n ) : (\r\n objFields[type].avatar\r\n )}\r\n
\r\n \r\n
\r\n );\r\n }}\r\n fullWidth={true}\r\n />\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {getRewardCaption && getRewardCaption.length > 0 && getRewardCaption.map((field) => {\r\n if (!field.Disabled) {\r\n const vl = Config.helpers.getObjectValue(data, field.Code, 0);\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n return null;\r\n })}\r\n \r\n \r\n \r\n );\r\n };\r\n\r\n onSelectionChanged = (e) => {\r\n if (!e) return false;\r\n this.loadFormInfo(e.VoucherID);\r\n };\r\n\r\n onDrawerClosed = () => {\r\n this.setState({VoucherID: \"\"});\r\n };\r\n\r\n renderFilter = () => {\r\n const { getCboStatus, getCboDepartments } = this.props;\r\n const { dataCboEmployees, dataCboProjects, DateTo, DateFrom, loadingCboProject, loadingCboEmployee } = this.state;\r\n return (\r\n {\r\n return (\r\n <>\r\n \r\n \r\n \r\n
\r\n \r\n this.handleFilter(\"DateFrom\", e)}\r\n />\r\n
\r\n \r\n \r\n
\r\n \r\n this.handleFilter(\"DateTo\", e)}\r\n />\r\n
\r\n \r\n
\r\n \r\n \r\n this.handleFilter(\"ApprovalStatus\", e)}\r\n />\r\n \r\n \r\n \r\n \r\n {\r\n const { data } = e;\r\n if (!data) return null;\r\n return data.EmployeeID + \" - \" + data.EmployeeName;\r\n }}\r\n showClearButton={true}\r\n // showCheckBoxMode={\"none\"}\r\n onValueChanged={(e) => this.handleFilter(\"Employee\", 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 \r\n \r\n \r\n \r\n {\r\n const {data} = e;\r\n if (!data) return null;\r\n return data.ProjectID + ' - ' + data.ProjectName;\r\n }}\r\n showClearButton={true}\r\n // showCheckBoxMode={\"none\"}\r\n onValueChanged={e => this.handleFilter(\"ProjectID\", e)}\r\n onInputChanged={(e) => {\r\n this.filterCboProject.strSearch = e.target.value;\r\n this.filterCboProject.skip = 0;\r\n this.loadCboProjects(true);\r\n }}\r\n onLoadMore={(e) => {\r\n this.filterCboProject.skip = e.skip;\r\n this.filterCboProject.limit = e.limit;\r\n this.loadCboProjects();\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.handleFilter(\"DepartmentID\", e)}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n );\r\n }}\r\n />\r\n );\r\n };\r\n\r\n render() {\r\n const { getGridApproval } = this.props;\r\n const {iPermission, loading, dataForm, VoucherID} = this.state;\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 this.renderFilter()}\r\n formInfoRender={this.renderFormInfo} //render form info with every screen\r\n onSelectionChanged={this.onSelectionChanged} //action when select row...\r\n onDrawerClosed={this.onDrawerClosed}\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 getRewardCaption: state.W09F2060.getRewardCaption,\r\n getCboDepartments: state.general.getCboDepartments,\r\n getCboStatus: state.approvals.getCboStatus,\r\n getGridApproval: state.approvals.getGridApproval,\r\n getCboEmployees: state.general.getCboEmployees,\r\n getCboProjects: state.general.getCboProjects\r\n}), (dispatch) => ({\r\n generalActions: bindActionCreators(generalActions, dispatch),\r\n approvalActions: bindActionCreators(ApprovalActions, dispatch),\r\n w09f2060Actions: bindActionCreators(w09f2060, dispatch),\r\n})), withStyles(styles,{withTheme: true}))(W09F2061);\r\n","/**\r\n * @copyright 2020 @ DigiNet\r\n * @author DINHTHIEN\r\n * @create 2/6/2020\r\n * @Example\r\n */\r\n\r\nimport React from \"react\";\r\nimport { bindActionCreators, compose } from \"redux\";\r\nimport { withStyles } from \"@material-ui/core\";\r\nimport { connect } from \"react-redux\";\r\nimport * as generalActions from \"../../../../redux/general/general_actions\";\r\nimport ActionToolbar from \"../../../common/toolbar/action-toolbar\";\r\nimport Config from \"../../../../config\";\r\nimport ButtonGeneral from \"../../../common/button/button-general\";\r\nimport Modal from \"../../../common/modal/modal\";\r\nimport GridContainer from \"../../../grid-container/grid-container\";\r\nimport { Column } from \"devextreme-react/data-grid\";\r\nimport { FormGroup, Row, Col } from \"react-bootstrap\";\r\nimport Filter from \"../../../filter/filter\";\r\nimport { Combo } from \"../../../common/form-material\";\r\nimport DateBoxPicker from \"../../../common/form-material/date-box\";\r\nimport moment from \"moment\";\r\nimport { browserHistory } from \"react-router\";\r\nimport W09F2070Popup from \"./W09F2070Popup\";\r\nimport { ButtonIcon, Typography, Avatar, Button } from \"diginet-core-ui/components\";\r\nimport Icon from \"diginet-core-ui/icons\";\r\nimport _ from \"lodash\";\r\n\r\nimport * as W09F2070Actions from \"../../../../redux/W0X/W09F2070/W09F2070_actions\";\r\nimport Status from \"../../../common/status/status\";\r\nimport W84F3005 from \"../../../W8X/W84/W84F3005/W84F3005\";\r\n\r\nconst styles = theme => ({\r\n dateInfo: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n },\r\n divText: {\r\n // fontSize: \"14px\",\r\n fontWeight: 500,\r\n // color: \"#575757\"\r\n },\r\n});\r\n\r\nclass W09F2070 extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n iPermission: 0,\r\n mode: \"add\",\r\n rowData: null,\r\n showW09F2070Popup: false,\r\n dataCboEmployees: {\r\n rows: [],\r\n total: 0,\r\n },\r\n dataCboProjects: {\r\n rows: [],\r\n total: 0,\r\n },\r\n loading: {\r\n cboEmployees: false,\r\n },\r\n showW84F3005: false,\r\n };\r\n this.loading = {\r\n cboEmployees: false,\r\n };\r\n this.filter = {\r\n ProDateFrom: \"\",\r\n ProDateTo: \"\",\r\n Employee: \"%\",\r\n Project: \"%\",\r\n AppStatusID: \"%\",\r\n skip: 0,\r\n limit: 10,\r\n };\r\n this.filterCboEmployees = {\r\n timer: null,\r\n strSearch: \"\",\r\n skip: 0,\r\n limit: 50,\r\n };\r\n this.filterCboProjects = {\r\n timer: null,\r\n strSearch: \"\",\r\n skip: 0,\r\n limit: 50,\r\n };\r\n }\r\n\r\n loadPermission = async () => {\r\n await this.props.generalActions.getPermission(\"W09F2070\", isPer => {\r\n this.setState({ iPermission: isPer });\r\n });\r\n };\r\n\r\n onSearch = () => {\r\n this.loadDataGrid();\r\n };\r\n\r\n onChangePageProfile = data => {\r\n browserHistory.push({\r\n pathname: Config.getRootPath() + \"W09F2000\",\r\n state: { EmployeeID: data.EmployeeID },\r\n });\r\n };\r\n\r\n loadRewardCaption = () => {\r\n this.props.w09f2070Actions.loadRewardCaption({ Languaghe: Config.language || \"84\" }, 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 renderEmpProfile = e => {\r\n const { data } = e.row;\r\n const date = moment(data.ProposalDate).format(\"LT, DD/MM/YYYY\");\r\n\r\n const info = {\r\n [Config.lang(\"Nhan_vien\")]: `${data?.EmployeeID || \"\"} - ${data?.EmployeeName || \"---\"}`,\r\n [Config.lang(\"Phong_ban\")]: data?.DepartmentName || \"\",\r\n [Config.lang(\"Du_an\")]: data?.ProjectName || \"\",\r\n [Config.lang(\"Chuc_vu\")]: data?.DutyName || \"\",\r\n [Config.lang(\"Ngay_vao_lam\")]: Config.convertDate(data?.DateJoined, \"\", \"L\"),\r\n };\r\n\r\n return (\r\n
\r\n
this.onChangePageProfile(data)}>\r\n \r\n
\r\n
\r\n {data?.EmployeeName}\r\n {data.DepartmentName || \"\"}\r\n
\r\n \r\n \r\n {data.ProposalDate && date}\r\n \r\n
\r\n
\r\n
\r\n );\r\n };\r\n\r\n renderInfo = e => {\r\n const { data } = e.row;\r\n return (\r\n
\r\n \r\n {data.ProNotice || \"\"}\r\n \r\n \r\n {Config.lang(\"Du_an_cong_trinh\")}: {data.ProjectName || \"\"}\r\n \r\n {data.ProposerName && (\r\n \r\n {Config.lang(\"Nguoi_lap\")}: {data.ProposerName || \"\"}\r\n \r\n )}\r\n {data.ApproverName && (\r\n \r\n {Config.lang(\"Nguoi_duyet\")}: {data.ApproverName || \"\"} - {data.DepartmentID || \"\"} -{\" \"}\r\n {data.ApprovalDate || \"\"}\r\n \r\n )}\r\n {data.AppStatusID > 0 && (\r\n \r\n {Config.lang(\"Ghi_chu_duyet\")}: {data.ApprovalNotes || \"\"}\r\n \r\n )}\r\n
\r\n );\r\n };\r\n\r\n renderStatus = e => {\r\n const { data } = e.row;\r\n\r\n return ;\r\n };\r\n\r\n onAdd = () => {\r\n this.setState({\r\n mode: \"add\",\r\n rowData: null,\r\n showW09F2070Popup: true,\r\n });\r\n };\r\n\r\n onView = e => {\r\n const { data } = e.row;\r\n this.setState({\r\n mode: \"view\",\r\n rowData: data,\r\n showW09F2070Popup: true,\r\n });\r\n };\r\n\r\n onDelete = data => {\r\n const { ProTransID } = data;\r\n\r\n const param = {\r\n ProTransID,\r\n };\r\n\r\n Config.popup.show(\"YES_NO\", Config.lang(\"Ban_co_chac_muon_xoa?\"), () => {\r\n this.props.w09f2070Actions.deleteDataGrid(param, error => {\r\n if (error) {\r\n Config.popup.show(\"INFO\", Config.lang(\"Loi_chua_xac_dinh\"));\r\n return false;\r\n } else {\r\n Config.notify.show(\"success\", Config.lang(\"Xoa_thanh_cong\"), 3000);\r\n this.loadDataGrid();\r\n }\r\n });\r\n });\r\n };\r\n\r\n onViewHistory = e => {\r\n this.setState({ showW84F3005: true, rowData: e.data });\r\n };\r\n\r\n renderAction = e => {\r\n const { data } = e.row;\r\n return (\r\n
\r\n this.onViewHistory(e)}\r\n className={\"mgr5\"}\r\n />\r\n this.onView(e)}\r\n />\r\n this.onDelete(data)}\r\n />\r\n
\r\n );\r\n };\r\n\r\n filterChange = (key, data) => {\r\n const { value } = data;\r\n if (!key) return false;\r\n switch (key) {\r\n case \"DateFrom\":\r\n this.filter.ProDateFrom = value;\r\n break;\r\n case \"DateTo\":\r\n this.filter.ProDateTo = value;\r\n break;\r\n case \"EmployeeID\":\r\n this.filter.Employee = value ?? \"%\";\r\n break;\r\n case \"ProjectID\":\r\n this.filter.Project = value ?? \"%\";\r\n break;\r\n case \"AppStatusID\":\r\n this.filter.AppStatusID = value ?? \"%\";\r\n break;\r\n default:\r\n break;\r\n }\r\n };\r\n\r\n renderFilter = () => {\r\n const { getCboAppStatus, classes } = this.props;\r\n const { ProDateTo, ProDateFrom, Project, AppStatusID, Employee } = this.filter;\r\n const { dataCboEmployees, dataCboProjects, loading } = this.state;\r\n return (\r\n {\r\n return (\r\n <>\r\n \r\n \r\n \r\n
\r\n
{Config.lang(\"Tu\")}
\r\n this.filterChange(\"DateFrom\", e)}\r\n useMaskBehavior={true}\r\n showClearButton={true}\r\n placeholder={\"DD/MM/YYYY\"}\r\n value={ProDateFrom}\r\n />\r\n
\r\n \r\n \r\n
\r\n
\r\n {Config.lang(\"Den\").toLowerCase()}\r\n
\r\n this.filterChange(\"DateTo\", e)}\r\n useMaskBehavior={true}\r\n showClearButton={true}\r\n placeholder={\"DD/MM/YYYY\"}\r\n value={ProDateTo && ProDateTo}\r\n />\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n this.filterChange(\"AppStatusID\", e)}\r\n showClearButton={true}\r\n value={AppStatusID === \"%\" ? \"\" : AppStatusID}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n const { data } = e;\r\n if (!data) return null;\r\n return data.EmployeeID + \" - \" + data.EmployeeName;\r\n }}\r\n showClearButton={true}\r\n // showCheckBoxMode={\"none\"}\r\n onValueChanged={e => this.filterChange(\"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 \r\n \r\n \r\n \r\n {\r\n const { data } = e;\r\n if (!data) return null;\r\n return data.ProjectID + \" - \" + data.ProjectName;\r\n }}\r\n showClearButton={true}\r\n // showCheckBoxMode={\"none\"}\r\n onValueChanged={e => this.filterChange(\"ProjectID\", e)}\r\n onInputChanged={e => {\r\n this.filterCboProjects.strSearch = e.target.value;\r\n this.filterCboProjects.skip = 0;\r\n this.loadCboProjects(true);\r\n }}\r\n onLoadMore={e => {\r\n this.filterCboProjects.skip = e.skip;\r\n this.filterCboProjects.limit = e.limit;\r\n this.loadCboProjects();\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }}\r\n />\r\n );\r\n };\r\n\r\n componentDidMount = async () => {\r\n await this.loadPermission();\r\n if (!this.state.iPermission) return;\r\n this.loadRewardCaption();\r\n this.loadCboEmployees();\r\n this.loadCboProjects();\r\n this.loadDataGrid();\r\n this.loadCboAppStatus();\r\n };\r\n\r\n componentDidUpdate(prevProps, prevState, snapshot) {\r\n const { getDataGrid } = this.props;\r\n Config.callChildForm(\r\n {\r\n FormID: \"W09F2070\",\r\n // ID: voucher_id,\r\n keyExpr: \"ProTransID\",\r\n data: getDataGrid && getDataGrid.rows ? getDataGrid.rows : [],\r\n onLoad: params => this.loadDataGrid(params && params.ID),\r\n onAction: (e, data) => this.onView({ row: { data: data } }),\r\n },\r\n this.props\r\n );\r\n }\r\n\r\n loadCboEmployees = isReset => {\r\n const param = {\r\n Type: \"EmployeeID\",\r\n FormID: \"W09F2070\",\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.loading.cboEmployees = true;\r\n this.setState({ loading: this.loading });\r\n this.props.generalActions.getCboEmployees(param, (error, data) => {\r\n this.loading.cboEmployees = false;\r\n this.setState({ loading: this.loading });\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\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 : data;\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\r\n loadCboProjects = isReset => {\r\n const param = {\r\n HostID: \"\",\r\n FormID: \"W09F2070\",\r\n Language: Config.language || \"84\",\r\n skip: this.filterCboProjects.skip,\r\n limit: this.filterCboProjects.limit,\r\n search: this.filterCboProjects.strSearch,\r\n };\r\n this.loading.cboProjects = true;\r\n this.setState({ loading: this.loading });\r\n this.props.generalActions.getCboProjects(param, (error, data) => {\r\n this.loading.cboProjects = false;\r\n this.setState({ loading: this.loading });\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (data) {\r\n const { dataCboProjects } = this.state;\r\n const rows = data && data.rows ? data.rows : data;\r\n const total = data && data.total ? data.total : data.length;\r\n this.setState({\r\n dataCboProjects: {\r\n rows: isReset ? rows : dataCboProjects.rows.concat(rows),\r\n total: total,\r\n },\r\n });\r\n }\r\n });\r\n };\r\n\r\n loadDataGrid = VoucherID => {\r\n const { voucher_id } = Config.getUrlParams(this.props);\r\n VoucherID = VoucherID ? VoucherID : voucher_id;\r\n const { Employee, Project, AppStatusID, ProDateFrom, ProDateTo, skip, limit } = this.filter;\r\n const param = {\r\n TransID: VoucherID || \"\",\r\n FormID: \"W09F2070\",\r\n Language: Config.language || 84,\r\n ProDateFrom: ProDateFrom,\r\n ProDateTo: ProDateTo,\r\n EmployeeID: Employee && Employee.EmployeeID ? Employee.EmployeeID : \"%\",\r\n ProjectID: Project && Project.ProjectID ? Project.ProjectID : \"%\",\r\n AppStatusID: _.toString(AppStatusID),\r\n skip: skip,\r\n limit: limit,\r\n };\r\n this.setState({ gridLoading: true });\r\n this.props.w09f2070Actions.loadDataGrid(param, error => {\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n this.setState({ gridLoading: false });\r\n });\r\n };\r\n\r\n loadCboAppStatus = () => {\r\n const param = {\r\n FormID: \"W09F2070\",\r\n Language: Config.language || 84,\r\n };\r\n\r\n this.props.w09f2070Actions.loadAppStatus(param, 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 onChangePage = page => {\r\n this.filter.skip = page * this.filter.limit;\r\n this.loadDataGrid();\r\n };\r\n\r\n onChangePerPage = perPage => {\r\n this.filter.skip = 0;\r\n this.filter.limit = perPage;\r\n this.loadDataGrid();\r\n };\r\n\r\n onCloseModal = (isSaved = false) => {\r\n if (isSaved) this.loadDataGrid();\r\n this.setState({\r\n showW09F2070Popup: false,\r\n });\r\n };\r\n\r\n render() {\r\n const { getDataGrid } = this.props;\r\n const { iPermission, gridLoading, showW09F2070Popup, mode, rowData, showW84F3005 } = this.state;\r\n if (!iPermission) return null;\r\n const { skip, limit } = this.filter;\r\n return (\r\n <>\r\n {showW84F3005 && (\r\n this.setState({ showW84F3005: false })}\r\n FormID=\"W09F2070\"\r\n TransID={rowData?.ProTransID ?? \"\"}\r\n />\r\n )}\r\n this.onCloseModal(false)}\r\n title={Config.lang(\"Lap_de_xuat_ky_luat\")}\r\n >\r\n \r\n \r\n
{this.renderFilter()}
\r\n \r\n \r\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(\r\n connect(\r\n state => ({\r\n getCboAppStatus: state.W09F2070.getCboAppStatus,\r\n getDataGrid: state.W09F2070.getDataGrid,\r\n }),\r\n dispatch => ({\r\n generalActions: bindActionCreators(generalActions, dispatch),\r\n w09f2070Actions: bindActionCreators(W09F2070Actions, dispatch),\r\n })\r\n ),\r\n withStyles(styles)\r\n)(W09F2070);\r\n","/**\r\n * @copyright 2019 @ DigiNet\r\n * @author Minh Trung\r\n * @create 13/02/2020\r\n * @Example\r\n */\r\n\r\nimport React from \"react\";\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 {bindActionCreators, compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport * as W09F2071Actions from \"../../../../redux/W0X/W09F2071/W09F2071_actions\";\r\nimport {Input, withStyles} from \"@material-ui/core\";\r\nimport InlineSVG from \"react-inlinesvg\";\r\nimport * as ApprovalActions from \"../../../../redux/approvals/approvals_actions\";\r\nimport moment from \"moment\";\r\nimport * as generalActions from \"../../../../redux/general/general_actions\";\r\nimport {Avatar} from \"diginet-core-ui/components\";\r\n\r\nconst styles = {\r\n divAvatar: {\r\n width: 32,\r\n height: 32,\r\n borderRadius: '50%',\r\n border: '1px solid #ddd',\r\n overflow: 'hidden',\r\n marginRight: 8\r\n },\r\n imgAvatar: {\r\n maxWidth: '100%',\r\n maxHeight: '100%',\r\n objectFit: 'contain'\r\n },\r\n label: {\r\n fontSize: \"1rem\",\r\n fontWeight: 200,\r\n color:\"#757575\"\r\n },\r\n divText : {\r\n // fontSize: \"1rem\",\r\n fontWeight: 500,\r\n // color:\"#575757\"\r\n }\r\n};\r\n\r\nclass W09F2071 extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n iPermission: 0,\r\n dataForm: {},\r\n VoucherID: \"\",\r\n loading: false\r\n }\r\n }\r\n\r\n loadPermission = async () => {\r\n await this.props.generalActions.getPermission(\"W09F2071\", (isPer) => {\r\n this.setState({iPermission: isPer});\r\n });\r\n };\r\n\r\n loadRewardCaption = () => {\r\n const params = {\r\n Language: Config.language\r\n };\r\n\r\n this.props.W09F2071Actions.loadRewardCaption(params, (errors) => {\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 })\r\n };\r\n\r\n componentDidMount = async () => {\r\n await this.loadPermission();\r\n if (!this.state.iPermission) return;\r\n this.loadRewardCaption();\r\n };\r\n\r\n onSelectionChanged = (e) => {\r\n if (!e) return false;\r\n this.loadFormInfo(e.VoucherID);\r\n };\r\n\r\n onDrawerClosed = () => {\r\n this.setState({VoucherID: \"\"});\r\n };\r\n\r\n loadFormInfo = (VoucherID, cb) => {\r\n const params = {\r\n DivisionID: Config.getDivisionID(),\r\n FormID: \"W09F2071\",\r\n Language: Config.language || \"84\",\r\n VoucherID: VoucherID ? VoucherID : \"\",\r\n };\r\n this.setState({loading: true})\r\n this.props.approvalActions.getFormInfo(params, (error, data) => {\r\n this.setState({loading: false})\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (data) {\r\n this.setState({\r\n dataForm: data\r\n });\r\n cb && cb (data);\r\n }\r\n });\r\n };\r\n\r\n renderFormInfo = (data) => {\r\n const {classes} = this.props;\r\n let {getRewardCaption} = this.props;\r\n const ValidDate = Config.helpers.getObjectValue(data,\"ValidDate\",\"\");\r\n const ValidEndDate = Config.helpers.getObjectValue(data,\"ValidEndDate\",\"\");\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n {\r\n return (\r\n
\r\n \r\n \r\n
\r\n );\r\n }}\r\n fullWidth={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 {Config.lang(\"DHR_Thoi_gian_hieu_luc\")}\r\n
\r\n
\r\n
\r\n
\r\n {Config.lang(\"DHR_Tu\")}\r\n
\r\n
}\r\n value={ValidDate && moment(ValidDate).format(\"DD/MM/YYYY\")}\r\n />\r\n
\r\n
\r\n
\r\n {Config.lang(\"DHR_Den\").toLowerCase()}\r\n
\r\n
}\r\n value={ValidEndDate && moment(ValidEndDate).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 \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {getRewardCaption &&\r\n getRewardCaption.map((items, index) => {\r\n if(getRewardCaption[index].Disabled) return null;\r\n const vl = Config.helpers.getObjectValue(data, getRewardCaption[index].Code, \"\");\r\n return(\r\n \r\n \r\n \r\n {items.Short}\r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n })}\r\n \r\n \r\n \r\n\r\n )\r\n };\r\n\r\n render() {\r\n const {iPermission, dataForm, VoucherID, loading} = this.state;\r\n if (!iPermission) return null;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n}\r\n\r\nexport default compose(connect((state) => ({\r\n getRewardCaption: state.W09F2071.getRewardCaption\r\n }),\r\n (dispatch) => ({\r\n generalActions: bindActionCreators(generalActions, dispatch),\r\n W09F2071Actions: bindActionCreators(W09F2071Actions, dispatch),\r\n approvalActions: bindActionCreators(ApprovalActions, dispatch),\r\n })\r\n), withStyles(styles, {withTheme: true}))(W09F2071);\r\n","/**\r\n * @copyright 2020 @ DigiNet\r\n * @author DINHTHIEN\r\n * @create 3/13/2020\r\n * @Example\r\n */\r\nimport React, { Component } from \"react\";\r\n\r\nimport { connect } from \"react-redux\";\r\nimport Config from \"../../../../config\";\r\nimport * as W09F2080Actions from \"../../../../redux/W0X/W09F2080/W09F2080_actions\";\r\nimport * as generalActions from \"../../../../redux/general/general_actions\";\r\nimport { bindActionCreators, compose } from \"redux\";\r\n\r\nimport _ from \"lodash\";\r\nimport moment from \"moment\";\r\nimport { browserHistory } from \"react-router\";\r\nimport { Column } from \"devextreme-react/data-grid\";\r\nimport { withStyles } from \"@material-ui/core\";\r\nimport { Image, FormGroup, Row, Col } from \"react-bootstrap\";\r\n\r\nimport ActionToolbar from \"../../../common/toolbar/action-toolbar\";\r\nimport ButtonGeneral from \"../../../common/button/button-general\";\r\nimport GridContainer from \"../../../grid-container/grid-container\";\r\nimport Filter from \"../../../filter/filter\";\r\nimport DateBoxPicker from \"../../../common/form-material/date-box\";\r\nimport { Combo } from \"../../../common/form-material\";\r\nimport W09F2080Popup from \"../W09F2080/W09F2080Popup\";\r\nimport Modal from \"../../../common/modal/modal\";\r\nimport UserImage from \"../../../common/user/user-image\";\r\nimport UserName from \"../../../common/user/user-name\";\r\nimport Status from \"../../../common/status/status\";\r\nimport { ButtonIcon } from 'diginet-core-ui/components';\r\nimport W84F3005 from '../../../W8X/W84/W84F3005/W84F3005';\r\n\r\nconst styles = {\r\n divAvatar: {\r\n width: 46,\r\n height: 46,\r\n minWidth: 46,\r\n minHeight: 46,\r\n borderRadius: \"50%\",\r\n overflow: \"hidden\",\r\n marginRight: 8\r\n },\r\n imgAvatar: {\r\n maxWidth: \"100%\",\r\n objectFit: \"contain\"\r\n },\r\n dateInfo: {\r\n display: \"flex\",\r\n alignItems: \"center\"\r\n },\r\n divText: {\r\n // fontSize: \"14px\",\r\n fontWeight: 500,\r\n // color: \"#575757\"\r\n },\r\n divDateText: {\r\n // fontSize: \"14px\",\r\n fontWeight: 500,\r\n // color: \"#000000\"\r\n }\r\n};\r\n\r\nclass W09F2080 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n iPermission: 0,\r\n mode: \"add\",\r\n rowData: null,\r\n gridLoading: false,\r\n showW09F2080Popup: false,\r\n ProDateFrom: null,\r\n ProDateTo: null,\r\n dataCboEmployees: {\r\n rows: [],\r\n total: 0\r\n },\r\n dataCboProjects: {\r\n rows: [],\r\n total: 0\r\n },\r\n loading: {\r\n cboEmployees: false,\r\n cboProjects: false,\r\n },\r\n showW84F3005: false,\r\n };\r\n this.loading = {\r\n cboEmployees: false,\r\n cboProjects: false,\r\n };\r\n this.filter = {\r\n Employee: \"%\",\r\n DepartmentID: \"\",\r\n Project: \"%\",\r\n AppStatusID: \"%\",\r\n skip: 0,\r\n limit: 10\r\n };\r\n this.filterCboEmployees = {\r\n timer: null,\r\n strSearch: \"\",\r\n skip: 0,\r\n limit: 50\r\n };\r\n this.filterCboProject = {\r\n timer: null,\r\n strSearch: \"\",\r\n skip: 0,\r\n limit: 50\r\n };\r\n }\r\n\r\n loadPermission = async () => {\r\n await this.props.generalActions.getPermission(\"W09F2080\", isPer => {\r\n this.setState({ iPermission: isPer });\r\n });\r\n };\r\n\r\n loadData = (VoucherID) => {\r\n const {voucher_id} = Config.getUrlParams(this.props);\r\n VoucherID = VoucherID ? VoucherID : voucher_id;\r\n const { ProDateFrom, ProDateTo } = this.state;\r\n const {AppStatusID, Employee, DepartmentID, Project, limit, skip} = this.filter;\r\n const param = {\r\n TransID: VoucherID || \"\",\r\n FormID: \"W09F2080\",\r\n Language: Config.language || 84,\r\n ProDateFrom,\r\n ProDateTo,\r\n AppStatusID: AppStatusID,\r\n EmployeeID: Employee && Employee.EmployeeID ? Employee.EmployeeID : \"%\",\r\n DepartmentID: DepartmentID,\r\n ProjectID: Project && Project.ProjectID ? Project.ProjectID : \"%\",\r\n limit: limit,\r\n skip: skip\r\n };\r\n this.setState({ gridLoading: true });\r\n this.props.w09f2080Actions.loadData(param, error => {\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n this.setState({ gridLoading: false });\r\n });\r\n };\r\n\r\n loadCboEmployees = (isReset) => {\r\n const param = {\r\n HostID: \"\",\r\n FormID: \"W09F2080\",\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.loading.cboEmployees = true;\r\n this.setState({loading: this.loading});\r\n this.props.w09f2080Actions.loadCboEmployees(param, (error, data) => {\r\n this.loading.cboEmployees = false;\r\n this.setState({loading: this.loading});\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\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 : data;\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\r\n loadCboProjects = (isReset) => {\r\n const param = {\r\n HostID: \"\",\r\n FormID: \"W09F2080\",\r\n Language: Config.language || \"84\",\r\n skip: this.filterCboProject.skip,\r\n limit: this.filterCboProject.limit,\r\n search: this.filterCboProject.strSearch\r\n };\r\n this.loading.cboProjects = true;\r\n this.setState({loading: this.loading});\r\n this.props.w09f2080Actions.loadCboProjects(param, (error, data) => {\r\n this.loading.cboProjects = false;\r\n this.setState({loading: this.loading});\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (data) {\r\n const {dataCboProjects} = this.state;\r\n const rows = data && data.rows ? data.rows : data;\r\n const total = data && data.total ? data.total : data.length;\r\n this.setState({\r\n dataCboProjects: {\r\n rows: isReset ? rows : dataCboProjects.rows.concat(rows),\r\n total: total\r\n }\r\n })\r\n }\r\n });\r\n };\r\n\r\n loadCboDepartment = () => {\r\n const param = {\r\n HostID: \"\",\r\n FormID: \"W09F2080\",\r\n DivisionID: Config.getDivisionID(),\r\n Language: Config.language || \"84\"\r\n };\r\n\r\n this.props.w09f2080Actions.loadCboDeparments(param, error => {\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n });\r\n };\r\n loadCboAppStatus = () => {\r\n const param = {\r\n Language: Config.language || \"84\"\r\n };\r\n\r\n this.props.w09f2080Actions.loadCboAppStatus(param, 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 onChangePage = page => {\r\n this.filter.skip = page * this.filter.limit;\r\n this.loadData();\r\n };\r\n\r\n onChangePerPage = perPage => {\r\n this.filter.skip = 0;\r\n this.filter.limit = perPage;\r\n this.loadData();\r\n };\r\n\r\n onChangePageProfile = data => {\r\n browserHistory.push({\r\n pathname: Config.getRootPath() + \"W09F2000\",\r\n state: { EmployeeID: data.EmployeeID }\r\n });\r\n };\r\n\r\n onSearch = () => {\r\n this.loadData();\r\n };\r\n\r\n onCloseModal = (isSaved = false) => {\r\n if(isSaved) this.loadData();\r\n this.setState({\r\n showW09F2080Popup: false\r\n });\r\n };\r\n\r\n onAdd = () => {\r\n this.setState({\r\n mode: \"add\",\r\n showW09F2080Popup: true\r\n });\r\n };\r\n\r\n onView = e => {\r\n const { data } = e.row;\r\n this.setState({\r\n mode: \"view\",\r\n rowData: data,\r\n showW09F2080Popup: true\r\n });\r\n };\r\n\r\n onDelete = data => {\r\n const ProTransID = _.get(data, \"ProTransID\", \"\");\r\n const param = {\r\n ProTransID,\r\n FormID: \"\"\r\n };\r\n Config.popup.show(\"YES_NO\", Config.lang(\"Ban_co_chac_muon_xoa?\"), () => {\r\n this.props.w09f2080Actions.deleteDataGrid(param, error => {\r\n if (error) {\r\n Config.popup.show(\"INFO\", Config.lang(\"Loi_chua_xac_dinh\"));\r\n return false;\r\n } else {\r\n Config.notify.show(\"success\", Config.lang(\"Xoa_thanh_cong\"), 3000);\r\n this.loadData();\r\n }\r\n });\r\n });\r\n };\r\n\r\n filterChange = (key, data) => {\r\n const value = _.get(data, \"value\", null);\r\n if (!key) return false;\r\n switch (key) {\r\n case \"DateFrom\":\r\n this.setState({\r\n ProDateFrom: value\r\n });\r\n break;\r\n case \"DateTo\":\r\n this.setState({\r\n ProDateTo: value\r\n });\r\n break;\r\n case \"AppStatusID\":\r\n this.filter.AppStatusID = !Config.isEmpty(value, true) ? value : \"%\";\r\n break;\r\n case \"EmployeeID\":\r\n this.filter.Employee = value ? value : \"%\";\r\n break;\r\n case \"DepartmentID\":\r\n this.filter.DepartmentID = value ? value : \"%\";\r\n break;\r\n case \"ProjectID\":\r\n this.filter.Project = value ? value : \"%\";\r\n break;\r\n default:\r\n break;\r\n }\r\n };\r\n\r\n renderEmpProfile = e => {\r\n const { classes } = this.props;\r\n const data = _.get(e, \"data\", \"\");\r\n const date = moment.utc(data.CreateDate).format(\"LT, DD/MM/YYYY\");\r\n if (data) {\r\n if (data.UserPictureURL) {\r\n data.UserPictureURL = data.UserPictureURL.indexOf('http') < 0 ? Config.getCDNPath() + data.UserPictureURL : data.UserPictureURL;\r\n } else if (data.EmployeeID) {\r\n const user = Config.getUser({EmployeeID: data.EmployeeID});\r\n data.UserPictureURL = user && user.UserPictureURL ? user.UserPictureURL : \"\"\r\n }\r\n }\r\n return (\r\n
\r\n
\r\n this.onChangePageProfile(data)} />\r\n
\r\n
\r\n
\r\n
{data.DepartmentName || \"\"}
\r\n
\r\n \r\n
\r\n {date}\r\n
\r\n
\r\n
\r\n
\r\n );\r\n };\r\n\r\n renderInfo = e => {\r\n const { classes } = this.props;\r\n const data = _.get(e, \"data\", \"\");\r\n const date = moment.utc(data.ProposalDate).format(\"LT, DD/MM/YYYY\");\r\n return (\r\n
\r\n {data.NewDepartmentName && (\r\n
\r\n {Config.lang(\"Phong_ban_moi\")}: {data.NewDepartmentName}\r\n
\r\n )}\r\n {data.NewProjectName && (\r\n
\r\n {Config.lang(\"Du_an_moi\")}: {data.NewProjectName}\r\n
\r\n )}\r\n {data.ProposerName && (\r\n
\r\n {Config.lang(\"Nguoi_lap\")}: {data.ProposerName}\r\n
\r\n )}\r\n {data.ApproverName && (\r\n
\r\n {Config.lang(\"Nguoi_duyet\")}:{data.ApproverName || \"\"} - {data.DepartmentID || \"\"} -\r\n {data.ApprovalDate || \"\"}\r\n
\r\n )}\r\n
\r\n {Config.lang(\"Ngay_hieu_luc\")}: {date || \"\"}\r\n
\r\n {data.AppStatusID && (\r\n
\r\n {Config.lang(\"Ghi_chu_duyet\")}:{data.ApprovalNotes || \"\"}\r\n
\r\n )}\r\n
\r\n );\r\n };\r\n\r\n renderStatus = e => {\r\n const data = _.get(e, \"data\", \"\");\r\n return ;\r\n };\r\n\r\n onViewHistory=(e)=>{\r\n this.setState({ showW84F3005: true, rowData: e.data });\r\n }\r\n\r\n renderAction = e => {\r\n const { iPermission } = this.state;\r\n const data = _.get(e, \"data\", 0);\r\n const allowDelete = iPermission > 3 && Number(data.AppStatusID) === 0;\r\n return (\r\n
\r\n this.onViewHistory(e)}\r\n className={'mgr5'}\r\n />\r\n this.onView(e)}\r\n className={'mgr5'}\r\n />\r\n this.onDelete(data)}\r\n />\r\n
\r\n );\r\n };\r\n\r\n renderFilter = () => {\r\n const { getCboAppStatus, getCboDepartments, classes } = this.props;\r\n const { Project, AppStatusID, Employee, DepartmentID } = this.filter;\r\n const { ProDateTo, ProDateFrom /*showW09F2080Popup, mode, rowData*/, dataCboEmployees, dataCboProjects, loading } = this.state;\r\n return (\r\n {\r\n return (\r\n <>\r\n \r\n \r\n \r\n
\r\n
{Config.lang(\"Tu\")}
\r\n this.filterChange(\"DateFrom\", e)}\r\n useMaskBehavior={true}\r\n showClearButton={true}\r\n placeholder={\"DD/MM/YYYY\"}\r\n value={ProDateFrom}\r\n />\r\n
\r\n \r\n \r\n
\r\n
{Config.lang(\"Den\").toLowerCase()}
\r\n this.filterChange(\"DateTo\", e)}\r\n useMaskBehavior={true}\r\n showClearButton={true}\r\n placeholder={\"DD/MM/YYYY\"}\r\n value={ProDateTo}\r\n />\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n this.filterChange(\"AppStatusID\", e)}\r\n showClearButton={true}\r\n value={AppStatusID === \"%\" ? \"\" : AppStatusID}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n const {data} = e;\r\n if (!data) return null;\r\n return data.EmployeeID + ' - ' + data.EmployeeName;\r\n }}\r\n showClearButton={true}\r\n // showCheckBoxMode={\"none\"}\r\n onValueChanged={e => this.filterChange(\"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 \r\n \r\n \r\n \r\n this.filterChange(\"DepartmentID\", e)}\r\n showClearButton={true}\r\n value={DepartmentID === \"%\" ? \"\" : DepartmentID}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n const {data} = e;\r\n if (!data) return null;\r\n return data.ProjectID + ' - ' + data.ProjectName;\r\n }}\r\n showClearButton={true}\r\n // showCheckBoxMode={\"none\"}\r\n onValueChanged={e => this.filterChange(\"ProjectID\", e)}\r\n onInputChanged={(e) => {\r\n this.filterCboProject.strSearch = e.target.value;\r\n this.filterCboProject.skip = 0;\r\n this.loadCboProjects(true);\r\n }}\r\n onLoadMore={(e) => {\r\n this.filterCboProject.skip = e.skip;\r\n this.filterCboProject.limit = e.limit;\r\n this.loadCboProjects();\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }}\r\n />\r\n );\r\n };\r\n\r\n componentDidMount = async () => {\r\n await this.loadPermission();\r\n if (!this.state.iPermission) return;\r\n this.loadData();\r\n this.loadCboDepartment();\r\n this.loadCboEmployees();\r\n this.loadCboProjects();\r\n this.loadCboAppStatus();\r\n };\r\n\r\n componentDidUpdate (prevProps, prevState, snapshot) {\r\n const {getData} = this.props;\r\n Config.callChildForm({\r\n FormID: \"W09F2080\",\r\n // ID: voucher_id,\r\n keyExpr: \"ProTransID\",\r\n data: getData && getData.rows ? getData.rows : [],\r\n onLoad: (params) => this.loadData(params && params.ID),\r\n onAction: (e, data) => this.onView({ row: { data: data } })\r\n }, this.props);\r\n }\r\n\r\n // UNSAFE_componentWillReceiveProps = (nextProps) => {\r\n // const {ProTransID} = this.getInfo(nextProps);\r\n // if(ProTransID && this.ProTransID !== ProTransID){\r\n // this.ProTransID=ProTransID;\r\n // this.checkNotify(ProTransID);\r\n // }\r\n // };\r\n //\r\n // checkNotify = (ProTransID) => {\r\n // if(ProTransID) {\r\n // this.onView({row:{data:{ProTransID:ProTransID}}});\r\n // browserHistory.push(Config.getRootPath() + 'W09F2080');\r\n // this.EmployeeID=null;\r\n // }\r\n // };\r\n //\r\n // getInfo = (props) => {\r\n // if(!props) return {};\r\n // const {location} = props ? props : {};\r\n // const url = new window.URLSearchParams(window.location.search);\r\n // if (url && url.get('voucher_id')) {\r\n // return {ProTransID: url.get('voucher_id')};\r\n // } else if (location && location.state) {\r\n // return {\r\n // ProTransID: location.state.voucher_id,\r\n // }\r\n // } else {\r\n // return {};\r\n // }\r\n // };\r\n\r\n render() {\r\n const { gridLoading, iPermission, showW09F2080Popup, rowData, mode, showW84F3005 } = this.state;\r\n const { getData } = this.props;\r\n const { skip, limit } = this.filter;\r\n if (iPermission <= 0) return null;\r\n const dataRows = _.get(getData, \"rows\", \"\");\r\n const totalRow = Number(_.get(getData, \"total\", 0));\r\n return (\r\n <>\r\n {showW84F3005 && this.setState({ showW84F3005: false })} FormID=\"W09F2080\" TransID={rowData?.ProTransID ?? ''} />}\r\n this.onCloseModal(false)}\r\n title={Config.lang(\"Lap_de_xuat_dieu_chuyen_lao_dong\")}\r\n >\r\n \r\n \r\n
{this.renderFilter()}
\r\n \r\n 1}\r\n name={Config.lang(\"Them\")}\r\n typeButton={\"add\"}\r\n style={{ textTransform: \"uppercase\" }}\r\n size={\"large\"}\r\n onClick={this.onAdd}\r\n />\r\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(\r\n connect(\r\n state => ({\r\n getCboEmployees: state.W09F2080.getCboEmployees,\r\n getCboProjects: state.W09F2080.getCboProjects,\r\n getCboDepartments: state.W09F2080.getCboDepartments,\r\n getCboAppStatus: state.W09F2080.getCboAppStatus,\r\n getData: state.W09F2080.getData\r\n }),\r\n dispatch => ({\r\n generalActions: bindActionCreators(generalActions, dispatch),\r\n w09f2080Actions: bindActionCreators(W09F2080Actions, dispatch)\r\n })\r\n ),\r\n withStyles(styles)\r\n)(W09F2080);\r\n","/**\r\n * @copyright 2019 @ DigiNet\r\n * @author TRIHAO\r\n * @create 3/19/2020\r\n * @Example\r\n */\r\n\r\nimport React from \"react\";\r\nimport Config from \"../../../../config\";\r\nimport ActionToolbar from \"../../../common/toolbar/action-toolbar\";\r\nimport Approvals from \"../../../approvals/approvals\";\r\nimport {bindActionCreators, compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport * as ApprovalActions from \"../../../../redux/approvals/approvals_actions\";\r\nimport * as generalActions from \"../../../../redux/general/general_actions\";\r\nimport * as W09F2081Actions from \"../../../../redux/W0X/W09F2081/W09F2081_actions\";\r\nimport * as W09F2150Actions from \"../../../../redux/W0X/W09F2150/W09F2150_actions\";\r\nimport {\r\n MoneyInput,\r\n Accordion,\r\n AccordionSummary,\r\n AccordionDetails,\r\n Checkbox,\r\n Col,\r\n Row,\r\n TextInput, Avatar\r\n} from \"diginet-core-ui/components\";\r\n\r\nclass W09F2081 extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n iPermission: 0,\r\n dataForm: {},\r\n VoucherID: \"\",\r\n dataColumnSalary: [],\r\n loading: false\r\n }\r\n }\r\n\r\n loadPermission = async () => {\r\n await this.props.generalActions.getPermission(\"W09F2081\", (isPer) => {\r\n this.setState({iPermission: isPer});\r\n });\r\n };\r\n\r\n loadCaption = () => {\r\n this.props.w09F2150Actions.loadCaption({Language: Config.language || \"84\" },(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 loadDynamicColumnSalary = () => {\r\n const params = {\r\n Language: Config.language || 84\r\n };\r\n this.props.w09F2081Actions.getDynamicColumnSalary(params,(error,data) => {\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if(data) {\r\n this.setState({dataColumnSalary : data});\r\n }\r\n });\r\n };\r\n\r\n componentDidMount = async () => {\r\n await this.loadPermission();\r\n if (!this.state.iPermission) return false;\r\n this.loadCaption();\r\n this.loadDynamicColumnSalary();\r\n };\r\n\r\n onSelectionChanged = (e) => {\r\n if (!e) return false;\r\n this.loadFormInfo(e.VoucherID);\r\n };\r\n\r\n onDrawerClosed = () => {\r\n this.setState({VoucherID: \"\"});\r\n };\r\n\r\n loadFormInfo = (VoucherID, cb) => {\r\n const params = {\r\n DivisionID: Config.getDivisionID(),\r\n FormID: \"W09F2081\",\r\n Language: Config.language || \"84\",\r\n VoucherID: VoucherID ? VoucherID : \"\",\r\n };\r\n this.setState({\r\n dataForm: [],\r\n loading: true\r\n });\r\n this.props.approvalActions.getFormInfo(params, (error, data) => {\r\n this.setState({loading: false})\r\n if (error) {\r\n Config.popup.show(\"ERROR\", error);\r\n return false;\r\n }\r\n if (data) {\r\n this.setState({\r\n dataForm: data\r\n });\r\n cb && cb (data);\r\n }\r\n });\r\n };\r\n\r\n renderFormInfo = (data) => {\r\n const {getCaption} = this.props;\r\n const {dataColumnSalary} = this.state;\r\n return (\r\n <>\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n {\r\n data.IsSalaryAdjustment === 1 && dataColumnSalary.map((value,index) => {\r\n if(value.Disabled) return null;\r\n let key = value.Code.slice(-2);\r\n const item = data[\"NewBASE\" + key] || data[\"NewBASE\" + key] === 0 ? Number(data[\"NewBASE\" + key]) : 0;\r\n return (\r\n \r\n \r\n \r\n )\r\n })\r\n }\r\n {data.IsSalaryAdjustment === 1 && getCaption && getCaption.map((item, index) => {\r\n if (item.Disabled) return null;\r\n let no = item && item.Code ? item.Code.slice(-2) : \"\";\r\n const dataField = \"NewSalCoefficient\" + no;\r\n return (\r\n \r\n );\r\n })}\r\n\r\n {!!data?.IsDutyAdjustment ?\r\n \r\n \r\n \r\n : \"\"}\r\n\r\n {!!data?.IsDutyAdjustment ?\r\n \r\n \r\n \r\n : \"\"}\r\n \r\n
\r\n \r\n \r\n {Config.lang(\"Thong_tin_cu\")}\r\n \r\n \r\n \r\n \r\n {Config.lang(\"Phong_ban\")}: \r\n {Config.helpers.getObjectValue(data, \"DepartmentName\", \"\")}\r\n \r\n \r\n {Config.lang(\"To_nhom\")}: \r\n {Config.helpers.getObjectValue(data, \"TeamName\", \"\")}\r\n \r\n \r\n {Config.lang(\"Du_an_cu\")}: \r\n {Config.helpers.getObjectValue(data, \"ProjectName\", \"\")}\r\n \r\n \r\n {Config.lang(\"Cong_viec_cu\")}: \r\n {Config.helpers.getObjectValue(data, \"WorkName\", \"\")}\r\n \r\n \r\n {Config.lang(\"Nguoi_quan_ly_truc_tiep_\")}: \r\n {Config.helpers.getObjectValue(data, \"DirectManagerName\", \"\")}\r\n \r\n {\r\n data.IsSalaryAdjustment === 1 && dataColumnSalary.map((value,index) => {\r\n if(value.Disabled) return null;\r\n let key = value.Code.slice(-2);\r\n const item = data[\"BASE\" + key] || data[\"BASE\" + key] === 0 ? Number(data[\"BASE\" + key]) : 0;\r\n return (\r\n \r\n {Config.lang(value.CaptionName)}: \r\n {new Intl.NumberFormat().format(item)}\r\n \r\n )\r\n })\r\n }\r\n {\r\n Number(data.IsSalaryAdjustment) === 1 && getCaption && getCaption.map((field, indx) => {\r\n if (field.Disabled) return null;\r\n const no = field && field.Code ? field.Code.slice(-2) : \"\";\r\n const dataField = \"SalCoefficient\" + no;\r\n return (\r\n \r\n {field.CaptionName || \"\"}: \r\n {Number(data[dataField] || 0).toLocaleString()}\r\n \r\n );\r\n })}\r\n {!!data?.IsDutyAdjustment ? \r\n {Config.lang(\"Chuc_danh\")}: \r\n {Config.helpers.getObjectValue(data, \"DutyName\", \"\")}\r\n : \"\"}\r\n \r\n \r\n \r\n
\r\n \r\n )\r\n };\r\n\r\n render() {\r\n const {iPermission, dataForm, VoucherID, loading} = this.state;\r\n if (!iPermission) return null;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n}\r\n\r\nexport default compose(connect(state=>({\r\n getCaption: state.W09F2150.getCaption,\r\n }),\r\n (dispatch) => ({\r\n w09F2081Actions: bindActionCreators(W09F2081Actions, dispatch),\r\n w09F2150Actions: bindActionCreators(W09F2150Actions, dispatch),\r\n generalActions: bindActionCreators(generalActions, dispatch),\r\n approvalActions: bindActionCreators(ApprovalActions, dispatch),\r\n })\r\n))(W09F2081);\r\n"],"sourceRoot":""}