{"ast":null,"code":"import _objectSpread from\"C:/ldt/LDT/management/node_modules/@babel/runtime/helpers/esm/objectSpread2.js\";import _regenerator from\"C:/ldt/LDT/management/node_modules/@babel/runtime/helpers/esm/regenerator.js\";import _asyncToGenerator from\"C:/ldt/LDT/management/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\";import _slicedToArray from\"C:/ldt/LDT/management/node_modules/@babel/runtime/helpers/esm/slicedToArray.js\";import{Flex}from\"@chakra-ui/react\";import React,{useState,useCallback,useEffect}from\"react\";import Users from\"./components/Users\";import{ToastContainer,toast,Bounce}from'react-toastify';import{getUsers}from\"services/userApi\";import{jsx as _jsx}from\"react/jsx-runtime\";function Tables(){var _useState=useState(false),_useState2=_slicedToArray(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var _useState3=useState(1),_useState4=_slicedToArray(_useState3,2),pageIndex=_useState4[0],setPageIndex=_useState4[1];var _useState5=useState(0),_useState6=_slicedToArray(_useState5,2),totalPages=_useState6[0],setTotalPages=_useState6[1];var _useState7=useState([]),_useState8=_slicedToArray(_useState7,2),users=_useState8[0],setUsers=_useState8[1];var _useState9=useState(0),_useState0=_slicedToArray(_useState9,2),userCount=_useState0[0],setUserCount=_useState0[1];var _useState1=useState({query:\"\",site_id:null,user_level:null}),_useState10=_slicedToArray(_useState1,2),filters=_useState10[0],setFilters=_useState10[1];var fetchUsers=useCallback(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(){var res,_res$data,success,data,page,size,_totalPages,total,_error$response,_error$response$data,_error$response2,_error$response2$data,serverMsg,_t;return _regenerator().w(function(_context){while(1)switch(_context.p=_context.n){case 0:_context.p=0;setLoading(true);_context.n=1;return getUsers({page_index:pageIndex,query:filters.query,site_id:filters.site_id,user_level:filters.user_level});case 1:res=_context.v;_res$data=res.data,success=_res$data.success,data=_res$data.data,page=_res$data.page,size=_res$data.size,_totalPages=_res$data.totalPages,total=_res$data.total;setUsers(Array.isArray(data)?data:[]);setUserCount(total!==null&&total!==void 0?total:0);setTotalPages(_totalPages!==null&&_totalPages!==void 0?_totalPages:0);_context.n=3;break;case 2:_context.p=2;_t=_context.v;console.error(_t);serverMsg=(_t===null||_t===void 0?void 0:(_error$response=_t.response)===null||_error$response===void 0?void 0:(_error$response$data=_error$response.data)===null||_error$response$data===void 0?void 0:_error$response$data.msg)||(_t===null||_t===void 0?void 0:(_error$response2=_t.response)===null||_error$response2===void 0?void 0:(_error$response2$data=_error$response2.data)===null||_error$response2$data===void 0?void 0:_error$response2$data.message);toast.error(serverMsg||\"사용자 조회 중 오류가 발생했습니다.\");case 3:_context.p=3;setLoading(false);return _context.f(3);case 4:return _context.a(2);}},_callee,null,[[0,2,3,4]]);})),[pageIndex,filters]);useEffect(function(){fetchUsers();},[fetchUsers]);var handleChangePage=function handleChangePage(_ref2){var selected=_ref2.selected;setPageIndex(selected+1);};var handleChangeFilters=function handleChangeFilters(next){setPageIndex(1);setFilters(function(prev){return _objectSpread(_objectSpread({},prev),next);});};// 승인/거절 후 재조회(현재 조건 유지)\nvar handleApproved=function handleApproved(){return fetchUsers();};return/*#__PURE__*/_jsx(Flex,{direction:\"column\",pt:{md:\"75px\"},gap:\"24px\",children:/*#__PURE__*/_jsx(Users,{title:\"사용자 목록\",captions:[\"이름\",\"회사\",\"휴대폰 번호\",\"권한\",\"사이트\",\"ACTIONS\"],data:users,loading:loading,page:pageIndex-1,pageCount:totalPages,onPageChange:handleChangePage,onApproved:handleApproved,filters:filters,onChangeFilters:handleChangeFilters})});}export default Tables;","map":{"version":3,"names":["Flex","React","useState","useCallback","useEffect","Users","ToastContainer","toast","Bounce","getUsers","jsx","_jsx","Tables","_useState","_useState2","_slicedToArray","loading","setLoading","_useState3","_useState4","pageIndex","setPageIndex","_useState5","_useState6","totalPages","setTotalPages","_useState7","_useState8","users","setUsers","_useState9","_useState0","userCount","setUserCount","_useState1","query","site_id","user_level","_useState10","filters","setFilters","fetchUsers","_asyncToGenerator","_regenerator","m","_callee","res","_res$data","success","data","page","size","_totalPages","total","_error$response","_error$response$data","_error$response2","_error$response2$data","serverMsg","_t","w","_context","p","n","page_index","v","Array","isArray","console","error","response","msg","message","f","a","handleChangePage","_ref2","selected","handleChangeFilters","next","prev","_objectSpread","handleApproved","direction","pt","md","gap","children","title","captions","pageCount","onPageChange","onApproved","onChangeFilters"],"sources":["C:/ldt/LDT/management/src/pages/Admin/User/index.js"],"sourcesContent":["import { Flex } from \"@chakra-ui/react\";\nimport React, { useState, useCallback, useEffect } from \"react\";\nimport Users from \"./components/Users\";\nimport { ToastContainer, toast, Bounce  } from 'react-toastify';\n\nimport { getUsers } from \"services/userApi\";\n\nfunction Tables() {\n\n  const [loading, setLoading] = useState(false);\n  const [pageIndex, setPageIndex] = useState(1);\n  const [totalPages, setTotalPages] = useState(0);\n      \n\n  const [users, setUsers] = useState([]); \n  const [userCount, setUserCount] = useState(0);\n\n  const [filters, setFilters] = useState({\n    query: \"\",\n    site_id: null,   \n    user_level: null,\n  });\n\n  const fetchUsers = useCallback(async () => {\n    try {\n      setLoading(true);\n\n      const res = await getUsers({\n        page_index: pageIndex,\n        query: filters.query,\n        site_id: filters.site_id,\n        user_level: filters.user_level,\n      });\n\n      const { success, data, page, size, totalPages, total } = res.data;\n\n      setUsers(Array.isArray(data) ? data : []);\n      setUserCount(total ?? 0);\n      setTotalPages(totalPages ?? 0);\n    } catch (error) {\n      console.error(error);\n      const serverMsg =\n      error?.response?.data?.msg ||\n      error?.response?.data?.message;\n\n      toast.error(serverMsg || \"사용자 조회 중 오류가 발생했습니다.\");\n    } finally {\n      setLoading(false);\n    }\n  }, [pageIndex, filters]);\n\n  useEffect(() => {\n    fetchUsers();\n  }, [fetchUsers]);\n\n  const handleChangePage = ({ selected }) => {\n    setPageIndex(selected + 1); \n  };\n\n  const handleChangeFilters = (next) => {\n    setPageIndex(1);\n    setFilters((prev) => ({ ...prev, ...next }));\n  };\n\n  // 승인/거절 후 재조회(현재 조건 유지)\n  const handleApproved = () => fetchUsers();\n\n  return (\n    <Flex direction='column' pt={{ md: \"75px\" }} gap=\"24px\">\n      <Users\n        title={\"사용자 목록\"}\n        captions={[\"이름\", \"회사\", \"휴대폰 번호\", \"권한\", \"사이트\", \"ACTIONS\"]}\n        data={users}\n        loading={loading}            \n        page={pageIndex-1}           \n        pageCount={totalPages}\n        onPageChange={handleChangePage} \n        onApproved={handleApproved}\n        filters={filters}\n        onChangeFilters={handleChangeFilters}\n      />\n    </Flex>\n  );\n}\n\nexport default Tables;\n"],"mappings":"6aAAA,OAASA,IAAI,KAAQ,kBAAkB,CACvC,MAAO,CAAAC,KAAK,EAAIC,QAAQ,CAAEC,WAAW,CAAEC,SAAS,KAAQ,OAAO,CAC/D,MAAO,CAAAC,KAAK,KAAM,oBAAoB,CACtC,OAASC,cAAc,CAAEC,KAAK,CAAEC,MAAM,KAAS,gBAAgB,CAE/D,OAASC,QAAQ,KAAQ,kBAAkB,CAAC,OAAAC,GAAA,IAAAC,IAAA,yBAE5C,QAAS,CAAAC,MAAMA,CAAA,CAAG,CAEhB,IAAAC,SAAA,CAA8BX,QAAQ,CAAC,KAAK,CAAC,CAAAY,UAAA,CAAAC,cAAA,CAAAF,SAAA,IAAtCG,OAAO,CAAAF,UAAA,IAAEG,UAAU,CAAAH,UAAA,IAC1B,IAAAI,UAAA,CAAkChB,QAAQ,CAAC,CAAC,CAAC,CAAAiB,UAAA,CAAAJ,cAAA,CAAAG,UAAA,IAAtCE,SAAS,CAAAD,UAAA,IAAEE,YAAY,CAAAF,UAAA,IAC9B,IAAAG,UAAA,CAAoCpB,QAAQ,CAAC,CAAC,CAAC,CAAAqB,UAAA,CAAAR,cAAA,CAAAO,UAAA,IAAxCE,UAAU,CAAAD,UAAA,IAAEE,aAAa,CAAAF,UAAA,IAGhC,IAAAG,UAAA,CAA0BxB,QAAQ,CAAC,EAAE,CAAC,CAAAyB,UAAA,CAAAZ,cAAA,CAAAW,UAAA,IAA/BE,KAAK,CAAAD,UAAA,IAAEE,QAAQ,CAAAF,UAAA,IACtB,IAAAG,UAAA,CAAkC5B,QAAQ,CAAC,CAAC,CAAC,CAAA6B,UAAA,CAAAhB,cAAA,CAAAe,UAAA,IAAtCE,SAAS,CAAAD,UAAA,IAAEE,YAAY,CAAAF,UAAA,IAE9B,IAAAG,UAAA,CAA8BhC,QAAQ,CAAC,CACrCiC,KAAK,CAAE,EAAE,CACTC,OAAO,CAAE,IAAI,CACbC,UAAU,CAAE,IACd,CAAC,CAAC,CAAAC,WAAA,CAAAvB,cAAA,CAAAmB,UAAA,IAJKK,OAAO,CAAAD,WAAA,IAAEE,UAAU,CAAAF,WAAA,IAM1B,GAAM,CAAAG,UAAU,CAAGtC,WAAW,cAAAuC,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAC,SAAAC,QAAA,MAAAC,GAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAC,IAAA,CAAAC,IAAA,CAAAC,WAAA,CAAAC,KAAA,CAAAC,eAAA,CAAAC,oBAAA,CAAAC,gBAAA,CAAAC,qBAAA,CAAAC,SAAA,CAAAC,EAAA,QAAAhB,YAAA,GAAAiB,CAAA,UAAAC,QAAA,iBAAAA,QAAA,CAAAC,CAAA,CAAAD,QAAA,CAAAE,CAAA,SAAAF,QAAA,CAAAC,CAAA,GAE3B7C,UAAU,CAAC,IAAI,CAAC,CAAC4C,QAAA,CAAAE,CAAA,SAEC,CAAAtD,QAAQ,CAAC,CACzBuD,UAAU,CAAE5C,SAAS,CACrBe,KAAK,CAAEI,OAAO,CAACJ,KAAK,CACpBC,OAAO,CAAEG,OAAO,CAACH,OAAO,CACxBC,UAAU,CAAEE,OAAO,CAACF,UACtB,CAAC,CAAC,QALIS,GAAG,CAAAe,QAAA,CAAAI,CAAA,CAAAlB,SAAA,CAOgDD,GAAG,CAACG,IAAI,CAAzDD,OAAO,CAAAD,SAAA,CAAPC,OAAO,CAAEC,IAAI,CAAAF,SAAA,CAAJE,IAAI,CAAEC,IAAI,CAAAH,SAAA,CAAJG,IAAI,CAAEC,IAAI,CAAAJ,SAAA,CAAJI,IAAI,CAAE3B,WAAU,CAAAuB,SAAA,CAAVvB,UAAU,CAAE6B,KAAK,CAAAN,SAAA,CAALM,KAAK,CAEpDxB,QAAQ,CAACqC,KAAK,CAACC,OAAO,CAAClB,IAAI,CAAC,CAAGA,IAAI,CAAG,EAAE,CAAC,CACzChB,YAAY,CAACoB,KAAK,SAALA,KAAK,UAALA,KAAK,CAAI,CAAC,CAAC,CACxB5B,aAAa,CAACD,WAAU,SAAVA,WAAU,UAAVA,WAAU,CAAI,CAAC,CAAC,CAACqC,QAAA,CAAAE,CAAA,gBAAAF,QAAA,CAAAC,CAAA,GAAAH,EAAA,CAAAE,QAAA,CAAAI,CAAA,CAE/BG,OAAO,CAACC,KAAK,CAAAV,EAAM,CAAC,CACdD,SAAS,CACf,CAAAC,EAAA,SAAAA,EAAA,kBAAAL,eAAA,CAAAK,EAAA,CAAOW,QAAQ,UAAAhB,eAAA,kBAAAC,oBAAA,CAAfD,eAAA,CAAiBL,IAAI,UAAAM,oBAAA,iBAArBA,oBAAA,CAAuBgB,GAAG,IAAAZ,EAAA,SAAAA,EAAA,kBAAAH,gBAAA,CAC1BG,EAAA,CAAOW,QAAQ,UAAAd,gBAAA,kBAAAC,qBAAA,CAAfD,gBAAA,CAAiBP,IAAI,UAAAQ,qBAAA,iBAArBA,qBAAA,CAAuBe,OAAO,EAE9BjE,KAAK,CAAC8D,KAAK,CAACX,SAAS,EAAI,sBAAsB,CAAC,CAAC,OAAAG,QAAA,CAAAC,CAAA,GAEjD7C,UAAU,CAAC,KAAK,CAAC,CAAC,OAAA4C,QAAA,CAAAY,CAAA,kBAAAZ,QAAA,CAAAa,CAAA,OAAA7B,OAAA,oBAErB,GAAE,CAACzB,SAAS,CAAEmB,OAAO,CAAC,CAAC,CAExBnC,SAAS,CAAC,UAAM,CACdqC,UAAU,CAAC,CAAC,CACd,CAAC,CAAE,CAACA,UAAU,CAAC,CAAC,CAEhB,GAAM,CAAAkC,gBAAgB,CAAG,QAAnB,CAAAA,gBAAgBA,CAAAC,KAAA,CAAqB,IAAf,CAAAC,QAAQ,CAAAD,KAAA,CAARC,QAAQ,CAClCxD,YAAY,CAACwD,QAAQ,CAAG,CAAC,CAAC,CAC5B,CAAC,CAED,GAAM,CAAAC,mBAAmB,CAAG,QAAtB,CAAAA,mBAAmBA,CAAIC,IAAI,CAAK,CACpC1D,YAAY,CAAC,CAAC,CAAC,CACfmB,UAAU,CAAC,SAACwC,IAAI,SAAAC,aAAA,CAAAA,aAAA,IAAWD,IAAI,EAAKD,IAAI,GAAG,CAAC,CAC9C,CAAC,CAED;AACA,GAAM,CAAAG,cAAc,CAAG,QAAjB,CAAAA,cAAcA,CAAA,QAAS,CAAAzC,UAAU,CAAC,CAAC,GAEzC,mBACE9B,IAAA,CAACX,IAAI,EAACmF,SAAS,CAAC,QAAQ,CAACC,EAAE,CAAE,CAAEC,EAAE,CAAE,MAAO,CAAE,CAACC,GAAG,CAAC,MAAM,CAAAC,QAAA,cACrD5E,IAAA,CAACN,KAAK,EACJmF,KAAK,CAAE,QAAS,CAChBC,QAAQ,CAAE,CAAC,IAAI,CAAE,IAAI,CAAE,QAAQ,CAAE,IAAI,CAAE,KAAK,CAAE,SAAS,CAAE,CACzDxC,IAAI,CAAErB,KAAM,CACZZ,OAAO,CAAEA,OAAQ,CACjBkC,IAAI,CAAE9B,SAAS,CAAC,CAAE,CAClBsE,SAAS,CAAElE,UAAW,CACtBmE,YAAY,CAAEhB,gBAAiB,CAC/BiB,UAAU,CAAEV,cAAe,CAC3B3C,OAAO,CAAEA,OAAQ,CACjBsD,eAAe,CAAEf,mBAAoB,CACtC,CAAC,CACE,CAAC,CAEX,CAEA,cAAe,CAAAlE,MAAM","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}