|  |  | 
 |  |  | var planByMore; | 
 |  |  | var priQuoteByMore; | 
 |  |  | var reimburseOnlineByMore; | 
 |  |  | var weeklyByMore; | 
 |  |  |  | 
 |  |  | function getQueryVariable(variable) | 
 |  |  | { | 
 |  |  | 
 |  |  | } | 
 |  |  |  | 
 |  |  | //上传文件至OSS | 
 |  |  | async function putObject(file) { | 
 |  |  | async function putObject(file, uploadProgress) { | 
 |  |  |     var client = getOssClient() | 
 |  |  |     if (client == null) { | 
 |  |  |         return false; | 
 |  |  | 
 |  |  |  | 
 |  |  |     var filename = dateToStr2(new Date()) + "_" + file.name | 
 |  |  |  | 
 |  |  |     // 填写Object完整路径。Object完整路径中不能包含Bucket名称。 | 
 |  |  |     // 您可以通过自定义文件名(例如exampleobject.txt)或文件完整路径(例如exampledir/exampleobject.txt)的形式实现将数据上传到当前Bucket或Bucket中的指定目录。 | 
 |  |  |     // data对象可以自定义为file对象、Blob数据或者OSS Buffer。 | 
 |  |  |     // // 填写Object完整路径。Object完整路径中不能包含Bucket名称。 | 
 |  |  |     // // 您可以通过自定义文件名(例如exampleobject.txt)或文件完整路径(例如exampledir/exampleobject.txt)的形式实现将数据上传到当前Bucket或Bucket中的指定目录。 | 
 |  |  |     // // data对象可以自定义为file对象、Blob数据或者OSS Buffer。 | 
 |  |  |     // const options = { | 
 |  |  |     //     meta: {temp: "demo"}, | 
 |  |  |     //     mime: "json", | 
 |  |  |     //     headers: {"Content-Type": "text/plain"}, | 
 |  |  |     // }; | 
 |  |  |     // | 
 |  |  |     // return await client.put(filename, file, options); | 
 |  |  |  | 
 |  |  |     const options = { | 
 |  |  |         meta: {temp: "demo"}, | 
 |  |  |         mime: "json", | 
 |  |  |         headers: {"Content-Type": "text/plain"}, | 
 |  |  |         // 获取分片上传进度、断点和返回值。 | 
 |  |  |         progress: (p, cpt, res) => { | 
 |  |  |             // console.log(p); | 
 |  |  |             uploadProgress(p)//回调上传进度 | 
 |  |  |         }, | 
 |  |  |         // 设置并发上传的分片数量。 | 
 |  |  |         parallel: 4, | 
 |  |  |         // 设置分片大小。默认值为1 MB,最小值为100 KB。 | 
 |  |  |         partSize: 1024 * 1024, | 
 |  |  |         // headers, | 
 |  |  |         // 自定义元数据,通过HeadObject接口可以获取Object的元数据。 | 
 |  |  |         meta: {year: 2020, people: "test"}, | 
 |  |  |         mime: "text/plain", | 
 |  |  |     }; | 
 |  |  |  | 
 |  |  |     return await client.put(filename, file, options); | 
 |  |  |     // client.put(filename, file, options).then((e) => { | 
 |  |  |     //     return true; | 
 |  |  |     // }).catch((e) => { | 
 |  |  |     //     return false; | 
 |  |  |     // }) | 
 |  |  |     return await client.multipartUpload(filename, file, {...options}); | 
 |  |  | } | 
 |  |  |  | 
 |  |  | //获取OSS文件URL | 
 |  |  | 
 |  |  |     const domain = filepath.match(/^(?:https?:\/\/)?(?:[^@\n]+@)?(?:www\.)?([^:\/\n]+)/im)[0] + "/";//域名部分 | 
 |  |  |     // 配置响应头实现通过URL访问时自动下载文件,并设置下载后的文件名。 | 
 |  |  |     const filename = filepath.split(domain)[1]; | 
 |  |  |     const response = { | 
 |  |  |         "content-disposition": `attachment; filename=${encodeURIComponent( | 
 |  |  |             filename | 
 |  |  |         )}`, | 
 |  |  |     }; | 
 |  |  |     // 填写Object完整路径。Object完整路径中不能包含Bucket名称。 | 
 |  |  |     const url = client.signatureUrl(filename); | 
 |  |  |     const url = client.signatureUrl(filename,{response}); | 
 |  |  |     return url; | 
 |  |  | } |