示例#1
0
        /// <summary>
        /// Updates the specified item.
        /// </summary>
        /// <param name="item">The item.</param>
        /// <returns></returns>
        public ItemDTO Update(ItemDTO item)
        {
            try
            {
                // data passed from UI
                ItemSchema.Item itemWithChanges = this.MapDtoToDbEntity(item);

                // data record from db
                ItemSchema.Item itemDbFromDb = this.repository.GetIQueryable <ItemSchema.Item>().Where <ItemSchema.Item>(a => a.Id == itemWithChanges.Id).FirstOrDefault <ItemSchema.Item>();

                // map changes recieved from UI to db item
                itemDbFromDb.Name           = itemWithChanges.Name;
                itemDbFromDb.ReOrderLevel   = itemWithChanges.ReOrderLevel;
                itemDbFromDb.UnitsAvaialble = itemWithChanges.UnitsAvaialble;
                itemDbFromDb.UnitPrice      = itemWithChanges.UnitPrice;
                // set record status
                itemDbFromDb.RecordStatusId   = (int)RecordStatuses.Active;
                itemDbFromDb.ModifiedBy       = item.LoggedUserId;
                itemDbFromDb.ModifiedDateTime = DateTime.Now;

                itemDbFromDb = this.repository.Update <ItemSchema.Item>(itemDbFromDb);

                this.repository.SaveChanges();
            }
            catch (Exception ex)
            {
                LogHelper.LogException(ex, MethodBase.GetCurrentMethod().Name);
            }

            return(item);
        }
示例#2
0
        /// <summary>
        /// Gets the specified identifier.
        /// </summary>
        /// <param name="Id">The identifier.</param>
        /// <returns></returns>
        public ItemDTO Get(long Id)
        {
            ItemDTO item = null;

            try
            {
                ItemSchema.Item itemDb = this.repository.GetIQueryable <ItemSchema.Item>().Where <ItemSchema.Item>(a => a.Id == Id).FirstOrDefault <ItemSchema.Item>();

                item = AutoMapperConf.AutoMapperConf.Instance.Mapper.Map <ItemDTO>(itemDb);
            }
            catch (Exception ex)
            {
                LogHelper.LogException(ex, MethodBase.GetCurrentMethod().Name);
            }

            return(item);
        }
示例#3
0
        /// <summary>
        /// Deletes the specified identifier.
        /// </summary>
        /// <param name="Id">The identifier.</param>
        /// <returns></returns>
        public bool Delete(long Id, ItemDTO item)
        {
            bool isDeleteSuccess = false;

            try
            {
                ItemSchema.Item itemDb = this.repository.GetIQueryable <ItemSchema.Item>().Where <ItemSchema.Item>(a => a.Id == Id).FirstOrDefault <ItemSchema.Item>();

                itemDb.RecordStatusId   = (int)RecordStatuses.Delete; // set reocrds status as delete
                itemDb.ModifiedBy       = item.LoggedUserId;
                itemDb.ModifiedDateTime = DateTime.Now;

                this.repository.SaveChanges(); // commit data to db

                isDeleteSuccess = true;
            }
            catch (Exception ex)
            {
                LogHelper.LogException(ex, MethodBase.GetCurrentMethod().Name);
            }

            return(isDeleteSuccess);
        }
示例#4
0
        /// <summary>
        /// Creates the specified item.
        /// </summary>
        /// <param name="item">The item.</param>
        /// <returns></returns>
        public ItemDTO Create(ItemDTO item)
        {
            try
            {
                // map to db entity
                ItemSchema.Item itemDb = this.MapDtoToDbEntity(item);

                // set record status
                itemDb.RecordStatusId  = (int)RecordStatuses.Active;
                itemDb.CreatedBy       = item.LoggedUserId;
                itemDb.CreatedDateTime = DateTime.Now;

                itemDb = this.repository.Insert <ItemSchema.Item>(itemDb);
                this.repository.SaveChanges(); // call save changes to commit data to db
            }
            catch (Exception ex)
            {
                item = null;

                LogHelper.LogException(ex, MethodBase.GetCurrentMethod().Name);
            }

            return(item);
        }
        protected override void Seed(Assesment.Inventory.Data.EntityManager.DatabaseContext.InventoryDbContext context)
        {
            //  This method will be called after migrating to the latest version.

            //  You can use the DbSet<T>.AddOrUpdate() helper extension method
            //  to avoid creating duplicate seed data.
            try
            {
                // check if data already exist before adding data when db initialization happens
                ItemSchema.Item item = context.Items.Where(a => a.Id == 1).FirstOrDefault <ItemSchema.Item>();
                if (item == null)
                {
                    context.RecordStatus.AddOrUpdate <RecordStatus>(new RecordStatus {
                        Id = (int)RecordStatuses.Active, Description = "Active"
                    });
                    context.RecordStatus.AddOrUpdate <RecordStatus>(new RecordStatus {
                        Id = (int)RecordStatuses.Delete, Description = "Delete"
                    });

                    context.Items.Add(new ItemSchema.Item {
                        Id = 1, Name = "Red Rice", ReOrderLevel = 10.0M, UnitPrice = 100.00M, UnitsAvaialble = 1.5M, CreatedBy = "Migrated", CreatedDateTime = DateTime.Now, RecordStatusId = (int)RecordStatuses.Active
                    });
                    context.Items.Add(new ItemSchema.Item {
                        Id = 2, Name = "Cauliflower", ReOrderLevel = 10.0M, UnitPrice = 100.00M, UnitsAvaialble = 1.5M, CreatedBy = "Migrated", CreatedDateTime = DateTime.Now, RecordStatusId = (int)RecordStatuses.Active
                    });
                    context.Items.Add(new ItemSchema.Item {
                        Id = 3, Name = "Cabbage", ReOrderLevel = 10.0M, UnitPrice = 100.00M, UnitsAvaialble = 1.5M, CreatedBy = "Migrated", CreatedDateTime = DateTime.Now, RecordStatusId = (int)RecordStatuses.Active
                    });
                    context.Items.Add(new ItemSchema.Item {
                        Id = 4, Name = "Chicken", ReOrderLevel = 10.0M, UnitPrice = 100.00M, UnitsAvaialble = 1.5M, CreatedBy = "Migrated", CreatedDateTime = DateTime.Now, RecordStatusId = (int)RecordStatuses.Active
                    });
                    context.Items.Add(new ItemSchema.Item {
                        Id = 5, Name = "Beans", ReOrderLevel = 10.0M, UnitPrice = 100.00M, UnitsAvaialble = 1.5M, CreatedBy = "Migrated", CreatedDateTime = DateTime.Now, RecordStatusId = (int)RecordStatuses.Active
                    });
                    context.Items.Add(new ItemSchema.Item {
                        Id = 6, Name = "Oranges", ReOrderLevel = 10.0M, UnitPrice = 100.00M, UnitsAvaialble = 1.5M, CreatedBy = "Migrated", CreatedDateTime = DateTime.Now, RecordStatusId = (int)RecordStatuses.Active
                    });

                    context.Items.Add(new ItemSchema.Item {
                        Id = 7, Name = "Dhal", ReOrderLevel = 10.0M, UnitPrice = 100.00M, UnitsAvaialble = 1.5M, CreatedBy = "Migrated", CreatedDateTime = DateTime.Now, RecordStatusId = (int)RecordStatuses.Active
                    });
                    context.Items.Add(new ItemSchema.Item {
                        Id = 8, Name = "Grapes", ReOrderLevel = 10.0M, UnitPrice = 100.00M, UnitsAvaialble = 1.5M, CreatedBy = "Migrated", CreatedDateTime = DateTime.Now, RecordStatusId = (int)RecordStatuses.Active
                    });
                    context.Items.Add(new ItemSchema.Item {
                        Id = 9, Name = "Potatoes", ReOrderLevel = 10.0M, UnitPrice = 100.00M, UnitsAvaialble = 1.5M, CreatedBy = "Migrated", CreatedDateTime = DateTime.Now, RecordStatusId = (int)RecordStatuses.Active
                    });
                    context.Items.Add(new ItemSchema.Item {
                        Id = 10, Name = "Salad Leaves", ReOrderLevel = 10.0M, UnitPrice = 100.00M, UnitsAvaialble = 1.5M, CreatedBy = "Migrated", CreatedDateTime = DateTime.Now, RecordStatusId = (int)RecordStatuses.Active
                    });
                    context.Items.Add(new ItemSchema.Item {
                        Id = 11, Name = "White Rice", ReOrderLevel = 10.0M, UnitPrice = 100.00M, UnitsAvaialble = 1.5M, CreatedBy = "Migrated", CreatedDateTime = DateTime.Now, RecordStatusId = (int)RecordStatuses.Active
                    });
                    context.Items.Add(new ItemSchema.Item {
                        Id = 12, Name = "Flour", ReOrderLevel = 10.0M, UnitPrice = 100.00M, UnitsAvaialble = 1.5M, CreatedBy = "Migrated", CreatedDateTime = DateTime.Now, RecordStatusId = (int)RecordStatuses.Active
                    });

                    context.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                LogHelper.LogException(ex, MethodBase.GetCurrentMethod().Name);

                throw ex;
            }
        }