zhuyiyi 9 月之前
父節點
當前提交
0a91a984c4
共有 1 個文件被更改,包括 554 次插入0 次删除
  1. 554 0
      Web/js/view.ex.js

+ 554 - 0
Web/js/view.ex.js

@@ -0,0 +1,554 @@
+var userPostCode = "";
+function getColumns(columns) {
+    columns = grid.getBottomColumns().clone();
+    for (var i = columns.length - 1; i >= 0; i--) {
+        var column = columns[i];
+        if (!column.field || !column.visible) {
+            columns.removeAt(i);
+        } else {
+            var c = { header: column.header.replace(/\n/g, "").replace(/ /g, ""), field: column.field, width: column.width };
+            columns[i] = c;
+        }
+    }
+    return columns;
+}
+
+function saveColumn() {
+    if (gcTag == "") return;
+    if (grid == undefined || grid == null) return;
+    if (grid.columns.length < 1) return;
+    var columns = grid.columns;
+    var newCols = new Array();
+    var newObj = null;
+    for (var i = 0; i < columns.length; i++) {
+        newObj = new Object();
+        newObj.header = columns[i].header;
+        newObj.field = columns[i].field;
+        newObj.width = columns[i].width;
+        newObj.headerAlign = columns[i].headerAlign;
+        newObj.align = columns[i].align;
+        newObj.allowSort = columns[i].allowSort;
+        newObj.allowResize = columns[i].allowResize;
+        newObj.allowMove = columns[i].allowMove;
+        newObj.allowDrag = columns[i].allowDrag;
+        if (columns[i].visible != undefined) newObj.visible = columns[i].visible;
+        if (columns[i].renderer != undefined) newObj.renderer = columns[i].renderer;
+        newObj.readOnly = columns[i].readOnly;
+        newCols.push(newObj);
+    }
+    //var tag = $("#hGcTag").val();
+    if (gcTag != "" && newCols.length > 0) {
+        var str = JSON.stringify(newCols);
+        postAjax("saveColumns", "name=" + gcTag + "&con=" + encodeURIComponent(str), function (data) {
+            //resultShow(data);
+        }, null, false);
+        //setCookie("ptm_" + mArr[0],str);
+    }
+}
+
+function getMiniDate() {
+    var obj = new Object();
+    //alert(mini.get("txtSdate"));
+    if (mini.get("txtSdate") != undefined) {
+        var _sv = mini.get("txtSdate").getValue();
+        if (_sv != null && _sv != undefined && _sv != "") {
+            obj.sv = _sv;
+        }
+    } else {
+        obj.sv = "";
+    }
+    if (mini.get("txtEdate") != undefined) {
+        var _ev = mini.get("txtEdate").getValue();
+        if (_ev != null && _ev != undefined && _ev != "") obj.ev = _ev;
+    } else {
+        obj.ev = "";
+    }
+    return obj;
+}
+function getFormatMiniDate(fmat) {
+    if (fmat == undefined) fmat = "yyyy-MM-dd";
+    var obj = getMiniDate();
+    if (obj.sv != "") obj.sv = formatTdate(obj.sv, fmat);
+    if (obj.ev != "") obj.ev = formatTdate(obj.ev, fmat);
+    return obj;
+}
+function onCloseClick(e) {
+    var obj = e.sender;
+    obj.setText("");
+    obj.setValue("");
+}
+
+
+function defExport() {
+    var title = $("#hRepTitle").val();
+    comExportExcel((title == "" ? "导出报表" : title));
+}
+
+
+function comExportExcel(extname) {
+    if (grid == null) {
+        alert("无法导出");
+        return;
+    }
+    var columns = grid.columns;
+    function getColumns(columns) {
+        var cols = [];
+        var h = "";
+        for (var i = 0; i < columns.length; i++) {
+            var column = columns[i];
+            //if (!column.visible || column.header == undefined) {
+            //    continue;
+            //}
+            if (column.header == undefined || column.header == "#") {
+                continue;
+            }
+            if (typeof column.header == "function") continue;
+            if (column.header.indexOf("<") != -1) h = column.header.toString().substring(0, column.header.indexOf("<"));
+            else h = column.header.toString();
+            h = h.replace(/ /g, "");
+            //if (i == 1) alert(h);
+            //alert(column.header);
+            //var col = { header: h, field: column.field, type: column.type, visible: column.visible };
+            var col = { header: h, field: column.field, type: column.type, width: column.width, visible: true };
+            if (column.columns) {
+                col.columns = getColumns(column.columns);
+            }
+            cols.push(col);
+        }
+        return cols;
+    }
+    var columns = getColumns(columns);
+    var type = "";
+    var sel_row = grid.getSelecteds();
+    if (grid.multiSelect && sel_row.length > 0 || grid.url == "" || grid.showPager == false) {
+        type = "bexcel";
+    }
+    else type = grid.url == "" ? "bexcel" : "excel";
+    comDownLoad(GetPrePath() + "/Reports/comExports.aspx", { extname: extname, url: encodeURIComponent(grid.url), type: type, columns: columns }, function () {
+        //alert("导出成功");
+    });
+}
+
+function comDownLoad(url, fields, callback) {
+
+    //创建Form
+    var submitfrm = document.createElement("form");
+    submitfrm.action = url;
+    submitfrm.method = "post";
+    submitfrm.target = "_blank";
+    document.body.appendChild(submitfrm);
+
+    if (fields) {
+
+        for (var p in fields) {
+            var input = mini.append(submitfrm, "<input type='hidden' name='" + p + "'>");
+            var v = fields[p];
+            if (typeof v != "string") v = mini.encode(v);
+            input.value = v;
+        }
+    }
+    if (grid == null) {
+        alert("无法导出");
+        return;
+    }
+    var parms = grid._dataSource.loadParams;
+    for (var item in parms) {
+        if (parms[item] == undefined || parms[item] == null) continue;
+        mini.append(submitfrm, "<input type='hidden' name='" + item + "' value=\"" + parms[item] + "\">");
+    }
+
+    var sel_row = grid.getSelecteds();
+    if (grid.multiSelect && sel_row.length > 0) {
+        mini.append(submitfrm, "<input type='hidden' name='hExData' value='" + mini.encode(sel_row) + "'>");
+    } else {
+        if (grid.url == undefined || grid.url == "" || grid.showPager == false) {
+            //ame = 'hExData' value = '" + mini.encode(grid.data)
+            mini.append(submitfrm, "<input type='hidden' name='hExData' value='" + mini.encode(grid.data) + "'>");
+        }
+    }
+
+    if (mini.get("txtSdate") != null && mini.get("txtSdate").getText() != "") {
+        mini.append(submitfrm, "<input type='hidden' name='hExSdate' value=\"" + mini.get("txtSdate").getText() + "\">");
+    }
+    if (mini.get("txtEdate") != null && mini.get("txtEdate").getText() != "") {
+        mini.append(submitfrm, "<input type='hidden' name='hExEdate' value=\"" + mini.get("txtEdate").getText() + "\">");
+    }
+
+
+
+    //mini.append()
+    submitfrm.submit();
+    setTimeout(function () {
+        submitfrm.parentNode.removeChild(submitfrm);
+        if (callback) callback();
+    }, 1000);
+}
+
+function noFileDown(url, pdata) {
+    postUrlAjax(url + "?", "", pdata, function (data) {
+        showToast(data);
+        if (grid != null) grid.reload();
+    }, function (data) {
+        alert(data);
+        if (grid != null) grid.reload();
+    })
+}
+
+function noFileDownForMulProcess(url, pdata, sFn, eFn) {
+    postUrlAjaxSync(url + "?", "", pdata, function (data) {
+        sFn(data)
+    }, function (data) {
+        eFn(data);
+    })
+}
+
+function fileDown(url, pdata) {
+    $.fileDownload(url, {
+        httpMethod: 'GET',
+        data: pdata,
+        // 		    preparingMessageHtml:'文件正在下载,请稍等...', // 需要jquery-ui.js
+        // 	        failMessageHtml:'文件下载失败!!', // 需要jquery-ui.js
+        prepareCallback: function (url) {
+            //layer.msg("文件下载中...");
+            // 数据加载动画
+            //$("body").append('<div id="pload" style="position:fixed;top:45%;z-index:1200;background:url(images/loading2.gif) top center no-repeat;width:1900px;height:768px;margin:auto auto;"></div>');
+        },
+        abortCallback: function (url) {
+            // 异常终止
+            alert("文件下载异常!!");
+            //$("#pload").remove();
+        },
+        successCallback: function (url) {
+            console.log("下载成功");
+            showToast("下载成功");
+            if (grid != null) grid.reload();
+            //$("#pload").remove();
+        },
+        failCallback: function (html, url) {
+            console.log("errdownload", html)
+            alert(html);
+            alert("文件下载失败!!");
+            //$("#pload").remove();
+        }
+    });
+}
+
+function fileDownForCallback(url, pdata, sFn, eFn, aFn) {
+    $.fileDownload(url, {
+        httpMethod: 'GET',
+        data: pdata,
+        // 		    preparingMessageHtml:'文件正在下载,请稍等...', // 需要jquery-ui.js
+        // 	        failMessageHtml:'文件下载失败!!', // 需要jquery-ui.js
+        prepareCallback: function (url) {
+            //layer.msg("文件下载中...");
+            // 数据加载动画
+            //$("body").append('<div id="pload" style="position:fixed;top:45%;z-index:1200;background:url(images/loading2.gif) top center no-repeat;width:1900px;height:768px;margin:auto auto;"></div>');
+        },
+        abortCallback: function (url) {
+            // 异常终止
+            //alert("文件下载异常!!");
+            //$("#pload").remove();
+            aFn(1);
+        },
+        successCallback: function (url) {
+            console.log("下载成功");
+            showToast("下载成功");
+            sFn(1);
+            //if (grid != null) grid.reload();
+            //$("#pload").remove();
+        },
+        failCallback: function (html, url) {
+            console.log("errdownload", html)
+            eFn(1);
+            //alert(html);
+            //alert("文件下载失败!!");
+            //$("#pload").remove();
+        }
+    });
+}
+
+
+function fileDownLoad(url, fields, callback) {
+
+    //创建Form
+    var submitfrm = document.createElement("form");
+    submitfrm.action = url;
+    submitfrm.method = "post";
+    submitfrm.target = "_blank";
+    document.body.appendChild(submitfrm);
+    mini.append(submitfrm, "<input type='hidden' name='hExData' value='" + encodeURIComponent(fields) + "'>");
+    submitfrm.submit();
+    setTimeout(function () {
+        submitfrm.parentNode.removeChild(submitfrm);
+        if (callback) callback();
+    }, 1000);
+}
+
+function fileDownLoadWin(url, fields, callback) {
+    openWaiWin("下载", url + "?hexdata=" + fields, function (data) {
+        if (data == "save") {
+            grid.reload();
+        }
+    });
+}
+
+
+
+var zdData = null;
+var zdDefColumns = null;
+function zdConfig() {
+    if (zdDefColumns == null) {
+        zdDefColumns = grid.columns;
+    }
+    if (zdData == null) {
+        zd_init();
+    }
+    $("#zd_div").show();
+}
+
+function getZdPath() {
+    var path = window.location.pathname;
+    path = path.replace(/\//g, "_");
+    var eidx = path.indexOf(".");
+    path = path.substring(1, eidx);
+    return path;
+}
+
+function getZdModelColumns(name) {
+    if (zdData != null && zdData.length > 0) {
+        for (var i = 0; i < zdData.length; i++) {
+            if (name == zdData[i].name) {
+                return zdData[i].con;
+            }
+        }
+    }
+    return null;
+}
+
+function zd_init(name) {
+    var path = getZdPath();
+    $("#selZdModel").empty();
+    postAjax("get_zdmodel", "path=" + path, function (data) {
+        if (data != null) {
+            zdData = data;
+            var op = "<option value=\"0\">--默认模板--</option>";
+            for (var i = 0; i < data.length; i++) {
+                if (name != undefined && name == data[i].name) op += "<option selected=\"selected\" value=\"" + data[i].name + "\">" + data[i].name + "</option>";
+                else op += "<option value=\"" + data[i].name + "\">" + data[i].name + "</option>";
+            }
+            $("#selZdModel").append(op);
+            if (name == undefined) zdModelChange();
+        }
+    });
+}
+
+function zdModelChange() {
+    var zdName = $("#selZdModel").val();
+    var loadDef = false;
+    if (zdName == "0") {
+        $("#txtZdModel").val("");
+        if (zdDefColumns != null) {
+            grid.set({ columns: zdDefColumns });
+        }
+    } else {
+        $("#txtZdModel").val(zdName);
+        var cdata = getZdModelColumns(zdName);
+        cdata = JSON.parse(cdata.replace(/“/g, "\""));
+        if (cdata != null) {
+            var nobj = null;
+            var clen = cdata.length;
+            for (var i = 0; i < zdDefColumns.length; i++) {
+                for (var j = 0; j < clen; j++) {
+                    if (zdDefColumns[i].type != cdata[j].type && zdDefColumns[i].field != cdata[j].field) {
+                        nobj = $.extend({}, zdDefColumns[i]);
+                        nobj.visible = false;
+                        cdata.push(nobj);
+                        break;
+                    }
+                }
+            }
+            grid.set({ columns: cdata });
+        }
+    }
+    if (grid.columns.length < 1) return;
+    $(".zd_col").empty();
+    var columns = grid.columns;
+    var colArr = new Array();
+    for (var i = 0; i < columns.length; i++) {
+        if (columns[i].name != undefined && columns[i].name == "action") continue;
+        if (columns[i].type == "checkcolumn") continue;
+        if (columns[i].type == "indexcolumn") colArr.push("<input type=\"checkbox\" onclick=\"zd_check(this)\" idx=\"" + i + "\" id=\"chk_" + columns[i].field + "\" " + (columns[i].visible ? "checked=\"checked\"" : "") + "/><label>序号</label>");
+        else colArr.push("<input type=\"checkbox\" onclick=\"zd_check(this)\" id=\"chk_" + columns[i].field + "\" idx=\"" + i + "\"  " + (columns[i].visible ? "checked=\"checked\"" : "") + "/><label>" + columns[i].header + "</label>");
+    }
+    $(".zd_col").html(colArr.join("&nbsp;"));
+}
+
+function getZdColumns() {
+    var columns = grid.columns;
+    if (columns.length < 1) return null;
+    var newCols = new Array();
+    var newObj = null;
+    for (var i = 0; i < columns.length; i++) {
+        if (columns[i].type == "checkcolumn") continue;
+        if (columns[i].type == "indexcolumn") continue;
+        newObj = new Object();
+        if (columns[i].type != undefined) newObj.type = columns[i].type;
+        newObj.header = columns[i].header;
+        newObj.field = columns[i].field;
+        newObj.width = columns[i].width;
+        newObj.headerAlign = columns[i].headerAlign;
+        newObj.align = columns[i].align;
+        newObj.allowSort = columns[i].allowSort;
+        newObj.allowResize = columns[i].allowResize;
+        newObj.allowMove = columns[i].allowMove;
+        newObj.allowDrag = columns[i].allowDrag;
+        if (columns[i].visible != undefined) newObj.visible = columns[i].visible;
+        if (columns[i].renderer != undefined) newObj.renderer = columns[i].renderer;
+        newObj.readOnly = columns[i].readOnly;
+        newCols.push(newObj);
+    }
+    return newCols;
+}
+
+function zd_check(o) {
+    var idx = $(o).attr("idx");
+    if (o.checked) grid.showColumn(grid.getColumn(parseInt(idx)));
+    else grid.hideColumn(grid.getColumn(parseInt(idx)));//.visible = o.checked;
+}
+
+function zdSelAll() {
+    $(".zd_col").find("input").each(function (e) {
+        this.checked = true;
+    });
+}
+function zdUnSelAll() {
+    var sObj = $(".zd_col").find("input");
+    for (var i = 0; i < sObj.length; i++) {
+        if (sObj[i].checked) sObj[i].checked = false;
+        else sObj[i].checked = true;
+    }
+}
+
+function zdExport() {
+    //$("#zd_div").hide();
+    defExport();
+}
+
+function zdCancel() {
+    $("#zd_div").hide();
+}
+
+function saveZdModel() {
+    //var sm = $("#selZdModel").val();
+    var name = $("#txtZdModel").val();
+    if (name == "") {
+        alert("模板名不允许为空才能保存!");
+        return;
+    }
+    var path = getZdPath();
+    var cdata = JSON.stringify(getZdColumns());
+    var parms = new Object();
+    parms.name = name;
+    parms.path = path;
+    parms.cdata = cdata;
+    postAjax("save_zdmodel", parms, function (data) {
+        resultShow(data, "zd_init('" + name + "')");
+    });
+}
+
+function delZdModel() {
+    var sm = $("#selZdModel").val();
+    if (sm == "0") {
+        alert("只有保存过的模板才能删除!");
+        return;
+    }
+    if (!confirm("确认删除?")) return;
+    var path = getZdPath();
+    postAjax("del_zdmodel", "path=" + path + "&name=" + sm, function (data) {
+        if (data == "删除成功") {
+            resultShow(data, "zd_init()");
+        }
+    });
+}
+
+function copyText(obj) {
+    var div = obj;
+    var rec = grid.getSelected();
+    let text = div.innerText;
+    if (rec.type == "PDD") {
+        div.innerText = text + "《" + rec.ctid + "》";
+    }
+    if (document.body.createTextRange) {
+        var range = document.body.createTextRange();
+        range.moveToElementText(div);
+        range.select();
+    } else if (window.getSelection) {
+        var selection = window.getSelection();
+        var range = document.createRange();
+        range.selectNodeContents(div);
+        selection.removeAllRanges();
+        selection.addRange(range);
+    } else {
+        //console.warn("none");
+        return;
+    }
+    document.execCommand("Copy");
+    div.innerText = text;
+    mini.showTips({
+        content: "复制成功!",
+        state: "danger",
+        x: "Center",
+        y: "Center",
+        timeout: 1000
+    });
+}
+
+function copyTextPlus(txt) {
+    $(document.body).append("<div id=\"copy_div\" style=\"position: absolute;top: 0;left: 0;opacity: 0;z-index: -10;\"><input id=\"copy_inp\" type=\"text\" value=\"" + txt + "\" /></div>");
+    var inp = document.getElementById("copy_inp");
+    inp.value = txt;
+    inp.select();
+    document.execCommand("Copy");
+    mini.showTips({
+        content: "复制成功!",
+        state: "danger",
+        x: "Center",
+        y: "Center",
+        timeout: 1000
+    });
+    //inp.value = "";
+    $("#copy_div").remove();
+}
+
+function clickToDetail(ctid, tid) {
+    var ucode = userPostCode == undefined ? "" : userPostCode;
+    if (ucode == "Supplier") return;
+    if (ctid != "" && tid != "") {
+        openWin("订单详情", "EOrder/Order_Detail.aspx?ctid=" + ctid + "&tid=" + tid + "", 1000, 500);
+    }
+}
+
+function clickToLog(ctid) {
+    if (ctid != "") {
+        openWin("订单日志", "EOrder/Order_Log.aspx?ctid=" + ctid, 605, 685);
+    }
+}
+
+function designBillLog(ctid) {
+    if (ctid != "") {
+        openWin("设计费日志", "EFinance/DesignerBillLog.aspx?ctid=" + ctid, 605, 685);
+    }
+}
+
+var downback_frame = null;
+function getDownFrameObj() {
+    if (downback_frame == null) {
+        var ifObj = $(document).find("#downback_frame");
+        if (ifObj != null && ifObj[0] != undefined && ifObj[0].contentWindow != undefined) {
+            downback_frame = ifObj[0].contentWindow;
+        } else {
+            return null;
+        }
+    }
+    return downback_frame;
+}