Esempio n. 1
0
        public IEnumerable <T> Get(NHibernate.IQuery query, int baseIndex, short pageSize, out int count, string sortFieldName, SortDirection sortDirection)
        {
            count = query.List <T>().Count;

            //if pageSize>0 then do paging, otherwise no paging and all records will be displayed
            if (pageSize > 0)
            {
                query.SetFirstResult(baseIndex)
                .SetMaxResults(pageSize)
                .SetMaxResults(pageSize);
            }

            IList <T> result = query.List <T>();

            return(result);
        }
Esempio n. 2
0
        /// <summary>
        /// 通过EPCID查询
        /// </summary>
        /// <param name="sql"></param>
        /// <param name="isSetSupplier"></param>
        /// <param name="isSetSpec"></param>
        /// <returns></returns>
        public AscmContainer GetByEpcId(string epcId, string sessionKey = null)
        {
            AscmContainer ascmContainer = null;

            try
            {
                NHibernate.ISession session = YnDaoHelper.GetInstance().nHibernateHelper.GetCurrentSession();
                if (sessionKey != null)
                {
                    session = YnDaoHelper.GetInstance().nHibernateHelper.GetCurrentSession(sessionKey);
                }
                NHibernate.IQuery query = session.CreateQuery("from AscmContainer where rfid='" + epcId + "' ");
                if (query.List().Count > 0)
                {
                    ascmContainer = query.UniqueResult <AscmContainer>();
                    if (!string.IsNullOrEmpty(ascmContainer.supplierId.ToString()))
                    {
                        ascmContainer.supplier = MideaAscm.Services.Base.AscmSupplierService.GetInstance().Get(ascmContainer.supplierId, sessionKey);
                    }
                    if (!string.IsNullOrEmpty(ascmContainer.specId.ToString()))
                    {
                        ascmContainer.containerSpec = MideaAscm.Services.SupplierPreparation.AscmContainerSpecService.GetInstance().Get(ascmContainer.specId, sessionKey);
                    }
                }
            }
            catch (Exception ex)
            {
                YnBaseClass2.Helper.LogHelper.GetLog().Error("查询失败(Find AscmContainer)", ex);
                throw ex;
            }
            return(ascmContainer);
        }
Esempio n. 3
0
 /// <summary>
 /// Gets the entity list  from respersitory.
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="hQuery">The hibernate query string.</param>
 /// <param name="paras">The parameters in the query string,a dictionary,its key represent the parameter name,and its value is the parameter value.</param>
 /// <returns></returns>
 public IList <T> GetList <T>(string hQuery, Dictionary <string, object> paras)
 {
     try
     {
         OpenConnect();
         Hib.IQuery query = _Session.CreateQuery(hQuery);
         if (paras != null)
         {
             foreach (string key in paras.Keys)
             {
                 query.SetParameter(key, paras[key]);
             }
         }
         return(query.List <T>());
     }
     catch (Exception ex)
     {
         LogExepttion(ex);
         throw;
     }
     finally
     {
         Disconnect();
     }
 }
Esempio n. 4
0
        public ActionResult Registration(Models.RegistrationModel reg_model)
        {
            if (Session["session_key"] != null)
            {
                return(RedirectToAction("index"));
            }
            using (NHibernate.ISession session = NHibernateSessionManeger.OpenSession())
            {
                if (!ModelState.IsValid)
                {
                    return(View());
                }
                else
                {
                    NHibernate.IQuery query = session.CreateQuery("FROM Users WHERE name = '" + reg_model.Name + "'");
                    if (query.List <Models.Users>().Count() > 0)
                    {
                        ViewData["ErrorMessage"] = "    Пользователь с ником " + reg_model.Name + " уже занят   ";
                        return(View());
                    }

                    var usr = new Models.Users();
                    usr.Email = reg_model.Email;
                    usr.Name  = reg_model.Name;
                    var    salt             = Guid.NewGuid().ToByteArray();
                    string hashsed_password = Convert.ToBase64String(CryptSharp.Utility.SCrypt.ComputeDerivedKey(System.Text.UTF8Encoding.UTF8.GetBytes(reg_model.Password), salt, 16384, 8, 1, null, 128));
                    usr.HashPassword = hashsed_password;
                    usr.Salt         = Convert.ToBase64String(salt);
                    session.Save(usr);

                    return(RedirectToAction("authorization"));
                }
            }
        }
Esempio n. 5
0
        /// <summary>
        /// 普通查询
        /// </summary>
        /// <typeparam name="T">类型</typeparam>
        /// <param name="hql">查询语句</param>
        /// <returns></returns>
        public static List <T> GetEntitiesByHQL <T>(string hql)
        {
            BasicDataManipulation baseData = new BasicDataManipulation();
            ISession Session = baseData.GetSession();
            List <T> list    = new List <T>();

            if (Session == null)
            {
                throw new Exception("打开数据库连接失败!");
            }
            try
            {
                NHibernate.IQuery query = Session.CreateQuery(hql);
                list = query.List <T>().ToList();
                return(list);
            }
            catch (Exception ex)
            {
                LogAPI.Debug(ex);
                return(list);
            }
            finally
            {
                if (Session != null)
                {
                    Session.Dispose();
                    Session = null;
                }
            }
        }
Esempio n. 6
0
        public IList FindByMainId(string id)
        {
            NHibernate.ISession session = HibernateTemplate.SessionFactory.OpenSession();
            NHibernate.IQuery   query   = session.CreateQuery("from MasterInfo m where m.InfoCode=:infoCode");
            query.SetParameter("infoCode", id);

            return(query.List());
        }
Esempio n. 7
0
        public IEnumerable <T> Get(NHibernate.IQuery query, int pageIndex, int pageSize, out int count, string sortFieldName, SortDirection sortDirection)
        {
            count = query.List <T>().Count;

            //if pageSize>0 then do paging, otherwise no paging and all records will be displayed
            if (pageSize > 0)
            {
                query.SetFirstResult((int)pageIndex * pageSize)
                .SetMaxResults(pageSize)
                .SetMaxResults(pageSize);
            }

            IList <T> result = query.List <T>();

            //var rowCount = query.SetFirstResult(0).FutureValue<Int32>();
            //count = rowCount.Value;
            return(result);
        }
Esempio n. 8
0
        /// <summary>
        /// 分页查询
        /// </summary>
        /// <typeparam name="T">类型</typeparam>
        /// <param name="hql">查询语句</param>
        /// <param name="skip">页数</param>
        /// <param name="take">每页显示条数</param>
        /// <param name="count">总数</param>
        /// <returns></returns>
        public static List <T> GetEntitiesByHQL <T>(string hql, int skip, int take, out int count)
        {
            BasicDataManipulation baseData = new BasicDataManipulation();
            ISession Session = baseData.GetSession();
            List <T> list    = new List <T>();

            if (Session == null)
            {
                throw new Exception("打开数据库连接失败!");
            }
            try
            {
                NHibernate.IQuery query1   = Session.CreateQuery(hql);
                string            hqlcount = "";
                int fromIndex = hql.IndexOf("from");
                int toIndex   = hql.IndexOf("order");
                int len       = 0;
                if (toIndex == -1)
                {
                    hqlcount = "select count(*) " + hql.Substring(fromIndex);
                }
                else
                {
                    len      = toIndex - fromIndex;
                    hqlcount = "select count(*) " + hql.Substring(fromIndex, len);
                }
                NHibernate.IQuery querycount = Session.CreateQuery(hqlcount);
                try
                {
                    count = int.Parse(querycount.UniqueResult().ToString());
                }
                catch
                {
                    count = 0;
                }
                NHibernate.IQuery query = query1.SetFirstResult(skip).SetMaxResults(take);
                list = query.List <T>().ToList();
                return(list);
            }
            catch (Exception ex)
            {
                count = 0;
                LogAPI.Debug(ex);
                return(list);
            }
            finally
            {
                if (Session != null)
                {
                    Session.Dispose();
                    Session = null;
                }
            }
        }
Esempio n. 9
0
 public ArrayList UnPaidUserCountByMonth()
 {
     using (NHibernate.ISession session = SessionFactory.GetNewSession())
     {
         using (NHibernate.ITransaction transaction = session.BeginTransaction())
         {
             ArrayList alstUser = new ArrayList();
             try
             {
                 NHibernate.IQuery query = session.CreateSQLQuery("Select month(CreateDate),Count(*) from User where PaymentStatus='unpaid' group by month(CreateDate)");
                 foreach (var item in query.List())
                 {
                     alstUser.Add(item);
                 }
                 return(alstUser);
             }
             catch (Exception Err)
             {
                 Console.Write(Err.StackTrace);
                 return(alstUser);
             }
         }
     }
 }
Esempio n. 10
0
 public IEnumerable <T> Get(NHibernate.IQuery query)
 {
     return(query.List <T>());
 }