Exemple #1
0
        public Error InsertOrUpdateProductIP(ProductModel product, ProductIPListModel productIPs, string lgs)
        {
            var error = new Error();

            var currentIPs = db.FindProductIPs(product.Id).ToList();

            // First, handles items which are new or existing/selected
            foreach (var item in productIPs.Items.Where(pi => pi.Selected == true))
            {
                var temp = currentIPs.Where(ip => ip.MarketId == item.MarketId).FirstOrDefault();
                if (temp == null)
                {
                    // Not found in current IPs so has been added
                    var productIp = new ProductIP {
                        ProductId = product.Id,
                        MarketId  = item.MarketId
                    };
                    db.InsertOrUpdateProductIP(productIp);
                }
                else
                {
                    // Was found, so remove from list
                    currentIPs.Remove(temp);
                }
            }

            // Now handle items remaining in the db as these are surplus
            db.DeleteProductIPs(currentIPs);

            return(error);
        }
Exemple #2
0
 public ProductIPModel MapToModel(ProductIP item)
 {
     return(Mapper.Map <ProductIP, ProductIPModel>(item));
 }