From 5ae534ab606e6f2ba5ea60914224d665b0447d5a Mon Sep 17 00:00:00 2001 From: Kevin Kok Khah Whey <khahwhey.kok@3ds.com> Date: 星期二, 07 十一月 2023 22:48:31 +0800 Subject: [PATCH] Merge branch 'dev' of http://47.101.211.7:10101/r/TIANMA_JITUAN into dev_Kevin --- _Main/BL/Type_MacroPlan/StaticMethod_DoASync#253.qbl | 108 +++++++++++++++++++---------------------------------- 1 files changed, 39 insertions(+), 69 deletions(-) diff --git "a/_Main/BL/Type_MacroPlan/StaticMethod_DoASync\043253.qbl" "b/_Main/BL/Type_MacroPlan/StaticMethod_DoASync\043253.qbl" index 8e5e156..f3ad992 100644 --- "a/_Main/BL/Type_MacroPlan/StaticMethod_DoASync\043253.qbl" +++ "b/_Main/BL/Type_MacroPlan/StaticMethod_DoASync\043253.qbl" @@ -2,11 +2,11 @@ #parent: #root StaticMethod DoASync ( MacroPlan macroPlan, - Strings businessTypes, + const BusinessType businessType, Boolean isKeyProduct, Boolean createPurchaseSupplyMaterial, const GlobalOTDTable globalOTDTable -) +) as stream[MacroPlan] { Description: '鍗曟鍚屾' TextBody: @@ -16,25 +16,16 @@ //Currency_MP::CreateCurrencyFromJson( macroPlan, jsonDataRow ); info( "Prepare to do sync" ) info( "Get organ code list" ) - organcodelist := selectvalues( globalOTDTable, Global_MappingOperationBOM, bom,true, bom.OrganCode() ); - if( not isnull( businessTypes ) and businessTypes.Size() > 0 ) { - traverse( businessTypes, Elements, item ) { - info( "Business type : " + item ) - } - organcodelist := selectvalues( globalOTDTable, BusinessType.OrganCode, organ, businessTypes.Find( organ.BusinessType().BusinessTypeName() ) <> -1, organ.OrganCodeName() ); - } - else{ - if( businessTypes.Size() = 0 ){ - if( not isnull( selectset( globalOTDTable, BusinessType, b, b.BusinessTypeName() = "" ) ) ){ - organcodelist := selectvalues( globalOTDTable, BusinessType.OrganCode, organ, organ.BusinessType().BusinessTypeName() = "", organ.OrganCodeName() ); - } - } - } + businessTypeName := businessType.BusinessTypeName().Tokenize( "," ); + macroPlan.BusinessType( businessType.BusinessTypeName() ); + + organcodelist := selectvalues( businessType, OrganCode, organ, true, organ.OrganCodeName() ); if( organcodelist.Size() = 0 ){ - organcodelist := selectvalues( globalOTDTable, Global_MappingOperationBOM, bom,true, bom.OrganCode() ); + organcodelist := selectuniquevalues( globalOTDTable, Global_MappingOperationBOM, bom,true, bom.OrganCode() ); } + info( "Organcode list : " + organcodelist.ToString( "-" ) ); info( "KeyProduct : " + [String]isKeyProduct ) info( "Create purchase supply material : " + [String]createPurchaseSupplyMaterial ) @@ -46,113 +37,90 @@ UnitOfMeasure_MP::DoASync( globalOTDTable, macroPlan ); // 閿�鍞儴闂�-2 - SalesSegment_MP::DoASync( macroPlan, businessTypes,globalOTDTable ); + SalesSegment_MP::DoASync( macroPlan, businessTypeName,globalOTDTable ); // Unit-9 // 涓嶰peration涓�鍚屽鐞� //info( "BaseConversionFactor Finished, Start Operation Data Broker" ); //macroPlan.Broker_OTD_Operation().Execute(); info( "Operation Data Broker Finished, Start Unit Mapping" ); - macroPlan.DoASyncMappingUnitData( businessTypes ,globalOTDTable, organcodelist); + macroPlan.DoASyncMappingUnitData( businessTypeName ,globalOTDTable, organcodelist); // 搴撳瓨鐐�-3 - info( "Sales Segment Finished, Start Get StockingPoint From Api" ) - bodynumber := "2"; - postrequestbody := macroPlan.ApiBuildPostRequestBody( bodynumber ); - address := "api-uat-sgc.tianma.cn"; - url := "/otdService/https/GetStockingPointsInfo"; - port := 443; - data := macroPlan.ApiResponesCheck( address, url, port, postrequestbody ); - macroPlan.ApiStockingPointData( data ); + info( "Sales Segment Finished, Start Get StockingPoint From Mapping" ) + StockingPoint_MP::CreateFromMapping( globalOTDTable, macroPlan ); + //parameter := select( globalOTDTable, GlobalParameters, param, param.AttributeName() = "StockingPoint" ); + //postrequestbody := parameter.PostRequestBody(); + //address := parameter.Address(); + //url := parameter.AttributeValue(); + //port := [Number]parameter.Port(); + //data := macroPlan.ApiResponesCheck( address, url, port, postrequestbody ); + //macroPlan.ApiStockingPointData( data ); // 璐у竵淇℃伅-4 - info( "Get StockingPoint From Api Finished, Start Get CurrencyInfo From Api" ) - bodynumber := "1"; - postrequestbody := macroPlan.ApiBuildPostRequestBody( bodynumber ); - address := "api-uat-sgc.tianma.cn"; - url := "/otdService/https/GetCurrenciesInfo"; - port := 443; - data := macroPlan.ApiResponesCheck( address, url, port, postrequestbody ); - macroPlan.ApiCurenciesData( data ); + info( "Get StockingPoint From Api Finished, Start Get CurrencyInfo From Mapping" ) + Currency_MP::CreateFromMapping( globalOTDTable, macroPlan ); //璐у竵姹囩巼淇℃伅-5 - info( "Get CurrencyInfo From Api Finished, Start Get CurrencyRates From Api" ) - bodynumber := "5"; - postrequestbody := macroPlan.ApiBuildPostRequestBody( bodynumber ); - address := "api-uat-sgc.tianma.cn"; - url := "/otdService/https/GetCurrencyRatesInfo"; - port := 443; - data := macroPlan.ApiResponesCheck( address, url, port, postrequestbody ); - macroPlan.ApiCurencyRatesData( data ); + info( "Get CurrencyInfo From Api Finished, Start Get CurrencyRates From Mapping" ) + CurrencyRate_MP::CreateFromMapping( globalOTDTable, macroPlan ); // 浜у搧鐗╂枡-6 //info( "Get CurrencyRates From Api Finished, Start Product Data Broker" ) //macroPlan.Broker_OTD_Product().Execute(); info( "Product Data Broker Finished, Start Product Mapping" ); //testproduct := construct( Strings ); - macroPlan.DoASyncMappingProductData( businessTypes, globalOTDTable,isKeyProduct ); + macroPlan.DoASyncMappingProductData( businessTypeName, globalOTDTable,isKeyProduct ); //鍗曚綅杞崲-7 BaseConversionFactor::DoASync( macroPlan ,globalOTDTable); // 宸ヨ壓璺嚎 + BOM-9 info( "Unit Finished, Start Operation Mapping" ); - macroPlan.DoASyncMappingOperationData( businessTypes ,globalOTDTable, organcodelist ); + macroPlan.DoASyncMappingOperationData( businessTypeName ,globalOTDTable, organcodelist ); //info( "Operation Finished, Start BOM Data Broker" ); //macroPlan.Broker_OTD_BOM().Execute(); info( "BOM Data Broker Finished, Start BOM Mapping" ); - macroPlan.DoASyncMappingOperationBOMData( businessTypes, isKeyProduct, createPurchaseSupplyMaterial,globalOTDTable, organcodelist ); + macroPlan.DoASyncMappingOperationBOMData( businessTypeName, isKeyProduct, createPurchaseSupplyMaterial,globalOTDTable, organcodelist ); //杞﹂亾淇℃伅-10 - info( "BOM Finished, Start Get Lanes From Api" ); - bodynumber := "3"; - postrequestbody := macroPlan.ApiBuildPostRequestBody( bodynumber ); - address := "api-uat-sgc.tianma.cn"; - url := "/otdService/https/GetLanesInfo"; - port := 443; - data := macroPlan.ApiResponesCheck( address, url, port, postrequestbody ); - macroPlan.ApiLanesData( data ); + info( "BOM Finished, Start Get Lanes From Mapping" ); + Lane::CreasteFromMapping( globalOTDTable, macroPlan ); //杞﹂亾杩愯緭娈�-11 - info( "Get Lanes From Api Finished, Start Get LaneLegs From Api" ); - bodynumber := "4"; - postrequestbody := macroPlan.ApiBuildPostRequestBody( bodynumber ); - address := "api-uat-sgc.tianma.cn"; - url := "/otdService/https/GetLaneLegsInfo"; - port := 443; - data := macroPlan.ApiResponesCheck( address, url, port, postrequestbody ); - macroPlan.ApiLaneLegsData( data ); + info( "Get Lanes From Api Finished, Start Get LaneLegs From Mapping" ); + LaneLeg::CreateFromMapping( globalOTDTable, macroPlan ); // 渚涘簲缃戠粶锛堣溅閬擄級-12 //info( "Get Lanelegs From Api Finished, Start ProductInLane Data Broker" ); //macroPlan.Broker_OTD_ProductInLane().Execute(); info( "ProductInLane Data Broker Finished, Start ProductInLane Mapping" ); - macroPlan.DoASyncMappingProductInLaneData(globalOTDTable); + macroPlan.DoASyncMappingProductInLaneData( globalOTDTable,businessTypeName ); // 鍦ㄥ簱搴撳瓨鏁版嵁-13 //info( "ProductInLane Finished, Start ActualPISPIP Data Broker" ); //macroPlan.Broker_OTD_ActualPISPIP().Execute(); info( "ActualPISPIP Data Broker Finished, Start ActualPISPIP Mapping" ); - macroPlan.DoASyncMappingActualPISPIPData( businessTypes, globalOTDTable,isKeyProduct, organcodelist ); + macroPlan.DoASyncMappingActualPISPIPData( businessTypeName, globalOTDTable,isKeyProduct, organcodelist ); // 鍦ㄩ�斿簱瀛�-14 //info( "ActualPISPIP Finished, Start ExternalSupply Data Broker" ); //macroPlan.Broker_OTD_ExternalSupply().Execute(); info( "ExternalSupply Data Broker Finished, Start ExternalSupply Mapping" ); - macroPlan.DoASyncMappingExternalSupplyData( businessTypes, isKeyProduct ,globalOTDTable, organcodelist ); + macroPlan.DoASyncMappingExternalSupplyData( businessTypeName, isKeyProduct ,globalOTDTable, organcodelist ); // 搴撳瓨鎴愭湰-15 - InventoryValueAndCost::DoASync( macroPlan,globalOTDTable ); + InventoryValueAndCost::DoASync( macroPlan,globalOTDTable,businessTypeName ); // todo 鍒堕�犳垚鏈�-16 info( "InventoryCost Finished, Start OperationCost Mapping" ); - macroPlan.DoASyncMappingOperationCostData( globalOTDTable, businessTypes, organcodelist ); + macroPlan.DoASyncMappingOperationCostData( globalOTDTable, businessTypeName, organcodelist ); // 璁㈠崟棰勬祴-17 - Forecast::DoASync( macroPlan, businessTypes, globalOTDTable, organcodelist ); + Forecast::DoASync( macroPlan, businessTypeName, globalOTDTable, organcodelist ); // 璁㈠崟闇�姹�-18 - CustomerOrder::DoASync( macroPlan, businessTypes, globalOTDTable, organcodelist ); + CustomerOrder::DoASync( macroPlan, businessTypeName, globalOTDTable, organcodelist ); //鍒犻櫎澶氫綑鎶ラ敊鏁版嵁-19 macroPlan.DeleteSnaityCheck(); @@ -162,5 +130,7 @@ //// todo 渚涘簲鍟嗗洖澶� //info( "ProviderReply::DoSync" ) + + return emit( macroPlan ); *] } -- Gitblit v1.9.3