From d9e651fe72d4d2424743a36334cdf5a18e79a4fb Mon Sep 17 00:00:00 2001 From: minom Date: Wed, 15 Apr 2026 17:46:35 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A6=E5=8F=B3=E6=AD=A3=E5=90=8D=E5=8F=AF?= =?UTF-8?q?=E9=81=B8=E5=8F=AF=E8=BC=B8=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/admin/item/TabletDesigner.aspx | 41 ++++-- web/admin/print/tablet_edit/editorNewOne.html | 124 ++++++++++++++++-- 2 files changed, 142 insertions(+), 23 deletions(-) diff --git a/web/admin/item/TabletDesigner.aspx b/web/admin/item/TabletDesigner.aspx index 0ea4773..756feb8 100644 --- a/web/admin/item/TabletDesigner.aspx +++ b/web/admin/item/TabletDesigner.aspx @@ -101,14 +101,14 @@ -
+ <%--
-
+
--%>
存檔 @@ -135,7 +135,7 @@
-
+ <%--
@@ -163,7 +163,7 @@
-
+
--%>
@@ -210,7 +210,19 @@
- +
+ +
@@ -235,6 +247,7 @@ tabletElements: [ ], orientation: "portrait", + toast:null, init() { //$(".tablet-element").draggable({}); this.getPaperSize(); @@ -247,13 +260,17 @@ $("#backendInp").append("") }); $("#paperOrientation").html("直向") + this.toast = new bootstrap.Toast($('#liveToast')); }, print() { + let self = this; let s = this.allStyle.find(x => x.styleID == this.styleID) let size = this.allSize.find(x => x.id = s.paperSize) let w = window.open('', '_blank'); if (!w) { - alert("請允許瀏覽器開啟彈出式視窗!"); + + $("#toast_body").html(`${"請允許瀏覽器開啟彈出式視窗!"}`) + self.toast.show(); return; } @@ -586,7 +603,7 @@ if (paperSize == "newsize") { $("#sizeDiv").attr("style", "display:"); } else { - console.log("paperSize:", paperSize); + // console.log("paperSize:", paperSize); let size = this.allSize.find(x => x.id == paperSize) $(".tablet-paper").css({ "background-color": "white", @@ -607,7 +624,9 @@ .then(response => { if (response.status == "200") { if (response.data.result=="Y") { - alert("ok"); + + $("#toast_body").html(`${"ok"}`) + self.toast.show(); } } }); @@ -1011,7 +1030,7 @@ }) }, async saveStyle() { - + let self = this; let detail = [ ]; @@ -1043,7 +1062,9 @@ .then(response => { if (response.status == "200") { if (response.data.result == "Y") { - alert("ok"); + + $("#toast_body").html(`${"ok!"}`) + self.toast.show(); } } }); diff --git a/web/admin/print/tablet_edit/editorNewOne.html b/web/admin/print/tablet_edit/editorNewOne.html index e37cfdf..556eb67 100644 --- a/web/admin/print/tablet_edit/editorNewOne.html +++ b/web/admin/print/tablet_edit/editorNewOne.html @@ -309,6 +309,8 @@ //console.log("getData:", this.tabletItem) this.printData.length = 0; this.properTitle.length = 0 + this.leftProperTitle.length = 0; + this.rightProperTitle.length = 0; this.alive.length = 0; //let list = localStorage.getItem("list") let param = []; @@ -465,12 +467,12 @@ if (ltitle.length == 0) { ltitle.push("請選擇") } - html = self.renderNormal(ltitle.join(""), d) + html = self.renderNormalWithSpace(ltitle, d) } else if (d.elementID === "righttitle") { if (rtitle.length == 0) { rtitle.push("請選擇") } - html = self.renderNormal(rtitle.join(""), d) + html = self.renderNormalWithSpace(rtitle, d) } else if (d.elementID == "address") { if (myAddress.length == 0) { myAddress.push("請選擇") @@ -711,13 +713,43 @@ ${self.address}027 `); } else if (element.hasClass("lefttitle")) {//左正名 + self.leftProperTitle.forEach(x => { + + $(".selectedItem").append(`
  • - ${self.leftProperTitle.join("")} + ${x} `); + }) + let items = []; + self.familyMembers.forEach(x => { + if (self.tabletType == "A" && x.deceased == false) { + items.push(x.fam_name); + } else if (self.tabletType == "B" && x.deceased == true) { + items.push(x.fam_name); + } + }); + let finalItem = items.filter(y => !self.leftProperTitle.includes(y)) + finalItem.forEach(yy => { + $(".canselectItem").append(`
  • ${yy}+
  • `); + }); } else if (element.hasClass("righttitle")) {//右正名 - $(".selectedItem").append(`
  • - ${self.rightProperTitle.join("")} - `); + self.rightProperTitle.forEach(x => { + $(".selectedItem").append(`
  • + ${x} + `); + }) + let items = []; + self.familyMembers.forEach(x => { + if (self.tabletType == "A" && x.deceased == false) { + items.push(x.fam_name); + } else if (self.tabletType == "B" && x.deceased == true) { + items.push(x.fam_name); + } + }); + let finalItem = items.filter(y => !self.rightProperTitle.includes(y)) + finalItem.forEach(yy => { + $(".canselectItem").append(`
  • ${yy}+
  • `); + }); } else {//其他都是正名 if (element.hasClass("ancestor-wrapper")) {//多姓氏合併,只允許用打的 @@ -901,6 +933,34 @@ option_break: false } self.family_deceased_N_selected.push(obj); + } else if ($(self.selectedElement).children().first().hasClass("lefttitle")) { + self.leftProperTitle.push(target.fam_name); + + let obj = { + IsShuWen: false, + deceased: false, + fam_gender: "", + fam_name: target.fam_name, + fam_file: "", + nospace: true, + num: target.num, + option_break: false + } + self.family_left_title.push(obj); + } else if ($(self.selectedElement).children().first().hasClass("righttitle")) { + self.rightProperTitle.push(target.fam_name); + + let obj = { + IsShuWen: false, + deceased: false, + fam_gender: "", + fam_name: target.fam_name, + fam_file: "", + nospace: true, + num: target.num, + option_break: false + } + self.family_right_title.push(obj); } } self.renderItem($(self.selectedElement).children().first()) @@ -971,7 +1031,8 @@ } else { [self.leftProperTitle[index - 1], self.leftProperTitle[index]] = [self.leftProperTitle[index], self.properTitle[index - 1]]; - + [self.family_left_title[index - 1], self.family_left_title[index]] = + [self.family_left_title[index], self.family_left_title[index - 1]]; } } else if ($(self.selectedElement).children().first().hasClass("righttitle")) { let index = self.rightProperTitle.indexOf(curr.text()); @@ -979,7 +1040,8 @@ } else { [self.rightProperTitle[index - 1], self.rightProperTitle[index]] = [self.rightProperTitle[index], self.properTitle[index - 1]]; - + [self.family_right_title[index - 1], self.family_right_title[index]] = + [self.family_right_title[index], self.family_right_title[index - 1]]; }; } self.renderItem($(self.selectedElement).children().first()); @@ -1023,7 +1085,8 @@ } else { [self.leftProperTitle[index], self.leftProperTitle[index + 1]] = [self.leftProperTitle[index + 1], self.properTitle[index]]; - + [self.family_left_title[index], self.family_left_title[index + 1]] = + [self.family_left_title[index + 1], self.family_left_title[index]]; } } else if ($(self.selectedElement).children().first().hasClass("righttitle")) { let index = self.rightProperTitle.indexOf(curr.text()); @@ -1031,7 +1094,8 @@ } else { [self.rightProperTitle[index], self.rightProperTitle[index + 1]] = [self.rightProperTitle[index + 1], self.properTitle[index]]; - + [self.family_right_title[index], self.family_right_title[index + 1]] = + [self.family_right_title[index + 1], self.family_right_title[index]]; }; } @@ -1068,14 +1132,14 @@ $(self.selectedElement).empty(); Object.assign(data, self.leftProperTitle); let d = details.find(y => y.elementID == "lefttitle"); - let html = self.renderNormal(data, d); + let html = self.renderNormalWithSpace(data, d); //console.log("html:",html); $(self.selectedElement).append(html); } else if ($(self.selectedElement).children().first().hasClass("righttitle")) { $(self.selectedElement).empty(); Object.assign(data, self.rightProperTitle); let d = details.find(y => y.elementID == "righttitle"); - let html = self.renderNormal(data, d); + let html = self.renderNormalWithSpace(data, d); $(self.selectedElement).append(html); } else if ($(self.selectedElement).children().first().hasClass("address")) { $(self.selectedElement).empty(); @@ -1135,6 +1199,36 @@ fix2(val) { return Number.parseFloat(val).toFixed(2); }, + renderNormalWithSpace(mid, d) { + //console.log("renderNormal:", d) + let self = this; + let txt = $(`
    `).css({ + "z-index": 9999, visibility: d.visibility, + width: d.width, height: d.height, + padding: "1px", + "writing-mode": "vertical rl", + display: "flex", + "flex-direction": "row", + "flex-wrap": "wrap", + margin: "auto", + "letter-spacing": "0.1em", + "column-gap": "1px", + "row-gap": "1px", + "align-items": "flex-start", + "justify-content": "start", + }); + console.log("吼優:",mid); + mid.forEach(x => { + let dd = $(`
    ${x}
    `).css({ + "margin-bottom": "10px", + "margin-left": "5px", + "text-justify": "inter-character", + "white-space": "pre-line", + }); + $(txt).append(dd); + }); + return txt; + }, renderNormal(mid, d) { //console.log("renderNormal:", d) let self = this; @@ -1482,6 +1576,8 @@ designer.item = {}; designer.family_deceased_Y_selected = []; // 超渡/超薦/超冤名單 designer.family_deceased_N_selected = []; // 消災/陽上名單 + designer.family_left_title = []; + designer.family_right_title = []; designer.allStyle = []; designer.allStyleDetails = []; designer.allSize = []; @@ -1519,9 +1615,11 @@ const receivedData = e.data; designer.family_deceased_Y_selected = []; designer.family_deceased_N_selected = []; + designer.family_left_title = []; + designer.family_right_title = []; designer.http_host = receivedData.host; designer.follower_id = receivedData.follower_id; - console.log("123:", receivedData); + if (receivedData.tabletItem) { //console.log('editor.html - updating tabletItem:', receivedData.tabletItem); designer.tabletItem = receivedData.tabletItem;