예제 #1
0
        /// <summary>
        /// 保存字段同时,更新模板
        /// </summary>
        /// <param name="view"></param>
        public EntityAttributeEntity SaveAttributeWithTemplate(EntityAttributeView view)
        {
            EntityAttributeEntity attrEntity = null;
            var session = SessionFactory.CreateSession();

            try
            {
                session.BeginTrans();

                //保存字段
                var eam = new EntityAttributeManager();
                attrEntity = eam.SaveAttribute(session.Connection, view.EntityAttribute, session.Transaction);

                //保存模板内容
                var edm = new EntityDefManager();
                edm.SaveTemplateWithHTMLContent(session.Connection, view.EntityDef, session.Transaction);

                session.Commit();
            }
            catch (System.Exception ex)
            {
                session.Rollback();
                throw;
            }
            finally
            {
                session.Dispose();
            }
            return(attrEntity);
        }
예제 #2
0
        /// <summary>
        /// 保存属性
        /// </summary>
        /// <param name="entity"></param>
        public EntityAttributeEntity SaveAttribute(EntityAttributeEntity entity)
        {
            EntityAttributeEntity attrEntity = null;
            var session = SessionFactory.CreateSession();

            try
            {
                session.BeginTrans();

                //保存字段
                var eam = new EntityAttributeManager();
                attrEntity = eam.SaveAttribute(session.Connection, entity, session.Transaction);

                session.Commit();
            }
            catch (System.Exception ex)
            {
                session.Rollback();
                throw;
            }
            finally
            {
                session.Dispose();
            }
            return(attrEntity);
        }
예제 #3
0
        public ResponseResult <EntityAttributeEntity> SaveAttribute(EntityAttributeEntity entity)
        {
            var result = ResponseResult <EntityAttributeEntity> .Default();

            try
            {
                var attrEntity = FBMasterService.SaveAttribute(entity);
                result = ResponseResult <EntityAttributeEntity> .Success(attrEntity);
            }
            catch (System.Exception ex)
            {
                result = ResponseResult <EntityAttributeEntity> .Error(
                    string.Format("保存表单字段失败, 错误:{0}", ex.Message)
                    );
            }
            return(result);
        }
예제 #4
0
        /// <summary>
        /// 查询属性字段是否已经存在
        /// </summary>
        /// <param name="conn"></param>
        /// <param name="entity"></param>
        /// <param name="trans"></param>
        /// <returns></returns>
        private int IsExistKey(IDbConnection conn, EntityAttributeEntity entity, IDbTransaction trans)
        {
            int id   = -1;
            var sql  = @"SELECT ID FROM EavEntityAttribute 
                        WHERE EntityDefID=@entityDefID 
                            AND DivCtrlKey=@divCtrlKey";
            var list = Repository.Query <EntityAttributeEntity>(conn, sql,
                                                                new {
                entityDefID = entity.EntityDefID,
                divCtrlKey  = entity.DivCtrlKey
            }, trans).ToList();;

            if (list != null && list.Count() == 1)
            {
                id = list[0].ID;
            }

            return(id);
        }
예제 #5
0
        /// <summary>
        /// 保存字段
        /// </summary>
        /// <param name="conn">链接</param>
        /// <param name="entity">实体</param>
        /// <param name="trans">事务</param>
        /// <returns></returns>
        internal EntityAttributeEntity SaveAttribute(IDbConnection conn, EntityAttributeEntity entity,
                                                     IDbTransaction trans)
        {
            var fem    = new EntityAttributeManager();
            int attrID = IsExistKey(conn, entity, trans);

            if (attrID > 0)
            {
                entity.ID       = attrID;
                entity.AttrCode = PinyinConverter.ConvertFirst(entity.AttrName);
                Repository.Update <EntityAttributeEntity>(conn, entity, trans);
            }
            else
            {
                entity.AttrCode = PinyinConverter.ConvertFirst(entity.AttrName);
                var newAttrID = Repository.Insert <EntityAttributeEntity>(conn, entity, trans);
                entity.ID = newAttrID;
            }

            return(entity);
        }