Message Flow for ESB 4

DECLARE I INTEGER 1;
--Users
CREATE FIELD messageBody.uvs:Users;
DECLARE users REFERENCE TO messageBody.uvs:Users;
FOR source AS siebelMessage.siebel:ListOfOrder.siebel:ListOfOrderHeader.siebel:Order.siebel:ListOfOrderItem.siebel:OrderItem[] DO
--不處理商品類型爲:Promotion、Equipment
IF FIELDVALUE(source.siebel:ProductType) <> 'Promotion' AND FIELDVALUE(source.siebel:ProductType) <> 'Equipment' THEN
DECLARE J INTEGER 1;
--開戶狀態
DECLARE status CHARACTER Common.getTransferValue(Siebel.Util.getAssetStatus(),FIELDVALUE(source.siebel:AssetStatus));
--商品類型
DECLARE prodType CHARACTER Common.getTransferValue(Siebel.Util.getProductType(),FIELDVALUE(source.siebel:ProductType));
--付費類型 枚舉轉換
DECLARE paidMode_h CHARACTER Common.getTransferValue(Siebel.Util.getPaymentType(),FIELDVALUE(source.siebel:HWProductPaymentType));

SET users.uvs:User[I].uvs:SubInfoEntity.(XMLNSC.Attribute)type='1';
SET users.uvs:User[I].uvs:SubInfoEntity.uvs:Subscriber.uvs:subscriberID=source.siebel:AssetIntegrationId;
SET users.uvs:User[I].uvs:SubInfoEntity.uvs:Subscriber.uvs:belToAreaID3='000001';
SET users.uvs:User[I].uvs:SubInfoEntity.uvs:Subscriber.uvs:characterValue='201109800600012';
SET users.uvs:User[I].uvs:SubInfoEntity.uvs:Subscriber.uvs:subNo=source.siebel:ServiceId;
SET users.uvs:User[I].uvs:SubInfoEntity.uvs:Subscriber.uvs:lang='1';
SET users.uvs:User[I].uvs:SubInfoEntity.uvs:Subscriber.uvs:status=status;
SET users.uvs:User[I].uvs:SubInfoEntity.uvs:Subscriber.uvs:custID=siebelMessage.siebel:ListOfOrder.siebel:ListOfOrderHeader.siebel:Order.siebel:AccountNumber;
--時間轉換
SET users.uvs:User[I].uvs:SubInfoEntity.uvs:Subscriber.uvs:validTime=Siebel.Util.convertTimeToCBSBySiebel(siebelMessage.siebel:ListOfOrder.siebel:ListOfOrderHeader.siebel:Order.siebel:Created);
SET users.uvs:User[I].uvs:SubInfoEntity.uvs:Subscriber.uvs:paidMode=paidMode_o;
SET users.uvs:User[I].uvs:SubInfoEntity.uvs:Subscriber.uvs:subCredit=acctCredit;

--主產品
SET users.uvs:User[I].uvs:SubProList.uvs:SubProduct[J].uvs:ProdInfoEntity.uvs:productID=source.siebel:AssetIntegrationId;
SET users.uvs:User[I].uvs:SubProList.uvs:SubProduct[J].uvs:ProdInfoEntity.uvs:subscriberID=source.siebel:AssetIntegrationId;
SET users.uvs:User[I].uvs:SubProList.uvs:SubProduct[J].uvs:ProdInfoEntity.uvs:prodDefID=source.siebel:ProductId;
SET users.uvs:User[I].uvs:SubProList.uvs:SubProduct[J].uvs:ProdInfoEntity.uvs:prodType=prodType;
SET users.uvs:User[I].uvs:SubProList.uvs:SubProduct[J].uvs:ProdInfoEntity.uvs:brand='0';
SET users.uvs:User[I].uvs:SubProList.uvs:SubProduct[J].uvs:ProdInfoEntity.uvs:subBrand='0';
SET users.uvs:User[I].uvs:SubProList.uvs:SubProduct[J].uvs:ProdInfoEntity.uvs:subscribeType='0';
SET users.uvs:User[I].uvs:SubProList.uvs:SubProduct[J].uvs:ProdInfoEntity.uvs:tariffPlanId=source.siebel:PricePlanId;
SET users.uvs:User[I].uvs:SubProList.uvs:SubProduct[J].uvs:ProdInfoEntity.uvs:paidMode=paidMode_h;
SET users.uvs:User[I].uvs:SubProList.uvs:SubProduct[J].uvs:ProdInfoEntity.uvs:beginDate=Siebel.Util.convertTimeToCBSBySiebel(siebelMessage.siebel:ListOfOrder.siebel:ListOfOrderHeader.siebel:Order.siebel:Created);
SET users.uvs:User[I].uvs:SubProList.uvs:SubProduct[J].uvs:ProdInfoEntity.uvs:endDate='20991231235959';
SET users.uvs:User[I].uvs:SubProList.uvs:SubProduct[J].uvs:ProdInfoEntity.uvs:validMode='0';
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章