Beispiel #1
0
        protected override bool DoEdit(RequestData data)
        {
            bool result = true;

            try
            {
                decimal levelID = decimal.Parse(data.Get("id"));
                T_THEPEAK_LEVEL_LIST_INFOModel model = new T_THEPEAK_LEVEL_LIST_INFOModel();
                this.GetModelValue(model, data);
                result = model.Update(T_THEPEAK_LEVEL_LIST_INFO.ID == levelID);

                var configSql  = SqlModel.SelectAll().From(DB.T_THEPEAK_LEVEL_CONFIG).Where(T_THEPEAK_LEVEL_CONFIG.PEAK_LEVE_ID == levelID);
                var configList = configSql.ExecToDynamicList();
                List <T_THEPEAK_LEVEL_CONFIGModel> listExit    = data.Get("extraData").Deserialize <List <T_THEPEAK_LEVEL_CONFIGModel> >();
                T_THEPEAK_LEVEL_CONFIGModel        configModel = new T_THEPEAK_LEVEL_CONFIGModel();
                List <decimal> configDelList = new List <decimal>();
                //信息保存
                if (listExit != null && listExit.Count > 0)
                {
                    foreach (var item in listExit)
                    {
                        bool exit = configList.FindIndex(c => StringHelper.DynamicToString(c["ID"]) == StringHelper.DynamicToString(item.ID)) > -1 ? true : false;
                        if (item.IS_STOP != 1 && item.LIMIT_CONFIG != 1)
                        {
                            continue;                                             //没用的配置信息,删除处理
                        }
                        //添加
                        if (!exit)
                        {
                            item.PEAK_LEVE_ID = levelID;
                            item.Insert();
                        }
                        //更新
                        else
                        {
                            item.Update(T_THEPEAK_LEVEL_CONFIG.ID == item.ID);
                        }
                        configDelList.Add(item.ID);
                    }
                    //删除子表
                    foreach (var delKey in configList)
                    {
                        if (!configDelList.Contains(decimal.Parse(delKey["ID"].ToString())))
                        {
                            configModel.Delete(T_THEPEAK_LEVEL_CONFIG.ID == decimal.Parse(delKey["ID"].ToString()));
                        }
                    }
                }

                FileUploadHandle.FileMessageSave(data, levelID.ToString());
            }
            catch (Exception ex)
            {
                result = false;
                base.AddLog(null, LogType.InsertOperate, "【编辑错峰等级配置】 " + ex.Message + ex.StackTrace);
            }
            return(result);
        }
Beispiel #2
0
        protected override bool DoDelete(RequestData data)
        {
            bool result = true;
            T_THEPEAK_LEVEL_LIST_INFOModel model = new T_THEPEAK_LEVEL_LIST_INFOModel();

            result = model.Delete(T_THEPEAK_LEVEL_LIST_INFO.ID == data.Get("id"));
            T_THEPEAK_LEVEL_CONFIGModel config = new T_THEPEAK_LEVEL_CONFIGModel();

            if (result)
            {
                config.Delete(T_THEPEAK_LEVEL_CONFIG.PEAK_LEVE_ID == data.Get("id"));
            }
            return(result);
        }