protected static FR_L5PL_GPWADfT_1720_Array Execute(DbConnection Connection, DbTransaction Transaction, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { #region UserCode var returnValue = new FR_L5PL_GPWADfT_1720_Array(); //Put your code here List <L5PL_GPWADfT_1720> finalList = new List <L5PL_GPWADfT_1720>(); P_L2PL_GAPfToP_1723 paramPricelists = new P_L2PL_GAPfToP_1723(); var pricelists = cls_Get_AllPricelists_For_TenantID_or_PricelistID.Invoke(Connection, paramPricelists, securityTicket).Result; Guid defaultPricelist = Guid.Empty; var tenantQuery = new ORM_CMN_Tenant.Query(); tenantQuery.Tenant_RefID = securityTicket.TenantID; tenantQuery.CMN_TenantID = securityTicket.TenantID; var foundTenant = ORM_CMN_Tenant.Query.Search(Connection, Transaction, tenantQuery); if (foundTenant != null) { defaultPricelist = ORM_CMN_Tenant.Query.Search(Connection, Transaction, tenantQuery).Single().Customers_DefaultPricelist_RefID; } foreach (var pricelist in pricelists) { L5PL_GPWADfT_1720 temp = new L5PL_GPWADfT_1720(); temp.PricelistDetails = pricelist; var releasesQuery = new ORM_CMN_SLS_Pricelist_Release.Query(); releasesQuery.Tenant_RefID = securityTicket.TenantID; releasesQuery.Pricelist_RefID = pricelist.CMN_SLS_PricelistID; var foundReleases = ORM_CMN_SLS_Pricelist_Release.Query.Search(Connection, Transaction, releasesQuery).ToList(); P_L2PL_GARfToPID_1730 releasesParam = new P_L2PL_GARfToPID_1730(); releasesParam.PricelistID = pricelist.CMN_SLS_PricelistID; L2PL_GARfToPID_1730[] releasesArray = cls_Get_AllReleases_for_TenantID_ID_or_PricelistID.Invoke(Connection, Transaction, releasesParam).Result; temp.Releases = new L2PL_GARfToPID_1730[releasesArray.Length]; for (int i = 0; i < releasesArray.Length; i++) { temp.Releases[i] = releasesArray[i]; } temp.IsDefault = pricelist.CMN_SLS_PricelistID == defaultPricelist; finalList.Add(temp); } returnValue.Result = finalList.ToArray(); return(returnValue); #endregion UserCode }
protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L5PL_PDD_1242 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { //Leave UserCode region to enable user code saving #region UserCode var returnValue = new FR_Guid(); //Put your code here P_L2PL_SP_1407 delPricelistParam = new P_L2PL_SP_1407(); delPricelistParam = Parameter.Save_CMN_SLS_Pricelist_Param; var pricelistReleasesQuery = new ORM_CMN_SLS_Pricelist_Release.Query(); pricelistReleasesQuery.Pricelist_RefID = delPricelistParam.CMN_SLS_PricelistID; pricelistReleasesQuery.Tenant_RefID = securityTicket.TenantID; var foundReleases = ORM_CMN_SLS_Pricelist_Release.Query.Search(Connection, Transaction, pricelistReleasesQuery); //delete all found releases/versions for pricelistID foreach (var release in foundReleases) { release.IsDeleted = true; release.Save(Connection, Transaction); } //check if this is default pricelist var tenantQuery = new ORM_CMN_Tenant.Query(); tenantQuery.CMN_TenantID = securityTicket.TenantID; tenantQuery.Tenant_RefID = securityTicket.TenantID; var foundTenant = ORM_CMN_Tenant.Query.Search(Connection, Transaction, tenantQuery).SingleOrDefault(); //if yes, then set default pricelist id to empty guid if (foundTenant != null && foundTenant.Customers_DefaultPricelist_RefID == delPricelistParam.CMN_SLS_PricelistID) { foundTenant.Customers_DefaultPricelist_RefID = Guid.Empty; } //finaly, delete pricelist var deletedPricelist = cls_Save_CMN_SLS_Pricelist.Invoke(Connection, Transaction, delPricelistParam, securityTicket).Result; returnValue.Result = deletedPricelist; return(returnValue); #endregion UserCode }
protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L3CA_DIC_1511 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { //Leave UserCode region to enable user code saving #region UserCode var returnValue = new FR_Guid(); var subscribedCatalog = new ORM_CMN_PRO_SubscribedCatalog(); subscribedCatalog.Load(Connection, Transaction, Parameter.SubscribedCatalogID); subscribedCatalog.IsDeleted = true; subscribedCatalog.Save(Connection, Transaction); /* * @all products from this catalog are not available anymore * */ var productQuery = new ORM_CMN_PRO_Product.Query(); productQuery.Tenant_RefID = securityTicket.TenantID; productQuery.IfImportedFromExternalCatalog_CatalogSubscription_RefID = subscribedCatalog.CMN_PRO_SubscribedCatalogID; productQuery.IsDeleted = false; var productList = ORM_CMN_PRO_Product.Query.Search(Connection, Transaction, productQuery).ToList(); foreach (var product in productList) { product.IsProductAvailableForOrdering = false; product.Save(Connection, Transaction); } /* * @delete priceList and all products prices * */ var priceReleaseQuery = new ORM_CMN_SLS_Pricelist_Release.Query(); priceReleaseQuery.Tenant_RefID = securityTicket.TenantID; priceReleaseQuery.CMN_SLS_Pricelist_ReleaseID = subscribedCatalog.SubscribedCatalog_PricelistRelease_RefID; priceReleaseQuery.IsDeleted = false; var priceRelease = ORM_CMN_SLS_Pricelist_Release.Query.Search(Connection, Transaction, priceReleaseQuery).First(); priceRelease.IsDeleted = true; var priceListQuery = new ORM_CMN_SLS_Pricelist.Query(); priceListQuery.Tenant_RefID = securityTicket.TenantID; priceListQuery.CMN_SLS_PricelistID = priceRelease.Pricelist_RefID; priceListQuery.IsDeleted = false; var priceList = ORM_CMN_SLS_Pricelist.Query.Search(Connection, Transaction, priceListQuery).First(); priceList.IsDeleted = true; priceList.Save(Connection, Transaction); var priceQuery = new ORM_CMN_SLS_Price.Query(); priceQuery.Tenant_RefID = securityTicket.TenantID; priceQuery.PricelistRelease_RefID = priceRelease.Pricelist_RefID; priceQuery.IsDeleted = false; var prices = ORM_CMN_SLS_Price.Query.Search(Connection, Transaction, priceQuery).ToList(); foreach (var price in prices) { price.IsDeleted = true; price.Save(Connection, Transaction); } priceRelease.Save(Connection, Transaction); return(returnValue); #endregion UserCode }