????

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/9878.c6afb3fe.chunk.js.map

{"version":3,"file":"static/js/9878.c6afb3fe.chunk.js","mappings":"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","sources":["views/action/defaultEnums.js","components/Empty/EmptyNoData.js","views/quan-ly-luong/BangLuong/Component/FormTaoBanLuong.js","webpack://@qlxd/frontend/./src/views/quan-ly-luong/BangLuong/Component/css.scss?6024"],"sourcesContent":["// 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}","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 React, { useState, useEffect, useCallback, useRef } from 'react';\nimport './css.scss';\nimport EmptyNoData from '../../../../components/Empty/EmptyNoData';\nimport { BangLuongEndpoint } from '../../../../service/GDTCores';\nimport NumberFormat from '../../../../components/numberformat/NumberFormat';\nimport { Enum_Flag, _Enums_DoiTuongNumber } from '../../../action/defaultEnums';\nimport { formatDecimalCurrency } from '../../../../actions/util'\nimport { Button } from 'reactstrap';\nimport { CHECK_SUCCESS, CHECK_WARNING } from '../../../../components/alert/Alert';\nimport produce from 'immer';\nimport { ButtonIcon } from '../../../../components/base/Button';\nimport { TOKEN_CLIENT_INFO } from '../../../../actions/constants';\n\nfunction FormTaoBanLuong({ thang, nam, open, flag, onCloseModal, lstPhuCap, duAn, reload }) {\n  const [dataBangLuong, setDataBangLuong] = useState([]);\n  const [truTamUng, setTruTamUng] = useState([]);\n  const [truTamUngOld, setTruTamUngOld] = useState([]);\n  const [reqBangLuong, setReqBangLuong] = useState([]);\n  const [BangLuongId, setBangLuongId] = useState(null);\n  const [lstTienPhuCap, setLstTienPhuCap] = useState([]);\n  const [lstTienPhuCapOld, setLstTienPhuCapOld] = useState([]);\n  const [isDisable, setIsDisable] = useState(false);\n  const truTamUngRef = useRef([]);\n  const truPhuCapRef = useRef([]);\n  const userNameLogin = TOKEN_CLIENT_INFO.username;\n\n  // const getDaysInMonth = (thang, nam) => {\n  //   return new Date(nam, thang, 0).getDate();\n  // }\n\n  const createBangLuong = useCallback(() => {\n    const req = {\n      Thang: thang,\n      Nam: nam,\n      DoiTuong: _Enums_DoiTuongNumber.CongTy,\n      DuAnIds: [duAn.Id]\n    }\n    BangLuongEndpoint.postExtension(`/DanhSachBangLuong`, req)\n      .then(({ ResultObj }) => {\n        setDataBangLuong(ResultObj)\n        if (ResultObj.length === 0) setIsDisable(true)\n        const newReq = [];\n        const newPhuCap = [];\n        for (let pc of lstPhuCap) {\n          newPhuCap.push({\n            PhuCapId: pc.Id,\n            SoTien: 0\n          })\n        }\n        for (let item of ResultObj) {\n          for (let bangLuong of item.Items) {\n            newReq.push({\n              BangLuongId: bangLuong.BangLuongId,\n              TruTamUng: 0,\n              PhuCaps: newPhuCap,\n            })\n          }\n        }\n        setReqBangLuong(newReq);\n      })\n      .catch(() => setIsDisable(true))\n  }, [thang, nam, duAn.Id, lstPhuCap])\n\n  const getTongTamUng = (bangLuong) => {\n    return bangLuong.NoCu + bangLuong.CungKy;\n  }\n\n  const getNoLaikiSau = (bangLuong) => {\n    const numTruTamUng = truTamUngRef.current.find(f => f.BangLuongId === bangLuong.BangLuongId);\n    if (numTruTamUng) return bangLuong.NoCu + bangLuong.CungKy - numTruTamUng.SoTien;\n    return (bangLuong.NoCu + bangLuong.CungKy);\n  }\n\n  const setLstTienTamUng = (bangLuong, soTien) => {\n    if ((bangLuong.NoCu + bangLuong.CungKy) < soTien) {\n      setIsDisable(true);\n      return CHECK_WARNING('Số tiền trừ tạm ứng vượt quá số tiền đã ứng');\n    }\n    setTruTamUng(prev => {\n      const newArr = prev.slice();\n      const index = newArr.findIndex(f => f.BangLuongId === bangLuong.BangLuongId);\n      if (index === -1) {\n        newArr.push({ BangLuongId: bangLuong.BangLuongId, SoTien: +soTien });\n        return newArr;\n      }\n      const _tu = produce(prev, draft => {\n        draft[index].SoTien = +soTien;\n      })\n      return _tu;\n    })\n    setIsDisable(false);\n  }\n\n  const handleTruTamUng = useCallback(\n    (bangLuong, doiId) => {\n      // kiểm tra nếu có 1 ô nhập sai thông tin thì return;\n      if (isDisable) {\n        setIsDisable(true);\n        return CHECK_WARNING('Đã tồn tại thông tin không hợp lệ. Vui lòng kiểm tra lại!');\n      }\n      setIsDisable(false);\n      // lấy số tiền trừ tạm ứng\n      const _truTamUng = () => {\n        const tu = truTamUngRef.current.find(f => f.BangLuongId === bangLuong.BangLuongId)\n        if (tu) return +tu.SoTien;\n        return null;\n      }\n      // lấy số tiền trừ tạm ứng cũ\n      const _truTamUngOld = () => {\n        const tu = truTamUngOld.find(f => f.BangLuongId === bangLuong.BangLuongId)\n        if (tu) return +tu.SoTien;\n        return null;\n      }\n      const _soTien = _truTamUng();\n      const _soTienOld = _truTamUngOld();\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      if (_soTien > bangLuong.ThucNhan) {\n        setIsDisable(true);\n        return CHECK_WARNING('Số tiền trừ tạm ứng không được lớn hơn số thực nhậ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 > (bangLuong.NoCu + bangLuong.CungKy)) {\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      // lưu lại giá trị đã trừ tạm ứng trc đó\n      setTruTamUngOld(prev => {\n        const newArr = prev.slice();\n        const index = newArr.findIndex(f => f.BangLuongId === bangLuong.BangLuongId)\n        if (index === -1) {\n          newArr.push({ BangLuongId: bangLuong.BangLuongId, SoTien: _soTien })\n          return newArr;\n        }\n        const data = produce(prev, draft => { // thay đổi giá trị tránh bị tham chiếu\n          draft[index].SoTien = _soTien;\n        })\n        return data;\n      });\n\n      const indexDoi = dataBangLuong.findIndex(f => f.DoiId === doiId);\n      if (indexDoi !== -1) {\n        const indexBLe = dataBangLuong[indexDoi].Items.findIndex(f => f.BangLuongId === bangLuong.BangLuongId)\n        if (indexBLe !== -1) {\n          const data = produce(dataBangLuong, d => {\n            d[indexDoi].Items[indexBLe].ThucNhan = d[indexDoi].Items[indexBLe].ThucNhan - (_soTien - _soTienOld);\n          })\n          setDataBangLuong(data)\n        }\n      }\n      if (_soTien === 0) return;\n      const indexBL = reqBangLuong.findIndex(f => f.BangLuongId === bangLuong.BangLuongId);\n      // nếu nhập lần đầu thì\n      // if (indexBL === -1) {\n      //   const newReq = [];\n      //   const newPhuCap = [];\n\n      //   for (let pc of lstPhuCap) {\n      //     newPhuCap.push({\n      //       PhuCapId: pc.Id,\n      //       SoTien: 0\n      //     })\n      //   }\n\n      //   newReq.push({\n      //     BangLuongId: bangLuong.BangLuongId,\n      //     TruTamUng: 0,\n      //     PhuCaps: newPhuCap,\n      //   })\n\n      // }\n      const _ttu = produce(reqBangLuong, draft => {\n        draft[indexBL].TruTamUng = _soTien;\n      })\n      setReqBangLuong(_ttu);\n      setIsDisable(false);\n    },\n    [dataBangLuong, isDisable, reqBangLuong, truTamUngOld]\n  )\n\n  const setValueLstPhuCap = useCallback((bangLuongId, phuCap, soTien) => {\n    setLstTienPhuCap(prev => {\n      const newLst = [...prev];\n      const indexPc = newLst.findIndex(f => f.PhuCapId === phuCap.Id && f.BangLuongId === bangLuongId);\n      if (indexPc === -1) {\n        newLst.push({ BangLuongId: bangLuongId, PhuCapId: phuCap.Id, SoTien: +soTien })\n        return newLst;\n      }\n      const _pc = produce(prev, draft => {\n        draft[indexPc].SoTien = +soTien;\n      })\n      return _pc;\n    })\n  }, [])\n\n  const handlePhucap = useCallback(\n    (phuCap, bangLuong, doiId) => {\n      if (isDisable) return CHECK_WARNING('Đã tồn tại thông tin không hợp lệ. Vui lòng kiểm tra lại!');\n      const tienPhuCap = () => {\n        const st = truPhuCapRef.current.find(f => f.PhuCapId === phuCap.Id && f.BangLuongId === bangLuong.BangLuongId);\n        if (st) return +st.SoTien;\n        return null;\n      }\n      const tienPhuCapOld = () => {\n        const st = lstTienPhuCapOld.find(f => f.PhuCapId === phuCap.Id && f.BangLuongId === bangLuong.BangLuongId);\n        if (st) return +st.SoTien;\n        return null;\n      };\n      const _soTien = tienPhuCap();\n      const _soTienOld = tienPhuCapOld();\n\n      if (_soTien === null || _soTien < 0) return CHECK_WARNING('Bạn chưa nhập số tiền. Vui lòng thử lại!');\n      if (_soTien > bangLuong.ThucNhan && phuCap.IsTruLuong) return CHECK_WARNING('Số tiền trừ không được lớn hơn thực nhận, vui lòng thử lại!')\n\n      const indexDoi = dataBangLuong.findIndex(f => f.DoiId === doiId);\n      if (indexDoi !== -1) {\n        const indexBl = dataBangLuong[indexDoi].Items.findIndex(f => f.BangLuongId === bangLuong.BangLuongId);\n        if (indexBl !== -1) {\n          const valuePhuCap = produce(dataBangLuong, draft => {\n            let soTienPhuCap = +(_soTien - (_soTienOld ? _soTienOld : 0));\n            if (phuCap.IsTheoCong) soTienPhuCap = bangLuong.TNC * soTienPhuCap;\n            if (phuCap.IsTruLuong) {\n              draft[indexDoi].Items[indexBl].ThucNhan = draft[indexDoi].Items[indexBl].ThucNhan - soTienPhuCap;\n            } else {\n              draft[indexDoi].Items[indexBl].ThucNhan = draft[indexDoi].Items[indexBl].ThucNhan + soTienPhuCap;\n            }\n          })\n          setLstTienPhuCapOld(prev => {\n            const newLst = prev.slice();\n            const index = newLst.findIndex(f => f.PhuCapId === phuCap.Id && f.BangLuongId === bangLuong.BangLuongId);\n            if (index === -1) {\n              newLst.push({ BangLuongId: bangLuong.BangLuongId, PhuCapId: phuCap.Id, SoTien: _soTien });\n              return newLst;\n            }\n            newLst[index].SoTien = _soTien;\n            return newLst;\n          })\n          setDataBangLuong(valuePhuCap);\n        }\n      }\n\n      if (_soTien === 0) return;\n      const idxBangLuong = reqBangLuong.findIndex(f => f.BangLuongId === bangLuong.BangLuongId);\n      const indexPhuCap = reqBangLuong[idxBangLuong].PhuCaps.findIndex(f => f.PhuCapId === phuCap.Id);\n      const _bangLuong = produce(reqBangLuong, draft => {\n        draft[idxBangLuong].PhuCaps[indexPhuCap].SoTien = _soTien;\n      })\n      setReqBangLuong(_bangLuong)\n    },\n    [dataBangLuong, isDisable, lstTienPhuCapOld, reqBangLuong]\n  )\n\n  const xacNhanBangLuong = () => {\n    let danhSachLuong = [];\n    // thêm NoCu và cùng kỳ vào reqBangLuong\n    dataBangLuong.forEach((doi) => {\n      doi.Items.forEach((bangLuong) => {\n        const findBL = reqBangLuong.find(f => f.BangLuongId === bangLuong.BangLuongId)\n        const cc = { ...findBL, NoCu: Number(bangLuong.NoCu), NoCungKy: Number(bangLuong.CungKy) }\n        danhSachLuong.push(cc);\n      })\n    })\n    const req = {\n      DanhSachLuong: danhSachLuong,\n      NguoiLapPhieu: userNameLogin\n    }\n    BangLuongEndpoint.postExtension('/TaoDanhSachLuong', req).then(() => {\n      reload && reload();\n      CHECK_SUCCESS('Thành công!');\n      onCloseModal();\n    });\n  }\n\n  useEffect(() => {\n    if (!open) return;\n    createBangLuong();\n  }, [createBangLuong, open])\n\n  useEffect(() => {\n    truTamUngRef.current = truTamUng;\n  }, [truTamUng])\n\n  useEffect(() => {\n    truPhuCapRef.current = lstTienPhuCap;\n  }, [lstTienPhuCap])\n\n  const renderTR = useCallback((item, idx, i, bangLuong) => {\n\n    return <tr key={`${i}.${idx}`}\n      style={{ background: `${item.BangLuongId === BangLuongId ? '#598eff' : ''}` }}\n      onClick={() => setBangLuongId(item.BangLuongId)}\n    >\n      <td style={{ textAlign: 'center' }}>{idx + 1}</td>\n      <td>{item.HoTen}</td>\n      <td style={{ textAlign: 'center' }}>{formatDecimalCurrency(item.NoCu ? item.NoCu : 0)}</td>\n      <td style={{ textAlign: 'center' }}>{formatDecimalCurrency(item.CungKy ? item.CungKy : 0)}</td>\n      <td style={{ textAlign: 'center' }}>{formatDecimalCurrency(getTongTamUng(item))}</td>\n      <td style={{ textAlign: 'center' }}>\n        {flag === Enum_Flag.add\n          ? <div style={{ display: 'flex', alignItems: 'center' }}>\n            <NumberFormat onValueChange={(e) => setLstTienTamUng(item, e.values.value)} />\n            <ButtonIcon\n              style={{ height: '23px', width: '25px', marginLeft: '5px' }}\n              color=\"danger\"\n              icon={'minus'}\n              onClick={() => handleTruTamUng(item, bangLuong.DoiId)}\n            />\n          </div>\n          : <>{item.TruTamUng ? formatDecimalCurrency(item.TruTamUng) : 0}</>\n        }\n      </td>\n      <td style={{ textAlign: 'center' }}>{formatDecimalCurrency(getNoLaikiSau(item))}</td>\n      <td style={{ textAlign: 'center' }}>{item.TNC ? item.TNC : 0}</td>\n      <td style={{ textAlign: 'center' }}>{formatDecimalCurrency(item.DonGia ? item.DonGia : 0)}</td>\n      <td style={{ textAlign: 'center' }}>{formatDecimalCurrency(item.ThanhTien ? item.ThanhTien : 0)}</td>\n      {\n        lstPhuCap.map((pc) => <td key={pc.Id} style={{ textAlign: 'center' }}>\n          {\n            flag === Enum_Flag.add\n              ? <div style={{ display: 'flex', alignItems: 'center' }}>\n                <NumberFormat onValueChange={(e) => { setValueLstPhuCap(item.BangLuongId, pc, e.values.value) }} />\n                {\n                  pc.IsTruLuong\n                    ? <ButtonIcon\n                      style={{ height: '23px', width: '25px', marginLeft: '5px' }}\n                      color=\"danger\" icon={'minus'}\n                      onClick={() => handlePhucap(pc, item, bangLuong.DoiId)}\n                    />\n                    : <ButtonIcon\n                      style={{ height: '23px', width: '25px', marginLeft: '5px' }}\n                      color=\"success\"\n                      icon={'plus'}\n                      onClick={() => handlePhucap(pc, item, bangLuong.DoiId)}\n                    />\n                }\n              </div>\n              : <>{item[pc.Id]} </>\n          }\n        </td>)\n      }\n      <td style={{ textAlign: 'center', fontWeight: '700' }}> {formatDecimalCurrency(item.ThucNhan ? item.ThucNhan : 0)}</td>\n      {/* <td style={{ textAlign: 'center' }}> 0</td>\n                        <td style={{ textAlign: 'center' }}> 0</td> */}\n    </tr>\n  }, [BangLuongId, flag, handlePhucap, handleTruTamUng, lstPhuCap, setValueLstPhuCap])\n\n  const renderBangLuong = React.useMemo(() => {\n    return <>\n      {\n        dataBangLuong.length ? dataBangLuong.map((bangLuong, i) =>\n          <>\n            <tr key={i}>\n              <td colSpan={16} style={{ background: '#f9ecce', fontWeight: 'bold' }}>{bangLuong.TenDoi}</td>\n            </tr>\n            {\n              bangLuong.Items.map((item, idx) => renderTR(item, idx, i, bangLuong))\n            }\n          </>)\n          :\n          <tr>\n            <td colSpan={16}>\n              <EmptyNoData size=\"sm\" />\n            </td>\n          </tr>\n      }\n    </>\n  }, [dataBangLuong, renderTR])\n\n  return (\n    <div className=\"index-form-tao-bang-luong\">\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={{ width: '7%', textAlign: 'center' }}>Tạm ứng trong kì</th>\n              <th className=\"th-table\" style={{ width: '7%', textAlign: 'center' }}>Tổng tạm ứng</th>\n              <th className=\"th-table\" style={{ textAlign: 'center', width: '12%' }}>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              {\n                lstPhuCap.map((phuCap) =>\n                  <th\n                    key={phuCap.Id}\n                    className=\"th-table\"\n                    style={{ textAlign: 'center', width: '12%' }}\n                  >{phuCap.Name}</th>\n                )\n              }\n              <th className=\"th-table\" style={{ textAlign: 'center' }}>Thực nhận</th>\n            </tr>\n          </thead>\n\n          <tbody>\n            {renderBangLuong}\n          </tbody>\n        </table>\n      </div>\n      <div className=\"footer-form\">\n        <Button disabled={isDisable} color=\"primary\" onClick={() => xacNhanBangLuong()}>Xác nhận</Button>\n      </div>\n    </div>\n  )\n}\n\nexport default FormTaoBanLuong\n\n","// extracted by mini-css-extract-plugin\nexport default {};"],"names":["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","props","children","_jsxs","_jsx","className","EmptyContainerSmall","EmptyContainerLarge","styled","div","_ref","thang","nam","open","flag","onCloseModal","lstPhuCap","duAn","reload","dataBangLuong","setDataBangLuong","useState","truTamUng","setTruTamUng","truTamUngOld","setTruTamUngOld","reqBangLuong","setReqBangLuong","BangLuongId","setBangLuongId","lstTienPhuCap","setLstTienPhuCap","lstTienPhuCapOld","setLstTienPhuCapOld","isDisable","setIsDisable","truTamUngRef","useRef","truPhuCapRef","userNameLogin","TOKEN_CLIENT_INFO","username","createBangLuong","useCallback","req","Thang","Nam","DoiTuong","DuAnIds","Id","BangLuongEndpoint","postExtension","then","_ref2","ResultObj","length","newReq","newPhuCap","pc","push","PhuCapId","SoTien","item","bangLuong","Items","TruTamUng","PhuCaps","catch","getTongTamUng","CungKy","getNoLaikiSau","numTruTamUng","current","find","f","handleTruTamUng","doiId","CHECK_WARNING","_soTien","_truTamUng","tu","_soTienOld","_truTamUngOld","ThucNhan","prev","newArr","slice","index","findIndex","produce","draft","indexDoi","DoiId","indexBLe","data","d","indexBL","_ttu","setValueLstPhuCap","bangLuongId","phuCap","soTien","newLst","indexPc","handlePhucap","tienPhuCap","st","tienPhuCapOld","IsTruLuong","indexBl","valuePhuCap","soTienPhuCap","IsTheoCong","TNC","idxBangLuong","indexPhuCap","_bangLuong","useEffect","renderTR","idx","i","style","background","onClick","textAlign","HoTen","formatDecimalCurrency","display","alignItems","NumberFormat","onValueChange","e","setLstTienTamUng","values","ButtonIcon","height","width","marginLeft","color","icon","_Fragment","DonGia","ThanhTien","map","fontWeight","renderBangLuong","React","colSpan","TenDoi","Name","Button","disabled","xacNhanBangLuong","danhSachLuong","forEach","doi","cc","Number","NoCungKy","DanhSachLuong","NguoiLapPhieu","CHECK_SUCCESS"],"sourceRoot":""}