예제 #1
0
        private static ItemAttributeDTO Populate(SqlDataReader reader)
        {
            ItemAttributeDTO obj = new ItemAttributeDTO()
            {
                ItemAttributeID = reader.GetInt32(reader.GetOrdinal("ItemAttributeID")),
                DataType        = reader.GetString(reader.GetOrdinal("DataType")),
                Name            = reader.GetString(reader.GetOrdinal("Name"))
            };

            return(obj);
        }
예제 #2
0
        public async Task <IActionResult> CreateItemAttribute([FromBody] ItemAttributeDTO itemAttribute)
        {
            //Using System.Text.Json
            //var result = JsonSerializer.Deserialize<ItemAttribute>(itemAttribute);
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            if (itemAttribute == null)
            {
                return(BadRequest("No value please check"));
            }
            var isitemAttributeExists = _unitOfWork.ItemAttributes.CheckItemAttribute(itemAttribute);

            if (isitemAttributeExists > 0)
            {
                return(BadRequest("validation error!"));
            }
            else
            {
                var itemAttributeToADD = new ItemAttribute
                {
                    ItemSize        = itemAttribute.ItemSize,
                    InCityRate      = itemAttribute.InCityRate,
                    OutCityRate     = itemAttribute.OutCityRate,
                    RegularRate     = itemAttribute.RegularRate,
                    ConditionCharge = itemAttribute.ConditionCharge,
                    BookingCharge   = itemAttribute.BookingCharge,
                    ItemId          = itemAttribute.ItemId
                };
                if (itemAttribute.MerchantId != null)
                {
                    var merchant = await _unitOfWork.Merchants.GetMerchantDetailsAsync(itemAttribute.MerchantId);

                    if (merchant == null)
                    {
                        return(BadRequest("Invalid merchant"));
                    }
                    itemAttributeToADD.MerchantIdentity = merchant.MerchantIdentity;
                }

                await _unitOfWork.ItemAttributes.AddItem(itemAttributeToADD);
            }
            var result = await _unitOfWork.CompleteAsync();

            if (result == 0)
            {
                return(BadRequest("dont save"));
            }
            return(Ok());
        }
예제 #3
0
        public int CheckItemAttribute(ItemAttributeDTO itemAttribute)
        {
            //TODO: Logic is not correct!!!
            var isExists = _context.ItemAttributes.Include(i => i.Item)
                           .Where(i => i.Item.ItemId == itemAttribute.ItemId &&
                                  i.ItemSize == itemAttribute.ItemSize &&
                                  i.InCityRate == itemAttribute.InCityRate &&
                                  i.OutCityRate == itemAttribute.OutCityRate &&
                                  i.RegularRate == itemAttribute.RegularRate &&
                                  i.ConditionCharge == itemAttribute.ConditionCharge &&
                                  i.BookingCharge == itemAttribute.BookingCharge
                                  );

            return(isExists.Count());
        }
예제 #4
0
        public ItemAttributeDTO InsertItemAttribute(ItemAttributeDTO item)
        {
            using (SqlConnection connection = new SqlConnection(Properties.Settings.Default.DatabaseConnectoin))
            {
                connection.Open();
                using (SqlCommand command = new SqlCommand())
                {
                    command.CommandText = "INSERT INTO [dbo].[ItemAttribute] ([Name], [DataType]) VALUES (@Name, @DataType); SELECT @@IDENTITY AS [ID]";
                    command.CommandType = CommandType.Text;
                    command.Parameters.AddWithValue("@Name", item.Name);
                    command.Parameters.AddWithValue("@DataType", item.DataType);
                    item.ItemAttributeID = Convert.ToInt32(command.ExecuteScalar());
                }

                connection.Close();
                connection.Dispose();
            }

            return(item);
        }
예제 #5
0
        public ItemAttributeDTO UpdateItemAttribute(ItemAttributeDTO item)
        {
            using (SqlConnection connection = new SqlConnection(Properties.Settings.Default.DatabaseConnectoin))
            {
                connection.Open();
                using (SqlCommand command = new SqlCommand())
                {
                    command.CommandText = "UPDATE [dbo].[ItemAttribute] SET [Name] = @Name, [DataType] = @DataType WHERE [ItemAttributeID] = @ItemAttributeID";
                    command.CommandType = CommandType.Text;
                    command.Parameters.AddWithValue("@Name", item.Name);
                    command.Parameters.AddWithValue("@DataType", item.DataType);
                    command.Parameters.AddWithValue("@ItemAttributeID", item.ItemAttributeID);
                    command.ExecuteNonQuery();
                }

                connection.Close();
                connection.Dispose();
            }

            return(item);
        }
예제 #6
0
        public async Task <IActionResult> UpdateItemAttribute(ItemAttributeDTO itemAttribute)
        {
            var getItemAttribute = _unitOfWork.ItemAttributes.GetItemAttributeByID(itemAttribute.ItemAttributeId);

            if (getItemAttribute == null)
            {
                return(BadRequest("this item Attribute does not exist"));
            }

            else
            {
                getItemAttribute.ItemSize        = itemAttribute.ItemSize;
                getItemAttribute.InCityRate      = itemAttribute.InCityRate;
                getItemAttribute.OutCityRate     = itemAttribute.OutCityRate;
                getItemAttribute.RegularRate     = itemAttribute.RegularRate;
                getItemAttribute.ConditionCharge = itemAttribute.ConditionCharge;
                getItemAttribute.BookingCharge   = itemAttribute.BookingCharge;
                // getItemAttribute.ItemId = itemAttribute.ItemId;

                if (itemAttribute.MerchantId != null)
                {
                    var merchant = await _unitOfWork.Merchants.GetMerchantDetailsAsync(itemAttribute.MerchantId);

                    if (merchant == null)
                    {
                        return(BadRequest("Invalid merchant"));
                    }
                    getItemAttribute.MerchantIdentity = merchant.MerchantIdentity;
                }
                await _unitOfWork.ItemAttributes.UpdateItem(getItemAttribute);
            }

            var result = await _unitOfWork.CompleteAsync();

            if (result == 0)
            {
                return(BadRequest("dont save"));
            }
            return(NoContent());
        }