/// <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); } } }
/// <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); }
/// <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)); }