public void SetData(CalendarDetailVo calendarDetailVo) { Debug.Log("LoveDiaryEditController SetData"); _curCalendarDetailVo = calendarDetailVo; _curCalendarDetailVo.CurDiaryElementCount.MaxImageCount = GlobalData.ConfigModel.GetConfigByKey(GameConfigKey.DIARY_MAX_IMAG_COUNT); _curCalendarDetailVo.CurDiaryElementCount.MaxTextCount = GlobalData.ConfigModel.GetConfigByKey(GameConfigKey.DIARY_MAX_TEXT_COUNT); _curCalendarDetailVo.CurDiaryElementCount.MaxRacketCount = GlobalData.ConfigModel.GetConfigByKey(GameConfigKey.DIARY_MAX_RACKET_COUNT); _curCalendarDetailVo.CurDiaryElementCount.CurImageCount = 0; _curCalendarDetailVo.CurDiaryElementCount.CurTextCount = 0; _curCalendarDetailVo.CurDiaryElementCount.CurRacketCount = 0; DiaryElementPB pb; for (int i = 0; i < _curCalendarDetailVo.DiaryElements.Count; i++) { pb = _curCalendarDetailVo.DiaryElements[i]; ElementPB elementRule = CalendarDetailVo.GetElementRuleById(pb.ElementId); if (elementRule.ElementType == ElementTypePB.Image) { _curCalendarDetailVo.CurDiaryElementCount.CurImageCount++; } else if (elementRule.ElementType == ElementTypePB.Text) { _curCalendarDetailVo.CurDiaryElementCount.CurTextCount++; } else if (elementRule.ElementType == ElementTypePB.Racket) { _curCalendarDetailVo.CurDiaryElementCount.CurRacketCount++; } } CurLoveDiaryEditView.SetData(_curEditType, GlobalData.DiaryElementModel, calendarDetailVo); }
private void SelctCalender(DateTime dt) { if (GetData <LoveDiaryModel>().CheckHasDetailData(dt)) { //进入查看编辑状态 CalendarDetailVo vo = GetData <LoveDiaryModel>().GetCalendarDetailData(dt); SendMessage(new Message(MessageConst.MODULE_LOVEDIARY_SHOW_EDIT_PANEL, Message.MessageReciverType.DEFAULT, LoveDiaryEditType.Show, vo)); return; } if (GetData <LoveDiaryModel>().CheckHasCalendarData(dt))//当天时候有记录日记,但是没有详细日记数据 { //获取日记集体数据 写过的日记才有 新日记不必发送 var req = new MyDiaryDetailReq(); //req.Id = GetData<LoveDiaryModel>().GetDiarySvrId(dt);//日记ID req.Year = dt.Year; req.Month = dt.Month; req.Date = dt.Day; var dataBytes = NetWorkManager.GetByteData(req); NetWorkManager.Instance.Send <MyDiaryDetailRes>(CMD.DIARYC_USER_DIARYDETAIL, dataBytes, (res) => { OnMyDiaryDetailHandler(res, dt); }); return; } //全新日记 SendMessage(new Message(MessageConst.MODULE_LOVEDIARY_SHOW_TEMPLATE_PANEL, Message.MessageReciverType.DEFAULT, dt)); }
private void OnElementTextItemEditClick(int elementId) { Debug.Log("OnElementTextItemEditClick"); //有个问题啊,要知道点击的是什么类型的元素! ElementPB elementRule = CalendarDetailVo.GetElementRuleById(elementId); var bottomEditType = LoveDiaryBottomEditType.SecondText; switch (elementRule.ElementType) { case ElementTypePB.Text: bottomEditType = LoveDiaryBottomEditType.SecondText; break; case ElementTypePB.Image: bottomEditType = LoveDiaryBottomEditType.Image; break; case ElementTypePB.Racket: bottomEditType = LoveDiaryBottomEditType.Racket; break; case ElementTypePB.Bg: bottomEditType = LoveDiaryBottomEditType.Bg; break; default: bottomEditType = LoveDiaryBottomEditType.SecondText; break; } CurLoveDiaryEditView.OperateBottom(true, bottomEditType); IsModify = true; }
public void AddCalendarDetailData(DateTime Dt, CalendarDetailVo vo) { DateTime dt = Dt; int key = dt.Year * 10000 + dt.Month * 100 + dt.Day; _calendarDetailDic[key] = vo; }
private void OnElementTextItemDeleteClick(DiaryElementPB pb) { Debug.Log("OnElementTextItemDeleteClick"); ElementPB elementRule = CalendarDetailVo.GetElementRuleById(pb.ElementId); _curCalendarDetailVo.CurDiaryElementCount.SubCount(elementRule.ElementType); IsModify = true; }
private void OnMyDiaryDetailHandler(MyDiaryDetailRes res, DateTime dt) { Debug.Log("OnMyDiaryDetailHandler " + res); UserDiaryPB pb = res.UserDiary; CalendarDetailVo vo = new CalendarDetailVo(dt.Year, dt.Month, dt.Day, pb.DiaryElements.ToList()); GetData <LoveDiaryModel>().AddCalendarDetailData(dt, vo); SendMessage(new Message(MessageConst.MODULE_LOVEDIARY_SHOW_EDIT_PANEL, Message.MessageReciverType.DEFAULT, LoveDiaryEditType.Show, vo)); //todo }
private void OnElementItemClick(int id) { Debug.Log("OnElementItemClick........................ id " + id); ElementPB elementRule = CalendarDetailVo.GetElementRuleById(id); if (GlobalData.DiaryElementModel.IsCanUseElement(id)) //表示需要购买 { if (_curCalendarDetailVo.CurDiaryElementCount.IsUpperLimited(elementRule.ElementType)) { FlowText.ShowMessage(I18NManager.Get("LoveDiary_Hint6"));// ("已达上限!"); return; } if (elementRule.ElementType == ElementTypePB.Label) { CurLoveDiaryEditView.CurLabelElementId = id; } else { CurLoveDiaryEditView.AddElement(GetNewDiaryElementPB(id), false); } _curCalendarDetailVo.CurDiaryElementCount.AddCount(elementRule.ElementType); CurLoveDiaryEditView.OperateBottom(false); IsModify = true; } else { string stype = ""; switch (elementRule.ElementType) { case ElementTypePB.Bg: stype = I18NManager.Get("LoveDiary_Background"); //"背景"; break; case ElementTypePB.Image: stype = I18NManager.Get("LoveDiary_Tags"); //"贴纸"; break; } string str = I18NManager.Get("LoveDiary_Hint12") + elementRule.UnlockClaim.Gem + I18NManager.Get("LoveDiary_Hint7") + stype; PopupManager.ShowConfirmWindow(str).WindowActionCallback = evt => { if (evt != WindowEvent.Ok) { return; } BuyElementReq req = new BuyElementReq(); req.ElementId = id; var dataBytes = NetWorkManager.GetByteData(req); NetWorkManager.Instance.Send <BuyElementRes>(CMD.DIARYC_ELEMENTS_BUY, dataBytes, OnMyBuyElementHandler); }; } }
private void TemplateSelect(int id) { Debug.LogError("TemplateSelect " + id); //这里需要根据模板ID选择 创建数据 并传到日记编辑panel // 如果读取模板数据 并生成 这里先全部默认空模板 string text = new AssetLoader().LoadTextSync(AssetLoader.GetDiaryTemplateDataPath(id.ToString())); CalendarDetailVo vo = JsonConvert.DeserializeObject <CalendarDetailVo>(text); CalendarDetailVo newvo = new CalendarDetailVo(_curDateTime.Year, _curDateTime.Month, _curDateTime.Day, vo.DiaryElements); SendMessage(new Message(MessageConst.MODULE_LOVEDIARY_SHOW_EDIT_PANEL, Message.MessageReciverType.DEFAULT, LoveDiaryEditType.Edit, newvo)); }
private void OnElementInputClick(string str) { //int id = 7000;// rule 默认 Text id==7000; ElementPB elementRule = CalendarDetailVo.GetElementRuleById(7000); if (_curCalendarDetailVo.CurDiaryElementCount.IsUpperLimited(elementRule.ElementType)) { FlowText.ShowMessage(I18NManager.Get("LoveDiary_Hint6"));//("已达上限!"); return; } CurLoveDiaryEditView.AddElement(GetNewDiaryElementPB(7000, str), true); _curCalendarDetailVo.CurDiaryElementCount.AddCount(elementRule.ElementType); //CurLoveDiaryEditView.OperateBottom(false); IsModify = true; }
public void SetData(LoveDiaryEditType editType, DiaryElementModel diaryElementModel, CalendarDetailVo calendarDetailVo) { _diaryElementModel = diaryElementModel; SetShowSelectItem(ElementTypePB.Image); SetShowLabelSelectItem(); for (int i = 0; i < calendarDetailVo.DiaryElements.Count; i++) { CreateElementItem(calendarDetailVo.DiaryElements[i]); } curLabelPb = calendarDetailVo.LabelElement; _curLabelElementId = curLabelPb.ElementId; SetTitleLabel(); }
private void CreateElementItem(DiaryElementPB diaryElementPB, bool immidiateInput = false) { ElementPB elementRule = CalendarDetailVo.GetElementRuleById(diaryElementPB.ElementId); string prefabPath = ""; switch (elementRule.ElementType) { case ElementTypePB.Image: prefabPath = "LoveDiary/Prefabs/Elements/ImageElement"; break; case ElementTypePB.Racket: prefabPath = "LoveDiary/Prefabs/Elements/ImageElement"; // prefabPath = "LoveDiary/Prefabs/LoveDiaryEditRacketItem"; break; case ElementTypePB.Bg: _editContains.GetChild(0).GetComponent <BgElememt>() .SetData(diaryElementPB, _editContains.GetComponent <RectTransform>()); SetBgElement(diaryElementPB.ElementId); return; case ElementTypePB.Text: prefabPath = "LoveDiary/Prefabs/Elements/WordElement"; break; default: return; } var prefab = GetPrefab(prefabPath); var item = Instantiate(prefab) as GameObject; item.transform.SetParent(_editContains, false); item.transform.localScale = Vector3.one; item.transform.eulerAngles = Vector3.zero; item.GetComponent <DiaryElementBase>().SetData(diaryElementPB, _editContains.GetComponent <RectTransform>()); if (immidiateInput) { _curClickElement = item; _curClickElement.GetComponent <DiaryElementBase>().loveDiaryEditType = LoveDiaryEditType.Edit; _curBottomEditType = LoveDiaryBottomEditType.SecondText; } UIEventListener.Get(item).onClick = OnClickElememtItem; return; }
public void SetData(LoveDiaryEditType editType, CalendarDetailVo calendarDetailVo) { _loveDiaryEditController.EditType = editType; _loveDiaryEditController.SetData(calendarDetailVo); }
public void AddCalendarDetailData(int Year, int Month, int Day, CalendarDetailVo vo) { int key = Year * 10000 + Month * 100 + Day; _calendarDetailDic[key] = vo; }