コード例 #1
0
        /// <summary>
        /// 修改指标数据
        /// </summary>
        /// <param name="Category"></param>
        /// <param name="Name"></param>
        /// <param name="OutID"></param>
        /// <param name="Value"></param>
        /// <returns></returns>
        public bool InsertAndUpdate(RequestSysMonitorIndexUpdateDTO request, bool NumberValuePlus = false)
        {
            using (DBEntities db = new DBEntities())
            {
                foreach (var item in request.Values)
                {
                    var model = db.SysMonitorIndexs.Where(a => a.Category == request.Category && a.Name == item.Key && a.OutID == request.OutID).FirstOrDefault();
                    if (model == null)
                    {
                        db.SysMonitorIndexs.Add(new Entity.SysMonitorIndex()
                        {
                            Category   = request.Category,
                            Name       = item.Key,
                            OutID      = request.OutID,
                            Value      = string.IsNullOrEmpty(item.Value)?"-":item.Value,
                            ModifyTime = DateTime.Now
                        });
                    }
                    else
                    {
                        //数字值递增(保留原来的指标)
                        if (NumberValuePlus)
                        {
                            //原数据和现在的数据都是数字类型
                            if (IsNumeric(model.Value) && IsNumeric(item.Value))
                            {
                                model.Value = item.Value;
                            }
                            else
                            {
                                model.Value = item.Value;
                            }
                        }
                        else
                        {
                            model.Value = item.Value;
                        }

                        model.ModifyTime = DateTime.Now;
                        db.Update(model);
                    }
                }

                if (db.SaveChanges() > 0)
                {
                    //没用用到
                    //foreach (var item in request.Values)
                    //{
                    //    var cacheKey = new XuHos.Common.Cache.Keys.StringCacheKey(XuHos.Common.Cache.Keys.StringCacheKeyType.Sys_MonitorIndex, $"Category-{request.Category}:OutID-{request.OutID}:Name-{item.Key}");
                    //    item.Value.ToCache(cacheKey);
                    //}
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
        }
コード例 #2
0
        /// <summary>
        /// 修改指标数据
        /// </summary>
        /// <returns></returns>
        public bool InsertAndUpdate(RequestSysMonitorIndexUpdateDTO request, bool NumberValuePlus = false, DBEntities db = null)
        {
            bool dbPrivateFlag = false;

            if (db == null)
            {
                db            = CreateDb();
                dbPrivateFlag = true;
            }


            foreach (var item in request.Values)
            {
                var model = db.SysMonitorIndexs.Where(a => a.Category == request.Category && a.Name == item.Key && a.OutID == request.OutID).FirstOrDefault();
                if (model == null)
                {
                    db.SysMonitorIndexs.Add(new SysMonitorIndex()
                    {
                        Category   = request.Category,
                        Name       = item.Key,
                        OutID      = request.OutID,
                        Value      = string.IsNullOrEmpty(item.Value) ? "-" : item.Value,
                        ModifyTime = DateTime.Now
                    });
                }
                else
                {
                    //数字值递增(保留原来的指标)
                    if (NumberValuePlus)
                    {
                        //原数据和现在的数据都是数字类型
                        if (HealthCloud.Common.ToolHelper.IsNumeric(model.Value) && HealthCloud.Common.ToolHelper.IsNumeric(item.Value))
                        {
                            model.Value = item.Value;
                        }
                        else
                        {
                            model.Value = item.Value;
                        }
                    }
                    else
                    {
                        model.Value = item.Value;
                    }

                    model.ModifyTime = DateTime.Now;
                }
            }

            var ret = true;

            if (dbPrivateFlag)
            {
                ret = db.SaveChanges() > 0;
                db.Dispose();
            }

            return(ret);
        }
コード例 #3
0
 /// <summary>
 /// 修改指标数据
 /// </summary>
 /// <param name="Category"></param>
 /// <param name="Name"></param>
 /// <param name="OutID"></param>
 /// <param name="Value"></param>
 /// <returns></returns>
 public bool InsertAndUpdate(RequestSysMonitorIndexUpdateDTO request, bool NumberValuePlus = false)
 {
     return(sysMonitorIndexRepository.InsertAndUpdate(request, NumberValuePlus));
 }