예제 #1
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);
        }
예제 #2
0
 public void Update(AscmContainer ascmContainer)
 {
     try
     {
         using (ITransaction tx = YnDaoHelper.GetInstance().nHibernateHelper.GetCurrentSession().BeginTransaction())
         {
             try
             {
                 YnDaoHelper.GetInstance().nHibernateHelper.Update <AscmContainer>(ascmContainer);
                 tx.Commit();//正确执行提交
             }
             catch (Exception ex)
             {
                 tx.Rollback();//回滚
                 YnBaseClass2.Helper.LogHelper.GetLog().Error("修改失败(Update AscmContainer)", ex);
                 throw ex;
             }
         }
     }
     catch (Exception ex)
     {
         YnBaseClass2.Helper.LogHelper.GetLog().Error("修改失败(Save AscmContainer)", ex);
         throw ex;
     }
 }
예제 #3
0
 public void Delete(AscmContainer ascmContainer)
 {
     try
     {
         YnDaoHelper.GetInstance().nHibernateHelper.Delete <AscmContainer>(ascmContainer);
     }
     catch (Exception ex)
     {
         YnBaseClass2.Helper.LogHelper.GetLog().Error("删除失败(Delete AscmContainer)", ex);
         throw ex;
     }
 }
예제 #4
0
 public void Delete(string sn)
 {
     try
     {
         AscmContainer ascmContainer = Get(sn);
         Delete(ascmContainer);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
예제 #5
0
        public AscmContainer Get(string sn)
        {
            AscmContainer ascmContainer = null;

            try
            {
                ascmContainer = YnDaoHelper.GetInstance().nHibernateHelper.Get <AscmContainer>(sn);
            }
            catch (Exception ex)
            {
                YnBaseClass2.Helper.LogHelper.GetLog().Error("查询失败(Get AscmContainer)", ex);
                throw ex;
            }
            return(ascmContainer);
        }
예제 #6
0
        public void Update(AscmContainerDelivery ascmContainerDelivery, int readingHeadId, string sessionKey)
        {
            try
            {
                AscmContainer ascmContainer = null;
                if (!string.IsNullOrEmpty(ascmContainerDelivery.containerSn))
                {
                    ascmContainer = YnDaoHelper.GetInstance().nHibernateHelper.Get <AscmContainer>(ascmContainerDelivery.containerSn, sessionKey);
                    if (ascmContainer != null)
                    {
                        ascmContainer.place       = readingHeadId.ToString();
                        ascmContainer.storeInTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                }

                using (ITransaction tx = YnDaoHelper.GetInstance().nHibernateHelper.GetCurrentSession(sessionKey).BeginTransaction())
                {
                    try
                    {
                        YnDaoHelper.GetInstance().nHibernateHelper.Update <AscmContainerDelivery>(ascmContainerDelivery, sessionKey);

                        if (ascmContainer != null)
                        {
                            YnDaoHelper.GetInstance().nHibernateHelper.Update <AscmContainer>(ascmContainer, sessionKey);
                        }

                        tx.Commit();//正确执行提交
                    }
                    catch (Exception ex)
                    {
                        tx.Rollback();//回滚
                        YnBaseClass2.Helper.LogHelper.GetLog().Error("修改失败(Update AscmContainerDelivery)", ex);
                        throw ex;
                    }
                }
            }
            catch (Exception ex)
            {
                YnBaseClass2.Helper.LogHelper.GetLog().Error("修改失败(Save AscmContainerDelivery)", ex);
                throw ex;
            }
        }
예제 #7
0
        public AscmContainer GetAllInfo(string sn)
        {
            AscmContainer ascmContainer = null;

            try
            {
                ascmContainer = YnDaoHelper.GetInstance().nHibernateHelper.Get <AscmContainer>(sn);
                if (ascmContainer != null)
                {
                    ascmContainer.SpecName = MideaAscm.Services.SupplierPreparation.AscmContainerSpecService.GetInstance().Get(ascmContainer.specId).spec;
                    ascmContainer.supplier = MideaAscm.Services.Base.AscmSupplierService.GetInstance().Get(ascmContainer.supplierId);
                }
            }
            catch (Exception ex)
            {
                YnBaseClass2.Helper.LogHelper.GetLog().Error("查询失败(Get AscmContainer)", ex);
                throw ex;
            }
            return(ascmContainer);
        }