public int UpdateAssetCategory(xPlug.BusinessObject.AssetCategory assetCategory)
 {
     try
     {
         //Re-Map Object to Entity Object
         var myEntityObj = AssetCategoryMapper.Map <xPlug.BusinessObject.AssetCategory, AssetCategory>(assetCategory);
         if (myEntityObj == null)
         {
             return(-2);
         }
         using (var db = new ExpenseManagerDBEntities())
         {
             if (db.AssetCategories.Any())
             {
                 if (db.AssetCategories.Count(m => m.Name == myEntityObj.Name && m.AssetCategoryId != myEntityObj.AssetCategoryId) > 0)
                 {
                     return(-3);
                 }
             }
             db.AssetCategories.Attach(myEntityObj);
             db.ObjectStateManager.ChangeObjectState(myEntityObj, EntityState.Modified);
             db.SaveChanges();
             return(1);
         }
     }
     catch (Exception ex)
     {
         ErrorManager.LogApplicationError(ex.StackTrace, ex.Source, ex.Message);
         return(0);
     }
 }
 public List <xPlug.BusinessObject.AssetCategory> GetAssetCategories()
 {
     try
     {
         using (var db = new ExpenseManagerDBEntities())
         {
             var myObjList         = db.AssetCategories.ToList();
             var myBusinessObjList = new List <xPlug.BusinessObject.AssetCategory>();
             if (myObjList == null)
             {
                 return(myBusinessObjList);
             }
             //Re-Map each Entity Object to Business Object
             foreach (var item in myObjList)
             {
                 var myBusinessObj = AssetCategoryMapper.Map <AssetCategory, xPlug.BusinessObject.AssetCategory>(item);
                 if (myBusinessObj == null)
                 {
                     continue;
                 }
                 myBusinessObjList.Add(myBusinessObj);
             }
             return(myBusinessObjList);
         }
     }
     catch (Exception ex)
     {
         ErrorManager.LogApplicationError(ex.StackTrace, ex.Source, ex.Message);
         return(new List <xPlug.BusinessObject.AssetCategory>());
     }
 }
 public int UpdateAssetCategoryCheckDuplicate(BusinessObject.AssetCategory assetCategory)
 {
     try
     {
         //Re-Map Object to Entity Object
         var myEntityObj = AssetCategoryMapper.Map <BusinessObject.AssetCategory, AssetCategory>(assetCategory);
         if (myEntityObj == null)
         {
             return(-2);
         }
         using (var db = new ExpenseManagerDBEntities())
         {
             if (db.AssetCategories.Count(m => m.Name.ToLower().Replace(" ", string.Empty) == assetCategory.Name.ToLower().Replace(" ", string.Empty) && m.AssetCategoryId != assetCategory.AssetCategoryId) > 0)
             {
                 return(-3);
             }
             db.AssetCategories.Attach(myEntityObj);
             db.ObjectStateManager.ChangeObjectState(myEntityObj, EntityState.Modified);
             db.SaveChanges();
             return(1);
         }
     }
     catch (Exception ex)
     {
         ErrorManager.LogApplicationError(ex.StackTrace, ex.Source, ex.Message);
         return(0);
     }
 }
 public xPlug.BusinessObject.AssetCategory GetAssetCategory(int assetCategoryId)
 {
     try
     {
         using (var db = new ExpenseManagerDBEntities())
         {
             var myObj = db.AssetCategories.SingleOrDefault(s => s.AssetCategoryId == assetCategoryId);
             if (myObj == null)
             {
                 return(new xPlug.BusinessObject.AssetCategory());
             }
             //Re-Map Entity Object to Business Object
             var myBusinessObj = AssetCategoryMapper.Map <AssetCategory, xPlug.BusinessObject.AssetCategory>(myObj);
             if (myBusinessObj == null)
             {
                 return(new xPlug.BusinessObject.AssetCategory());
             }
             { return(myBusinessObj); }
         }
     }
     catch (Exception ex)
     {
         ErrorManager.LogApplicationError(ex.StackTrace, ex.Source, ex.Message);
         return(new xPlug.BusinessObject.AssetCategory());
     }
 }
 public List <BusinessObject.AssetCategory> GetFilterdAssetCategories()
 {
     try
     {
         using (var db = new ExpenseManagerDBEntities())
         {
             var myObjList         = db.AssetCategories.Where(m => m.Status == 1 && m.AssetTypes.Any()).ToList();
             var myBusinessObjList = new List <BusinessObject.AssetCategory>();
             if (!myObjList.Any())
             {
                 return(myBusinessObjList);
             }
             //Re-Map each Entity Object to Business Object
             foreach (var item in myObjList)
             {
                 var myBusinessObj = AssetCategoryMapper.Map <AssetCategory, BusinessObject.AssetCategory>(item);
                 if (myBusinessObj == null)
                 {
                     continue;
                 }
                 myBusinessObjList.Add(myBusinessObj);
             }
             return(myBusinessObjList.OrderBy(m => m.Name).ToList());
         }
     }
     catch (Exception ex)
     {
         ErrorManager.LogApplicationError(ex.StackTrace, ex.Source, ex.Message);
         return(new List <BusinessObject.AssetCategory>());
     }
 }