Example #1
0
        public bool SaveWorkFlowLog(D_Report_Model model, D_WorkFlowLog_Model logModel)
        {
            NHibernate.ITransaction tran = NhSession.BeginTransaction();
            try
            {
                logModel.ReportGuid = model;

                NhSession.SaveOrUpdate(model.ReportD2);
                NhSession.SaveOrUpdate(model);
                if (model.ReportD8DataModels.Count > 0)
                {
                    foreach (var item in model.ReportD8DataModels)
                    {
                        NhSession.SaveOrUpdate(item);
                    }
                }
                if (model.WorkFlow_Models.Count > 0)
                {
                    foreach (var item in model.WorkFlow_Models)
                    {
                        NhSession.SaveOrUpdate(item);
                    }
                }
                if (model.WorkFlowLog_Models.Count > 0)
                {
                    foreach (var item in model.WorkFlowLog_Models)
                    {
                        NhSession.SaveOrUpdate(item);
                    }
                }

                NhSession.SaveOrUpdate(model);

                tran.Commit();
                return(true);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                if (!tran.WasCommitted && !tran.WasRolledBack)
                {
                    tran.Rollback();
                }
            }
        }
Example #2
0
        public IList <D_WorkFlowLog_Model> GetAllByPage(int startCount, int rowCount, D_Report_Model reportModel, out int totalCount)
        {
            ICriteria ic = NhSession.CreateCriteria(typeof(D_WorkFlowLog_Model));

            ic.Add(Restrictions.Eq("ReportGuid", reportModel));

            ICriteria pageCrit = CriteriaTransformer.Clone(ic);

            totalCount = Convert.ToInt32(pageCrit.SetProjection(Projections.RowCount()).UniqueResult());

            IList <D_WorkFlowLog_Model> list = ic.SetFirstResult(startCount).SetMaxResults(rowCount).List <D_WorkFlowLog_Model>();

            return(list);
        }