瀏覽代碼

fix: 修复oss附件上传文件重复提交的bug

lanjianrong 4 年之前
父節點
當前提交
1591d3c06f

+ 10 - 5
src/components/OssUpload/index.tsx

@@ -36,16 +36,21 @@ const UploadModal:React.FC<iUploadModalProps> = (props) => {
   }, [ props.visible ])
   // 上传文件改变时的状态
   const onChange = (info: UploadChangeParam) => {
+    // console.log(info)
+
     const { status } = info.file
     if (status !== 'uploading') {
       // console.log(info.file, info.fileList)
     }
     if (status === 'done') {
-      const newFileList = [ ...fileList, info.file ]
+      // console.log(fileList)
+
+      // const newFileList = [ ...fileList, info.file ]
+      console.log(fileList)
       // newFileList.push(info.file)
-      setFileList(newFileList)
-      const newFiles = [ ...files, { createTime: new Date(), filepath: info.file.url,filename: info.file.name } ]
-      setFiles(newFiles)
+      setFileList(info.fileList)
+      // const newFiles = [ ...files, { createTime: new Date(), filepath: info.file.url,filename: info.file.name } ]
+      setFiles(info.fileList.map(item => ({ createTime: new Date(), filepath: item.url,filename: item.name })))
     } else if (status === 'error') {
       message.error(`${info.file.name} 上传失败`)
     }
@@ -136,7 +141,7 @@ const UploadModal:React.FC<iUploadModalProps> = (props) => {
         </p>
         <p className="ant-upload-text">把文件拖入指定区域,完成上传,同样支持点击上传。</p>
         <p className="ant-upload-hint">
-          支持单文件/多文件上传。附件大小最大为30MB
+          支持单文件/多文件上传。附件大小最大为30MB
         </p>
       </Dragger>
     </Modal>

+ 2 - 0
src/pages/Contract/Content/Income/components/Tabs/Detail/index.tsx

@@ -14,6 +14,8 @@ const Detail:React.FC<DetailProps> = (props) => {
   const type_name = type === ContractType.INCOME ? '回款' : '支付'
   const progress = useMemo(() => {
     const i = parseFloat((parseFloat(type === ContractType.INCOME ? contract.returned : contract.paid) / parseFloat(contract.price)).toFixed(2))
+    console.log(i)
+
     const j: number = 1 - i
     const k: number = parseFloat(contract.price) - parseFloat(type === ContractType.INCOME ? contract.returned : contract.paid)
     return { returned: isNaN(i) ? '0%' : i * 100 + '%', unReturned: isNaN(j) ? '100%' : j * 100 + '%', unReturnedMoney: k }