@vtx/components 3.1.115 → 3.1.116
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/vtx-import2/index.js
CHANGED
|
@@ -217,7 +217,7 @@ var VtxImport2 = function VtxImport2(props) {
|
|
|
217
217
|
fmd.append(fileKey, files[0]);
|
|
218
218
|
var request = new XMLHttpRequest();
|
|
219
219
|
request.open('POST', postUrl);
|
|
220
|
-
var signature = (0, _getSignature["default"])(
|
|
220
|
+
var signature = (0, _getSignature["default"])(postData);
|
|
221
221
|
|
|
222
222
|
for (var key in signature) {
|
|
223
223
|
request.setRequestHeader(key, signature[key]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["getFileName","name","index","lastIndexOf","suffix","substring","VtxImport2","props","visible","close","title","accept","fileKey","uploadURL","postData","errorURL","templateURL","afterUpload","errorDownloadName","customText","customEnumText","TextEnum","headSubTitleText","btnCloseText","btnUploadText","btnReUploadText","btnImportText","msgUploadWarningText","normalTemplateInfoText","normalSelectFileInfoText","normalReChooseFileText","resultSuccessText","resultFailText","resultFailReasonDownText","resultInfoTotalText","resultInfoDataText","resultNetworkErrorText","useState","status","setStatus","result","setResult","countdown","setCountdown","fileList","setFileList","undefined","interval","setInterval","errorFile","setErrorFile","uploading","setUploading","count","setCount","fileInputRef","useRef","fileName","token","getToken","newErrorDownloadName","current","useInterval","useEffect","length","getPostURL","postUrl","postArray","k","push","encodeURIComponent","join","dealResult","response","parseData","JSON","parse","data","message","error","msg","onUpload","files","info","fmd","FormData","append","request","XMLHttpRequest","open","signature","getSignature","key","setRequestHeader","onreadystatechange","e","target","readyState","send","againUpload","click","onFileChange","modelProps","width","maskClosable","footer","onCancel","display","defaultProps","propTypes","PropTypes","bool","string","object","func"],"sources":["vtx-import2/index.jsx"],"sourcesContent":["import React, { useRef } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Button, message, Modal } from 'antd';\r\nimport Content from './Content';\r\nimport { useState } from 'react';\r\nimport ImportResult from './ImportResult';\r\nimport { useInterval } from 'ahooks';\r\nimport { useEffect } from 'react';\r\nimport getToken from '../_util/getToken';\r\nimport getSignature from '@vtx/utils/lib/getSignature';\r\n\r\nfunction getFileName(name = '') {\r\n const index = name.lastIndexOf('.');\r\n const suffix = name.substring(index);\r\n return name.substring(0, index) + '(错误文件)' + suffix;\r\n}\r\n\r\nconst VtxImport2 = props => {\r\n const {\r\n visible,\r\n close,\r\n title,\r\n accept,\r\n fileKey,\r\n uploadURL,\r\n postData,\r\n errorURL,\r\n templateURL,\r\n afterUpload,\r\n errorDownloadName,\r\n customText,\r\n customEnumText = {},\r\n } = props;\r\n const TextEnum = {\r\n headSubTitleText: '导入',\r\n\r\n btnCloseText: '关闭',\r\n btnUploadText: '上传',\r\n btnReUploadText: '再次上传',\r\n btnImportText: '导入',\r\n\r\n msgUploadWarningText: '请选择需要上传的文件',\r\n\r\n normalTemplateInfoText: '没有模板?点击此处下载',\r\n normalSelectFileInfoText: '点击选择文件(支持excel格式)',\r\n normalReChooseFileText: '重新选择文件',\r\n\r\n resultSuccessText: '导入成功',\r\n resultFailText: '导入失败',\r\n resultFailReasonDownText: '下载文件,查看导入失败原因',\r\n resultInfoTotalText: '本次共计',\r\n resultInfoDataText: '条数据',\r\n resultNetworkErrorText: '服务器异常',\r\n\r\n ...customEnumText,\r\n };\r\n const [status, setStatus] = useState(0); // 0:首页,1:结果页\r\n const [result, setResult] = useState(false);\r\n const [countdown, setCountdown] = useState(5);\r\n const [fileList, setFileList] = useState([]);\r\n const [interval, setInterval] = useState(undefined);\r\n const [errorFile, setErrorFile] = useState('');\r\n const [uploading, setUploading] = useState(false);\r\n const [count, setCount] = useState(0);\r\n const fileInputRef = useRef();\r\n const fileName = useRef('');\r\n let token = getToken();\r\n if (!token) {\r\n token = props.token;\r\n }\r\n let newErrorDownloadName = errorDownloadName;\r\n if (!errorDownloadName) {\r\n newErrorDownloadName = fileName.current;\r\n }\r\n useInterval(() => {\r\n if (countdown === 0) {\r\n return close();\r\n }\r\n setCountdown(countdown - 1);\r\n }, interval);\r\n\r\n useEffect(() => {\r\n if (fileList.length !== 0) {\r\n fileName.current = getFileName(fileList[0].name);\r\n }\r\n }, [fileList]);\r\n\r\n // 获取上传地址(拼接参数)\r\n const getPostURL = () => {\r\n const postUrl = uploadURL;\r\n const postArray = [];\r\n for (const k in postData) {\r\n if (postData[k] !== undefined && postData[k] !== null && postData[k] !== '') {\r\n postArray.push(`${k}=${encodeURIComponent(postData[k])}`);\r\n }\r\n }\r\n return postArray.length > 0 ? `${postUrl}?${postArray.join('&')}` : postUrl;\r\n };\r\n\r\n const dealResult = response => {\r\n setUploading(false);\r\n const parseData = JSON.parse(response);\r\n setStatus(1);\r\n if (typeof props.afterUpload === 'function') {\r\n afterUpload(parseData);\r\n }\r\n if (parseData.result === 0) {\r\n setResult(true);\r\n setCountdown(5);\r\n setInterval(1000);\r\n setCount(parseData.data);\r\n } else if (parseData.result === 1) {\r\n setResult(false);\r\n setFileList([]);\r\n if (parseData.data) {\r\n setErrorFile(parseData.data);\r\n } else {\r\n message.error(parseData?.msg || TextEnum.resultNetworkErrorText);\r\n }\r\n }\r\n };\r\n\r\n const onUpload = ({ files = fileList }) => {\r\n if (files.length === 0) {\r\n return message.info(TextEnum.msgUploadWarningText);\r\n }\r\n setUploading(true);\r\n const postUrl = getPostURL();\r\n const fmd = new FormData();\r\n fmd.append(fileKey, files[0]);\r\n const request = new XMLHttpRequest();\r\n request.open('POST', postUrl);\r\n const signature = getSignature({});\r\n for(let key in signature){\r\n request.setRequestHeader(key, signature[key]);\r\n }\r\n request.setRequestHeader('Authorization', token ? `Bearer ${token}` : '');\r\n request.setRequestHeader('access_token', token ? `${token}` : '');\r\n request.onreadystatechange = e => {\r\n if (e.target.readyState == 4) {\r\n dealResult(e.target.response);\r\n }\r\n };\r\n\r\n request.send(fmd);\r\n };\r\n\r\n const againUpload = () => {\r\n setInterval(undefined);\r\n setFileList([]);\r\n fileInputRef.current && fileInputRef.current.click();\r\n };\r\n\r\n const onFileChange = () => {\r\n const fileList = [...fileInputRef.current.files];\r\n setFileList(fileList);\r\n onUpload({ files: fileList });\r\n };\r\n\r\n const modelProps = {\r\n visible,\r\n width: 392,\r\n maskClosable: false,\r\n footer: [\r\n <Button key=\"closeWindow\" onClick={close}>\r\n {`${TextEnum.btnCloseText}${status === 1 && result ? '(' + countdown + ')' : ''}`}\r\n </Button>,\r\n (status === 0 || (status === 1 && !result)) && (\r\n <Button\r\n key=\"uploadSubmit\"\r\n type=\"primary\"\r\n loading={uploading}\r\n onClick={status === 0 ? onUpload : againUpload}\r\n >\r\n {status === 0\r\n ? TextEnum.btnUploadText\r\n : result\r\n ? `${TextEnum.btnImportText}(${countdown})`\r\n : TextEnum.btnReUploadText}\r\n </Button>\r\n ),\r\n ],\r\n onCancel: close,\r\n title: (\r\n <div className=\"vtx-import2-modal-header-title\">\r\n <span className=\"vtx-import2-modal-header-text\">{title}</span>\r\n <span className=\"vtx-import2-modal-header-subtitle\">\r\n {TextEnum.headSubTitleText}\r\n </span>\r\n </div>\r\n ),\r\n };\r\n return (\r\n <Modal {...modelProps}>\r\n {status === 0 ? (\r\n <Content\r\n fileList={fileList}\r\n setFileList={setFileList}\r\n accept={accept}\r\n fileKey={fileKey}\r\n templateURL={templateURL}\r\n customText={customText}\r\n TextEnum={TextEnum}\r\n />\r\n ) : (\r\n <ImportResult\r\n result={result}\r\n count={count}\r\n errorFile={errorFile}\r\n errorURL={errorURL}\r\n token={token}\r\n errorDownloadName={newErrorDownloadName}\r\n TextEnum={TextEnum}\r\n />\r\n )}\r\n <input\r\n type=\"file\"\r\n name={fileKey}\r\n accept={accept}\r\n ref={fileInputRef}\r\n style={{ display: 'none' }}\r\n onChange={onFileChange}\r\n value={fileList.length === 0 ? '' : fileList[0].fileName}\r\n />\r\n </Modal>\r\n );\r\n};\r\n\r\nVtxImport2.defaultProps = {\r\n fileKey: 'file',\r\n accept:\r\n 'application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,text/csv',\r\n postData: {},\r\n};\r\n\r\nVtxImport2.propTypes = {\r\n visible: PropTypes.bool,\r\n templateURL: PropTypes.string,\r\n uploadURL: PropTypes.string,\r\n title: PropTypes.string,\r\n postData: PropTypes.object,\r\n fileKey: PropTypes.string,\r\n accept: PropTypes.string,\r\n close: PropTypes.func,\r\n errorURL: PropTypes.string,\r\n errorDownloadName: PropTypes.string,\r\n afterUpload: PropTypes.func,\r\n token: PropTypes.string,\r\n customText: PropTypes.string,\r\n customEnumText: PropTypes.object,\r\n};\r\n\r\nexport default VtxImport2;\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["getFileName","name","index","lastIndexOf","suffix","substring","VtxImport2","props","visible","close","title","accept","fileKey","uploadURL","postData","errorURL","templateURL","afterUpload","errorDownloadName","customText","customEnumText","TextEnum","headSubTitleText","btnCloseText","btnUploadText","btnReUploadText","btnImportText","msgUploadWarningText","normalTemplateInfoText","normalSelectFileInfoText","normalReChooseFileText","resultSuccessText","resultFailText","resultFailReasonDownText","resultInfoTotalText","resultInfoDataText","resultNetworkErrorText","useState","status","setStatus","result","setResult","countdown","setCountdown","fileList","setFileList","undefined","interval","setInterval","errorFile","setErrorFile","uploading","setUploading","count","setCount","fileInputRef","useRef","fileName","token","getToken","newErrorDownloadName","current","useInterval","useEffect","length","getPostURL","postUrl","postArray","k","push","encodeURIComponent","join","dealResult","response","parseData","JSON","parse","data","message","error","msg","onUpload","files","info","fmd","FormData","append","request","XMLHttpRequest","open","signature","getSignature","key","setRequestHeader","onreadystatechange","e","target","readyState","send","againUpload","click","onFileChange","modelProps","width","maskClosable","footer","onCancel","display","defaultProps","propTypes","PropTypes","bool","string","object","func"],"sources":["vtx-import2/index.jsx"],"sourcesContent":["import React, { useRef } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Button, message, Modal } from 'antd';\r\nimport Content from './Content';\r\nimport { useState } from 'react';\r\nimport ImportResult from './ImportResult';\r\nimport { useInterval } from 'ahooks';\r\nimport { useEffect } from 'react';\r\nimport getToken from '../_util/getToken';\r\nimport getSignature from '@vtx/utils/lib/getSignature';\r\n\r\nfunction getFileName(name = '') {\r\n const index = name.lastIndexOf('.');\r\n const suffix = name.substring(index);\r\n return name.substring(0, index) + '(错误文件)' + suffix;\r\n}\r\n\r\nconst VtxImport2 = props => {\r\n const {\r\n visible,\r\n close,\r\n title,\r\n accept,\r\n fileKey,\r\n uploadURL,\r\n postData,\r\n errorURL,\r\n templateURL,\r\n afterUpload,\r\n errorDownloadName,\r\n customText,\r\n customEnumText = {},\r\n } = props;\r\n const TextEnum = {\r\n headSubTitleText: '导入',\r\n\r\n btnCloseText: '关闭',\r\n btnUploadText: '上传',\r\n btnReUploadText: '再次上传',\r\n btnImportText: '导入',\r\n\r\n msgUploadWarningText: '请选择需要上传的文件',\r\n\r\n normalTemplateInfoText: '没有模板?点击此处下载',\r\n normalSelectFileInfoText: '点击选择文件(支持excel格式)',\r\n normalReChooseFileText: '重新选择文件',\r\n\r\n resultSuccessText: '导入成功',\r\n resultFailText: '导入失败',\r\n resultFailReasonDownText: '下载文件,查看导入失败原因',\r\n resultInfoTotalText: '本次共计',\r\n resultInfoDataText: '条数据',\r\n resultNetworkErrorText: '服务器异常',\r\n\r\n ...customEnumText,\r\n };\r\n const [status, setStatus] = useState(0); // 0:首页,1:结果页\r\n const [result, setResult] = useState(false);\r\n const [countdown, setCountdown] = useState(5);\r\n const [fileList, setFileList] = useState([]);\r\n const [interval, setInterval] = useState(undefined);\r\n const [errorFile, setErrorFile] = useState('');\r\n const [uploading, setUploading] = useState(false);\r\n const [count, setCount] = useState(0);\r\n const fileInputRef = useRef();\r\n const fileName = useRef('');\r\n let token = getToken();\r\n if (!token) {\r\n token = props.token;\r\n }\r\n let newErrorDownloadName = errorDownloadName;\r\n if (!errorDownloadName) {\r\n newErrorDownloadName = fileName.current;\r\n }\r\n useInterval(() => {\r\n if (countdown === 0) {\r\n return close();\r\n }\r\n setCountdown(countdown - 1);\r\n }, interval);\r\n\r\n useEffect(() => {\r\n if (fileList.length !== 0) {\r\n fileName.current = getFileName(fileList[0].name);\r\n }\r\n }, [fileList]);\r\n\r\n // 获取上传地址(拼接参数)\r\n const getPostURL = () => {\r\n const postUrl = uploadURL;\r\n const postArray = [];\r\n for (const k in postData) {\r\n if (postData[k] !== undefined && postData[k] !== null && postData[k] !== '') {\r\n postArray.push(`${k}=${encodeURIComponent(postData[k])}`);\r\n }\r\n }\r\n return postArray.length > 0 ? `${postUrl}?${postArray.join('&')}` : postUrl;\r\n };\r\n\r\n const dealResult = response => {\r\n setUploading(false);\r\n const parseData = JSON.parse(response);\r\n setStatus(1);\r\n if (typeof props.afterUpload === 'function') {\r\n afterUpload(parseData);\r\n }\r\n if (parseData.result === 0) {\r\n setResult(true);\r\n setCountdown(5);\r\n setInterval(1000);\r\n setCount(parseData.data);\r\n } else if (parseData.result === 1) {\r\n setResult(false);\r\n setFileList([]);\r\n if (parseData.data) {\r\n setErrorFile(parseData.data);\r\n } else {\r\n message.error(parseData?.msg || TextEnum.resultNetworkErrorText);\r\n }\r\n }\r\n };\r\n\r\n const onUpload = ({ files = fileList }) => {\r\n if (files.length === 0) {\r\n return message.info(TextEnum.msgUploadWarningText);\r\n }\r\n setUploading(true);\r\n const postUrl = getPostURL();\r\n const fmd = new FormData();\r\n fmd.append(fileKey, files[0]);\r\n const request = new XMLHttpRequest();\r\n request.open('POST', postUrl);\r\n const signature = getSignature(postData);\r\n for(let key in signature){\r\n request.setRequestHeader(key, signature[key]);\r\n }\r\n request.setRequestHeader('Authorization', token ? `Bearer ${token}` : '');\r\n request.setRequestHeader('access_token', token ? `${token}` : '');\r\n request.onreadystatechange = e => {\r\n if (e.target.readyState == 4) {\r\n dealResult(e.target.response);\r\n }\r\n };\r\n\r\n request.send(fmd);\r\n };\r\n\r\n const againUpload = () => {\r\n setInterval(undefined);\r\n setFileList([]);\r\n fileInputRef.current && fileInputRef.current.click();\r\n };\r\n\r\n const onFileChange = () => {\r\n const fileList = [...fileInputRef.current.files];\r\n setFileList(fileList);\r\n onUpload({ files: fileList });\r\n };\r\n\r\n const modelProps = {\r\n visible,\r\n width: 392,\r\n maskClosable: false,\r\n footer: [\r\n <Button key=\"closeWindow\" onClick={close}>\r\n {`${TextEnum.btnCloseText}${status === 1 && result ? '(' + countdown + ')' : ''}`}\r\n </Button>,\r\n (status === 0 || (status === 1 && !result)) && (\r\n <Button\r\n key=\"uploadSubmit\"\r\n type=\"primary\"\r\n loading={uploading}\r\n onClick={status === 0 ? onUpload : againUpload}\r\n >\r\n {status === 0\r\n ? TextEnum.btnUploadText\r\n : result\r\n ? `${TextEnum.btnImportText}(${countdown})`\r\n : TextEnum.btnReUploadText}\r\n </Button>\r\n ),\r\n ],\r\n onCancel: close,\r\n title: (\r\n <div className=\"vtx-import2-modal-header-title\">\r\n <span className=\"vtx-import2-modal-header-text\">{title}</span>\r\n <span className=\"vtx-import2-modal-header-subtitle\">\r\n {TextEnum.headSubTitleText}\r\n </span>\r\n </div>\r\n ),\r\n };\r\n return (\r\n <Modal {...modelProps}>\r\n {status === 0 ? (\r\n <Content\r\n fileList={fileList}\r\n setFileList={setFileList}\r\n accept={accept}\r\n fileKey={fileKey}\r\n templateURL={templateURL}\r\n customText={customText}\r\n TextEnum={TextEnum}\r\n />\r\n ) : (\r\n <ImportResult\r\n result={result}\r\n count={count}\r\n errorFile={errorFile}\r\n errorURL={errorURL}\r\n token={token}\r\n errorDownloadName={newErrorDownloadName}\r\n TextEnum={TextEnum}\r\n />\r\n )}\r\n <input\r\n type=\"file\"\r\n name={fileKey}\r\n accept={accept}\r\n ref={fileInputRef}\r\n style={{ display: 'none' }}\r\n onChange={onFileChange}\r\n value={fileList.length === 0 ? '' : fileList[0].fileName}\r\n />\r\n </Modal>\r\n );\r\n};\r\n\r\nVtxImport2.defaultProps = {\r\n fileKey: 'file',\r\n accept:\r\n 'application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,text/csv',\r\n postData: {},\r\n};\r\n\r\nVtxImport2.propTypes = {\r\n visible: PropTypes.bool,\r\n templateURL: PropTypes.string,\r\n uploadURL: PropTypes.string,\r\n title: PropTypes.string,\r\n postData: PropTypes.object,\r\n fileKey: PropTypes.string,\r\n accept: PropTypes.string,\r\n close: PropTypes.func,\r\n errorURL: PropTypes.string,\r\n errorDownloadName: PropTypes.string,\r\n afterUpload: PropTypes.func,\r\n token: PropTypes.string,\r\n customText: PropTypes.string,\r\n customEnumText: PropTypes.object,\r\n};\r\n\r\nexport default VtxImport2;\r\n"],"mappings":"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"}
|