| | |
| | | return y + "-" + M + "-" + d + " " + h + ":" + m + ":" + s; |
| | | } |
| | | |
| | | // 时间 ==>> 字符串 |
| | | function dateToStr2(date) { |
| | | var time = new Date(date); |
| | | var y = time.getFullYear(); |
| | | var M = time.getMonth() + 1; |
| | | M = M < 10 ? ("0" + M) : M; |
| | | var d = time.getDate(); |
| | | d = d < 10 ? ("0" + d) : d; |
| | | var h = time.getHours(); |
| | | h = h < 10 ? ("0" + h) : h; |
| | | var m = time.getMinutes(); |
| | | m = m < 10 ? ("0" + m) : m; |
| | | var s = time.getSeconds(); |
| | | s = s < 10 ? ("0" + s) : s; |
| | | return y + "" + "" + M + "" + d + "" + h + "" + "" + m + "" + s; |
| | | } |
| | | |
| | | // 字符串 ===>> 时间 |
| | | function strToDate(str) { |
| | | var t = Date.parse(str); |
| | |
| | | var priOnlineByMore; |
| | | var priSalesByMore; |
| | | var priQuoteBudgetByMore; |
| | | var contractByMore; |
| | | |
| | | |
| | | function getOssClient() { |
| | | // const client = new OSS({ |
| | | // // yourRegion填写Bucket所在地域。以华东1(杭州)为例,yourRegion填写为oss-cn-hangzhou。 |
| | | // region: "", |
| | | // // 从STS服务获取的临时访问密钥(AccessKey ID和AccessKey Secret)。 |
| | | // accessKeyId: "", |
| | | // accessKeySecret: "", |
| | | // // 从STS服务获取的安全令牌(SecurityToken)。 |
| | | // // stsToken: "yourSecurityToken", |
| | | // // 填写Bucket名称。 |
| | | // bucket: "", |
| | | // }); |
| | | |
| | | let data |
| | | $.ajax({ |
| | | url: baseUrl + "/open/getOssClient", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: {}, |
| | | method: 'POST', |
| | | async: false, |
| | | success: function (res) { |
| | | if (res.code === 200){ |
| | | data = res.data; |
| | | } |
| | | } |
| | | }); |
| | | return new OSS(data); |
| | | } |
| | | |
| | | //上传文件至OSS |
| | | 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。 |
| | | // const options = { |
| | | // meta: {temp: "demo"}, |
| | | // mime: "json", |
| | | // headers: {"Content-Type": "text/plain"}, |
| | | // }; |
| | | // |
| | | // return await client.put(filename, file, options); |
| | | |
| | | const options = { |
| | | // 获取分片上传进度、断点和返回值。 |
| | | 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.multipartUpload(filename, file, {...options}); |
| | | } |
| | | |
| | | //获取OSS文件URL |
| | | function getObjectUrl(filepath) { |
| | | var client = getOssClient() |
| | | if (client == null) { |
| | | return null; |
| | | } |
| | | 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,{response}); |
| | | return url; |
| | | } |