예제 #1
0
        public void InsertRowFlow(EntityAttrValueFlowItem item)
        {
            //首先保存表单数据
            int newEntityInfoID = 0;
            var session         = SessionFactory.CreateSession();

            try
            {
                session.BeginTrans();

                //保存实体基本信息
                var entityInfo = item.EntityInfo;
                entityInfo.CreatedDatetime     = System.DateTime.Now;
                entityInfo.LastUpdatedDatetime = System.DateTime.Now;
                newEntityInfoID = QuickRepository.Insert <EntityInfoEntity>(session.Connection, entityInfo, session.Transaction);

                //保存实体扩展属性
                foreach (var v in item.EntityAttrValueList)
                {
                    v.EntityInfoID = newEntityInfoID;
                }

                var attrValueList = item.EntityAttrValueList;
                var eavManager    = new EntityAttrValueManager();
                eavManager.InsertBatch(session.Connection, attrValueList, session.Transaction);

                session.Commit();
            }
            catch (System.Exception ex)
            {
                session.Rollback();
                throw;
            }
            finally
            {
                session.Dispose();
            }

            //启动流程
        }