IEnumerator webGetDepartments(int id) { WWWForm form = new WWWForm(); form.AddField("UserID", PollsConfig.netUserID); form.AddField("Token", PollsConfig.netUserToken); form.AddField("HospitalID", id); WWW www = new WWW("http://47.106.71.112/api/getdepartments.aspx", form); yield return(www); if (www.isDone && www.error == null) { var settings = new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All }; retWithoutData ret = JsonConvert.DeserializeObject <retWithoutData>(www.text, settings); if (ret.ret == 1) { getDepRetWithData configs = JsonConvert.DeserializeObject <getDepRetWithData>(www.text, settings); foreach (DepartmentListParser c in configs.data) { int result = PollsConfig.AddDepartment(c.vcDepartmentName, c.iDepartmentID); if (result == -1) { #if UNITY_ANDROID Toast.ShowToast("科室名已存在"); #endif } else if (result == -2) { #if UNITY_ANDROID Toast.ShowToast("创建科室失败"); #endif } else if (result == -3) { #if UNITY_ANDROID Toast.ShowToast("未选择医院"); #endif } else { DepartmentCell dc = AddNewCell(c.vcDepartmentName); if (dc != null) { yield return(StartCoroutine(webGetQuestionsID(dc, c.iDepartmentID))); } } } } else { Toast.ShowToast(ret.info); } //loadingPanel.SetActive(false); www.Dispose(); } }
IEnumerator webGetQuestionsID(DepartmentCell dc, int departmentid) { WWWForm form = new WWWForm(); form.AddField("UserID", PollsConfig.netUserID); form.AddField("Token", PollsConfig.netUserToken); form.AddField("DepartmentID", departmentid); WWW www = new WWW("http://47.106.71.112/api/getquestionnaires.aspx", form); yield return(www); if (www.isDone && www.error == null && www.text != "") { var settings = new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All }; retWithoutData ret = JsonConvert.DeserializeObject <retWithoutData>(www.text, settings); if (ret.ret == 1) { getQidRetWithData data = JsonConvert.DeserializeObject <getQidRetWithData>(www.text, settings); //get dci by name PollsConfig.DepartmentCellInfo dci = PollsConfig.GetDepartmentCellInfoByName(data.data[0].vcDepartmentName); if (dci != null) { dci.title = data.data[0].Title; if (!PollsConfig.QuestionMap.ContainsKey(data.data[0].iQuestionnaireID.ToString())) { needDownload++; loadingPanel.SetActive(true); yield return(StartCoroutine(webLoadQuestions(dc, data.data[0].vcDepartmentName, data.data[0].iQuestionnaireID))); } else { //PollsConfig.DepartmentCellInfo dci = PollsConfig.GetDepartmentCellInfoByName(data.data[0].vcDepartmentName); dci.questions = PollsConfig.QuestionMap[data.data[0].iQuestionnaireID.ToString()]; dci.qusetionLoaded = true; dci.questionID = data.data[0].iQuestionnaireID.ToString(); dc.SetToReadyStage(); PollsConfig.SerializeData(); } } else { Toast.ShowToast("获取科室绑定问卷失败."); Debug.LogError("webGetQuestionsID failed. " + data.data[0].vcDepartmentName); } } else { Toast.ShowToast(ret.info); } www.Dispose(); } else { Debug.Log("There no questions in department " + departmentid); } }
public void BackToHospitalMgrPage() { fileChooser.gameObject.SetActive(false); hotDepartmentCell = null; this.gameObject.SetActive(false); if (!selectMode) { HospitalMgrPage.gameObject.SetActive(true); } else { IntroPage.gameObject.SetActive(true); } }
private DepartmentCell AddNewCell(string name, bool load = false) { PollsConfig.DepartmentCellInfo dci = PollsConfig.GetDepartmentCellInfoByName(name); if (selectMode && !dci.qusetionLoaded) { return(null); } GameObject newone = Instantiate(Resources.Load("ui/DepartmentCell") as GameObject); if (newone != null) { newone.transform.SetParent(grid.transform); newone.transform.localScale = Vector3.one; newone.transform.position = Vector3.zero; RectTransform rti = newone.GetComponent <RectTransform>(); rti.anchoredPosition3D = new Vector3(rti.anchoredPosition3D.x, rti.anchoredPosition3D.y, 0); if (dci != null) { DepartmentCell dc = newone.GetComponent <DepartmentCell>(); dc.controller = this; dc.textName.text = dci.name; if (dci.qusetionLoaded) { dc.SetToReadyStage(); } else { dc.SetToNormalStage(); } DepartmentCellMap.Add(dc, dci); if (!load) { PollsConfig.SerializeData(); } Invoke("_refreshList", 0.1f); return(dc); } return(null); } else { Debug.Log("Instantiate DepartmentCell failed."); #if UNITY_ANDROID Toast.ShowToast("未知错误,请退出后重试"); #endif return(null); } }
public void OnClickCell(DepartmentCell cell) { if (DepartmentCellMap.ContainsKey(cell)) { PollsConfig.DepartmentCellInfo dci = DepartmentCellMap[cell]; textNumPeople.text = "已完成" + dci.numPeople + "人次"; textDepartmentSelected.text = "已选择 :" + dci.name; textDepartmentSelected.color = Color.blue; if (!PollsConfig.isOfflineMode) { textQuestion.text = dci.title; } else { textQuestion.text = ""; } if (hotDepartmentCell == null) { hotDepartmentCell = cell; hotDepartmentCell.SetToSelectedStage(); } else { PollsConfig.DepartmentCellInfo hdci = DepartmentCellMap[hotDepartmentCell]; if (hdci != null) { if (hdci.qusetionLoaded) { hotDepartmentCell.SetToReadyStage(); } else { hotDepartmentCell.SetToNormalStage(); } hotDepartmentCell = cell; hotDepartmentCell.SetToSelectedStage(); } } btnDelete.interactable = selectMode ? false : true; btnStart.interactable = dci.qusetionLoaded; btnPreview.interactable = selectMode ? false : dci.qusetionLoaded; btnLoad.interactable = selectMode ? false : !dci.qusetionLoaded; } }
public void ConfirmDelDepartment() { if (DepartmentCellMap.ContainsKey(hotDepartmentCell)) { textNumPeople.text = ""; PollsConfig.DelDepartment(DepartmentCellMap[hotDepartmentCell].name); DestroyImmediate(hotDepartmentCell.gameObject); hotDepartmentCell = null; textDepartmentSelected.text = "未选择科室"; textDepartmentSelected.color = Color.red; btnDelete.interactable = false; btnStart.interactable = false; btnLoad.interactable = false; btnPreview.interactable = false; PollsConfig.SerializeData(); Invoke("_refreshList", 0.1f); } }
public void RefleshDepartments() { PollsConfig.DelAllDepartment(); PollsConfig.ClearQuestionMap(); for (int i = 0; i < grid.transform.childCount; i++) { Destroy(grid.transform.GetChild(i).gameObject); } hotDepartmentCell = null; btnNew.interactable = selectMode ? false : true; btnDelete.interactable = false; btnStart.interactable = false; btnPreview.interactable = false; btnLoad.interactable = false; PollsConfig.selectedDepartment = null; loadingPanel.gameObject.SetActive(true); needDownload = 0; StartCoroutine(webGetDepartments(PollsConfig.selectedHospital.hospitalID)); }
IEnumerator webLoadQuestions(DepartmentCell dc, string departmentname, int id) { WWWForm form = new WWWForm(); form.AddField("UserID", PollsConfig.netUserID); form.AddField("Token", PollsConfig.netUserToken); form.AddField("QuestionnaireID", id); WWW www = new WWW("http://47.106.71.112/api/getquestionnaire.aspx", form); yield return(www); if (www.isDone && www.error == null) { var settings = new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All }; retWithoutData ret = JsonConvert.DeserializeObject <retWithoutData>(www.text, settings); if (ret.ret == 1) { needDownload--; if (needDownload == 0) { loadingPanel.SetActive(false); } getQRetWithData data = JsonConvert.DeserializeObject <getQRetWithData>(www.text, settings); parseJson(id.ToString(), data.data); PollsConfig.DepartmentCellInfo dci = PollsConfig.GetDepartmentCellInfoByName(departmentname); dci.questions = PollsConfig.QuestionMap[id.ToString()]; dci.qusetionLoaded = true; dci.questionID = id.ToString(); dc.SetToReadyStage(); PollsConfig.SerializeData(); } else { Toast.ShowToast(ret.info); } www.Dispose(); } }
private void OnEnable() { if (Application.version == "2.07.6") { if (webcamTexture != null) { webcamTexture.Stop(); } webcamTexture = null; OpenWebCamera(); } textNumPeople.text = ""; textQuestion.text = ""; textHospitalSelected.text = PollsConfig.selectedHospital.name; textDepartmentSelected.text = "未选择科室"; textDepartmentSelected.color = Color.red; if (gridOriginHeight == 0) { gridOriginHeight = grid.GetComponent <RectTransform>().sizeDelta.y; } for (int i = 0; i < grid.transform.childCount; i++) { Destroy(grid.transform.GetChild(i).gameObject); } hotDepartmentCell = null; UpdateList(); btnNew.interactable = selectMode ? false : true; btnDelete.interactable = false; btnStart.interactable = false; btnPreview.interactable = false; btnLoad.interactable = false; btnNew.gameObject.SetActive(PollsConfig.isOfflineMode); btnDelete.gameObject.SetActive(PollsConfig.isOfflineMode); btnLoad.gameObject.SetActive(PollsConfig.isOfflineMode); btnReflesh.gameObject.SetActive(!PollsConfig.isOfflineMode); btnReflesh.interactable = !selectMode; PollsConfig.selectedDepartment = null; needDownload = 0; if (!PollsConfig.isOfflineMode) { if (PollsConfig.GetDepartmentCellInfoCount(PollsConfig.selectedHospital) == 0) { RefleshDepartments(); } } if (Application.version == "2.07.6") { if (selectMode) { ReadyPanel.gameObject.SetActive(true); DOTween.To(x => { }, 0, 1, 5.0f).OnComplete(() => { webcamTexture.Play(); Invoke("CaptureWebCamTexture", 1.5f); ReadyPanel.gameObject.SetActive(false); }); } } }