|
|
@@ -1,10 +1,12 @@
|
|
|
<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage/ErpView.master" AutoEventWireup="true" CodeFile="PddDelivering.aspx.cs" Inherits="EDelivery_PddDelivering" %>
|
|
|
|
|
|
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="Server">
|
|
|
- <link href="../css/imgbox.css" rel="stylesheet" />
|
|
|
+ <link href="../css/imgbox.css" rel="stylesheet" />
|
|
|
<script src="../js/imgbox-1.0.3.js"></script>
|
|
|
<script type="text/javascript" src="js/pddPrintBill.js?v=<%=SiteVer %>"></script>
|
|
|
<script type="text/javascript" src="js/PddDelivering.js?v=<%=SiteVer %>"></script>
|
|
|
+ +
|
|
|
+ <script src="../js/alioss.js"></script>
|
|
|
|
|
|
</asp:Content>
|
|
|
<asp:Content ID="Content2" ContentPlaceHolderID="btn" runat="Server">
|
|
|
@@ -437,7 +439,133 @@
|
|
|
mini.get("selectReturnreason").setData(returnreason_list);
|
|
|
});
|
|
|
</script>
|
|
|
+ <div id="uploaderPackFile_win" class="mini-window" title="上传包裹图片" style="width: 1000px; height: 300px; position: relative; display: none">
|
|
|
+ <table class="win_tb" border="0" cellpadding="0" cellspacing="1">
|
|
|
+ <tr>
|
|
|
+ <td class="td1"></td>
|
|
|
+ <td class="td2">
|
|
|
+ <input type="file" id="pack_file" />
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td class="td1">文件地址</td>
|
|
|
+ <td class="td2">
|
|
|
+ <div id="packFile_url" style="gap: 10px; display: flex; flex-direction: column;"></div>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td colspan="5">
|
|
|
+ <div class="win_btn" style="text-align: center;">
|
|
|
+ <a class="mini-button" iconcls="icon-ok" onclick="saveUploaderPackFileFn">确定</a>
|
|
|
+ <a class="mini-button" iconcls="icon-cancel" onclick="cancelUploaderPackFileFn">取消</a>
|
|
|
+ </div>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ </table>
|
|
|
+ </div>
|
|
|
+ <script>
|
|
|
+ const client = new OSS({
|
|
|
+ // yourregion填写Bucket所在地域。以华东1(杭州)为例,Region填写为oss-cn-hangzhou。
|
|
|
+ region: "oss-cn-fuzhou",
|
|
|
+ // 从环境变量中获取访问凭证。运行本代码示例之前,请确保已设置环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
|
|
|
+ accessKeyId: "LTAI5tE7wuNkeT9jZ42bQnyr",
|
|
|
+ accessKeySecret: "NnutvWhKl4HbQFSad3HosYbCkEkbjN",
|
|
|
+ // 填写存储空间名称。
|
|
|
+ bucket: "dfdiyfile",
|
|
|
+ endpoint: "https://oss-cn-fuzhou.aliyuncs.com",
|
|
|
+ });
|
|
|
+ let ori_tid = "";
|
|
|
+ let ori_ctid = "";
|
|
|
+ let ori_type = "";
|
|
|
|
|
|
+ function openPackFile(tid, ctid) {
|
|
|
+ ori_tid = tid;
|
|
|
+ ori_ctid = ctid;
|
|
|
+ ori_type = "PACK_FILE";
|
|
|
+ getFilesList();
|
|
|
+ mini.get("uploaderPackFile_win").show();
|
|
|
+ document.getElementById('pack_file').value = "";
|
|
|
+ }
|
|
|
+ function saveUploaderPackFileFn() {
|
|
|
+ mini.get("uploaderPackFile_win").hide();
|
|
|
+ }
|
|
|
+ function cancelUploaderPackFileFn() {
|
|
|
+ mini.get("uploaderPackFile_win").hide();
|
|
|
+ }
|
|
|
+
|
|
|
+ function getFilesList() {
|
|
|
+ postAjax("getCellFile", { tid: ori_tid, ctid: ori_ctid, type: ori_type }, function (data) {
|
|
|
+ $("#packFile_url").empty();
|
|
|
+ let html = ``;
|
|
|
+ for (var i = 0; i < data.length; i++) {
|
|
|
+ html += `<div style="display:flex;gap:10px">
|
|
|
+ <img src="${data[0].url}" style="width:40px;height:40px"/>
|
|
|
+ </div>`
|
|
|
+ }
|
|
|
+ $("#packFile_url").append(html);
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ document.getElementById('pack_file').addEventListener('change', async function (e) {
|
|
|
+ const file = e.target?.files[0];
|
|
|
+ const reader = new FileReader();
|
|
|
+ let url = await putPackObject(file);
|
|
|
+ let list = [url];
|
|
|
+ postAjax("saveCellFile", { tid: ori_tid, ctid: ori_ctid, type: ori_type, urls: list.join(","), del: 1 }, function (data) {
|
|
|
+ getFilesList();
|
|
|
+ });
|
|
|
+ document.getElementById('pack_file').value = "";
|
|
|
+
|
|
|
+ });
|
|
|
+ async function putPackObject(file) {
|
|
|
+ try {
|
|
|
+ let fileDir = dateFtt("yyyyMMdd", new Date())
|
|
|
+ let name = "packDoc/" + fileDir + "/" + guid() + getSuff(file.name);
|
|
|
+ // 填写Object完整路径。Object完整路径中不能包含Bucket名称。
|
|
|
+ // 您可以通过自定义文件名(例如exampleobject.txt)或文件完整路径(例如exampledir/exampleobject.txt)的形式实现将数据上传到当前Bucket或Bucket中的指定目录。
|
|
|
+ // data对象可以自定义为file对象、Blob数据或者OSS Buffer。
|
|
|
+ const options = {
|
|
|
+ headers: { "Content-Type": "text/plain" },
|
|
|
+ };
|
|
|
+ const result = await client.put(name, file, options);
|
|
|
+ return result.url;
|
|
|
+ } catch (e) {
|
|
|
+ console.log(e);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ function dateFtt(fmt, date) {
|
|
|
+ var o = {
|
|
|
+ "M+": date.getMonth() + 1, //月份
|
|
|
+ "d+": date.getDate(), //日
|
|
|
+ "h+": date.getHours(), //小时
|
|
|
+ "m+": date.getMinutes(), //分
|
|
|
+ "s+": date.getSeconds(), //秒
|
|
|
+ "q+": Math.floor((date.getMonth() + 3) / 3), //季度
|
|
|
+ "S": date.getMilliseconds() //毫秒
|
|
|
+ };
|
|
|
+ if (/(y+)/.test(fmt)) {
|
|
|
+ fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));
|
|
|
+ }
|
|
|
+ for (var k in o) {
|
|
|
+ if (new RegExp("(" + k + ")").test(fmt))
|
|
|
+ fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
|
|
|
+
|
|
|
+ }
|
|
|
+ return fmt;
|
|
|
+
|
|
|
+ }
|
|
|
+ function getSuff(name) {
|
|
|
+ return name.substring(name.lastIndexOf("."));
|
|
|
+ }
|
|
|
+
|
|
|
+ function guid() {
|
|
|
+ return "xxxxxxxx-xxxx-4xxx-yxxx".replace(/[xy]/g, function (c) {
|
|
|
+ var r = (Math.random() * 16) | 0,
|
|
|
+ v = c == "x" ? r : (r & 0x3) | 0x8;
|
|
|
+ return v.toString(16);
|
|
|
+ });
|
|
|
+ }
|
|
|
+ </script>
|
|
|
<%--<div class="image_large" onclick="hideImage(this)"></div>--%>
|
|
|
</asp:Content>
|
|
|
|