????

Your IP : 216.73.216.152


Current Path : C:/inetpub/vhost/xaydung.gdtsolutions.vn/build/static/js/
Upload File :
Current File : C:/inetpub/vhost/xaydung.gdtsolutions.vn/build/static/js/6476.2482f6fc.chunk.js.map

{"version":3,"file":"static/js/6476.2482f6fc.chunk.js","mappings":"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","sources":["../.yarn/__virtual__/@material-ui-core-virtual-ac9c9397c3/6/root/.yarn/berry/cache/@material-ui-core-npm-4.11.4-d024c4b650-10c0.zip/node_modules/@material-ui/core/esm/Slide/Slide.js","views/action/defaultEnums.js","webpack://@qlxd/frontend/./src/views/quan-ly-luong/BangLuong/BangLuongDoiThue/css.scss?8661","components/Empty/EmptyNoData.js","../.yarn/__virtual__/@material-ui-core-virtual-ac9c9397c3/6/root/.yarn/berry/cache/@material-ui-core-npm-4.11.4-d024c4b650-10c0.zip/node_modules/@material-ui/core/esm/Icon/Icon.js","components/select/SelectYear.js","components/dialog/FullScreenDialog.js","../.yarn/__virtual__/reactstrap-virtual-4c869ece7a/6/root/.yarn/berry/cache/reactstrap-npm-8.10.1-e3a658744a-10c0.zip/node_modules/reactstrap/es/Card.js","../.yarn/__virtual__/@material-ui-core-virtual-ac9c9397c3/6/root/.yarn/berry/cache/@material-ui-core-npm-4.11.4-d024c4b650-10c0.zip/node_modules/@material-ui/core/esm/AppBar/AppBar.js","views/quan-ly-luong/BangLuong/Component/FormTaoBangLuongThueNgoai.js","webpack://@qlxd/frontend/./src/views/bao-cao/kinh-phi-cong-trinh/Component/css.scss?3539","components/select/SelectSingle.js","../.yarn/__virtual__/@material-ui-core-virtual-ac9c9397c3/6/root/.yarn/berry/cache/@material-ui-core-npm-4.11.4-d024c4b650-10c0.zip/node_modules/@material-ui/core/esm/Toolbar/Toolbar.js","../.yarn/__virtual__/@material-ui-core-virtual-ac9c9397c3/6/root/.yarn/berry/cache/@material-ui-core-npm-4.11.4-d024c4b650-10c0.zip/node_modules/@material-ui/core/esm/DialogActions/DialogActions.js","../.yarn/__virtual__/@material-ui-core-virtual-ac9c9397c3/6/root/.yarn/berry/cache/@material-ui-core-npm-4.11.4-d024c4b650-10c0.zip/node_modules/@material-ui/core/esm/styles/createStyles.js","../.yarn/__virtual__/reactstrap-virtual-4c869ece7a/6/root/.yarn/berry/cache/reactstrap-npm-8.10.1-e3a658744a-10c0.zip/node_modules/reactstrap/es/Table.js","../.yarn/__virtual__/@material-ui-core-virtual-ac9c9397c3/6/root/.yarn/berry/cache/@material-ui-core-npm-4.11.4-d024c4b650-10c0.zip/node_modules/@material-ui/core/esm/DialogTitle/DialogTitle.js","components/spinners/SpinnerSmall.js","components/select/Select.js","components/dialog/DialogCustomize.js","components/dialog/BodyDialog.js","components/dialog/Dialog.js","../.yarn/__virtual__/@material-ui-core-virtual-ac9c9397c3/6/root/.yarn/berry/cache/@material-ui-core-npm-4.11.4-d024c4b650-10c0.zip/node_modules/@material-ui/core/esm/utils/ownerDocument.js","../.yarn/__virtual__/@material-ui-core-virtual-ac9c9397c3/6/root/.yarn/berry/cache/@material-ui-core-npm-4.11.4-d024c4b650-10c0.zip/node_modules/@material-ui/core/esm/utils/createChainedFunction.js","components/dialog/HeaderDialog.js","views/bao-cao/kinh-phi-cong-trinh/Component/TableBaoCao/index.js","views/quan-ly-luong/BangLuong/BangLuongDoiThue/index.js","../.yarn/__virtual__/@material-ui-styles-virtual-df1ea4bf06/6/root/.yarn/berry/cache/@material-ui-styles-npm-4.11.5-1dede414b2-10c0.zip/node_modules/@material-ui/styles/esm/createStyles/createStyles.js"],"sourcesContent":["import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport * as ReactDOM from 'react-dom';\nimport debounce from '../utils/debounce';\nimport { Transition } from 'react-transition-group';\nimport { elementAcceptingRef } from '@material-ui/utils';\nimport useForkRef from '../utils/useForkRef';\nimport useTheme from '../styles/useTheme';\nimport { duration } from '../styles/transitions';\nimport { reflow, getTransitionProps } from '../transitions/utils'; // Translate the node so he can't be seen on the screen.\n// Later, we gonna translate back the node to his original location\n// with `none`.`\n\nfunction getTranslateValue(direction, node) {\n  var rect = node.getBoundingClientRect();\n  var transform;\n\n  if (node.fakeTransform) {\n    transform = node.fakeTransform;\n  } else {\n    var computedStyle = window.getComputedStyle(node);\n    transform = computedStyle.getPropertyValue('-webkit-transform') || computedStyle.getPropertyValue('transform');\n  }\n\n  var offsetX = 0;\n  var offsetY = 0;\n\n  if (transform && transform !== 'none' && typeof transform === 'string') {\n    var transformValues = transform.split('(')[1].split(')')[0].split(',');\n    offsetX = parseInt(transformValues[4], 10);\n    offsetY = parseInt(transformValues[5], 10);\n  }\n\n  if (direction === 'left') {\n    return \"translateX(\".concat(window.innerWidth, \"px) translateX(\").concat(offsetX - rect.left, \"px)\");\n  }\n\n  if (direction === 'right') {\n    return \"translateX(-\".concat(rect.left + rect.width - offsetX, \"px)\");\n  }\n\n  if (direction === 'up') {\n    return \"translateY(\".concat(window.innerHeight, \"px) translateY(\").concat(offsetY - rect.top, \"px)\");\n  } // direction === 'down'\n\n\n  return \"translateY(-\".concat(rect.top + rect.height - offsetY, \"px)\");\n}\n\nexport function setTranslateValue(direction, node) {\n  var transform = getTranslateValue(direction, node);\n\n  if (transform) {\n    node.style.webkitTransform = transform;\n    node.style.transform = transform;\n  }\n}\nvar defaultTimeout = {\n  enter: duration.enteringScreen,\n  exit: duration.leavingScreen\n};\n/**\n * The Slide transition is used by the [Drawer](/components/drawers/) component.\n * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.\n */\n\nvar Slide = /*#__PURE__*/React.forwardRef(function Slide(props, ref) {\n  var children = props.children,\n      _props$direction = props.direction,\n      direction = _props$direction === void 0 ? 'down' : _props$direction,\n      inProp = props.in,\n      onEnter = props.onEnter,\n      onEntered = props.onEntered,\n      onEntering = props.onEntering,\n      onExit = props.onExit,\n      onExited = props.onExited,\n      onExiting = props.onExiting,\n      style = props.style,\n      _props$timeout = props.timeout,\n      timeout = _props$timeout === void 0 ? defaultTimeout : _props$timeout,\n      _props$TransitionComp = props.TransitionComponent,\n      TransitionComponent = _props$TransitionComp === void 0 ? Transition : _props$TransitionComp,\n      other = _objectWithoutProperties(props, [\"children\", \"direction\", \"in\", \"onEnter\", \"onEntered\", \"onEntering\", \"onExit\", \"onExited\", \"onExiting\", \"style\", \"timeout\", \"TransitionComponent\"]);\n\n  var theme = useTheme();\n  var childrenRef = React.useRef(null);\n  /**\n   * used in cloneElement(children, { ref: handleRef })\n   */\n\n  var handleOwnRef = React.useCallback(function (instance) {\n    // #StrictMode ready\n    childrenRef.current = ReactDOM.findDOMNode(instance);\n  }, []);\n  var handleRefIntermediary = useForkRef(children.ref, handleOwnRef);\n  var handleRef = useForkRef(handleRefIntermediary, ref);\n\n  var normalizedTransitionCallback = function normalizedTransitionCallback(callback) {\n    return function (isAppearing) {\n      if (callback) {\n        // onEnterXxx and onExitXxx callbacks have a different arguments.length value.\n        if (isAppearing === undefined) {\n          callback(childrenRef.current);\n        } else {\n          callback(childrenRef.current, isAppearing);\n        }\n      }\n    };\n  };\n\n  var handleEnter = normalizedTransitionCallback(function (node, isAppearing) {\n    setTranslateValue(direction, node);\n    reflow(node);\n\n    if (onEnter) {\n      onEnter(node, isAppearing);\n    }\n  });\n  var handleEntering = normalizedTransitionCallback(function (node, isAppearing) {\n    var transitionProps = getTransitionProps({\n      timeout: timeout,\n      style: style\n    }, {\n      mode: 'enter'\n    });\n    node.style.webkitTransition = theme.transitions.create('-webkit-transform', _extends({}, transitionProps, {\n      easing: theme.transitions.easing.easeOut\n    }));\n    node.style.transition = theme.transitions.create('transform', _extends({}, transitionProps, {\n      easing: theme.transitions.easing.easeOut\n    }));\n    node.style.webkitTransform = 'none';\n    node.style.transform = 'none';\n\n    if (onEntering) {\n      onEntering(node, isAppearing);\n    }\n  });\n  var handleEntered = normalizedTransitionCallback(onEntered);\n  var handleExiting = normalizedTransitionCallback(onExiting);\n  var handleExit = normalizedTransitionCallback(function (node) {\n    var transitionProps = getTransitionProps({\n      timeout: timeout,\n      style: style\n    }, {\n      mode: 'exit'\n    });\n    node.style.webkitTransition = theme.transitions.create('-webkit-transform', _extends({}, transitionProps, {\n      easing: theme.transitions.easing.sharp\n    }));\n    node.style.transition = theme.transitions.create('transform', _extends({}, transitionProps, {\n      easing: theme.transitions.easing.sharp\n    }));\n    setTranslateValue(direction, node);\n\n    if (onExit) {\n      onExit(node);\n    }\n  });\n  var handleExited = normalizedTransitionCallback(function (node) {\n    // No need for transitions when the component is hidden\n    node.style.webkitTransition = '';\n    node.style.transition = '';\n\n    if (onExited) {\n      onExited(node);\n    }\n  });\n  var updatePosition = React.useCallback(function () {\n    if (childrenRef.current) {\n      setTranslateValue(direction, childrenRef.current);\n    }\n  }, [direction]);\n  React.useEffect(function () {\n    // Skip configuration where the position is screen size invariant.\n    if (inProp || direction === 'down' || direction === 'right') {\n      return undefined;\n    }\n\n    var handleResize = debounce(function () {\n      if (childrenRef.current) {\n        setTranslateValue(direction, childrenRef.current);\n      }\n    });\n    window.addEventListener('resize', handleResize);\n    return function () {\n      handleResize.clear();\n      window.removeEventListener('resize', handleResize);\n    };\n  }, [direction, inProp]);\n  React.useEffect(function () {\n    if (!inProp) {\n      // We need to update the position of the drawer when the direction change and\n      // when it's hidden.\n      updatePosition();\n    }\n  }, [inProp, updatePosition]);\n  return /*#__PURE__*/React.createElement(TransitionComponent, _extends({\n    nodeRef: childrenRef,\n    onEnter: handleEnter,\n    onEntered: handleEntered,\n    onEntering: handleEntering,\n    onExit: handleExit,\n    onExited: handleExited,\n    onExiting: handleExiting,\n    appear: true,\n    in: inProp,\n    timeout: timeout\n  }, other), function (state, childProps) {\n    return /*#__PURE__*/React.cloneElement(children, _extends({\n      ref: handleRef,\n      style: _extends({\n        visibility: state === 'exited' && !inProp ? 'hidden' : undefined\n      }, style, children.props.style)\n    }, childProps));\n  });\n});\nprocess.env.NODE_ENV !== \"production\" ? Slide.propTypes = {\n  // ----------------------------- Warning --------------------------------\n  // | These PropTypes are generated from the TypeScript type definitions |\n  // |     To update them edit the d.ts file and run \"yarn proptypes\"     |\n  // ----------------------------------------------------------------------\n\n  /**\n   * A single child content element.\n   */\n  children: elementAcceptingRef,\n\n  /**\n   * Direction the child node will enter from.\n   */\n  direction: PropTypes.oneOf(['down', 'left', 'right', 'up']),\n\n  /**\n   * If `true`, show the component; triggers the enter or exit animation.\n   */\n  in: PropTypes.bool,\n\n  /**\n   * @ignore\n   */\n  onEnter: PropTypes.func,\n\n  /**\n   * @ignore\n   */\n  onEntered: PropTypes.func,\n\n  /**\n   * @ignore\n   */\n  onEntering: PropTypes.func,\n\n  /**\n   * @ignore\n   */\n  onExit: PropTypes.func,\n\n  /**\n   * @ignore\n   */\n  onExited: PropTypes.func,\n\n  /**\n   * @ignore\n   */\n  onExiting: PropTypes.func,\n\n  /**\n   * @ignore\n   */\n  style: PropTypes.object,\n\n  /**\n   * The duration for the transition, in milliseconds.\n   * You may specify a single timeout for all transitions, or individually with an object.\n   */\n  timeout: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({\n    appear: PropTypes.number,\n    enter: PropTypes.number,\n    exit: PropTypes.number\n  })])\n} : void 0;\nexport default Slide;","// Enums\nconst Enums_ThanhToan = [\n    {\n        value: 'all',\n        label: 'Tất cả'\n    },\n    {\n        value: '1',\n        label: 'Đã thanh toán'\n    },\n    {\n        value: '0',\n        label: 'Chưa thanh toán'\n    },\n\n]\nconst Enums_GioiTinh = [\n    {\n        value: 'Nam',\n        label: 'Nam'\n    },\n    {\n        value: 'Nu',\n        label: 'Nữ'\n    },\n    {\n        value: 'Khong',\n        label: 'Chưa có thông tin'\n    }\n]\nconst Enums_DoiTuong = [ // không được đụng vào nha ^^\n    { value: 'CuaHang', label: 'Cửa hàng' },\n    { value: 'ThueNgoai', label: 'Thuê ngoài' },\n    { value: 'KhachHang', label: 'Khách hàng' },\n    { value: 'NhanVien', label: 'Nhân viên' },\n    { value: 'CongTy', label: 'Công ty' },\n    { value: 'PhongBan', label: 'Phong ban' },\n]\n\nconst _Enums_DoiTuong = {\n    CuaHang: 'CuaHang',\n    ThueNgoai: 'ThueNgoai',\n    KhachHang: 'KhachHang',\n    NhanVien: 'NhanVien',\n    CongTy: 'CongTy',\n    PhongBang: 'PhongBan'\n}\n\nconst _Enums_DoiTuongNumber = {\n    CuaHang: 0,\n    ThueNgoai: 1,\n    KhachHang: 2,\n    NhanVien: 3,\n    CongTy: 4,\n    PhongBang: 5\n}\n\nconst Enums_PhuongThucChamCong = {\n    TheoThang: 'TheoThang',\n    TheoDuAn: 'TheoDuAn',\n}\n\nconst Enums_PhuongThucChamCongNumber = {\n    TheoThang: 0,\n    TheoDuAn: 1\n}\n\nconst Enums_CongNo = {\n    NoCu: 'NoCu', // nợ cũ,\n    TamUng: 'TamUng', // tạm ứng\n    NoDoiTac: 'NoDoiTac', // cty nợ đối tác\n}\n\nconst Enums_LoaiNoNumber = {\n    NoCu: 'NoCu',\n    TamUng: 'TamUng',\n    NoDoiTac: 'NoDoiTac',\n    DuAnNo: 'DuAnNo',\n    TraNo: 'TraNo'\n}\n\nconst Enums_LoaiNoLabel = {\n    NoCu: 'Nợ cũ',\n    TamUng: 'Tạm ứng',\n    NoDoiTac: 'Nợ đối tác',\n    DuAnNo: 'Dự án'\n}\n\n\nconst Enum_Flag = {\n    view: 'view',\n    add: 'add',\n    edit: 'edit',\n    delete: 'delete',\n}\n\nconst Enum_NhomKhoanChis = {\n    LuongThoThueNgoai: '6939DC70-E008-4286-AC13-00BD4DF40BBC',\n    LuongThoCTy: 'B59A4E45-B963-478F-8DD5-663607A32DAA',\n    ChiPhiCuaHang: 'A6391105-7862-491B-844E-0D8874AA8B7B',\n}\n\nexport {\n    Enums_GioiTinh,\n    Enums_DoiTuong,\n    _Enums_DoiTuong,\n    Enums_PhuongThucChamCong,\n    Enums_CongNo,\n    Enums_PhuongThucChamCongNumber,\n    _Enums_DoiTuongNumber,\n    Enums_LoaiNoNumber,\n    Enums_LoaiNoLabel,\n    Enum_Flag,\n    Enums_ThanhToan,\n    Enum_NhomKhoanChis,\n}","// extracted by mini-css-extract-plugin\nexport default {};","import React, { Component } from 'react'\nimport styled from 'styled-components'\n\nexport default class EmptyNoData extends Component {\n\n    render() {\n        const { size, text } = this.props\n        let children = <div>\n            <span className=\"text-center\"><i className=\"far fa-folder-open\"></i></span>\n            <span>{text || 'Không có dữ liệu'}</span>\n        </div>\n        switch (size) {\n            case 'sm':\n                return <EmptyContainerSmall>\n                    {children}\n                </EmptyContainerSmall>\n            case 'lg':\n                return <EmptyContainerLarge>\n                    {children}\n                </EmptyContainerLarge>\n            default:\n                return <EmptyContainerLarge>\n                    {children}\n                </EmptyContainerLarge>\n        }\n\n    }\n}\n\nconst EmptyContainerSmall = styled.div`\n    height: 110px;\n    display: flex;\n    justify-content: center;\n    align-items: center;\n    width: 100%;\n\n    span{\n        line-height: 1.2;\n        display: block;\n        opacity: 0.5;\n        &:first-child{\n            font-size:2.5rem;\n        }\n        &:last-child{\n            font-size:1rem;\n        }\n    }\n`\nconst EmptyContainerLarge = styled.div`\nheight: 400px;\n    display: flex;\n    justify-content: center;\n    align-items: center;\n    width: 100%;\n    span{\n        line-height: 1.2;\n        display: block;\n        opacity: 0.5;\n        &:first-child{\n            font-size:3.5rem;\n        }\n        &:last-child{\n            font-size:1.5rem;\n        }\n    }\n`","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport withStyles from '../styles/withStyles';\nimport capitalize from '../utils/capitalize';\nexport var styles = function styles(theme) {\n  return {\n    /* Styles applied to the root element. */\n    root: {\n      userSelect: 'none',\n      fontSize: theme.typography.pxToRem(24),\n      width: '1em',\n      height: '1em',\n      // Chrome fix for https://bugs.chromium.org/p/chromium/issues/detail?id=820541\n      // To remove at some point.\n      overflow: 'hidden',\n      flexShrink: 0\n    },\n\n    /* Styles applied to the root element if `color=\"primary\"`. */\n    colorPrimary: {\n      color: theme.palette.primary.main\n    },\n\n    /* Styles applied to the root element if `color=\"secondary\"`. */\n    colorSecondary: {\n      color: theme.palette.secondary.main\n    },\n\n    /* Styles applied to the root element if `color=\"action\"`. */\n    colorAction: {\n      color: theme.palette.action.active\n    },\n\n    /* Styles applied to the root element if `color=\"error\"`. */\n    colorError: {\n      color: theme.palette.error.main\n    },\n\n    /* Styles applied to the root element if `color=\"disabled\"`. */\n    colorDisabled: {\n      color: theme.palette.action.disabled\n    },\n\n    /* Styles applied to the root element if `fontSize=\"inherit\"`. */\n    fontSizeInherit: {\n      fontSize: 'inherit'\n    },\n\n    /* Styles applied to the root element if `fontSize=\"small\"`. */\n    fontSizeSmall: {\n      fontSize: theme.typography.pxToRem(20)\n    },\n\n    /* Styles applied to the root element if `fontSize=\"large\"`. */\n    fontSizeLarge: {\n      fontSize: theme.typography.pxToRem(36)\n    }\n  };\n};\nvar Icon = /*#__PURE__*/React.forwardRef(function Icon(props, ref) {\n  var classes = props.classes,\n      className = props.className,\n      _props$color = props.color,\n      color = _props$color === void 0 ? 'inherit' : _props$color,\n      _props$component = props.component,\n      Component = _props$component === void 0 ? 'span' : _props$component,\n      _props$fontSize = props.fontSize,\n      fontSize = _props$fontSize === void 0 ? 'default' : _props$fontSize,\n      other = _objectWithoutProperties(props, [\"classes\", \"className\", \"color\", \"component\", \"fontSize\"]);\n\n  return /*#__PURE__*/React.createElement(Component, _extends({\n    className: clsx('material-icons', classes.root, className, color !== 'inherit' && classes[\"color\".concat(capitalize(color))], fontSize !== 'default' && classes[\"fontSize\".concat(capitalize(fontSize))]),\n    \"aria-hidden\": true,\n    ref: ref\n  }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? Icon.propTypes = {\n  /**\n   * The name of the icon font ligature.\n   */\n  children: PropTypes.node,\n\n  /**\n   * Override or extend the styles applied to the component.\n   * See [CSS API](#css) below for more details.\n   */\n  classes: PropTypes.object.isRequired,\n\n  /**\n   * @ignore\n   */\n  className: PropTypes.string,\n\n  /**\n   * The color of the component. It supports those theme colors that make sense for this component.\n   */\n  color: PropTypes.oneOf(['inherit', 'primary', 'secondary', 'action', 'error', 'disabled']),\n\n  /**\n   * The component used for the root node.\n   * Either a string to use a HTML element or a component.\n   */\n  component: PropTypes\n  /* @typescript-to-proptypes-ignore */\n  .elementType,\n\n  /**\n   * The fontSize applied to the icon. Defaults to 24px, but can be configure to inherit font size.\n   */\n  fontSize: PropTypes.oneOf(['inherit', 'default', 'small', 'large'])\n} : void 0;\nIcon.muiName = 'Icon';\nexport default withStyles(styles, {\n  name: 'MuiIcon'\n})(Icon);","import React, { Component } from 'react';\nimport SelectSingle from './SelectSingle';\n\n\nconst getData = () => {\n  const year = (new Date()).getFullYear();\n  let option = [];\n  for (var i = year - 3; i <= year + 3; i++) {\n      option.push({ value: i, label: `Năm ${i}` })\n  }\n  return option;\n}\n\nclass SelectYear extends Component {\n    render() {\n        const { value, onChange } = this.props;\n\n        const data = getData();\n        const val = value ? value : '';\n        // var select = data.filter(item => item.value === val)\n        // console.log(select[0])\n        return (\n            <SelectSingle\n                value={val}\n                onChange={onChange}\n                options={data}\n                valueRef=\"value\"\n                labelRef=\"label\"\n                placeholder=\"Chọn năm\"\n            />\n        );\n    }\n};\n\nSelectYear.propTypes = {\n};\n\nSelectYear.defaultProps = {\n    placeholder: 'Chọn...'\n};\n\nexport default SelectYear;\n","import React from 'react';\nimport Dialog from './Dialog';\nimport HeaderDialog from './HeaderDialog';\nimport BodyDialog from './BodyDialog';\n\nexport default function FullScreenDialog(props) {\n    const { renderCustom, renderButton, children, title, onClose, open, style, className } = props;\n    return (\n        <Dialog open={open} onClose={onClose} style={style} className={className}>\n            <HeaderDialog renderCustom={renderCustom} renderButton={renderButton} title={title} onClose={onClose} />\n            <BodyDialog>{children}</BodyDialog>\n        </Dialog>\n    );\n}\n","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nvar _excluded = [\"className\", \"cssModule\", \"color\", \"body\", \"inverse\", \"outline\", \"tag\", \"innerRef\"];\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { mapToCssModules, tagPropType } from './utils';\nvar propTypes = {\n  tag: tagPropType,\n  inverse: PropTypes.bool,\n  color: PropTypes.string,\n  body: PropTypes.bool,\n  outline: PropTypes.bool,\n  className: PropTypes.string,\n  cssModule: PropTypes.object,\n  innerRef: PropTypes.oneOfType([PropTypes.object, PropTypes.string, PropTypes.func])\n};\nvar defaultProps = {\n  tag: 'div'\n};\n\nvar Card = function Card(props) {\n  var className = props.className,\n      cssModule = props.cssModule,\n      color = props.color,\n      body = props.body,\n      inverse = props.inverse,\n      outline = props.outline,\n      Tag = props.tag,\n      innerRef = props.innerRef,\n      attributes = _objectWithoutPropertiesLoose(props, _excluded);\n\n  var classes = mapToCssModules(classNames(className, 'card', inverse ? 'text-white' : false, body ? 'card-body' : false, color ? (outline ? 'border' : 'bg') + \"-\" + color : false), cssModule);\n  return /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {\n    className: classes,\n    ref: innerRef\n  }));\n};\n\nCard.propTypes = propTypes;\nCard.defaultProps = defaultProps;\nexport default Card;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport withStyles from '../styles/withStyles';\nimport capitalize from '../utils/capitalize';\nimport Paper from '../Paper';\nexport var styles = function styles(theme) {\n  var backgroundColorDefault = theme.palette.type === 'light' ? theme.palette.grey[100] : theme.palette.grey[900];\n  return {\n    /* Styles applied to the root element. */\n    root: {\n      display: 'flex',\n      flexDirection: 'column',\n      width: '100%',\n      boxSizing: 'border-box',\n      // Prevent padding issue with the Modal and fixed positioned AppBar.\n      zIndex: theme.zIndex.appBar,\n      flexShrink: 0\n    },\n\n    /* Styles applied to the root element if `position=\"fixed\"`. */\n    positionFixed: {\n      position: 'fixed',\n      top: 0,\n      left: 'auto',\n      right: 0,\n      '@media print': {\n        // Prevent the app bar to be visible on each printed page.\n        position: 'absolute'\n      }\n    },\n\n    /* Styles applied to the root element if `position=\"absolute\"`. */\n    positionAbsolute: {\n      position: 'absolute',\n      top: 0,\n      left: 'auto',\n      right: 0\n    },\n\n    /* Styles applied to the root element if `position=\"sticky\"`. */\n    positionSticky: {\n      // ⚠️ sticky is not supported by IE 11.\n      position: 'sticky',\n      top: 0,\n      left: 'auto',\n      right: 0\n    },\n\n    /* Styles applied to the root element if `position=\"static\"`. */\n    positionStatic: {\n      position: 'static'\n    },\n\n    /* Styles applied to the root element if `position=\"relative\"`. */\n    positionRelative: {\n      position: 'relative'\n    },\n\n    /* Styles applied to the root element if `color=\"default\"`. */\n    colorDefault: {\n      backgroundColor: backgroundColorDefault,\n      color: theme.palette.getContrastText(backgroundColorDefault)\n    },\n\n    /* Styles applied to the root element if `color=\"primary\"`. */\n    colorPrimary: {\n      backgroundColor: theme.palette.primary.main,\n      color: theme.palette.primary.contrastText\n    },\n\n    /* Styles applied to the root element if `color=\"secondary\"`. */\n    colorSecondary: {\n      backgroundColor: theme.palette.secondary.main,\n      color: theme.palette.secondary.contrastText\n    },\n\n    /* Styles applied to the root element if `color=\"inherit\"`. */\n    colorInherit: {\n      color: 'inherit'\n    },\n\n    /* Styles applied to the root element if `color=\"transparent\"`. */\n    colorTransparent: {\n      backgroundColor: 'transparent',\n      color: 'inherit'\n    }\n  };\n};\nvar AppBar = /*#__PURE__*/React.forwardRef(function AppBar(props, ref) {\n  var classes = props.classes,\n      className = props.className,\n      _props$color = props.color,\n      color = _props$color === void 0 ? 'primary' : _props$color,\n      _props$position = props.position,\n      position = _props$position === void 0 ? 'fixed' : _props$position,\n      other = _objectWithoutProperties(props, [\"classes\", \"className\", \"color\", \"position\"]);\n\n  return /*#__PURE__*/React.createElement(Paper, _extends({\n    square: true,\n    component: \"header\",\n    elevation: 4,\n    className: clsx(classes.root, classes[\"position\".concat(capitalize(position))], classes[\"color\".concat(capitalize(color))], className, position === 'fixed' && 'mui-fixed'),\n    ref: ref\n  }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? AppBar.propTypes = {\n  // ----------------------------- Warning --------------------------------\n  // | These PropTypes are generated from the TypeScript type definitions |\n  // |     To update them edit the d.ts file and run \"yarn proptypes\"     |\n  // ----------------------------------------------------------------------\n\n  /**\n   * The content of the component.\n   */\n  children: PropTypes.node,\n\n  /**\n   * Override or extend the styles applied to the component.\n   * See [CSS API](#css) below for more details.\n   */\n  classes: PropTypes.object,\n\n  /**\n   * @ignore\n   */\n  className: PropTypes.string,\n\n  /**\n   * The color of the component. It supports those theme colors that make sense for this component.\n   */\n  color: PropTypes.oneOf(['default', 'inherit', 'primary', 'secondary', 'transparent']),\n\n  /**\n   * The positioning type. The behavior of the different options is described\n   * [in the MDN web docs](https://developer.mozilla.org/en-US/docs/Learn/CSS/CSS_layout/Positioning).\n   * Note: `sticky` is not universally supported and will fall back to `static` when unavailable.\n   */\n  position: PropTypes.oneOf(['absolute', 'fixed', 'relative', 'static', 'sticky'])\n} : void 0;\nexport default withStyles(styles, {\n  name: 'MuiAppBar'\n})(AppBar);","import produce from 'immer';\nimport React, { useCallback, useEffect, useState } from 'react';\nimport { Input, Label, Button } from 'reactstrap';\nimport { TOKEN_CLIENT_INFO } from '../../../../actions/constants';\nimport { formatCurrency } from '../../../../actions/util';\nimport { CHECK_CONFIRM, CHECK_ERROR, CHECK_SUCCESS, CHECK_WARNING } from '../../../../components/alert/Alert';\nimport { ButtonIcon } from '../../../../components/base/Button';\nimport EmptyNoData from '../../../../components/Empty/EmptyNoData';\nimport NumberFormat from '../../../../components/numberformat/NumberFormat';\nimport { BangLuongEndpoint, DuAnDoiThueNgoaiEndpoint } from '../../../../service/GDTCores';\nimport CongNoEndpoint from '../../../../service/GDTCores/CongNoEndpoint';\nimport { _Enums_DoiTuong, _Enums_DoiTuongNumber } from '../../../action/defaultEnums';\n\nconst userNameLogin = TOKEN_CLIENT_INFO.username;\n\nfunction FormTaoBangLuongThueNgoai({ open, thang, nam, onCloseModal }) {\n\n  const [lstDoiThueNgoai, setLstDoiThueNgoai] = useState([]);\n  const [isDisabled, setIsDisable] = useState(false);\n  // const [dataKhoanChis, setDataKhoanChis] = useState([])\n  const [lstCongNos, setLstCongNos] = useState([]);\n  const [lstTruTamUng, setLstTruTamUng] = useState([]);\n  const [lstTruTamUngOld, setLstTruTamUngOld] = useState([]);\n  const [checkColumn, setCheckColumn] = useState({});\n  const [isTruTamUng, setIsTruTamUng] = useState(false);\n  const [reqTruTamUng, setReqTruTamUng] = useState([]);\n\n  const loadLstCongNo = (req) => {\n    CongNoEndpoint.PostAuthen(`/CongNoDuAnDoiThue`, req).then(({ ResultObj }) => { setLstCongNos(ResultObj) });\n  }\n\n\n  const taoBangLuong = useCallback((datas, dois) => {\n    const lstReq = [];\n    let isCheckSoTien = true;\n    for (let item of datas) {\n      const ngayCong = item.ChamCongs.find(f => f.DuAnId === item.DuAnId)\n      const req = {\n        Thang: thang,\n        Nam: nam,\n        NgayCong: ngayCong ? ngayCong.NgayCong : 0,\n        LuongTheoNgayCong: item.LuongTheoNgayCong,\n        TongLuong: (ngayCong ? ngayCong.NgayCong : 0) * (item.LuongTheoNgayCong ? item.LuongTheoNgayCong : 0),\n        ThucNhan: (ngayCong ? ngayCong.NgayCong : 0) * (item.LuongTheoNgayCong ? item.LuongTheoNgayCong : 0),\n        OrganId: item.OrganId,\n        DuAnId: item.DuAnId,\n        LuongBaoHiem: 0,\n        ChamCongId: ngayCong.Id\n      }\n      if (req.TongLuong > 5000000000) isCheckSoTien = false;\n      lstReq.push(req);\n    }\n    const handleCreate = () => {\n      BangLuongEndpoint.postExtension('/TaoBangLuongThueNgoai', lstReq).then(() => {\n        taoKhoanChi(dois);\n      })\n    }\n    if (!isCheckSoTien) {\n      CHECK_CONFIRM(`Tồn tại có tiền lớn hơn 5 tỷ. Bạn có chắc chắn muốn lưu?`).then(res => {\n        if (res && res.isConfirmed) {\n          handleCreate();\n        } else onCloseModal();\n      })\n    } else {\n      handleCreate();\n    }\n  }, [nam, onCloseModal, thang])\n\n\n  const loadLstDoiThueNgoai = useCallback(() => {\n    const param = {\n      filter: `$filter=Organization/DoiTuong eq '${_Enums_DoiTuong.ThueNgoai}' and Organization/Status eq true and DuAn/Status eq true and DuAn/Status eq true and DuAn/IsCompleted eq false`,\n      expand: `$expand=Organization($select=Id,DoiTuong,OrganName,LuongTheoNgayCong),DuAn($select=Id,Name)`,\n      orderby: `$orderby=DuAn/Name asc`\n    }\n    DuAnDoiThueNgoaiEndpoint.getAllParam(`?${param.expand}&${param.filter}`).then(({ value }) => {\n      const newLst = [];\n      const groupDoi = [];\n      const valueCreate = [];\n      const lstDuAnDoiThueNgoai = [];\n      const _reqTruTamUng = [];\n      for (let i = 0; i < value.length; i++) {\n        lstDuAnDoiThueNgoai.push({ DuAnId: value[i].DuAnId, OrganId: value[i].OrganId });\n        valueCreate.push({ DuAnId: value[i].DuAnId, OrganId: value[i].OrganId, ...value[i].Organization, ...value[i].DuAn });\n\n        _reqTruTamUng.push(\n          {\n            DuAnId: value[i].DuAnId,\n            OrganId: value[i].OrganId,\n            TruTamUng: 0,\n          })\n\n        const duAn = newLst.find(f => f.DuAnId === value[i].DuAnId);\n        if (newLst.length === 0 || !duAn) {\n          newLst.push({\n            DuAnId: value[i].DuAnId,\n            TenDuAn: value[i].DuAn.Name,\n            Dois: [{ ...value[i].Organization }],\n          });\n        } else {\n          if (duAn.Dois.length === 0) {\n            duAn.Dois.push({ ...value[i].Organization })\n          }\n          const idxDoi = duAn.Dois.findIndex(f => f.Id === value[i].OrganId)\n          if (idxDoi === -1) {\n            duAn.Dois.push({ ...value[i].Organization })\n          }\n        }\n\n        const doi = groupDoi.find(f => f.OrganId === value[i].OrganId)\n        if (groupDoi.length === 0 || doi === undefined) {\n          groupDoi.push({\n            OrganId: value[i].OrganId,\n            Thang: thang,\n            Nam: nam,\n            DoiTuong: _Enums_DoiTuongNumber.ThueNgoai,\n            DuAnIds: [value[i].DuAnId]\n          })\n        } else {\n          if (doi.DuAnIds.length === 0) {\n            doi.DuAnIds.push(value[i].DuAnId);\n          }\n          const idxDuAn = doi.DuAnIds.findIndex(f => f === value[i].DuAnId);\n          if (idxDuAn === -1) {\n            doi.DuAnIds.push(value[i].DuAnId);\n          }\n        }\n      }\n      // setDataKhoanChis(groupDoi);\n      setLstDoiThueNgoai(newLst);\n      setReqTruTamUng(_reqTruTamUng);\n      loadLstCongNo(lstDuAnDoiThueNgoai)\n      taoBangLuong(valueCreate, groupDoi);\n    })\n      .catch(() => { setIsDisable(true) })\n  }, [nam, taoBangLuong, thang])\n\n  // const handleExcel = () => {\n  //   exportBangLuongThueNgoai(lstDoiThueNgoai, nam, thang, lstCongNos)\n  // }\n\n  const taoKhoanChi = (dois) => {\n    const _promiseAll = [];\n    for (let item of dois) {\n      _promiseAll.push(BangLuongEndpoint.postExtension('/TaoKhoanChiLuongThueNgoai', item))\n    }\n    Promise.all(_promiseAll).then((res) => {\n      CHECK_SUCCESS('Tạo khoản chi thành công!');\n    })\n      .catch(() => CHECK_ERROR('Lỗi tạo khoản chi!'))\n  }\n\n  const xacNhanTruCongNo = () => {\n    const req = {\n      NguoiLapPhieu: userNameLogin,\n      Nam: nam,\n      Thang: thang,\n      DanhSachLuong: reqTruTamUng\n    }\n    BangLuongEndpoint.postExtension(`/TruCongNoThanhToanThueNgoai`, req).then(() => {\n      CHECK_SUCCESS('Thành công!');\n      onCloseModal();\n    })\n  }\n\n  const xacNhanThanhToanTruCongNo = () => {\n    const indexTTU = reqTruTamUng.findIndex(f => f.TruTamUng > 0);\n    if (indexTTU !== -1 && !isTruTamUng) return CHECK_WARNING('Bạn chưa chọn chức năng trừ tạm ứng!')\n    if (!isTruTamUng) return onCloseModal();\n    xacNhanTruCongNo();\n  }\n\n  const getCongNo = (duAnId, OrganId) => {\n    const congNoCu = lstCongNos.find(f => f.OrganId === OrganId && f.DuAnId === duAnId)\n    return congNoCu ? congNoCu.TienNo : '';\n  }\n\n  const getNoLaiKiSau = (duAnId, doiId) => {\n    const idxCongNoCu = lstCongNos.findIndex(f => f.OrganId === doiId && f.DuAnId === duAnId)\n    const truTamUng = lstTruTamUng.find(f => f.DuAnId === duAnId && f.OrganId === doiId);\n    if (!truTamUng) return lstCongNos[idxCongNoCu] ? lstCongNos[idxCongNoCu].TienNo : 0;\n    return lstCongNos[idxCongNoCu].TienNo - truTamUng.TienNo;\n  }\n\n  const getNgayCong = (chamCongs, duAnId) => {\n    const cong = chamCongs.find(f => f.DuAnId === duAnId);\n    if (cong) return cong.NgayCong;\n    return 0;\n  }\n\n  const getThanhTien = (doiThue, duAnId) => {\n    const cong = doiThue.ChamCongs.find(f => f.DuAnId === duAnId);\n    if (cong) return doiThue.LuongTheoNgayCong * cong.NgayCong;\n    return 0;\n  }\n\n  const setLstTienTamUng = (duAnId, doi, soTien) => {\n    const soNo = lstCongNos.find(f => f.DuAnId === duAnId && f.OrganId === doi.Id);\n    const cong = doi.ChamCongs.find(f => f.DuAnId === duAnId);\n    const thucNhan = doi.LuongTheoNgayCong * (cong ? cong.NgayCong : 0);\n    if (!soNo) {\n      setIsDisable(true);\n      return CHECK_WARNING('Đối tượng này không có tiền tạm ứng!');\n    }\n    if (thucNhan < soTien) {\n      setIsDisable(true);\n      return CHECK_WARNING('Số tiền trừ tạm ứng vượt quá số tiền thực nhận!');\n    }\n    if (soNo.TienNo < soTien) {\n      setIsDisable(true);\n      return CHECK_WARNING('Số tiền trừ tạm ứng vượt quá số tiền đã ứng!');\n    }\n    setLstTruTamUng(prev => {\n      const newArr = prev.slice();\n      const index = newArr.findIndex(f => f.OrganId === doi.Id && f.DuAnId === duAnId);\n      if (index === -1) {\n        newArr.push({ DuAnId: duAnId, OrganId: doi.Id, TienNo: soTien });\n        return newArr;\n      }\n      const _tu = produce(prev, draft => {\n        draft[index].TienNo = soTien;\n      })\n      return _tu;\n    })\n    setIsDisable(false);\n  }\n\n  const handleTruTamUng = (duAnId, doi) => {\n    setIsDisable(false);\n    const _truTamUng = () => {\n      const tu = lstTruTamUng.find(f => f.DuAnId === duAnId && f.OrganId === doi.Id);\n      return tu ? tu.TienNo : 0;\n    }\n    // const _truTamUngOld = () => {\n    //   const tu = lstTruTamUngOld.find(f => f.DuAnId === duAnId && f.OrganId === doi.Id);\n    //   return tu ? tu.TienNo : 0;\n    // }\n\n    const tienDaUng = () => {\n      const tdu = lstCongNos.find(f => f.DuAnId === duAnId && f.OrganId === doi.Id);\n      return tdu ? tdu.TienNo : 0\n    }\n    const _soTien = _truTamUng();\n    // const _soTienOld = _truTamUngOld();\n    const _tienDaUng = tienDaUng();\n    if (!_soTien) return CHECK_WARNING('Bạn chưa nhập số tiền cần trừ. Vui lòng thử lại!');\n    const cong = doi.ChamCongs.find(f => f.DuAnId === duAnId);\n    let thanhTien = 0;\n    if (cong) {\n      thanhTien = +(doi.LuongTheoNgayCong * cong.NgayCong);\n    }\n    if (_soTien > thanhTien) {\n      setIsDisable(true);\n      return CHECK_WARNING('Số tiền trừ tạm ứng không được lớn hơn số thành tiền. Vui lòng thử lại!');\n    };\n    if (_soTien < 0) {\n      setIsDisable(true);\n      return CHECK_WARNING('Số tiền trừ tạm ứng phải lớn hơn 0. Vui lòng thử lại!');\n    }\n    if (_soTien > _tienDaUng) {\n      setIsDisable(true);\n      return CHECK_WARNING('Số tiền trừ đã vượt quá số tiền đã ứng. Vui lòng thử lại!');\n    }\n\n    setLstTruTamUngOld(prev => {\n      const newArr = prev.slice();\n      const index = newArr.findIndex(f => f.DuAnId === duAnId && f.OrganId === doi.Id)\n      if (index === -1) {\n        newArr.push({ DuAnId: duAnId, OrganId: doi.Id, TienNo: _soTien })\n        return newArr;\n      }\n      const arr = produce(lstTruTamUngOld, draft => {\n        draft[index].TienNo = _soTien\n      })\n      return arr;\n    });\n\n    // const indexDoi = lstCongNos.findIndex(f => f.DuAnId === duAnId && f.OrganId === doi.Id);\n    // if (indexDoi !== -1) {\n    //   const data = produce(lstCongNos, d => {\n    //     d[indexDoi].TienNo = +(d[indexDoi].TienNo - (_soTien - _soTienOld));\n    //   })\n    //   setLstCongNos(data);\n    // }\n\n    if (_soTien === 0) return;\n    const indexBL = reqTruTamUng.findIndex(f => f.DuAnId === duAnId && f.OrganId === doi.Id);\n    const _ttu = produce(reqTruTamUng, draft => {\n      draft[indexBL].TruTamUng = +_soTien;\n    })\n    setReqTruTamUng(_ttu);\n    setIsDisable(false);\n  }\n\n  const getThucNhan = (thanhTien, duAnId, doiId) => {\n    const truTamUng = lstTruTamUngOld.find(f => f.DuAnId === duAnId && f.OrganId === doiId);\n    if (!truTamUng) return thanhTien;\n    return thanhTien - truTamUng.TienNo;\n  }\n\n  useEffect(() => {\n    if (open) {\n      loadLstDoiThueNgoai();\n    }\n  }, [open, loadLstDoiThueNgoai])\n\n  return (\n    <div className=\"index-tao-bang-luong-thue-ngoai\">\n      <div className=\"tableFixHead\">\n        <table>\n          <thead>\n            <tr style={{ background: '#006FCA' }} >\n              <th className=\"th-table\" style={{ width: '2%', textAlign: 'center' }}>STT</th>\n              <th className=\"th-table\" style={{ width: '13%' }}>Họ và tên</th>\n              <th className=\"th-table\">Nợ cũ</th>\n              <th className=\"th-table\" style={{ textAlign: 'center', width: '13%' }}>Trừ tạm ứng</th>\n              <th className=\"th-table\" style={{ textAlign: 'center' }}>Nợ lại kì sau</th>\n              <th className=\"th-table\" style={{ textAlign: 'center' }}>TNC</th>\n              <th className=\"th-table\" style={{ textAlign: 'center' }}>Đơn giá</th>\n              <th className=\"th-table\" style={{ textAlign: 'center' }}>Thành tiền</th>\n              <th className=\"th-table\" style={{ textAlign: 'center' }}>Thực nhận</th>\n            </tr>\n          </thead>\n\n          <tbody>\n            {\n              lstDoiThueNgoai.length\n                ?\n                lstDoiThueNgoai.map((duAn, i) => {\n                  return <React.Fragment key={i}>\n                    <tr>\n                      <td colSpan={11} style={{ background: '#f9ecce', fontWeight: 'bold' }}>{duAn.TenDuAn}</td>\n                    </tr>\n                    {\n                      duAn.Dois.map((doi, indexDoi) =>\n                        <tr\n                          key={`${i}.${indexDoi}`}\n                          style={{ background: `${(checkColumn.DuAnId === duAn.DuAnId && checkColumn.OrganId === doi.Id) ? '#598eff' : ''}` }}\n                          onClick={() => setCheckColumn({ DuAnId: duAn.DuAnId, OrganId: doi.Id })}\n                        >\n                          <td style={{ textAlign: 'center' }}> {i + 1} </td>\n                          <td>{doi.OrganName}</td>\n                          <td style={{ textAlign: 'center' }}>{getCongNo(duAn.DuAnId, doi.Id) > 0 ? formatCurrency(getCongNo(duAn.DuAnId, doi.Id)) : 0}</td>\n                          <td>\n                            <div style={{ display: 'flex' }}>\n                              <NumberFormat onValueChange={(e) => { setLstTienTamUng(duAn.DuAnId, doi, e.values.value) }} />\n                              <ButtonIcon\n                                style={{ height: '23px', width: '25px', marginLeft: '5px' }}\n                                color=\"danger\" icon={'minus'}\n                                onClick={() => handleTruTamUng(duAn.DuAnId, doi)} />\n                            </div>\n                          </td>\n                          <td style={{ textAlign: 'center' }}>{getNoLaiKiSau(duAn.DuAnId, doi.Id) > 0 ? formatCurrency(getNoLaiKiSau(duAn.DuAnId, doi.Id)) : 0}</td>\n                          <td style={{ textAlign: 'center' }}>{getNgayCong(doi.ChamCongs, duAn.DuAnId)}</td>\n                          <td style={{ textAlign: 'center' }}>{doi.LuongTheoNgayCong > 0 ? formatCurrency(doi.LuongTheoNgayCong) : 0}</td>\n                          <td style={{ textAlign: 'center' }}>{getThanhTien(doi, duAn.DuAnId) > 0 ? formatCurrency(getThanhTien(doi, duAn.DuAnId)) : ''}</td>\n                          <td style={{ textAlign: 'center', fontWeight: 'bold' }}>{getThucNhan(getThanhTien(doi, duAn.DuAnId), duAn.DuAnId, doi.Id) > 0 ? formatCurrency(getThucNhan(getThanhTien(doi, duAn.DuAnId), duAn.DuAnId, doi.Id)) : ''}</td>\n                        </tr>\n                      )\n                    }\n                  </React.Fragment>\n                })\n                :\n                <tr>\n                  <td colSpan={11}>\n                    <EmptyNoData size=\"sm\" />\n                  </td>\n                </tr>\n            }\n          </tbody>\n        </table>\n      </div>\n      <div className=\"footer-form\">\n        <div>\n          <Input\n            checked={isTruTamUng}\n            type=\"checkbox\"\n            name='truTamUng'\n            className=\"mr-12\"\n            onChange={({ target: { checked } }) => {\n              setIsTruTamUng(checked)\n            }} />\n          <Label for=\"truTamUng\" className=\"mr-12\">Trừ tạm ứng</Label>\n        </div>\n\n        <Button disabled={isDisabled} color=\"primary\" onClick={xacNhanThanhToanTruCongNo}>Xác nhận</Button>\n        {/* <Button onClick={handleExcel}>Xuất excel</Button> */}\n      </div>\n    </div>\n  )\n}\n\nexport default FormTaoBangLuongThueNgoai\n\n","// extracted by mini-css-extract-plugin\nexport default {};","import React, { Component } from 'react';\nimport Select from './Select';\n\nclass SelectSingle extends Component {\n  render() {\n    const {\n      name, disabled, options, placeholder, onChange, valueRef, labelRef, value,\n      onMenuScrollToBottom, isLoading, onInputChange, onMenuOpen, onMenuClose, isClearable,\n      menuPlacement\n    } = this.props;\n\n    const filterOption = (e) => e && e.map(k => {\n      k.value = k[valueRef];\n      k.label = k[labelRef];\n      return k;\n    });\n\n    const values = filterOption(options);\n\n    const select = value === null || value === '' ? null : values.filter(e => e.value === value)\n    return (\n      <Select\n        menuPlacement={menuPlacement}\n        isDisabled={disabled}\n        className=\"basic-single\"\n        name={name}\n        value={select}\n        defaultValue={select}\n        isClearable={isClearable}\n        isSearchable\n        options={values}\n        placeholder={placeholder}\n        onChange={(e, meta) => onChange(e, meta)}\n        onMenuScrollToBottom={onMenuScrollToBottom}\n        isLoading={isLoading}\n        onInputChange={onInputChange}\n        onMenuOpen={onMenuOpen}\n        onMenuClose={onMenuClose}\n      // menuScrollIntoViewElement={menuScrollIntoViewElement}\n      />\n    );\n  }\n};\n\nSelectSingle.propTypes = {\n\n};\n\nSelectSingle.defaultProps = {\n  placeholder: 'Chọn...'\n};\n\nexport default SelectSingle;\n","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport withStyles from '../styles/withStyles';\nexport var styles = function styles(theme) {\n  return {\n    /* Styles applied to the root element. */\n    root: {\n      position: 'relative',\n      display: 'flex',\n      alignItems: 'center'\n    },\n\n    /* Styles applied to the root element if `disableGutters={false}`. */\n    gutters: _defineProperty({\n      paddingLeft: theme.spacing(2),\n      paddingRight: theme.spacing(2)\n    }, theme.breakpoints.up('sm'), {\n      paddingLeft: theme.spacing(3),\n      paddingRight: theme.spacing(3)\n    }),\n\n    /* Styles applied to the root element if `variant=\"regular\"`. */\n    regular: theme.mixins.toolbar,\n\n    /* Styles applied to the root element if `variant=\"dense\"`. */\n    dense: {\n      minHeight: 48\n    }\n  };\n};\nvar Toolbar = /*#__PURE__*/React.forwardRef(function Toolbar(props, ref) {\n  var classes = props.classes,\n      className = props.className,\n      _props$component = props.component,\n      Component = _props$component === void 0 ? 'div' : _props$component,\n      _props$disableGutters = props.disableGutters,\n      disableGutters = _props$disableGutters === void 0 ? false : _props$disableGutters,\n      _props$variant = props.variant,\n      variant = _props$variant === void 0 ? 'regular' : _props$variant,\n      other = _objectWithoutProperties(props, [\"classes\", \"className\", \"component\", \"disableGutters\", \"variant\"]);\n\n  return /*#__PURE__*/React.createElement(Component, _extends({\n    className: clsx(classes.root, classes[variant], className, !disableGutters && classes.gutters),\n    ref: ref\n  }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? Toolbar.propTypes = {\n  /**\n   * Toolbar children, usually a mixture of `IconButton`, `Button` and `Typography`.\n   */\n  children: PropTypes.node,\n\n  /**\n   * Override or extend the styles applied to the component.\n   * See [CSS API](#css) below for more details.\n   */\n  classes: PropTypes.object.isRequired,\n\n  /**\n   * @ignore\n   */\n  className: PropTypes.string,\n\n  /**\n   * The component used for the root node.\n   * Either a string to use a HTML element or a component.\n   */\n  component: PropTypes\n  /* @typescript-to-proptypes-ignore */\n  .elementType,\n\n  /**\n   * If `true`, disables gutter padding.\n   */\n  disableGutters: PropTypes.bool,\n\n  /**\n   * The variant to use.\n   */\n  variant: PropTypes.oneOf(['regular', 'dense'])\n} : void 0;\nexport default withStyles(styles, {\n  name: 'MuiToolbar'\n})(Toolbar);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport withStyles from '../styles/withStyles';\nexport var styles = {\n  /* Styles applied to the root element. */\n  root: {\n    display: 'flex',\n    alignItems: 'center',\n    padding: 8,\n    justifyContent: 'flex-end',\n    flex: '0 0 auto'\n  },\n\n  /* Styles applied to the root element if `disableSpacing={false}`. */\n  spacing: {\n    '& > :not(:first-child)': {\n      marginLeft: 8\n    }\n  }\n};\nvar DialogActions = /*#__PURE__*/React.forwardRef(function DialogActions(props, ref) {\n  var _props$disableSpacing = props.disableSpacing,\n      disableSpacing = _props$disableSpacing === void 0 ? false : _props$disableSpacing,\n      classes = props.classes,\n      className = props.className,\n      other = _objectWithoutProperties(props, [\"disableSpacing\", \"classes\", \"className\"]);\n\n  return /*#__PURE__*/React.createElement(\"div\", _extends({\n    className: clsx(classes.root, className, !disableSpacing && classes.spacing),\n    ref: ref\n  }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? DialogActions.propTypes = {\n  // ----------------------------- Warning --------------------------------\n  // | These PropTypes are generated from the TypeScript type definitions |\n  // |     To update them edit the d.ts file and run \"yarn proptypes\"     |\n  // ----------------------------------------------------------------------\n\n  /**\n   * The content of the component.\n   */\n  children: PropTypes.node,\n\n  /**\n   * Override or extend the styles applied to the component.\n   * See [CSS API](#css) below for more details.\n   */\n  classes: PropTypes.object,\n\n  /**\n   * @ignore\n   */\n  className: PropTypes.string,\n\n  /**\n   * If `true`, the actions do not have additional margin.\n   */\n  disableSpacing: PropTypes.bool\n} : void 0;\nexport default withStyles(styles, {\n  name: 'MuiDialogActions'\n})(DialogActions);","import { createStyles as createStylesOriginal } from '@material-ui/styles'; // let warnOnce = false;\n// To remove in v5\n\nexport default function createStyles(styles) {\n  // warning(\n  //   warnOnce,\n  //   [\n  //     'Material-UI: createStyles from @material-ui/core/styles is deprecated.',\n  //     'Please use @material-ui/styles/createStyles',\n  //   ].join('\\n'),\n  // );\n  // warnOnce = true;\n  return createStylesOriginal(styles);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nvar _excluded = [\"className\", \"cssModule\", \"size\", \"bordered\", \"borderless\", \"striped\", \"dark\", \"hover\", \"responsive\", \"tag\", \"responsiveTag\", \"innerRef\"];\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { mapToCssModules, tagPropType } from './utils';\nvar propTypes = {\n  className: PropTypes.string,\n  cssModule: PropTypes.object,\n  size: PropTypes.string,\n  bordered: PropTypes.bool,\n  borderless: PropTypes.bool,\n  striped: PropTypes.bool,\n  dark: PropTypes.bool,\n  hover: PropTypes.bool,\n  responsive: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]),\n  tag: tagPropType,\n  responsiveTag: tagPropType,\n  innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.string, PropTypes.object])\n};\nvar defaultProps = {\n  tag: 'table',\n  responsiveTag: 'div'\n};\n\nvar Table = function Table(props) {\n  var className = props.className,\n      cssModule = props.cssModule,\n      size = props.size,\n      bordered = props.bordered,\n      borderless = props.borderless,\n      striped = props.striped,\n      dark = props.dark,\n      hover = props.hover,\n      responsive = props.responsive,\n      Tag = props.tag,\n      ResponsiveTag = props.responsiveTag,\n      innerRef = props.innerRef,\n      attributes = _objectWithoutPropertiesLoose(props, _excluded);\n\n  var classes = mapToCssModules(classNames(className, 'table', size ? 'table-' + size : false, bordered ? 'table-bordered' : false, borderless ? 'table-borderless' : false, striped ? 'table-striped' : false, dark ? 'table-dark' : false, hover ? 'table-hover' : false), cssModule);\n  var table = /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {\n    ref: innerRef,\n    className: classes\n  }));\n\n  if (responsive) {\n    var responsiveClassName = mapToCssModules(responsive === true ? 'table-responsive' : \"table-responsive-\" + responsive, cssModule);\n    return /*#__PURE__*/React.createElement(ResponsiveTag, {\n      className: responsiveClassName\n    }, table);\n  }\n\n  return table;\n};\n\nTable.propTypes = propTypes;\nTable.defaultProps = defaultProps;\nexport default Table;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport withStyles from '../styles/withStyles';\nimport Typography from '../Typography';\nexport var styles = {\n  /* Styles applied to the root element. */\n  root: {\n    margin: 0,\n    padding: '16px 24px',\n    flex: '0 0 auto'\n  }\n};\nvar DialogTitle = /*#__PURE__*/React.forwardRef(function DialogTitle(props, ref) {\n  var children = props.children,\n      classes = props.classes,\n      className = props.className,\n      _props$disableTypogra = props.disableTypography,\n      disableTypography = _props$disableTypogra === void 0 ? false : _props$disableTypogra,\n      other = _objectWithoutProperties(props, [\"children\", \"classes\", \"className\", \"disableTypography\"]);\n\n  return /*#__PURE__*/React.createElement(\"div\", _extends({\n    className: clsx(classes.root, className),\n    ref: ref\n  }, other), disableTypography ? children : /*#__PURE__*/React.createElement(Typography, {\n    component: \"h2\",\n    variant: \"h6\"\n  }, children));\n});\nprocess.env.NODE_ENV !== \"production\" ? DialogTitle.propTypes = {\n  // ----------------------------- Warning --------------------------------\n  // | These PropTypes are generated from the TypeScript type definitions |\n  // |     To update them edit the d.ts file and run \"yarn proptypes\"     |\n  // ----------------------------------------------------------------------\n\n  /**\n   * The content of the component.\n   */\n  children: PropTypes.node,\n\n  /**\n   * Override or extend the styles applied to the component.\n   * See [CSS API](#css) below for more details.\n   */\n  classes: PropTypes.object,\n\n  /**\n   * @ignore\n   */\n  className: PropTypes.string,\n\n  /**\n   * If `true`, the children won't be wrapped by a typography component.\n   * For instance, this can be useful to render an h4 instead of the default h2.\n   */\n  disableTypography: PropTypes.bool\n} : void 0;\nexport default withStyles(styles, {\n  name: 'MuiDialogTitle'\n})(DialogTitle);","import React from 'react';\n\nconst SpinnerSmall = props => (\n    <div className=\"spinner-border-sm spinner-border text-danger\" />\n)\n\nexport default SpinnerSmall;","import React, { Component, Fragment } from \"react\";\nimport ReactSelect, { components } from \"react-select\";\n// import makeAnimated from 'react-select/animated';\nimport FontAwesome from \"../icon/FontAwesome\";\nimport SpinnerSmall from \"../spinners/SpinnerSmall\";\nimport PropTypes from 'prop-types';\n\nconst colourStyles = {\n  multiValueLabel: styles => ({\n    ...styles,\n    padding: \"0px 0px 0px 6px\",\n    fontSize: 13\n  }),\n  menuPortal: base => ({ ...base, zIndex: 9999 }),\n  control: styles => ({\n    ...styles,\n    backgroundColor: \"white\",\n    minHeight: \"38px\",\n    // height: 'calc(1.5em + 0.5rem + 2px)',\n    fontSize: \"0.76563rem\",\n    lineHeight: \"1.5\",\n    cursor: \"pointer\",\n    borderRadius: \"0.2rem\"\n  }),\n  menu: styles => ({ ...styles, zIndex: 2300 }),\n  option: styles => ({ ...styles, fontSize: \"0.76563rem\", cursor: \"pointer\" }),\n  input: styles => ({ ...styles, position: \"unset\" }),\n  placeholder: styles => ({ ...styles, marginLeft: 5, marginRight: 5 }),\n  singleValue: (styles, { data }) => ({\n    ...styles,\n    marginTop: 1,\n    transform: \"inherit\",\n    top: \"unset\"\n  }),\n  container: styles => ({ ...styles, width: \"100%\" }),\n  valueContainer: styles => ({ ...styles, padding: \"2px 8px\" })\n};\n\nconst LoadingIndicator = props => {\n  return <SpinnerSmall {...props} />;\n};\n\nconst IndicatorsContainer = props => (\n  <components.IndicatorsContainer\n    {...props}\n    getStyles={() => ({ display: \"flex\", height: \"100%\" })}\n  />\n);\n\nconst ClearIndicator = props => {\n  const {\n    innerProps: { ref, ...restInnerProps }\n  } = props;\n  return (\n    <div\n      {...restInnerProps}\n      ref={ref}\n      style={{\n        color: \"rgb(204, 204, 204)\",\n        transition: \"color 150ms ease 0s\",\n        boxSizing: \"border-box\"\n      }}\n    >\n      <FontAwesome\n        fa=\"times\"\n        style={{\n          marginTop: 2,\n          padding: \"5px 5px 5px 5px\",\n          verticalAlign: \"bottom\"\n        }}\n      />\n    </div>\n  );\n};\n\nconst IndicatorSeparator = ({ innerProps }) => (\n  <span\n    {...innerProps}\n    style={{\n      alignSelf: \"stretch\",\n      width: 1,\n      backgroundColor: \"rgb(204, 204, 204)\",\n      marginTop: 2,\n      marginBottom: 2,\n      marginRight: 5,\n      marginLeft: 5\n    }}\n  />\n);\n\nconst DropdownIndicator = props => (\n  <components.DropdownIndicator\n    {...props}\n    getStyles={() => ({ color: \"hsl(0,0%,80%)\" })}\n  >\n    <FontAwesome\n      fa=\"angle-down\"\n      style={{ marginTop: 2, padding: \"5px 9px 5px 5px\" }}\n    />\n  </components.DropdownIndicator>\n);\n\nconst MenuList = props => {\n  return (\n    <components.MenuList\n      {...props}\n      getStyles={() => ({ maxHeight: 300, zIndex: 1021, overflowY: \"auto\" })}\n    >\n      {props.children}\n    </components.MenuList>\n  );\n};\n\nclass Select extends Component {\n  constructor(props) {\n    super(props);\n    this.state = { valueRequire: null };\n    this.RefReactSelect = React.createRef();\n  }\n  render() {\n    const {\n      placeholder,\n      noOptionsMessage,\n      loadingMessage,\n      required,\n      isDisabled,\n      menuPlacement,\n      ...attribute\n    } = this.props;\n    const { valueRequire } = this.state;\n    return (\n      <Fragment>\n        <ReactSelect\n          {...attribute}\n          ref={this.RefReactSelect}\n          classNamePrefix=\"select\"\n          styles={colourStyles}\n          placeholder={placeholder}\n          noOptionsMessage={noOptionsMessage}\n          loadingMessage={loadingMessage}\n          isDisabled={isDisabled}\n          components={{\n            IndicatorsContainer,\n            ClearIndicator,\n            IndicatorSeparator,\n            DropdownIndicator,\n            LoadingIndicator,\n            MenuList\n          }}\n          onChange={(option) => {\n            this.props.onChange(option)\n            this.setState({ valueRequire: option ? option.name : null })\n          }}\n          menuPortalTarget={document.body}\n          menuPosition='absolute'\n          // menuShouldScrollIntoView={true}\n          menuPlacement={menuPlacement ? menuPlacement : 'auto'}\n        />\n        <input\n          readOnly\n          name='requireInput'\n          type='text'\n          tabIndex={1}\n          autoComplete=\"off\"\n          style={{\n            opacity: 0,\n            height: 0,\n            position: \"absolute\"\n          }}\n          value={valueRequire || ''}\n          onFocus={() => {\n            this.RefReactSelect.current && this.RefReactSelect.current.focus()\n          }}\n        />\n      </Fragment>\n    );\n  }\n}\n\nSelect.propTypes = {\n  isDisabled: PropTypes.bool.isRequired\n};\n\nSelect.defaultProps = {\n  placeholder: \"Chọn...\",\n  isDisabled: false,\n  noOptionsMessage: () => \"Không có lựa chọn\",\n  loadingMessage: () => \"Đang tải\"\n};\n\nexport default Select;\n","import React from \"react\";\nimport { withStyles, makeStyles } from \"@material-ui/core/styles\";\nimport Dialog from \"@material-ui/core/Dialog\";\nimport MuiDialogTitle from \"@material-ui/core/DialogTitle\";\nimport MuiDialogContent from \"@material-ui/core/DialogContent\";\nimport MuiDialogActions from \"@material-ui/core/DialogActions\";\nimport IconButton from \"@material-ui/core/IconButton\";\nimport Icon from \"@material-ui/core/Icon\";\nimport Typography from \"@material-ui/core/Typography\";\n\nconst styles = theme => ({\n  root: {\n    margin: 0,\n    backgroundColor: \"#006fca\",\n    color: \"#FFF\",\n    padding: \"6px 12px\"\n  },\n  closeButton: {\n    position: \"absolute\",\n    right: theme.spacing(1),\n    top: theme.spacing(1),\n    color: theme.palette.grey[500],\n    padding: \"0 6px\"\n  }\n});\n\nconst DialogTitle = withStyles(styles)(props => {\n  const { children, classes, onClose } = props;\n  return (\n    <MuiDialogTitle disableTypography className={classes.root}>\n      <Typography variant=\"subtitle2\">{children}</Typography>\n      {onClose ? (\n        <IconButton\n          aria-label=\"close\"\n          className={classes.closeButton}\n          onClick={onClose}\n        >\n          <Icon>close</Icon>\n        </IconButton>\n      ) : null}\n    </MuiDialogTitle>\n  );\n});\n\nconst DialogContent = withStyles(theme => ({\n  root: {\n    padding: theme.spacing(2)\n  }\n}))(MuiDialogContent);\n\nconst DialogActions = withStyles(theme => ({\n  root: {\n    margin: 0,\n    padding: theme.spacing(1),\n    marginLeft: 0\n  }\n}))(MuiDialogActions);\n\nexport default function CustomizedDialogs(props) {\n  const { title, open, children, renderFooter, handleClose, maxWidth } = props;\n  const useStyles = makeStyles({\n    root: {\n      overflowY: \"unset\"\n    }\n  });\n  const classes = useStyles();\n  return (\n    <Dialog\n      scroll={\"body\"}\n      className={classes.root}\n      onClose={handleClose}\n      open={open}\n      fullWidth={true}\n      maxWidth={maxWidth}\n    >\n      <DialogTitle onClose={handleClose}>{title}</DialogTitle>\n      <DialogContent dividers>{children}</DialogContent>\n      {renderFooter && <DialogActions>{renderFooter} </DialogActions>}\n    </Dialog>\n  );\n}\n\nCustomizedDialogs.defaultProps = {\n  open: false\n};\n","import React from 'react';\nimport DialogContent from '@material-ui/core/DialogContent';\n\nexport default function HeaderDialog(props) {\n    return (\n        <DialogContent style={{ backgroundColor: \"#eee\", paddingTop: 20 }}>\n            {props.children}\n        </DialogContent>\n    );\n}","import React from 'react';\nimport Dialog from '@material-ui/core/Dialog';\nimport Slide from '@material-ui/core/Slide';\n\nconst Transition = React.forwardRef((props, ref) => <Slide direction=\"up\" ref={ref} {...props} />);\n\nexport default function FullScreenDialog(props) {\n    const { children, onClose, open, style, className } = props;\n    return (\n        <Dialog className={className} style={style} disableEnforceFocus fullScreen open={open} onClose={onClose}\n            TransitionComponent={Transition}>\n            {children}\n        </Dialog>\n    );\n}\n","export default function ownerDocument(node) {\n  return node && node.ownerDocument || document;\n}","/**\n * Safe chained function\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n *\n * @param {function} functions to chain\n * @returns {function|null}\n */\nexport default function createChainedFunction() {\n  for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) {\n    funcs[_key] = arguments[_key];\n  }\n\n  return funcs.reduce(function (acc, func) {\n    if (func == null) {\n      return acc;\n    }\n\n    if (process.env.NODE_ENV !== 'production') {\n      if (typeof func !== 'function') {\n        console.error('Material-UI: Invalid Argument Type, must only provide functions, undefined, or null.');\n      }\n    }\n\n    return function chainedFunction() {\n      for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n        args[_key2] = arguments[_key2];\n      }\n\n      acc.apply(this, args);\n      func.apply(this, args);\n    };\n  }, function () {});\n}","import React from 'react';\nimport { createStyles, makeStyles } from '@material-ui/core/styles';\nimport AppBar from '@material-ui/core/AppBar';\nimport Toolbar from '@material-ui/core/Toolbar';\nimport Typography from '@material-ui/core/Typography';\nimport ButtonClose from '../base/Button/ButtonClose';\n\nconst useStyles = makeStyles((theme) =>\n  createStyles({\n    appBar: {\n      position: 'relative',\n      backgroundColor: '#006fca'\n    },\n    toolbar: {\n      minHeight: 40\n    },\n    title: {\n      marginLeft: theme.spacing(2),\n      flex: 1,\n    },\n  }),\n);\n\nexport default function HeaderDialog(props) {\n  const classes = useStyles();\n  const { renderCustom, renderButton, title, onClose } = props;\n  return (\n    <AppBar className={classes.appBar}>\n      <Toolbar className={classes.toolbar} variant=\"dense\">\n        {renderCustom}\n        <Typography variant=\"h6\" className={classes.title}>{title}</Typography>\n        {renderButton}\n        <ButtonClose onClick={onClose}>Đóng</ButtonClose>\n      </Toolbar>\n    </AppBar>\n  );\n}\n","import React from 'react';\nimport { formatCurrency } from '../../../../../actions/util';\nimport EmptyNoData from '../../../../../components/Empty/EmptyNoData';\nimport '../css.scss';\n\nexport const formatTime = (thoiGian) => {\n\tconst ngay = new Date(thoiGian).getDate();\n\tconst thang = new Date(thoiGian).getMonth() + 1;\n\tconst nam = new Date(thoiGian).getFullYear();\n\tif (ngay && !thang && !nam) return `${ngay}`;\n\tif (ngay && thang && !nam) return `${ngay}/${thang}`;\n\treturn `${ngay}/${thang}/${nam}`;\n}\n\nfunction IndexTable({ dataKinhPhi }) {\n\n\treturn (\n\t\t<div className=\"index-table-kinh-phi-cong-trinh\">\n\t\t\t<div className=\"tableFixHead\">\n\t\t\t\t<table>\n\t\t\t\t\t<thead>\n\t\t\t\t\t\t<tr style={{ background: '#006FCA' }}>\n\t\t\t\t\t\t\t<th className=\"th-table\" style={{ width: '10%' }}>NGÀY THÁNG</th>\n\t\t\t\t\t\t\t<th className=\"th-table\" style={{ width: '40%' }}>NỘI DUNG CHI PHÍ</th>\n\t\t\t\t\t\t\t<th className=\"th-table\" style={{ width: '10%' }}>ĐVT</th>\n\t\t\t\t\t\t\t<th className=\"th-table\" style={{ width: '10%' }}>SỐ LƯỢNG</th>\n\t\t\t\t\t\t\t<th className=\"th-table\" style={{ width: '10%' }}>ĐƠN GIÁ</th>\n\t\t\t\t\t\t\t<th className=\"th-table\" style={{ width: '10%' }}>THÀNH TIỀN</th>\n\t\t\t\t\t\t\t<th className=\"th-table\" style={{ width: '10%' }}>GHI CHÚ</th>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</thead>\n\n\t\t\t\t\t<tbody>\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdataKinhPhi.length > 0\n\t\t\t\t\t\t\t\t? dataKinhPhi.map((data, i) =>\n\t\t\t\t\t\t\t\t\t<tr key={i}>\n\t\t\t\t\t\t\t\t\t\t<td style={{ textAlign: 'center' }}> {formatTime(data.ThoiGian)} </td>\n\t\t\t\t\t\t\t\t\t\t<td> {data.NoiDung} </td>\n\t\t\t\t\t\t\t\t\t\t<td style={{ textAlign: 'center' }}> {data.DVT} </td>\n\t\t\t\t\t\t\t\t\t\t<td style={{ textAlign: 'center' }}> {data.KhoiLuong} </td>\n\t\t\t\t\t\t\t\t\t\t<td style={{ textAlign: 'end' }}> {formatCurrency(data.DonGia)} </td>\n\t\t\t\t\t\t\t\t\t\t<td style={{ textAlign: 'end' }}> {formatCurrency(data.ThanhTien)} </td>\n\t\t\t\t\t\t\t\t\t\t<td> {data.GhiChu} </td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t: <tr>\n\t\t\t\t\t\t\t\t\t<td colSpan={7}>\n\t\t\t\t\t\t\t\t\t\t<EmptyNoData size=\"sm\"></EmptyNoData>\n\t\t\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t}\n\t\t\t\t\t</tbody>\n\t\t\t\t</table>\n\t\t\t</div>\n\t\t</div >\n\t)\n}\n\nexport default IndexTable\n\n","import React, { useCallback, useEffect, useState } from 'react';\nimport './css.scss';\nimport { Card, CardBody, Table } from 'reactstrap';\nimport Select from 'react-select';\nimport { CHECK_WARNING } from '../../../../components/alert/Alert';\nimport { ButtonAdd, ButtonIcon } from '../../../../components/base/Button';\nimport { FullScreenDialog } from '../../../../components/dialog';\nimport { BangLuongEndpoint, DotLuongsEndpoint } from '../../../../service/GDTCores';\nimport { Enum_Flag, _Enums_DoiTuong } from '../../../action/defaultEnums';\nimport FormTaoBangLuongThueNgoai from '../Component/FormTaoBangLuongThueNgoai';\nimport EmptyNoData from '../../../../components/Empty/EmptyNoData';\nimport SelectYear from '../../../../components/select/SelectYear';\nimport { formatTime } from '../../../bao-cao/kinh-phi-cong-trinh/Component/TableBaoCao';\n\nconst getPlaceholder = (label) => <div style={{ fontSize: '13px' }}>{label}</div>\n\nexport default function IndexBangLuongDoiThue(props) {\n\n  // const [thang, setThang] = useState((new Date).getMonth() + 1);\n  const [nam, setNam] = useState((new Date()).getFullYear());\n  const [lstDotLuong, setLstDotLuong] = useState([]);\n  const [dotLuong, setDotLuong] = useState(null);\n  const [lstBangLuong, setLstBangLuong] = useState([]);\n  const [flag, setFlag] = useState(null);\n  const [isOpenForm, setIsOpenForm] = useState(false);\n  const [bangLuongThangSau, setBangLuongThangSau] = useState([]);\n\n  // const selectedTime = ({ year, month }) => {\n  //   setThang(month);\n  //   setNam(year);\n  // }\n\n  const loadLstDotLuong = useCallback(() => {\n    const param = {\n      filter: `$filter=Status eq true`,\n      select: `$select=Id,Dot,TuNgay,DenNgay`\n    };\n    DotLuongsEndpoint.getAll(`?${param.filter}&${param.select}`)\n      .then(({ value }) => {\n        const newArr = [];\n        for (let item of value) {\n          newArr.push({\n            Id: item.Id,\n            Dot: `Đợt ${item.Dot}( ${formatTime(item.TuNgay)} - ${formatTime(item.DenNgay)} )`,\n            TuNgay: item.TuNgay,\n            DenNgay: item.DenNgay\n          })\n        }\n        setLstDotLuong(newArr)\n      })\n  }, [])\n\n  const loadLstBangLuongThangSau = useCallback(() => {\n    if (dotLuong?.Dot === 1) return;\n    const param = {\n      filter: `$filter=Status eq true and Nam eq ${nam} and Organization/DoiTuong eq '${_Enums_DoiTuong.ThueNgoai}'`,\n      select: `$select=Id,Thang,Nam`,\n      expand: `$expand=Organization($select=Id,DoiTuong,OrganName)`\n    }\n    BangLuongEndpoint.getAllParam(`?${param.filter}&${param.select}&${param.expand}`).then(({ value }) => {\n      setBangLuongThangSau(value)\n    });\n  }, [dotLuong, nam])\n\n  const loadLstBangLuong = useCallback(() => {\n    const param = {\n      filter: `$filter=Status eq true and Nam eq ${nam} and Organization/DoiTuong eq '${_Enums_DoiTuong.ThueNgoai}'`,\n      select: `$select=Id,Thang,Nam`,\n      expand: `$expand=Organization($select=Id,DoiTuong,OrganName)`\n    }\n    BangLuongEndpoint.getAllParam(`?${param.filter}&${param.select}&${param.expand}`).then(({ value }) => {\n      const _bangluong = [];\n      value.forEach((elm, i) => {\n        if (_bangluong.length === 0) {\n          _bangluong.push({ DoiTuong: elm.Organization.DoiTuong, Thang: elm.Thang, Nam: elm.Nam });\n        } else {\n          const find = _bangluong.find(f => f.DoiTuong === elm.Organization.DoiTuong)\n          if (!find) {\n            _bangluong.push({ DoiTuong: elm.Organization.DoiTuong, Thang: elm.Thang, Nam: elm.Nam })\n          }\n        }\n      });\n      setLstBangLuong(_bangluong)\n    });\n  }, [nam])\n\n  const openFormCreateBangLuong = () => {\n    if (!dotLuong) return CHECK_WARNING('Chưa có đợt lương được chọn!');\n    if (!nam) return CHECK_WARNING('Chưa có năm được chọn!');\n    const indexBangLuong = lstBangLuong.findIndex(f => f.Nam === nam && f.DoiTuong === _Enums_DoiTuong.ThueNgoai)\n    if (indexBangLuong !== -1) return CHECK_WARNING(`Bảng lương tháng ${dotLuong.Name} năm ${nam} đã được tạo. Bạn vui lòng kiểm tra lại!`)\n    if (bangLuongThangSau.length > 0 && dotLuong.Id !== 1) return CHECK_WARNING(`Bảng lương của đợt .... năm ${nam} đã được tạo. Vui lòng thử lại!`)\n    setIsOpenForm(true);\n    setFlag(Enum_Flag.add);\n  }\n\n  // const exportExcell = async () => {\n  //   const dataBangLuong = await loadDataBangLuong();\n  //   if (!dataBangLuong?.IsSuccessed) return CHECK_ERROR('Xuất bảng lương thất bại. Vui lòng thử lại!')\n  //   exportExcelBangLuongCty(dataBangLuong, lstPhuCap, thang, nam);\n  // }\n\n  // const deleteBangLuong = () => {\n  //   BangLuongEndpoint.delete(thang, nam, _Enums_DoiTuongNumber.ThueNgoai).then(() => {\n  //     loadLstBangLuong();\n  //     CHECK_SUCCESS(`Xóa thành công bảng lương thành ... năm ${nam}`);\n  //   })\n  // }\n\n  useEffect(() => {\n    loadLstBangLuong();\n    loadLstBangLuongThangSau();\n    loadLstDotLuong();\n  }, [loadLstBangLuong, loadLstBangLuongThangSau, loadLstDotLuong])\n\n  return (\n    <div className=\"index-bang-luong-doi-thue\">\n      <div style={{ display: 'flex', paddingBottom: 10, width: '100%' }}>\n        <div style={{ width: '10%' }}>\n          <SelectYear\n            value={nam}\n            onChange={(selected) => { setNam(selected.value) }}\n            placeholder={'Chọn năm...'}\n          />\n        </div>\n\n        <div style={{ width: '20%', margin: '0 10px' }}>\n          <Select\n            name='dotLuong'\n            options={lstDotLuong}\n            menuPosition={'fixed'}\n            className=\"cus-select\"\n            placeholder={getPlaceholder('Chọn đợt lương...')}\n            onChange={(selected) => setDotLuong(selected)}\n            getOptionValue={option => option}\n            getOptionLabel={option => option.Dot}\n          />\n        </div>\n        <ButtonAdd onClick={() => { openFormCreateBangLuong() }}>Tạo bảng lương</ButtonAdd>\n      </div>\n\n      <Table bordered hover size='sm'>\n        <thead>\n          <tr className=\"header-table\">\n            <th style={{ width: '5px' }}>STT</th>\n            <th>Bảng lương</th>\n            <th style={{ width: '15%' }}>Thao tác</th>\n          </tr>\n        </thead>\n\n        <tbody>\n          {\n            lstBangLuong.length > 0 ? lstBangLuong.map((bangLuong, i) =>\n              <tr key={i}>\n                <td style={{ textAlign: 'center' }}>{i + 1}</td>\n                <td>Bảng lương tháng {bangLuong.Thang} năm {bangLuong.Nam}</td>\n                <td style={{ display: 'flex' }}>\n                  <div title=\"Xuất file excel\"><ButtonIcon icon={'download'}></ButtonIcon></div>\n                  <div style={{ marginLeft: '7px' }}>\n                    {/* <ButtonIcon\n                      color=\"danger\" icon={'trash-alt'}\n                      onClick={() => CHECK_CONFIRM(`Bạn chắc chắn muốn xóa bảng lương tháng ... năm ${nam}`)\n                        .then(res => { if (res && res.isConfirmed) deleteBangLuong() })}\n                    /> */}\n                  </div>\n                </td>\n              </tr>\n            )\n              : <tr>\n                <td colSpan={3}><EmptyNoData size=\"sm\" /></td>\n              </tr>\n          }\n        </tbody>\n      </Table>\n\n      {\n        <FullScreenDialog\n          style={{ zIndex: 1049 }}\n          title={`Bảng thanh toán lương tháng đội công ty đợt ${dotLuong?.Dot} năm ${nam}`}\n          open={isOpenForm}\n          onClose={() => { setIsOpenForm(false); loadLstBangLuong() }}>\n          <Card>\n            <CardBody style={{ padding: 0 }}>\n              <FormTaoBangLuongThueNgoai\n                // thang={thang}\n                // nam={nam}\n                dotLuong={dotLuong}\n                open={isOpenForm}\n                flag={flag}\n                onCloseModal={() => { setIsOpenForm(false); loadLstBangLuong() }}\n              />\n            </CardBody>\n          </Card>\n        </FullScreenDialog>\n      }\n    </div>\n  )\n}\n","export default function createStyles(styles) {\n  return styles;\n}"],"names":["setTranslateValue","direction","node","transform","rect","getBoundingClientRect","fakeTransform","computedStyle","window","getComputedStyle","getPropertyValue","offsetX","offsetY","transformValues","split","parseInt","concat","innerWidth","left","width","innerHeight","top","height","getTranslateValue","style","webkitTransform","defaultTimeout","enter","duration","enteringScreen","exit","leavingScreen","React","props","ref","children","_props$direction","inProp","in","onEnter","onEntered","onEntering","onExit","onExited","onExiting","_props$timeout","timeout","_props$TransitionComp","TransitionComponent","Transition","other","_objectWithoutProperties","theme","useTheme","childrenRef","handleOwnRef","instance","current","ReactDOM","handleRefIntermediary","useForkRef","handleRef","normalizedTransitionCallback","callback","isAppearing","undefined","handleEnter","reflow","handleEntering","transitionProps","getTransitionProps","mode","webkitTransition","transitions","create","_extends","easing","easeOut","transition","handleEntered","handleExiting","handleExit","sharp","handleExited","updatePosition","handleResize","debounce","addEventListener","clear","removeEventListener","nodeRef","appear","state","childProps","visibility","Enums_ThanhToan","value","label","Enums_GioiTinh","Enums_DoiTuong","_Enums_DoiTuong","CuaHang","ThueNgoai","KhachHang","NhanVien","CongTy","PhongBang","_Enums_DoiTuongNumber","Enums_PhuongThucChamCong","TheoThang","TheoDuAn","Enums_PhuongThucChamCongNumber","Enums_CongNo","NoCu","TamUng","NoDoiTac","Enums_LoaiNoNumber","DuAnNo","TraNo","Enums_LoaiNoLabel","Enum_Flag","view","add","edit","delete","Enum_NhomKhoanChis","LuongThoThueNgoai","LuongThoCTy","ChiPhiCuaHang","EmptyNoData","Component","render","size","text","this","_jsxs","_jsx","className","EmptyContainerSmall","EmptyContainerLarge","styled","div","Icon","classes","_props$color","color","_props$component","component","_props$fontSize","fontSize","clsx","root","capitalize","muiName","withStyles","userSelect","typography","pxToRem","overflow","flexShrink","colorPrimary","palette","primary","main","colorSecondary","secondary","colorAction","action","active","colorError","error","colorDisabled","disabled","fontSizeInherit","fontSizeSmall","fontSizeLarge","name","SelectYear","onChange","data","getData","year","Date","getFullYear","option","i","push","val","SelectSingle","options","valueRef","labelRef","placeholder","defaultProps","FullScreenDialog","renderCustom","renderButton","title","onClose","open","Dialog","HeaderDialog","BodyDialog","_excluded","propTypes","tag","tagPropType","inverse","PropTypes","body","outline","cssModule","innerRef","Card","Tag","attributes","_objectWithoutPropertiesLoose","mapToCssModules","classNames","AppBar","_props$position","position","Paper","square","elevation","backgroundColorDefault","type","grey","display","flexDirection","boxSizing","zIndex","appBar","positionFixed","right","positionAbsolute","positionSticky","positionStatic","positionRelative","colorDefault","backgroundColor","getContrastText","contrastText","colorInherit","colorTransparent","userNameLogin","TOKEN_CLIENT_INFO","username","_ref","thang","nam","onCloseModal","lstDoiThueNgoai","setLstDoiThueNgoai","useState","isDisabled","setIsDisable","lstCongNos","setLstCongNos","lstTruTamUng","setLstTruTamUng","lstTruTamUngOld","setLstTruTamUngOld","checkColumn","setCheckColumn","isTruTamUng","setIsTruTamUng","reqTruTamUng","setReqTruTamUng","taoBangLuong","useCallback","datas","dois","lstReq","isCheckSoTien","item","ngayCong","ChamCongs","find","f","DuAnId","req","Thang","Nam","NgayCong","LuongTheoNgayCong","TongLuong","ThucNhan","OrganId","LuongBaoHiem","ChamCongId","Id","handleCreate","BangLuongEndpoint","postExtension","then","taoKhoanChi","CHECK_CONFIRM","res","isConfirmed","loadLstDoiThueNgoai","param","DuAnDoiThueNgoaiEndpoint","getAllParam","_ref3","newLst","groupDoi","valueCreate","lstDuAnDoiThueNgoai","_reqTruTamUng","length","Organization","DuAn","TruTamUng","duAn","Dois","findIndex","TenDuAn","Name","doi","DoiTuong","DuAnIds","CongNoEndpoint","PostAuthen","_ref2","ResultObj","catch","_promiseAll","Promise","all","CHECK_SUCCESS","CHECK_ERROR","getCongNo","duAnId","congNoCu","TienNo","getNoLaiKiSau","doiId","idxCongNoCu","truTamUng","getNgayCong","chamCongs","cong","getThanhTien","doiThue","getThucNhan","thanhTien","useEffect","background","textAlign","map","colSpan","fontWeight","indexDoi","onClick","OrganName","formatCurrency","NumberFormat","onValueChange","e","setLstTienTamUng","soTien","soNo","thucNhan","CHECK_WARNING","prev","newArr","slice","index","produce","draft","values","ButtonIcon","marginLeft","icon","handleTruTamUng","_soTien","_truTamUng","tu","_tienDaUng","tienDaUng","tdu","indexBL","_ttu","Input","checked","_ref4","target","Label","for","Button","xacNhanThanhToanTruCongNo","xacNhanTruCongNo","NguoiLapPhieu","DanhSachLuong","onMenuScrollToBottom","isLoading","onInputChange","onMenuOpen","onMenuClose","isClearable","menuPlacement","k","select","filter","Select","defaultValue","isSearchable","meta","Toolbar","_props$disableGutters","disableGutters","_props$variant","variant","gutters","alignItems","_defineProperty","paddingLeft","spacing","paddingRight","breakpoints","up","regular","mixins","toolbar","dense","minHeight","DialogActions","_props$disableSpacing","disableSpacing","padding","justifyContent","flex","createStyles","styles","createStylesOriginal","bordered","borderless","striped","dark","hover","responsive","responsiveTag","Table","ResponsiveTag","table","responsiveClassName","DialogTitle","_props$disableTypogra","disableTypography","Typography","margin","colourStyles","multiValueLabel","menuPortal","base","control","lineHeight","cursor","borderRadius","menu","input","marginRight","singleValue","marginTop","container","valueContainer","LoadingIndicator","SpinnerSmall","IndicatorsContainer","components","getStyles","ClearIndicator","innerProps","restInnerProps","FontAwesome","fa","verticalAlign","IndicatorSeparator","alignSelf","marginBottom","DropdownIndicator","MenuList","maxHeight","overflowY","constructor","super","valueRequire","RefReactSelect","noOptionsMessage","loadingMessage","required","attribute","Fragment","ReactSelect","classNamePrefix","setState","menuPortalTarget","document","menuPosition","readOnly","tabIndex","autoComplete","opacity","onFocus","focus","closeButton","MuiDialogTitle","IconButton","DialogContent","MuiDialogContent","MuiDialogActions","CustomizedDialogs","renderFooter","handleClose","maxWidth","makeStyles","useStyles","scroll","fullWidth","dividers","paddingTop","Slide","disableEnforceFocus","fullScreen","ownerDocument","createChainedFunction","_len","arguments","funcs","Array","_key","reduce","acc","func","_len2","args","_key2","apply","ButtonClose","formatTime","thoiGian","ngay","getDate","getMonth","dataKinhPhi","ThoiGian","NoiDung","DVT","KhoiLuong","DonGia","ThanhTien","GhiChu","getPlaceholder","IndexBangLuongDoiThue","setNam","lstDotLuong","setLstDotLuong","dotLuong","setDotLuong","lstBangLuong","setLstBangLuong","flag","setFlag","isOpenForm","setIsOpenForm","bangLuongThangSau","setBangLuongThangSau","loadLstDotLuong","DotLuongsEndpoint","getAll","Dot","TuNgay","DenNgay","loadLstBangLuongThangSau","loadLstBangLuong","_bangluong","forEach","elm","paddingBottom","selected","getOptionValue","getOptionLabel","ButtonAdd","bangLuong","CardBody","FormTaoBangLuongThueNgoai"],"sourceRoot":""}