Пример #1
0
 public static ZuzhiChengyuan Chuangjian(int chengyuanId, string chengyuanMingcheng, ChengyuanLeixing chengyuanLeixing)
 {
     ZuzhiChengyuan chengyuan = null;
     if (chengyuanLeixing == ChengyuanLeixing.Yonghuzu)
     {
         chengyuan = new Yonghuzu(chengyuanId, chengyuanMingcheng);
     }
     else if (chengyuanLeixing == ChengyuanLeixing.Bumen)
     {
         chengyuan = new Bumen(chengyuanId, chengyuanMingcheng);
     }
     else
     {
         throw new ArgumentException("找不到成员类型:" + (int)chengyuanLeixing);
     }
     return chengyuan;
 }
Пример #2
0
 public void TianjiaQuanxian(int chengyuanId, string chengyuanMingcheng, ChengyuanLeixing chengyuanLeixing,
                             QuanxianZhi quanxianZhi)
 {
     lock (_lock)
     {
         if (_quanxianList.Any(x => x.Chengyuan.Id == chengyuanId && x.Chengyuan.Leixing == chengyuanLeixing))
         {
             throw new ChengyuanQuanxianChongfuException();
         }
         var model = new QuanxianDataModel();
         model.ChengyuanId = chengyuanId;
         model.ChengyuanLeixing = (int) chengyuanLeixing;
         model.ChengyuanMingcheng = chengyuanMingcheng;
         model.Mulu = Id;
         model.Zhi = (int) quanxianZhi;
         model.Id = (int) NHibernateHelper.CurrentSession.Save(model);
         var quanxian = new Quanxian(model.Id, quanxianZhi,
                                     ZuzhiChengyuanHelper.Chuangjian(chengyuanId, chengyuanMingcheng,
                                                                     chengyuanLeixing));
         quanxian.ShanchuHou += Quanxian_ShanchuHou;
         List<Quanxian> quanxianList = _quanxianList.ToList();
         quanxianList.Add(quanxian);
         _quanxianList = quanxianList;
     }
 }