Пример #1
0
        /// <summary>
        /// 导入按钮
        /// </summary>
        /// <param name="barList"></param>
        /// <param name="clearOldData"></param>
        /// <returns></returns>
        public bool ImportButton(IList <BarItem> barList, string sFunid, bool clearOldData)
        {
            bool ret = false;

            _ButtonInserted = 0;
            _ButtonUpdated  = 0;
            if (clearOldData)
            {
                MakeDeletedBarFunction(sFunid); //删除按钮
            }
            GetMaxAuthorid(sFunid);             //获取授权码
            for (int i = 0; i < barList.Count; i++)
            {
                UpdateButton((BarItem)barList[i], sFunid);
            }

            DataTable dt = _AuthorityItem.GetChanges();

            if (dt != null)
            {
                DataSet ds = new DataSet();
                ds.Tables.Add(dt);
                bool success = _BarDataDictBridge.Update(ds); //保存数据
                if (success)
                {
                    _AuthorityItem.AcceptChanges();
                }
                ret = success;
            }
            else
            {
                ret = true;
            }
            return(ret);
        }
Пример #2
0
        /// <summary>
        /// 保存数据字典
        /// </summary>
        /// <param name="updateType">本次操作状态(新增/修改)</param>
        /// <returns></returns>
        public virtual bool Update(UpdateType updateType)
        {
            DataTable original = null;

            //提交缓存数据,确保输入框的数据已提交到绑定的数据源,将记录状态改变Unchanged.
            _DataBinder.AcceptChanges();

            //再还原记录的状态
            if (updateType == UpdateType.Modify)
            {
                _DataBinder.Rows[0].SetModified();
            }
            if (updateType == UpdateType.Add)
            {
                _DataBinder.Rows[0].SetAdded();
            }

            //创建一个副本用于保存
            DataSet data = new DataSet();

            data.Tables.Add(_DataBinder.Copy());

            //取当前记录的主键值
            string key = ConvertEx.ToString(_DataBinder.Rows[0][_KeyFieldName]);

            //如启用日志功能记录本次修改
            if (_WriteDataLog)
            {
                original = _DataDictBridge.GetDataByKey(key); //保存前的原始数据
                this.WriteLog(original, _DataBinder);         //保存修改日志
            }

            //调用数据层的方法提交数据
            return(_DataDictBridge.Update(data));
        }
Пример #3
0
        /// <summary>
        /// 保存数据字典
        /// </summary>
        /// <param name="updateType">本次操作状态(新增/修改)</param>
        /// <returns></returns>
        public virtual bool Update(UpdateType updateType)
        {
            DataTable original = null;

            //提交缓存数据,确保输入框的数据已提交到绑定的数据源,将记录状态改变Unchanged.
            _DataBinder.AcceptChanges();

            //再还原记录的状态
            if (updateType == UpdateType.Modify)
            {
                _DataBinder.Rows[0].SetModified();
            }
            if (updateType == UpdateType.Add)
            {
                _DataBinder.Rows[0].SetAdded();
            }

            //创建一个副本用于保存
            DataSet data = new DataSet();

            data.Tables.Add(_DataBinder.Copy());

            // 判断公共字段 CREATEBY、CREATETIME、MODIFYBY、MODIFYTIME、ISDELETED

            if (data.Tables[0].Columns.Contains("ISDELETED") == true && data.Tables[0].Rows[0]["ISDELETED"] == DBNull.Value)
            {
                data.Tables[0].Rows[0]["ISDELETED"] = false;
            }
            if (data.Tables[0].Columns.Contains("CREATEBY") == true && data.Tables[0].Rows[0]["CREATEBY"] == DBNull.Value)
            {
                data.Tables[0].Rows[0]["CREATEBY"] = Loginer.CurrentUser.Account;
            }
            if (data.Tables[0].Columns.Contains("CREATETIME") == true && data.Tables[0].Rows[0]["CREATETIME"] == DBNull.Value)
            {
                data.Tables[0].Rows[0]["CREATETIME"] = DateTime.Now;
            }
            if (data.Tables[0].Columns.Contains("MODIFYBY") == true && data.Tables[0].Rows[0]["MODIFYBY"] == DBNull.Value)
            {
                data.Tables[0].Rows[0]["MODIFYBY"] = Loginer.CurrentUser.Account;
            }
            if (data.Tables[0].Columns.Contains("MODIFYTIME") == true && data.Tables[0].Rows[0]["MODIFYTIME"] == DBNull.Value)
            {
                data.Tables[0].Rows[0]["MODIFYTIME"] = DateTime.Now;
            }

            //取当前记录的主键值
            string key = ConvertEx.ToString(_DataBinder.Rows[0][_KeyFieldName]);

            //如启用日志功能记录本次修改
            if (_WriteDataLog)
            {
                original = _DataDictBridge.GetDataByKey(key); //保存前的原始数据
                this.WriteLog(original, _DataBinder);         //保存修改日志
            }

            //调用数据层的方法提交数据
            return(_DataDictBridge.Update(data));
        }
Пример #4
0
        /// <summary>
        /// 保存附件
        /// </summary>
        /// <param name="storage">附件数据</param>
        public void SaveAttachedFile(DataTable storage)
        {
            DataTable temp = storage.GetChanges(); //获取修改的记录

            if (temp != null)                      //有新增或修改附件,保存数据
            {
                IBridge_DataDict bridge = BridgeFactory.CreateDataDictBridge(typeof(tb_AttachFile));
                DataSet          ds     = new DataSet();
                ds.Tables.Add(temp);
                bridge.Update(ds);
            }
        }
Пример #5
0
        public bool SaveGroup(DataSet save)
        {
            IBridge_DataDict dataDict = BridgeFactory.CreateDataDictBridge(typeof(TUserGroup));

            return(dataDict.Update(save));
        }