using System; using System.Collections; using System.Collections.Generic; using FantomLib; using LitJson; using UnityEngine; using UnityEngine.UI; using static BaoBiaoDetail; public class GongDanXQManager : MonoBehaviour { public GameObject buttongotobg; public BaoBiaoDetail XQData; public Text customerName; public Text contact; public Text mobilePhone; public Text phone; public Text email; public Text customerAddress; public Text demandNumber; public Text projectNumber; public Text projectManager; public Text deviceModel; public Text deviceNumber; public Text manufacturingTime; public Text number; public Text woKind; public Text taskName; public Text kind; public Text serviceType; public Text acceptedBy; public Text description; public Text planStartTime; public Text planEndTime; public Text dispatch; public Text dispatchTime; public Text numberF; public Text kindF; public Text customerNameF; public Text contactF; public Text mobilePhoneF; public Text customerAddressF; public Text deviceModelF; public Text serviceTypeF; public Text createTime; public Text descriptionF; public Text results; public Text unresolved; public Text followup; public Text suggestion; public Text isAdequatelyPrepared; public Text appraiselist; public Text isResolved; public Slider attitudeScores; public Text attitudeScoresT; public Slider responseScores; public Text responseScoresT; public Slider engineerSkillScores; public Text engineerSkillScoresT; public Text situation; public Text customerSuggestion; public QianZiItem customerSignature; public QianZiItem solverSignature; public ItemChooseView itemview; public List<ItemChooseView> itemviewList = new List<ItemChooseView>(); public static GongDanXQManager Instance { get;set; } public Text cancelReason; public GameObject cancelgo; public GameObject zhizhigo; public GameObject dianzigo; void Awake() { Instance = this; } void OnEnable() { for (int i = 0;i<itemviewList.Count;i++) { Destroy(itemviewList[i].gameObject); } itemviewList.Clear(); JsonData jsonData =new JsonData(); jsonData["id"] = int.Parse(ChuLiItemManager.ChooseData["id"].ToString()); if(ChuLiItemManager.ChooseData["status"].ToString()=="3") { buttongotobg.SetActive(true); } else { buttongotobg.SetActive(false); } DataManager.Instance.GetBaoGaoItem(jsonData,(str)=>{ JsonData d = JsonMapper.ToObject(str); XQData= JsonMapper.ToObject<BaoBiaoDetail>(d["data"].ToJson()); customerName.text = XQData.demand.customerName; contact.text = XQData.demand.contact; mobilePhone.text = XQData.demand.mobilePhone; phone.text = XQData.demand.phone; email.text = XQData.demand.email; customerAddress.text = XQData.demand.customerAddress; demandNumber.text = XQData.demand.demandNumber; projectNumber.text = XQData.demand.projectNumber; projectManager.text = XQData.demand.projectManager; deviceModel.text = XQData.demand.deviceModel; deviceNumber.text = XQData.demand.deviceNumber; // 假设你有一个秒级时间戳(例如:1738036920 对应 2025-1-28 12:02) long timestamp = XQData.demand.manufacturingTime; // 转换为 DateTime DateTime dateTime = DateTimeOffset.FromUnixTimeSeconds(timestamp).DateTime; // 格式化为 "2025-1-28 12:02" 这样的格式 manufacturingTime.text = dateTime.ToString("yyyy-M-d HH:mm"); number.text = XQData.workOrder.number; woKind.text = XQData.workOrder.woKind==1?"内部":"第三方"; taskName.text = XQData.workOrder.taskName; List<string> list= TianJiWindowManager.getConfigServerTypestr( XQData.demand.kind,XQData.workOrder.serviceType); kind.text = list[0]; serviceType.text =list[1]; acceptedBy.text = XQData.workOrder.acceptedBy; description.text = XQData.workOrder.description; // 假设你有一个秒级时间戳(例如:1738036920 对应 2025-1-28 12:02) timestamp = XQData.workOrder.planStartTime; // 转换为 DateTime dateTime = DateTimeOffset.FromUnixTimeSeconds(timestamp).DateTime; planStartTime.text = dateTime.ToString("yyyy-M-d HH:mm"); // 假设你有一个秒级时间戳(例如:1738036920 对应 2025-1-28 12:02) timestamp = XQData.workOrder.planEndTime; // 转换为 DateTime dateTime = DateTimeOffset.FromUnixTimeSeconds(timestamp).DateTime; planEndTime.text = dateTime.ToString("yyyy-M-d HH:mm"); // 假设你有一个秒级时间戳(例如:1738036920 对应 2025-1-28 12:02) timestamp = XQData.workOrder.dispatchTime; // 转换为 DateTime dateTime = DateTimeOffset.FromUnixTimeSeconds(timestamp).DateTime; dispatchTime.text = dateTime.ToString("yyyy-M-d HH:mm"); EReports ereports = new EReports(); Reports reports = new Reports(); if(XQData.workOrder.reports!=null) { reports =XQData.workOrder.reports; } if(ChuLiItemManager.ChooseData["status"].ToString()=="3") { cancelgo.SetActive(false); zhizhigo.SetActive(false); dianzigo.SetActive(false); return; } if(XQData.workOrder.status == 99) { cancelReason.text = XQData.workOrder.cancelReason; cancelgo.SetActive(true); zhizhigo.SetActive(false); dianzigo.SetActive(false); } else if(reports.reportsType==1) { cancelgo.SetActive(false); zhizhigo.SetActive(true); dianzigo.SetActive(false); } else { cancelgo.SetActive(false); zhizhigo.SetActive(false); dianzigo.SetActive(true); numberF.text =XQData.workOrder.number; kindF.text = TianJiWindowManager.getConfigstr(XQData.demand.kind,0,0)[0].ToString(); customerNameF.text = XQData.demand.customerName; contactF.text = XQData.demand.contact; mobilePhoneF.text = XQData.demand.mobilePhone; customerAddressF.text = XQData.demand.customerAddress; if(reports.reportsType==2) { ereports = XQData.workOrder.reports.eReports; } deviceModelF.text = TianJiWindowManager.Instance.dtdlist.strings[ereports.deviceType]; serviceType.text = TianJiWindowManager.getConfigServerTypestr(XQData.demand.kind,XQData.workOrder.serviceType)[1].ToString(); // 假设你有一个秒级时间戳(例如:1738036920 对应 2025-1-28 12:02) timestamp = XQData.workOrder.createTime; // 转换为 DateTime dateTime = DateTimeOffset.FromUnixTimeSeconds(timestamp).DateTime; // 格式化为 "2025-1-28 12:02" 这样的格式 createTime.text = dateTime.ToString("yyyy-M-d HH:mm"); description.text = XQData.workOrder.description; if(ereports.serviceTimeDetail!=null) { for (int i=0;i<ereports.serviceTimeDetail.Count;i++) { addItem(ereports.serviceTimeDetail[i].date,ereports.serviceTimeDetail[i].startTime,ereports.serviceTimeDetail[i].endTime,ereports.serviceTimeDetail[i].restDuration,ereports.serviceTimeDetail[i].waitingDuration); } } results.text = ereports.results; unresolved.text = ereports.unresolved; followup.text = ereports.followup; suggestion.text = ereports.suggestion; switch (ereports.appraise) { case 1: appraiselist.text= "满意"; break; case 2: appraiselist.text= "一般"; break; default: appraiselist.text= "不满意"; break; } isAdequatelyPrepared.text = ereports.isAdequatelyPrepared?"是":"否"; isResolved.text = ereports.isResolved?"是":"否"; attitudeScores.value = ereports.attitudeScores; attitudeScoresT.text = ereports.attitudeScores+"分"; responseScores.value = ereports.responseScores; responseScoresT.text = ereports.responseScores+"分"; engineerSkillScores.value = ereports.engineerSkillScores; engineerSkillScoresT.text = ereports.engineerSkillScores+"分"; situation.text = ereports.situation; customerSuggestion.text = ereports.customerSuggestion; if(ereports.customerSignature!="") { customerSignature.downloadimg(ereports.customerSignature); } if(ereports.solverSignature!="") { solverSignature.downloadimg(ereports.solverSignature); } customerSignature.GetComponent<RawImage>().texture = customerSignature.defaultTexture; solverSignature.GetComponent<RawImage>().texture = solverSignature.defaultTexture; } }); } public void GotoXQGD() { XQGongdanManager.id = XQData.demand.id; QuanJuBackManager.Instance.nowWindow = GongDanWindowManager.Instance.XQXQ; QuanJuBackManager.Instance.setStack(GongDanWindowManager.Instance.XQGo); TopWindowManager.Instance.showTitle(TianJiWindowManager.Instance.GetTextByKey("110009")); GongDanWindowManager.Instance.gotoXQXQ(); } public void GotoShangchuanbaogao() { QuanJuBackManager.Instance.nowWindow = GongDanWindowManager.Instance.BaoGaogo; QuanJuBackManager.Instance.setStack(GongDanWindowManager.Instance.MainGo); TopWindowManager.Instance.showTitle(TianJiWindowManager.Instance.GetTextByKey("110009")); GongDanWindowManager.Instance.gotoBaoGao(); } public void addItem(string a,string b, string c,string d,string e) { ItemChooseView newitem = GameObject.Instantiate(itemview,itemview.transform.parent); newitem.init(a,b,c,d,e); newitem.gameObject.SetActive(true); newitem.transform.SetSiblingIndex(1); itemviewList.Add(newitem); } }