????

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/8319.e46bed00.chunk.js.map

{"version":3,"file":"static/js/8319.e46bed00.chunk.js","mappings":"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","sources":["service/sdoc/SDoc.js","service/sdoc/DocumentsEndpoint.js","views/quan-ly-du-an/DuAn/deleteNhanVien.js","service/api/swalCallAPI.js"],"sourcesContent":["import {Service} from \"../Service\";\n\nclass SDoc extends Service {\n    constructor(path) {\n        super(`/SDoc`, path);\n    }\n\n    getAll = (param,cof) => this.SearchAllOdata(param,cof);\n    // Thêm info doc\n    add = (data) => this.InsertODATA(data);\n    // uploadFile doc\n    upload = (uuid, file) => this.UploadODataSdoc('/upload', true, false, file, uuid)\n    // Sửa\n    edit = (ID, data) => this.UpdateODATA(`(${ID})`, data);\n    // Xóa\n    delete = (id) => this.DeleteADMINODATA(`(${id})`, {noLoading: \"loadCC\", noAlert: \"lertCC\"});\n}\n\nexport default SDoc\n","import SDoc from \"./SDoc\";\nimport {_API_URL, ODATA} from \"../../actions/constants\";\nimport {exportConfigsFetch} from \"../../actions/callApi\";\nimport saveAs from \"../../actions/file-saver\"\n\n// const blobToBase64 = blob => {\n//     const reader = new FileReader();\n//     reader.readAsDataURL(blob);\n//     return new Promise(resolve => {\n//         reader.onloadend = () => {\n//             resolve(reader.result);\n//         };\n//     });\n// };\n\nclass DocumentsEndpoint extends SDoc {\n    constructor() {\n        super(\"/Documents\");\n    }\n\n    addDocument(data) {\n        return this.add(data)\n    }\n\n    uploadFileDocument(Uuid, File) {\n        return this.upload(Uuid, File)\n    }\n\n    getByUuid(uuid) {\n        return this.getAll(`(${uuid})`, {noAlert: true, noLoading: true})\n    }\n\n    downloadDoc = ({Uuid, Subject}) => this.GetAuthenADMINODATA(`/Download?uuid=${Uuid}`,\n        {responseType: \"blob\", noAlert: true, noLoading: true})\n        .then(res => saveAs(res, Subject))\n\n    getDocUrlByUuid = (uuid) => _API_URL + ODATA + this.prefix + this.path + `/Download?uuid=${uuid}`\n\n    getBase64(uuid) {\n        const url = this.getDocUrlByUuid(uuid)\n        return fetch(url, exportConfigsFetch(\"GET\", null, true))\n            .then(res => res.blob())\n            .then(URL.createObjectURL)\n    }\n\n}\n\nexport default new DocumentsEndpoint()\n","// import FilesEndpoint from \"../../service/sdoc/FilesEndpoint\";\nimport swal from 'sweetalert2';\nimport swalCallAPI from \"../../../service/api/swalCallAPI\";\nimport DocumentsEndpoint from '../../../service/sdoc/DocumentsEndpoint';\n\nconst deleteDoc = (DocumentUuid) => {\n    if (!DocumentUuid) return Promise.resolve();\n    return Promise.all([\n        DocumentsEndpoint.delete(DocumentUuid),\n        // FilesEndpoint.delete(DocumentUuid)\n    ]).catch(Promise.resolve)\n}\n\nconst deleteCanBo = async (TEndpoint, canBo, type, onSuccess = () => { }) => {\n\n    const { DocumentUuid, Uuid } = canBo;\n\n    if (!Uuid) {\n        return swal.fire({\n            icon: 'warning',\n            title: `Không tìm thấy Id của ${type}. Vui lòng thử lại!`,\n            showCancelButton: false,\n            showConfirmButton: false,\n        })\n    }\n\n    if (typeof TEndpoint.delete !== 'function') {\n        return swal.fire({\n            icon: 'warning',\n            title: `Đã xảy ra lỗi. Vui lòng thử lại!`,\n            showCancelButton: false,\n            showConfirmButton: false,\n        })\n    }\n\n    swalCallAPI.didOpen({\n        confirmSwal: {\n            title: `Bạn có chắc muốn xóa ${type}?`,\n            text: \"Thao tác này không thể hoàn tác!\"\n        },\n        pendingSwal: { title: `Đang xóa ${type}` },\n        callAPIFn: () => Promise.all([\n            TEndpoint.delete(Uuid),\n            deleteDoc(DocumentUuid)\n        ]),\n        onSuccess: {\n            callback: onSuccess,\n            getSwal: () => `Đã xóa ${type}`\n        },\n    })\n\n}\n\nexport default deleteCanBo;\n","import {ModalConfig} from \"../../components/alert/Alert\";\nimport merge from \"lodash.merge\"\n\n\nconst swal = ModalConfig()\n    .mixin({\n        cancelButtonColor: \"#d33\"\n    })\n\nclass SwalCallAPI {\n\n    defaultErrorSwal = {\n        title: \"Đã xảy ra lỗi!\",\n        text: \"Vui lòng thử lại\",\n        confirmButtonText: \"Thử lại\",\n        cancelButtonText: \"Đóng\",\n        icon: \"error\",\n    }\n\n    defaultSuccessSwal = {\n        icon: \"success\",\n        showConfirmButton: true,\n        showCancelButton: false,\n        confirmButtonText: \"Xác nhận\",\n        allowOutsideClick: true,\n        title: \"Thành công\",\n        text: \"\",\n    }\n\n    handleSuccess = (getSuccessSwal, successCallback) => (res) => {\n\n        if (typeof successCallback === \"function\") successCallback(res)\n\n        const getSwal = () => {\n            if (typeof getSuccessSwal === \"string\") return {title: getSuccessSwal}\n            if (typeof getSuccessSwal(res) === \"object\") return getSuccessSwal(res)\n            return {title: getSuccessSwal(res)}\n        }\n\n        const swalOptions = getSuccessSwal !== undefined\n            ? merge(this.defaultSuccessSwal, getSwal())\n            : this.defaultSuccessSwal\n\n        if (!swal.isVisible()) return swal.fire(swalOptions)\n        return swal.update(swalOptions)\n\n    }\n\n    handleError = (options) => (err) => {\n\n        const {\n            onError: {\n                getSwal: getErrorSwal,\n                callback: errorCallback,\n            } = {}\n        } = options\n\n        if (typeof errorCallback === \"function\") errorCallback(err)\n\n        const getSwal = () => {\n            if (typeof getErrorSwal === \"string\") return merge(this.defaultErrorSwal, {title: getErrorSwal})\n            if (typeof getErrorSwal === \"function\") return merge(this.defaultErrorSwal, getErrorSwal(err))\n            return this.defaultErrorSwal\n        }\n\n        return swal.fire({\n            preConfirm: () => this.didOpen(options, true),\n            ...getSwal(),\n        })\n\n    }\n\n    didOpen = (options, isRetry) => {\n\n        const {\n            confirmSwal,\n            pendingSwal,\n            callAPIFn,\n            onSuccess: {\n                getSwal: getSuccessSwal,\n                callback: successCallback\n            } = {},\n        } = options\n\n        if (typeof callAPIFn !== \"function\") throw new Error(\"WTF Man\")\n\n        const callAPI = () => {\n            swal.showLoading()\n            callAPIFn()\n                .then(this.handleSuccess(getSuccessSwal, successCallback))\n                .catch(this.handleError(options))\n                .finally(swal.hideLoading)\n        }\n\n        const defaultPendingSwal = {\n            icon: \"info\",\n            title: \"Đang xử lý\",\n            showConfirmButton: false,\n            showCancelButton: false,\n            allowOutsideClick: !swal.isLoading,\n            didOpen: callAPI,\n        }\n\n        const getPendingSwal = () => {\n            if (pendingSwal === undefined) return defaultPendingSwal\n            if (typeof pendingSwal === \"object\") return merge(defaultPendingSwal, pendingSwal)\n            if (typeof pendingSwal === \"string\") return merge(defaultPendingSwal, {title: pendingSwal})\n            return defaultPendingSwal\n        }\n\n        const getConfirmSwal = () => {\n            if (typeof confirmSwal === \"object\") return confirmSwal\n            if (typeof confirmSwal === \"string\") return {title: confirmSwal}\n            return {}\n        }\n\n        const executeRequest = () => swal.fire(getPendingSwal())\n\n        const handlePreConfirm = isConfirmed => {\n            if (!isConfirmed) return\n            return executeRequest()\n        }\n\n        const defaultConfirmSwal = {\n            icon: \"question\",\n            confirmButtonText: \"Xác nhận\",\n            cancelButtonText: \"Hủy\",\n            text: \"Thao tác này không thể hoàn tác!\",\n            preConfirm: handlePreConfirm,\n        }\n\n        if (confirmSwal) {\n            if (isRetry) return executeRequest()\n            return swal.fire(merge(defaultConfirmSwal, getConfirmSwal()))\n        }\n\n        return executeRequest()\n    }\n}\n\nexport default new SwalCallAPI()\n"],"names":["SDoc","Service","constructor","path","super","getAll","param","cof","this","SearchAllOdata","add","data","InsertODATA","upload","uuid","file","UploadODataSdoc","edit","ID","UpdateODATA","delete","id","DeleteADMINODATA","noLoading","noAlert","downloadDoc","_ref","Uuid","Subject","GetAuthenADMINODATA","responseType","then","res","saveAs","getDocUrlByUuid","_API_URL","ODATA","prefix","addDocument","uploadFileDocument","File","getByUuid","getBase64","url","fetch","exportConfigsFetch","blob","URL","createObjectURL","deleteDoc","DocumentUuid","Promise","all","DocumentsEndpoint","catch","resolve","async","TEndpoint","canBo","type","onSuccess","arguments","length","undefined","swal","icon","title","showCancelButton","showConfirmButton","swalCallAPI","didOpen","confirmSwal","text","pendingSwal","callAPIFn","callback","getSwal","ModalConfig","mixin","cancelButtonColor","defaultErrorSwal","confirmButtonText","cancelButtonText","defaultSuccessSwal","allowOutsideClick","handleSuccess","getSuccessSwal","successCallback","swalOptions","merge","isVisible","update","fire","handleError","options","err","onError","getErrorSwal","errorCallback","preConfirm","isRetry","Error","defaultPendingSwal","isLoading","callAPI","showLoading","finally","hideLoading","executeRequest","defaultConfirmSwal","isConfirmed"],"sourceRoot":""}