public AnalysisCrmProduct AnalysisGetProductById(string productId) { ProductOperation po = new ProductOperation(); AnalysisCrmProduct product = po.AnalysisGetProductById(productId); return(product); }
public AnalysisCrmProduct AnalysisGetProductById(String productId) { log.Info("AnalysisGetProductById==" + productId); CrmUtil cu = new CrmUtil(); OrganizationServiceProxy organizationProxy = cu.getCrmService(); AnalysisCrmProduct res_product = new AnalysisCrmProduct(); try { //Update Account TradeRegistration Entity product = new Entity("product"); ColumnSet attributes = new ColumnSet(true); product = organizationProxy.Retrieve(product.LogicalName, new Guid(productId), attributes); res_product.ProductName = product.GetAttributeValue <string>("productnumber"); res_product.ProductSku = product.GetAttributeValue <string>("name"); if (product.Contains("producttypecode") && product["producttypecode"] != null) { res_product.ProductStatus = product.FormattedValues["producttypecode"]; } if (product.Contains("defaultuomid") && product["defaultuomid"] != null) { EntityReference unit = (EntityReference)product["defaultuomid"]; res_product.Unit = unit.Name; } res_product.DecimalsSupported = product.GetAttributeValue <int>("quantitydecimal").ToString(); if (product.Contains("pricelevelid") && product["pricelevelid"] != null) { EntityReference pricelist = (EntityReference)product["pricelevelid"]; res_product.PriceList = pricelist.Name; } if (product.Contains("new_suppliera1") && product["new_suppliera1"] != null) { EntityReference supplier_a = (EntityReference)product["new_suppliera1"]; res_product.SupplierA = supplier_a.Name; } res_product.Brand = product.GetAttributeValue <string>("suppliername"); res_product.Quantity = product.GetAttributeValue <decimal>("quantityonhand").ToString("#.##"); res_product.BrandedPackage = product.GetAttributeValue <bool>("new_brandedpackage").ToString(); res_product.PetDreamHouseURL = product.GetAttributeValue <string>("producturl"); if (product.Contains("price") && product["price"] != null) { res_product.ListPrice = product.GetAttributeValue <Money>("price").Value.ToString("#.##"); } if (product.Contains("new_rrp") && product["new_rrp"] != null) { res_product.RRP = product.GetAttributeValue <Money>("new_rrp").Value.ToString("#.##"); } res_product.ProductColor = product.GetAttributeValue <string>("new_colour"); res_product.ProductBarcode = product.GetAttributeValue <string>("new_productbarcode"); res_product.ProductDimensions = product.GetAttributeValue <string>("new_size"); res_product.ProductWeight = product.GetAttributeValue <string>("new_productweight"); res_product.IdenticalUnitPerCase = product.GetAttributeValue <string>("new_casequantity"); res_product.CaseBarcode = product.GetAttributeValue <string>("new_casebarcode"); res_product.CaseDimensions = product.GetAttributeValue <string>("new_casedimensions"); res_product.CaseWeight = product.GetAttributeValue <string>("new_caseweight"); res_product.CTNDetails = product.GetAttributeValue <string>("new_ctndetails"); if (product.Contains("new_parentcatalog") && product["new_parentcatalog"] != null) { res_product.ParentCatalog = product.FormattedValues["new_parentcatalog"]; } if (product.Contains("new_subcatelog") && product["new_subcatelog"] != null) { res_product.SubCatalog = product.FormattedValues["new_subcatelog"]; } if (product.Contains("new_additionalcatelog") && product["new_additionalcatelog"] != null) { res_product.AdditionalCatalog = product.FormattedValues["new_additionalcatelog"]; } res_product.ProductDescription = product.GetAttributeValue <string>("description"); res_product.UnitBarCode = product.GetAttributeValue <string>("new_barcode"); res_product.UnitWeight_KG = product.GetAttributeValue <decimal>("new_grossunitweight").ToString("#.##"); res_product.UnitDepthLength_CM = product.GetAttributeValue <decimal>("new_unitdepthcm").ToString("#.##"); res_product.UnitWidthGirth_CM = product.GetAttributeValue <decimal>("new_unitwidthcm").ToString("#.##"); res_product.UnitHeightNeck_CM = product.GetAttributeValue <decimal>("new_unitheight").ToString("#.##"); res_product.CartonBarcode = product.GetAttributeValue <string>("new_mastercartonbarcode"); res_product.UnitsPerCarton = product.GetAttributeValue <string>("new_packspermasterbox"); res_product.CartonWeight_KG = product.GetAttributeValue <decimal>("new_mastercartonweightkg").ToString("#.##"); res_product.CartonDepth_CM = product.GetAttributeValue <decimal>("new_mastercartondepthcm").ToString("#.##"); res_product.CartonWidth_CM = product.GetAttributeValue <decimal>("new_mastercartonwidthcm").ToString("#.##"); res_product.CartonHeight_CM = product.GetAttributeValue <decimal>("new_mastercartonheightcm").ToString("#.##"); res_product.CreatedOn = product.GetAttributeValue <DateTime>("createdon").ToLocalTime().ToString("yyyyMMddHHmmss"); return(res_product); } catch (Exception ex) { log.Info(ex.Message + "--" + ex.ToString()); } return(null); }
public List <AnalysisCrmProduct> AnalysisGetAllProduct() { log.Info("AnalysisGetAllProduct:"); CrmUtil cu = new CrmUtil(); OrganizationServiceProxy organizationProxy = cu.getCrmService(); List <AnalysisCrmProduct> products = new List <AnalysisCrmProduct>(); try { //Update Account TradeRegistration QueryExpression qe = new QueryExpression(); qe.EntityName = "product"; qe.ColumnSet = new ColumnSet(true); //qe.ColumnSet.Columns.Add("name"); //qe.ColumnSet.Columns.Add("quantityonhand"); //qe.LinkEntities.Add(new LinkEntity("account", "contact", "primarycontactid", "contactid", JoinOperator.Inner)); //qe.LinkEntities[0].Columns.AddColumns("firstname", "lastname"); //qe.LinkEntities[0].EntityAlias = "primarycontact"; EntityCollection ec = organizationProxy.RetrieveMultiple(qe); foreach (Entity product in ec.Entities) { AnalysisCrmProduct res_product = new AnalysisCrmProduct(); res_product.ProductId = product.GetAttributeValue <Guid>("productid").ToString(); res_product.ProductName = product.GetAttributeValue <string>("productnumber"); res_product.ProductSku = product.GetAttributeValue <string>("name"); if (product.Contains("producttypecode") && product["producttypecode"] != null) { res_product.ProductStatus = product.FormattedValues["producttypecode"]; } if (product.Contains("defaultuomid") && product["defaultuomid"] != null) { EntityReference unit = (EntityReference)product["defaultuomid"]; res_product.Unit = unit.Name; } res_product.DecimalsSupported = product.GetAttributeValue <int>("quantitydecimal").ToString(); if (product.Contains("pricelevelid") && product["pricelevelid"] != null) { EntityReference pricelist = (EntityReference)product["pricelevelid"]; res_product.PriceList = pricelist.Name; } if (product.Contains("new_suppliera1") && product["new_suppliera1"] != null) { EntityReference supplier_a = (EntityReference)product["new_suppliera1"]; res_product.SupplierA = supplier_a.Name; } res_product.Brand = product.GetAttributeValue <string>("suppliername"); res_product.Quantity = product.GetAttributeValue <decimal>("quantityonhand").ToString("#.##"); res_product.BrandedPackage = product.GetAttributeValue <bool>("new_brandedpackage").ToString(); res_product.PetDreamHouseURL = product.GetAttributeValue <string>("producturl"); if (product.Contains("price") && product["price"] != null) { res_product.ListPrice = product.GetAttributeValue <Money>("price").Value.ToString("#.##"); } if (product.Contains("new_rrp") && product["new_rrp"] != null) { res_product.RRP = product.GetAttributeValue <Money>("new_rrp").Value.ToString("#.##"); } res_product.ProductColor = product.GetAttributeValue <string>("new_colour"); res_product.ProductBarcode = product.GetAttributeValue <string>("new_productbarcode"); res_product.ProductDimensions = product.GetAttributeValue <string>("new_size"); res_product.ProductWeight = product.GetAttributeValue <string>("new_productweight"); res_product.IdenticalUnitPerCase = product.GetAttributeValue <string>("new_casequantity"); res_product.CaseBarcode = product.GetAttributeValue <string>("new_casebarcode"); res_product.CaseDimensions = product.GetAttributeValue <string>("new_casedimensions"); res_product.CaseWeight = product.GetAttributeValue <string>("new_caseweight"); res_product.CTNDetails = product.GetAttributeValue <string>("new_ctndetails"); if (product.Contains("new_parentcatalog") && product["new_parentcatalog"] != null) { res_product.ParentCatalog = product.FormattedValues["new_parentcatalog"]; } if (product.Contains("new_subcatelog") && product["new_subcatelog"] != null) { res_product.SubCatalog = product.FormattedValues["new_subcatelog"]; } if (product.Contains("new_additionalcatelog") && product["new_additionalcatelog"] != null) { res_product.AdditionalCatalog = product.FormattedValues["new_additionalcatelog"]; } res_product.ProductDescription = product.GetAttributeValue <string>("description"); res_product.UnitBarCode = product.GetAttributeValue <string>("new_barcode"); res_product.UnitWeight_KG = product.GetAttributeValue <decimal>("new_grossunitweight").ToString("#.##"); res_product.UnitDepthLength_CM = product.GetAttributeValue <decimal>("new_unitdepthcm").ToString("#.##"); res_product.UnitWidthGirth_CM = product.GetAttributeValue <decimal>("new_unitwidthcm").ToString("#.##"); res_product.UnitHeightNeck_CM = product.GetAttributeValue <decimal>("new_unitheight").ToString("#.##"); res_product.CartonBarcode = product.GetAttributeValue <string>("new_mastercartonbarcode"); res_product.UnitsPerCarton = product.GetAttributeValue <string>("new_packspermasterbox"); res_product.CartonWeight_KG = product.GetAttributeValue <decimal>("new_mastercartonweightkg").ToString("#.##"); res_product.CartonDepth_CM = product.GetAttributeValue <decimal>("new_mastercartondepthcm").ToString("#.##"); res_product.CartonWidth_CM = product.GetAttributeValue <decimal>("new_mastercartonwidthcm").ToString("#.##"); res_product.CartonHeight_CM = product.GetAttributeValue <decimal>("new_mastercartonheightcm").ToString("#.##"); res_product.CreatedOn = product.GetAttributeValue <DateTime>("createdon").ToLocalTime().ToString("yyyyMMddHHmmss"); products.Add(res_product); //Console.WriteLine("account name:" + act["name"]); //Console.WriteLine("primary contact first name:" + act["primarycontact.firstname"]); //Console.WriteLine("primary contact last name:" + act["primarycontact.lastname"]); } } catch (Exception ex) { log.Info(ex.Message + "--" + ex.ToString()); } return(products); }