public ZhishiChakanModel(Zhishi zhishi) { this.banbenhao = zhishi.Banben.ToString() + ".0"; this.chuangjianren = WebHelper.GetYonghuXingming(zhishi.Chuangjianren); this.chuangjianShijian = zhishi.ChuangjianShijian.ToString("yyyy-MM-dd"); string yonghu = WebHelper.DangqianYonghuZhanghao; if (zhishi.Mulu.YouYijiDaanQuanxian(yonghu) && zhishi.YijiDaan != null) { this.daanHtml += this.ShengchengHtml(zhishi.YijiDaan); } if (zhishi.Mulu.YouErjiDaanQuanxian(yonghu) && zhishi.ErjiDaan != null) { this.daanHtml += this.ShengchengHtml(zhishi.ErjiDaan); } if (zhishi.Mulu.YouSanjiDaanQuanxian(yonghu) && zhishi.SanjiDaan != null) { this.daanHtml += this.ShengchengHtml(zhishi.SanjiDaan); } if (zhishi.Mulu.YouSijiDaanQuanxian(yonghu) && zhishi.SijiDaan != null) { this.daanHtml += this.ShengchengHtml(zhishi.SijiDaan); } if (zhishi.Mulu.YouWujiDaanQuanxian(yonghu) && zhishi.WujiDaan != null) { this.daanHtml += this.ShengchengHtml(zhishi.WujiDaan); } this.id = zhishi.Id; this.shunxu = zhishi.Shunxu; this.wenti = zhishi.Wenti; }
public ZhishiModel(Zhishi zhishi) { string yonghu = WebHelper.DangqianYonghuZhanghao; InitializeDaanGuanliQuanxian(zhishi, yonghu); banbenhao = zhishi.Banben.ToString(CultureInfo.InvariantCulture) + ".0"; chuangjianren = WebHelper.GetYonghuXingming(zhishi.Chuangjianren); chuangjianShijian = zhishi.ChuangjianShijian.ToString("yyyy-MM-dd"); //string yonghu = WebHelper.DangqianYonghuZhanghao; if (zhishi.YijiDaan != null && youYijiDaanGuanliQuanxian) { yijiDaan = zhishi.YijiDaan.Neirong; yijiDaanFujian = zhishi.YijiDaan.FujianList.Select(x => new FujianModel(x)).ToList(); } if (zhishi.ErjiDaan != null && youErjiDaanGuanliQuanxian) { erjiDaan = zhishi.ErjiDaan.Neirong; erjiDaanFujian = zhishi.ErjiDaan.FujianList.Select(x => new FujianModel(x)).ToList(); } id = zhishi.Id; if (zhishi.SanjiDaan != null && youSanjiDaanGuanliQuanxian) { sanjiDaan = zhishi.SanjiDaan.Neirong; sanjiDaanFujian = zhishi.SanjiDaan.FujianList.Select(x => new FujianModel(x)).ToList(); } if (zhishi.SijiDaan != null && youSijiDaanGuanliQuanxian) { sijiDaan = zhishi.SijiDaan.Neirong; sijiDaanFujian = zhishi.SijiDaan.FujianList.Select(x => new FujianModel(x)).ToList(); } if (zhishi.WujiDaan != null && youWujiDaanGuanliQuanxian) { wujiDaan = zhishi.WujiDaan.Neirong; wujiDaanFujian = zhishi.WujiDaan.FujianList.Select(x => new FujianModel(x)).ToList(); } wentiBiaoti = zhishi.Wenti; if (zhishi.Zhidingde.HasValue && zhishi.Zhidingde.Value) { wentiBiaoti = "<font color='red'>【置顶】</font>" + wentiBiaoti; } wenti = zhishi.Wenti; bianjiren = WebHelper.GetYonghuXingming(zhishi.Bianjiren); if (zhishi.Bianjizhong) { kebianji = zhishi.Bianjiren == WebHelper.DangqianYonghuZhanghao; } else { kebianji = true; } shunxu = zhishi.Shunxu; xiugairen = zhishi.Xiugairen; if (zhishi.XiugaiShijian.HasValue) { xiugaiShijian = zhishi.XiugaiShijian.Value.ToString("yyyy-MM-dd"); } }
public ZhishiXinxi(Zhishi zhishi) { this.Id = zhishi.Id; this.Wenti = zhishi.Wenti; this.Chuangjianren = zhishi.Chuangjianren; this.ChuangjianShijian = zhishi.ChuangjianShijian; this.Banben = zhishi.Banben; this.Shunxu = zhishi.Shunxu; }
public LishiZhishiDataModel(Zhishi zhishi) { this.Wenti = zhishi.Wenti; this.Banben = zhishi.Banben; this.Chuangjianren = zhishi.Chuangjianren; this.YijiDaan = zhishi.YijiDaan != null ? zhishi.YijiDaan.Id : 0; this.ErjiDaan = zhishi.ErjiDaan != null ? zhishi.ErjiDaan.Id : 0; this.SanjiDaan = zhishi.SanjiDaan != null ? zhishi.SanjiDaan.Id : 0; this.SijiDaan = zhishi.SijiDaan != null ? zhishi.SijiDaan.Id : 0; this.WujiDaan = zhishi.WujiDaan != null ? zhishi.WujiDaan.Id : 0; this.ZhishiId = zhishi.Id; }
private void InitializeDaanGuanliQuanxian(Zhishi zhishi,string yonghu) { Mulu mulu = zhishi.Mulu; youYijiDaanGuanliQuanxian = mulu.YouDaanGuanliQuanxian(yonghu, QuanxianZhi.YijiDaan); youErjiDaanGuanliQuanxian = mulu.YouDaanGuanliQuanxian(yonghu, QuanxianZhi.ErjiDaan); youSanjiDaanGuanliQuanxian = mulu.YouDaanGuanliQuanxian(yonghu, QuanxianZhi.SanjiDaan); youSijiDaanGuanliQuanxian = mulu.YouDaanGuanliQuanxian(yonghu, QuanxianZhi.SijiDaan); youWujiDaanGuanliQuanxian = mulu.YouDaanGuanliQuanxian(yonghu, QuanxianZhi.WujiDaan); }
private void Zhishi_Shanchuhou(Zhishi args) { lock (_lock) { List<Zhishi> zhishiList = _zhishiList.ToList(); zhishiList.Remove(args); _zhishiList = zhishiList; } }
private bool YouGuanjianzi(string yonghu, Zhishi zhishi, string guanjianzi) { if (zhishi.Wenti.IndexOf(guanjianzi, StringComparison.InvariantCultureIgnoreCase) > -1) { return true; } string zhishiDaan = ""; bool fujianSousuo = false; if (YouYijiDaanQuanxian(yonghu)) { zhishiDaan += zhishi.YijiDaan.Neirong; if (!fujianSousuo) { fujianSousuo = zhishi.YijiDaan.YouFujian(guanjianzi); } } if (YouErjiDaanQuanxian(yonghu)) { zhishiDaan += zhishi.ErjiDaan.Neirong; if (!fujianSousuo) { fujianSousuo = zhishi.ErjiDaan.YouFujian(guanjianzi); } } if (YouSanjiDaanQuanxian(yonghu)) { zhishiDaan += zhishi.SanjiDaan.Neirong; if (!fujianSousuo) { fujianSousuo = zhishi.SanjiDaan.YouFujian(guanjianzi); } } if (YouSijiDaanQuanxian(yonghu)) { zhishiDaan += zhishi.SijiDaan.Neirong; if (!fujianSousuo) { fujianSousuo = zhishi.SijiDaan.YouFujian(guanjianzi); } } if (YouWujiDaanQuanxian(yonghu)) { zhishiDaan += zhishi.WujiDaan.Neirong; if (!fujianSousuo) { fujianSousuo = zhishi.WujiDaan.YouFujian(guanjianzi); } } if (zhishiDaan.IndexOf(guanjianzi, StringComparison.InvariantCultureIgnoreCase) > -1 || fujianSousuo) { return true; } return false; }
private void Xiugaihou(Zhishi zhishi, XiugaihouEventArgs<ZhishiXinxi> args) { lock (_lock) { if (args.XiugaiqianXinxi.Shunxu != zhishi.Shunxu) { DizhengZhishiShunxu(zhishi); } PaiXunZhishi(); } }
private void DizhengZhishiShunxu(Zhishi zhishi) { if (zhishi.Shunxu.HasValue && _zhishiList.Any(x => x != zhishi && x.Shunxu == zhishi.Shunxu)) { _zhishiList.Where(x => x != zhishi && x.Shunxu.HasValue && x.Shunxu >= zhishi.Shunxu) .ToList().ForEach(x => x.InternalXiugaiShunxu(x.Shunxu.Value + 1)); } }
public void TianjiaZhishi(Zhishi zhishi) { if (_zhishiList.Contains(zhishi)) { throw new Exception("移动的目录中已经包含该知识"); } zhishi.Mulu._zhishiList.Remove(zhishi); _zhishiList.Add(zhishi); zhishi.XiugaiMulu(this); DizhengZhishiShunxu(zhishi); PaiXunZhishi(); }
public Zhishi ChuangjianZhishi(string wenti, int? shunxu, string chuangjianren, string yijiDaanNeirong, List<FujianXinxi> yijiDaanFujian, string erjiDaanNeirong, List<FujianXinxi> erjiDaanFujian, string sanjiDaanNeirong, List<FujianXinxi> sanjiDaanFujian, string sijiDaanNeirong, List<FujianXinxi> sijiDaanFujian, string wujiDaanNeirong, List<FujianXinxi> wujiDaanFujian, string yonghu) { lock (_lock) { wenti = wenti.Trim(); if (_zhishiList.Any(x => x.Wenti.Equals(wenti, StringComparison.InvariantCultureIgnoreCase))) { throw new Exception("创建失败,知识问题重复"); } if (string.IsNullOrEmpty(yijiDaanNeirong) && string.IsNullOrEmpty(erjiDaanNeirong) && string.IsNullOrEmpty(sanjiDaanNeirong) && string.IsNullOrEmpty(sijiDaanNeirong) && string.IsNullOrEmpty(wujiDaanNeirong)) { throw new Exception("创建失败,至少填写一个答案"); } Daan yijiDaan = null; Daan erjiDaan = null; Daan sanjiDaan = null; Daan sijiDaan = null; Daan wujiDaan = null; bool youYijiDaanGuanliQuanxian = YouDaanGuanliQuanxian(yonghu, QuanxianZhi.YijiDaan); bool youErjiDaanGuanliQuanxian = YouDaanGuanliQuanxian(yonghu, QuanxianZhi.ErjiDaan); bool youSanjiDaanGuanliQuanxian = YouDaanGuanliQuanxian(yonghu, QuanxianZhi.SanjiDaan); bool youSijiDaanGuanliQuanxian = YouDaanGuanliQuanxian(yonghu, QuanxianZhi.SijiDaan); bool youWujiDaanGuanliQuanxian = YouDaanGuanliQuanxian(yonghu, QuanxianZhi.WujiDaan); var model = new ZhishiDataModel(); model.Shunxu = shunxu; model.Banben = 1; model.Chuangjianren = chuangjianren; model.ChuangjianShijian = DateTime.Now; model.Mulu = Id; model.Wenti = wenti; if (youYijiDaanGuanliQuanxian) { yijiDaan = Zhishiku.ChuangjianDaan(yijiDaanNeirong, yijiDaanFujian); model.YijiDaan = yijiDaan.Id; } if (youErjiDaanGuanliQuanxian) { erjiDaan = Zhishiku.ChuangjianDaan(erjiDaanNeirong, erjiDaanFujian); model.ErjiDaan = erjiDaan.Id; } if (youSanjiDaanGuanliQuanxian) { sanjiDaan = Zhishiku.ChuangjianDaan(sanjiDaanNeirong, sanjiDaanFujian); model.SanjiDaan = sanjiDaan.Id; } if (youSijiDaanGuanliQuanxian) { sijiDaan = Zhishiku.ChuangjianDaan(sijiDaanNeirong, sijiDaanFujian); model.SijiDaan = sijiDaan.Id; } if (youWujiDaanGuanliQuanxian) { wujiDaan = Zhishiku.ChuangjianDaan(wujiDaanNeirong, wujiDaanFujian); model.WujiDaan = wujiDaan.Id; } var id = (int) NHibernateHelper.CurrentSession.Save(model); var zhishi = new Zhishi(id, wenti, yijiDaan, erjiDaan, sanjiDaan, sijiDaan, wujiDaan, chuangjianren, model.ChuangjianShijian, model.Banben, model.Shunxu, null, null, null, false); zhishi.Mulu = this; List<Zhishi> zhishiList = _zhishiList; zhishiList.Add(zhishi); _zhishiList = zhishiList.OrderBy(x => x.Shunxu).ToList(); zhishi.Shanchuhou += Zhishi_Shanchuhou; zhishi.Xiugaihou += Xiugaihou; DizhengZhishiShunxu(zhishi); PaiXunZhishi(); if (ChuangjianZhishihou != null) { ChuangjianZhishihou(this, zhishi); } return zhishi; } }
private void BangdingZhishiShijian(Zhishi zhishi) { zhishi.Shanchuhou += new TEventHandler<Zhishi>(Zhishi_Shanchuhou); }
private List<Zhishi> JiazaiZhishi(int muluId) { List<Zhishi> zhishiList = new List<Zhishi>(); List<ZhishiDataModel> dataModels = NHibernateHelper.CurrentSession.QueryOver<ZhishiDataModel>().Where(x => x.Mulu == muluId).List().ToList(); foreach (ZhishiDataModel model in dataModels) { List<LishiZhishi> lishiZhishi = this.JiazaiLishiZhishi(model.Id); Zhishi zhishi = new Zhishi(model.Id, model.Wenti, this.JiazaiDaan(model.YijiDaan), this.JiazaiDaan(model.ErjiDaan), this.JiazaiDaan(model.SanjiDaan), this.JiazaiDaan(model.SijiDaan), this.JiazaiDaan(model.WujiDaan), model.Chuangjianren, model.ChuangjianShijian, model.Banben, model.Shunxu, lishiZhishi, model.Xiugairen, model.XiugaiShijian, model.Zhidingde); zhishiList.Add(zhishi); this._zhishiList.Add(zhishi); this.BangdingZhishiShijian(zhishi); } return zhishiList; }
void ChuangjianZhishihou(Mulu sender, Zhishi args) { lock (_lock) { List<Zhishi> zhishiList = this._zhishiList.ToList(); zhishiList.Add(args); this._zhishiList = zhishiList; this.BangdingZhishiShijian(args); } }