using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.SceneManagement; using UnityEngine.UI; using UnityEngine.Networking; using System.Text.RegularExpressions; using System.Data.SqlClient; using TMPro; using System; using System.IO; using ZXing; using ZXing.QrCode; using System.Net; using SimpleJSON; using System.ComponentModel; using System.Runtime.InteropServices; public class 電子簽章 : MonoBehaviour { public RawImage rawImage1; public RawImage rawImage; public Texture2D canvasTexture; public Color drawColor = Color.black; public float brushSize = 10f; private bool isDrawing = false; private Vector2 lastPos; [SerializeField] GameObject 條跳面板; [SerializeField] GameObject 寫面板; [SerializeField] GameObject 看面板; public CanvasScaler canvasScaler; float screenWidth; float screenHeight; public GameObject buttonPrefab; public Transform buttonParent; public GameObject buttonceneter; private List copy = new List(); void Start() { Screen.autorotateToPortrait = false; Screen.orientation = ScreenOrientation.LandscapeLeft; float rate = 900.0f / 1900.0f; if (canvasScaler == null) { canvasScaler = GetComponent(); } if (Main.Global.rate= 0 && x + i < canvasTexture.width && y + j >= 0 && y + j < canvasTexture.height) { canvasTexture.SetPixel(x + i, y + j, drawColor); } } } } Vector2 GetMousePosition() { Vector2 localMousePos; RectTransformUtility.ScreenPointToLocalPointInRectangle(rawImage.rectTransform, Input.mousePosition, null, out localMousePos); return localMousePos + rawImage.rectTransform.rect.size / 2; } public void SaveImage() { 條跳面板.SetActive(true); byte[] bytes = canvasTexture.EncodeToPNG(); System.IO.File.WriteAllBytes(Application.persistentDataPath + "/drawnImage.png", bytes); string asd =System.Convert.ToBase64String(bytes); StartCoroutine(電簽流水查詢(asd)); } IEnumerator 電簽流水查詢(string asd) { //Main.Global.阿帕契路徑="http://106.1.48.106:8080/wp-content/themes/event-star/shto_main.php?"; //Main.Global.預設伺服器路徑="test"; string strcon = "電簽流水查詢"; string se = Main.Global.預設伺服器路徑; string strUrl = string.Format(Main.Global.阿帕契路徑+"comm={0}&se={1}", strcon, se); UnityWebRequest request = UnityWebRequest.Get(strUrl); yield return request.SendWebRequest(); if (request.result == UnityWebRequest.Result.ConnectionError) { Debug.Log(request.error); yield break; } string num = request.downloadHandler.text.ToString(); Debug.Log(num); string 流水號 = "PC"; if (num == "n") { 流水號 ="PC00000001"; } else { string cnum = num.Substring(2); int inum = int.Parse(cnum); inum+=1; if (inum<10) { 流水號+="0000000"+inum.ToString(); } if (inum>9 && inum<100) { 流水號+="000000"+inum.ToString(); } if (inum>99 && inum<1000) { 流水號+="00000"+inum.ToString(); } if (inum>999 && inum<10000) { 流水號+="0000"+inum.ToString(); } if (inum>9999 && inum<100000) { 流水號+="000"+inum.ToString(); } if (inum>99999 && inum<10000000) { 流水號+="00"+inum.ToString(); } if (inum>999999 && inum<10000000) { 流水號+="0"+inum.ToString(); } if (inum>9999999 && inum<100000000) { 流水號+=inum.ToString(); } } Debug.Log(流水號); StartCoroutine(電簽上傳(asd,流水號)); } IEnumerator 電簽上傳(string pa1,string pa2) { string 阿帕契路徑1 = ""; if (Main.Global.阿帕契路徑=="http://106.1.48.106:8080/wp-content/themes/event-star/shto_main.php?") { 阿帕契路徑1="http://106.1.48.106:8080/wp-content/themes/event-star/shto_update.php?"; } else { 阿帕契路徑1="http://210.61.41.234/ShTo/wp-content/themes/event-star/shto_update.php?"; } //Main.Global.阿帕契路徑="http://106.1.48.106:8080/wp-content/themes/event-star/shto_update.php?"; //Main.Global.預設伺服器路徑="test"; string se = Main.Global.預設伺服器路徑; string pa = "王詩文"; WWWForm form = new WWWForm(); form.AddField("se", se); form.AddField("PA", pa); form.AddField("PA1", pa1); form.AddField("PA2", pa2); using (UnityWebRequest request = UnityWebRequest.Post(阿帕契路徑1, form)) { yield return request.SendWebRequest(); if (request.result == UnityWebRequest.Result.ConnectionError) { Debug.Log(request.error); } else { Debug.Log("Image uploaded successfully"); } } } IEnumerator 電簽清單() { //Main.Global.阿帕契路徑="http://106.1.48.106:8080/wp-content/themes/event-star/shto_main.php?"; //Main.Global.預設伺服器路徑="test"; string strcon = "電簽清單"; string se = Main.Global.預設伺服器路徑; string strUrl = string.Format(Main.Global.阿帕契路徑+"comm={0}&se={1}", strcon, se); Debug.Log(strUrl); UnityWebRequest request = UnityWebRequest.Get(strUrl); yield return request.SendWebRequest(); if (request.result == UnityWebRequest.Result.ConnectionError) { Debug.Log(request.error); yield break; } JSONNode json = JSON.Parse(request.downloadHandler.text); Debug.Log(json); int sum = 0; for (int i = 0; i < json.Count; i++) { GameObject buttonObj = Instantiate(buttonPrefab) as GameObject; buttonObj.GetComponent().anchoredPosition = new Vector2(3, -sum); buttonObj.transform.SetParent(buttonParent, false); string idname = json[i][0].ToString().Trim('"'); TextMeshProUGUI text = buttonObj.GetComponentInChildren(); text.text = idname; Button newButton = buttonObj.GetComponentInChildren