예제 #1
0
 public ErrorCodes Update(ref MMeasurementTag tag, MSystemUser user)
 {
     Log.Logger.Information("Update a seminar tag {@tag}", tag);
     using (var transaction = DbContext.Database.BeginTransaction())
     {
         MMeasurementTag originalTag = DbContext.MMeasurementTag.Find(tag.MmtId);
         if (!originalTag.MmtUpdateDatetime.Equals(tag.MmtUpdateDatetime))
         {
             return(ErrorCodes.DataIntegrity);
         }
         originalTag.UpdateTagInfo(tag);
         originalTag.UpdateEditingInfo(user);
         originalTag.EnsureTagInfoNotNull();
         DbContext.Update(originalTag);
         int effectedRows = DbContext.SaveChanges();
         if (effectedRows != 1)
         {
             transaction.Rollback();
             return(ErrorCodes.SaveFailure);
         }
         transaction.Commit();
         tag = originalTag;
     }
     Log.Logger.Information("Update sucessfully");
     return(ErrorCodes.None);
 }
예제 #2
0
        public JsonResult Save(MMeasurementTag newTagInfo)
        {
            ErrorCodes result;

            try
            {
                var tagInfo = TempData.Get <MMeasurementTag>("TagInfo");
                if (tagInfo == null)
                {
                    return(Json(new { status = Result.Failure, message = StringLocalizer["I.HSP-M102.0004"].Value }));
                }
                tagInfo.CopyTagInfo(newTagInfo);
                result = (tagInfo.MmtId != 0) ? TagRepository.Update(ref tagInfo, GetLogedinUser())
                                              : TagRepository.Insert(ref tagInfo, GetLogedinUser());
                TempData.Put("TagInfo", tagInfo);
            }
            catch (ENovateException eex)
            {
                Log.Logger.Error(eex, "Failed to save the measurement tag: " + newTagInfo.MmtCcdCodeTypeSysfunction);
                result = eex.ErrorCode;
            }
            catch (Exception ex)
            {
                Log.Logger.Error(ex, "Failed to save the measurement tag.");
                result = ErrorCodes.SaveFailure;
            }
            string msg = (result == ErrorCodes.None) ? StringLocalizer["I.HSP-M102.0003"].Value
                                                     : StringLocalizer[result.GetResourceKey()].Value;

            return(Json(new { status = (result == ErrorCodes.None) ? Result.Success : Result.Failure, message = msg }));
        }
예제 #3
0
        public IActionResult Index(string tagType)
        {
            if (tagType.Equals(AppSettings.SeminarTagCodeType))
            {
                ViewBag.Title = StringLocalizer["SeminarTagTittle"];
            }
            else if (tagType.Equals(AppSettings.ProductTagCodeType))
            {
                ViewBag.Title = StringLocalizer["ProductTagTittle"];
            }
            else
            {
                throw new ENovateException(ErrorCodes.PageNotExist);
            }
            ViewBag.MaxlengthTag = AppSettings.MaxlengthTag;

            var tagInfo = TagRepository.GetMeasurementTag(tagType);

            if (tagInfo == null)
            {
                tagInfo = new MMeasurementTag
                {
                    MmtCcdCodeTypeSysfunction = tagType
                };
            }
            TempData.Put("TagInfo", tagInfo);
            return(View(tagInfo));
        }
예제 #4
0
 public ErrorCodes Insert(ref MMeasurementTag tag, MSystemUser user)
 {
     Log.Logger.Information("Insert a new seminar tag {@tag}", tag);
     using (var transaction = DbContext.Database.BeginTransaction())
     {
         tag.UpdateCreatingInfo(user);
         tag.EnsureTagInfoNotNull();
         DbContext.Add(tag);
         int effectedRows = DbContext.SaveChanges();
         if (effectedRows != 1)
         {
             transaction.Rollback();
             return(ErrorCodes.SaveFailure);
         }
         transaction.Commit();
     }
     Log.Logger.Information("Insert successfully");
     return(ErrorCodes.None);
 }