示例#1
0
 /// <summary>
 /// Check Delete
 /// </summary>
 /// <param name="model">Group model</param>
 /// <returns>ResponseStatusCodeHelper</returns>
 public ResponseStatusCodeHelper CheckDelete(GroupModel model)
 {
     try
     {
         using (var _context = new TDHEntities())
         {
             MN_GROUP _md = _context.MN_GROUP.FirstOrDefault(m => m.id == model.ID && !m.deleted && m.create_by == model.CreateBy);
             if (_md == null)
             {
                 throw new DataAccessException(FILE_NAME, "CheckDelete", model.CreateBy);
             }
             var _group = _context.MN_CATEGORY.FirstOrDefault(m => m.group_id == model.ID && !m.deleted && m.create_by == model.CreateBy);
             if (_group != null)
             {
                 Notifier.Notification(model.CreateBy, Message.CheckExists, Notifier.TYPE.Warning);
                 return(ResponseStatusCodeHelper.NG);
             }
         }
     }
     catch (DataAccessException fieldEx)
     {
         throw fieldEx;
     }
     catch (Exception ex)
     {
         throw new ServiceException(FILE_NAME, "CheckDelete", model.CreateBy, ex);
     }
     return(ResponseStatusCodeHelper.OK);
 }
示例#2
0
 /// <summary>
 /// Save
 /// </summary>
 /// <param name="model">Group model</param>
 /// <returns>ResponseStatusCodeHelper</returns>
 public ResponseStatusCodeHelper Save(GroupModel model)
 {
     try
     {
         using (var _context = new TDHEntities())
         {
             MN_GROUP _md = new MN_GROUP();
             if (model.Insert)
             {
                 _md.id       = Guid.NewGuid();
                 _md.is_input = model.IsInput;
             }
             else
             {
                 _md = _context.MN_GROUP.FirstOrDefault(m => m.id == model.ID && !m.deleted && m.create_by == model.CreateBy);
                 if (_md == null)
                 {
                     throw new DataAccessException(FILE_NAME, "Save", model.CreateBy);
                 }
             }
             _md.name     = model.Name;
             _md.notes    = model.Notes;
             _md.ordering = model.Ordering;
             _md.publish  = model.Publish;
             //Setting value don't allow change when create or edit
             if (model.Insert)
             {
                 _md.create_by   = model.CreateBy;
                 _md.create_date = DateTime.Now;
                 _context.MN_GROUP.Add(_md);
                 _context.Entry(_md).State = EntityState.Added;
             }
             else
             {
                 _md.update_by   = model.UpdateBy;
                 _md.update_date = DateTime.Now;
                 _context.MN_GROUP.Attach(_md);
                 _context.Entry(_md).State = EntityState.Modified;
             }
             _context.SaveChanges();
         }
     }
     catch (DataAccessException fieldEx)
     {
         throw fieldEx;
     }
     catch (Exception ex)
     {
         throw new ServiceException(FILE_NAME, "Save", model.CreateBy, ex);
     }
     if (model.Insert)
     {
         Notifier.Notification(model.CreateBy, Message.InsertSuccess, Notifier.TYPE.Success);
     }
     else
     {
         Notifier.Notification(model.CreateBy, Message.UpdateSuccess, Notifier.TYPE.Success);
     }
     return(ResponseStatusCodeHelper.Success);
 }
示例#3
0
 /// <summary>
 /// Delete
 /// </summary>
 /// <param name="model">Group model</param>
 /// <returns>ResponseStatusCodeHelper</returns>
 public ResponseStatusCodeHelper Delete(GroupModel model)
 {
     try
     {
         using (var _context = new TDHEntities())
         {
             MN_GROUP _md = _context.MN_GROUP.FirstOrDefault(m => m.id == model.ID && !m.deleted && m.create_by == model.CreateBy);
             if (_md == null)
             {
                 throw new DataAccessException(FILE_NAME, "Delete", model.CreateBy);
             }
             _md.deleted     = true;
             _md.delete_by   = model.DeleteBy;
             _md.delete_date = DateTime.Now;
             _context.MN_GROUP.Attach(_md);
             _context.Entry(_md).State = EntityState.Modified;
             _context.SaveChanges();
         }
     }
     catch (DataAccessException fieldEx)
     {
         throw fieldEx;
     }
     catch (Exception ex)
     {
         throw new ServiceException(FILE_NAME, "Delete", model.CreateBy, ex);
     }
     Notifier.Notification(model.CreateBy, Message.DeleteSuccess, Notifier.TYPE.Success);
     return(ResponseStatusCodeHelper.Success);
 }
示例#4
0
 /// <summary>
 /// Get item by id
 /// </summary>
 /// <param name="model">Group model</param>
 /// <returns>MoneyGroupModel</returns>
 public GroupModel GetItemByID(GroupModel model)
 {
     try
     {
         using (var _context = new TDHEntities())
         {
             MN_GROUP _md = _context.MN_GROUP.FirstOrDefault(m => m.id == model.ID && !m.deleted && m.create_by == model.CreateBy);
             if (_md == null)
             {
                 throw new DataAccessException(FILE_NAME, "GetItemByID", model.CreateBy);
             }
             return(new GroupModel()
             {
                 ID = _md.id,
                 Name = _md.name,
                 Notes = _md.notes,
                 IsInput = _md.is_input,
                 PercentSetting = _md.percent_setting,
                 PercentCurrent = _md.percent_current,
                 MoneyCurrent = _md.money_current,
                 MoneyCurrentString = _md.money_current.NumberToString(),
                 MoneySetting = _md.money_setting,
                 MoneySettingString = _md.money_setting.NumberToString(),
                 Ordering = _md.ordering,
                 Publish = _md.publish
             });
         }
     }
     catch (DataAccessException fieldEx)
     {
         throw fieldEx;
     }
     catch (Exception ex)
     {
         throw new ServiceException(FILE_NAME, "GetItemByID", model.CreateBy, ex);
     }
 }