高章伟
2023-03-28 fa01cf80171eb10c7f1b4f1764376397b714c526
force-app/main/default/classes/NFM110Rest.cls
@@ -108,6 +108,22 @@
      main(rowData_Id);
   }
   global static void main(String rowData_Id) {
      // WLIG-CCT9UG 20220512 lt start
      Map<String, String> transferMap = new Map<String, String>();
        List<BatchIF_Transfer__c> transferList = [select Table__c,
                                  Column__c,
                                  External_value__c,
                                  Internal_value__c
                                  from BatchIF_Transfer__c
                                  where Dropped_Flag__c = false
                                          and (Table__c = 'NFM110')
                                          ];
        for (BatchIF_Transfer__c t : transferList) {
            transferMap.put(t.Column__c + t.External_value__c, t.Internal_value__c);
        }
      // WLIG-CCT9UG 20220512 lt end
      // 在进行NFM110处理时跳过消耗品明细2 arrived return 处理 HWAG-B3D9UV 2018/8/14 start
      StaticParameter.ConsumableAssetHanderTrigger = true;
      StaticParameter.EscapeConsumableOrderDetail2Trigger = true;
@@ -764,7 +780,15 @@
                        rac.Deliver_date__c           = NFMUtil.parseStr2Date(infoH.DeliveryDate);
                        rac.Arrive_date__c           = NFMUtil.parseStr2Date(infoH.DeliveryDate);
                        rac.Used_date__c           = NFMUtil.parseStr2Date(infoH.DeliveryDate);
                        // gzw DB202301244151 保修期限验证日期可行性调整 start
                        if (dnInfo.ValidTo !=null && dnInfo.ValidTo.length() == 8
                                 && Integer.valueOf(dnInfo.ValidTo.substring(0, 4)) <= Integer.valueOf(Date.today().Year())) {
                           rac.Sterilization_limit__c = null;
                        }else{
                        rac.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                        }
                        // rac.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                        // gzw DB202301244151 保修期限验证日期可行性调整 end
                        rac.Consumable_product__c     = prdSearch.Id;
                        rac.Bar_Code__c               = dnInfo.Barcode;
                        rac.Used_account__c           = addressNameApiMap.get(oppMap.get(InquiryNoStr).SAP_Province__c);
@@ -920,7 +944,15 @@
                              rac.Deliver_date__c           = NFMUtil.parseStr2Date(infoH.DeliveryDate);
                              rac.Arrive_date__c           = NFMUtil.parseStr2Date(infoH.DeliveryDate);
                              rac.Used_date__c           = NFMUtil.parseStr2Date(infoH.DeliveryDate);
                              // gzw DB202301244151 保修期限验证日期可行性调整 start
                              if (dnInfo.ValidTo !=null && dnInfo.ValidTo.length() == 8
                                       && Integer.valueOf(dnInfo.ValidTo.substring(0, 4)) <= Integer.valueOf(Date.today().Year())) {
                                 rac.Sterilization_limit__c = null;
                              }else{
                              rac.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                              }
                              // rac.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                              // gzw DB202301244151 保修期限验证日期可行性调整 end
                              rac.Consumable_product__c     = prdSearch.Id;
                              rac.Bar_Code__c               = dnInfo.Barcode;
                              rac.Used_account__c           = addressNameApiMap.get(oppMap.get(InquiryNoStr).SAP_Province__c);
@@ -1036,7 +1068,15 @@
                     // update by vivek srart 2020-02-13
                     // orderdetInfo.Account_province_txt__c = accsMap.get(infoH.EndUserNo).OCM_man_province_txt__c;
                     // update by vivek end 2020-02-13
                     // gzw DB202301244151 保修期限验证日期可行性调整 start
                     if (dnInfo.ValidTo !=null && dnInfo.ValidTo.length() == 8
                              && Integer.valueOf(dnInfo.ValidTo.substring(0, 4)) <= Integer.valueOf(Date.today().Year())) {
                        orderdetInfo.Sterilization_limit__c = null;
                     }else{
                     orderdetInfo.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                     }
                     // orderdetInfo.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                     // gzw DB202301244151 保修期限验证日期可行性调整 end
                     //orderdetInfo.Bar_Code__c               = dnInfo.Barcode;
                     orderdetInfo.DeliveryNote__c           = infoH.DeliveryNote;
                     // update by Gaozw start 20200514
@@ -1231,7 +1271,15 @@
                     rac.Asset_Model_No__c         = prdSearch.Asset_Model_No__c;
                     rac.Consumable_order_minor__c = order.Id;
                     rac.Deliver_date__c           = NFMUtil.parseStr2Date(infoH.DeliveryDate);
                     // gzw DB202301244151 保修期限验证日期可行性调整 start
                     if (dnInfo.ValidTo !=null && dnInfo.ValidTo.length() == 8
                              && Integer.valueOf(dnInfo.ValidTo.substring(0, 4)) <= Integer.valueOf(Date.today().Year())) {
                        rac.Sterilization_limit__c = null;
                     }else{
                     rac.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                     }
                     //    rac.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                     // gzw DB202301244151 保修期限验证日期可行性调整 end
                     rac.Consumable_product__c     = prdSearch.Id;
                     rac.Bar_Code__c               = dnInfo.Barcode;
                     rac.Used_account__c           = accsMap.get(infoH.EndUserNo).Id;
@@ -1514,7 +1562,10 @@
                     // 20210108 gzw add 虚拟合同号追加 start
                  }
                  // 20210108 gzw add 虚拟合同号追加 start
                  ast.warrantyType__c                  = dnInfo.GuaranteeType;
                  // WLIG-CCT9UG 20220512 lt start
                  //ast.warrantyType__c                  = dnInfo.GuaranteeType;
                  ast.warrantyType__c                  = NFMUtil.getMapValue(transferMap, 'warrantyType__c', string.valueof(dnInfo.GuaranteeType), iflog);
                  // WLIG-CCT9UG 20220512 lt end
                  if (String.isNotBlank(dnInfo.MaintenancePrice)) {
                     Decimal mPrice = Decimal.valueOf(dnInfo.MaintenancePrice.trim());
                     ast.Maintenance_Price_Year__c = oppMap.get(InquiryNoStr).Trade__c == '内貿'?
@@ -1592,7 +1643,15 @@
                  }
                  rac.Asset_Model_No__c         = prdSearch.Asset_Model_No__c;
                  rac.Deliver_date__c           = NFMUtil.parseStr2Date(infoH.DeliveryDate);
                  // gzw DB202301244151 保修期限验证日期可行性调整 start
                  if (dnInfo.ValidTo !=null && dnInfo.ValidTo.length() == 8
                           && Integer.valueOf(dnInfo.ValidTo.substring(0, 4)) <= Integer.valueOf(Date.today().Year())) {
                     rac.Sterilization_limit__c = null;
                  }else{
                  rac.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                  }
                  // rac.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                  // gzw DB202301244151 保修期限验证日期可行性调整 end
                  rac.Consumable_product__c     = prdSearch.Id;
                  rac.Bar_Code__c               = dnInfo.Barcode;
                  rac.Used_account__c           = accsMap.get(infoH.EndUserNo).Id;
@@ -1756,7 +1815,10 @@
                                                   gPrice : gPrice * Decimal.valueOf(Label.Account_Exc);
                     // 20210108 gzw add 虚拟合同号追加 start
                  }
                  ast.warrantyType__c                  = dnInfo.GuaranteeType;
                  // WLIG-CCT9UG 20220512 lt start
                  //ast.warrantyType__c                  = dnInfo.GuaranteeType;
                  ast.warrantyType__c                  = NFMUtil.getMapValue(transferMap, 'warrantyType__c', string.valueof(dnInfo.GuaranteeType), iflog);
                  // WLIG-CCT9UG 20220512 lt end
                  if (String.isNotBlank(dnInfo.MaintenancePrice)) {
                     // 20210108 gzw add 虚拟合同号追加 start
                     Decimal mPrice = Decimal.valueOf(dnInfo.MaintenancePrice.trim());
@@ -1896,7 +1958,15 @@
                  rac.Deliver_date__c           = NFMUtil.parseStr2Date(infoH.DeliveryDate);
                  rac.Arrive_date__c           = NFMUtil.parseStr2Date(infoH.DeliveryDate);
                  rac.Used_date__c           = NFMUtil.parseStr2Date(infoH.DeliveryDate);
                  // gzw DB202301244151 保修期限验证日期可行性调整 start
                  if (dnInfo.ValidTo !=null && dnInfo.ValidTo.length() == 8
                           && Integer.valueOf(dnInfo.ValidTo.substring(0, 4)) <= Integer.valueOf(Date.today().Year())) {
                     rac.Sterilization_limit__c = null;
                  }else{
                  rac.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                  }
                  // rac.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                  // gzw DB202301244151 保修期限验证日期可行性调整 end
                  rac.Consumable_product__c     = prdSearch.Id;
                  rac.Bar_Code__c               = dnInfo.Barcode;
                  rac.Used_account__c           = addressNameApiMap.get(oppMap.get(InquiryNoStr).SAP_Province__c);
@@ -2094,7 +2164,10 @@
                                                   gPrice : gPrice * Decimal.valueOf(Label.Account_Exc);
                     // 20210108 gzw add 虚拟合同号追加 start
                  }
                  ast.warrantyType__c                  = dnInfo.GuaranteeType;
                  // WLIG-CCT9UG 20220512 lt start
                  //ast.warrantyType__c                  = dnInfo.GuaranteeType;
                  ast.warrantyType__c                  = NFMUtil.getMapValue(transferMap, 'warrantyType__c', string.valueof(dnInfo.GuaranteeType), iflog);
                  // WLIG-CCT9UG 20220512 lt end
                  if (String.isNotBlank(dnInfo.MaintenancePrice)) {
                     // 20210108 gzw add 虚拟合同号追加 start
                     Decimal mPrice = Decimal.valueOf(dnInfo.MaintenancePrice.trim());
@@ -2249,7 +2322,15 @@
                  // rac.Arrive_date__c           = NFMUtil.parseStr2Date(infoH.DeliveryDate);
                  // rac.Used_date__c           = NFMUtil.parseStr2Date(infoH.DeliveryDate);
                  // 自动修改最终用户 update by vivek end
                  // gzw DB202301244151 保修期限验证日期可行性调整 start
                  if (dnInfo.ValidTo !=null && dnInfo.ValidTo.length() == 8
                           && Integer.valueOf(dnInfo.ValidTo.substring(0, 4)) <= Integer.valueOf(Date.today().Year())) {
                     rac.Sterilization_limit__c = null;
                  }else{
                  rac.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                  }
                  // rac.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                  // gzw DB202301244151 保修期限验证日期可行性调整 end
                  rac.Consumable_product__c     = prdSearch.Id;
                  rac.Bar_Code__c               = dnInfo.Barcode;
                  rac.Used_account__c           = oppMap.get(InquiryNoStr).Agency1__c;
@@ -2462,7 +2543,10 @@
                                                   gPrice : gPrice * Decimal.valueOf(Label.Account_Exc);
                     // 20210108 gzw add 虚拟合同号追加 start
                  }
                  ast.warrantyType__c                  = dnInfo.GuaranteeType;
                  // WLIG-CCT9UG 20220512 lt start
                  //ast.warrantyType__c                  = dnInfo.GuaranteeType;
                  ast.warrantyType__c                  = NFMUtil.getMapValue(transferMap, 'warrantyType__c', string.valueof(dnInfo.GuaranteeType), iflog);
                  // WLIG-CCT9UG 20220512 lt end
                  if (String.isNotBlank(dnInfo.MaintenancePrice)) {
                     // 20210108 gzw add 虚拟合同号追加 start
                     Decimal mPrice = Decimal.valueOf(dnInfo.MaintenancePrice.trim());
@@ -2550,7 +2634,10 @@
               ast.Department_Class__c = olympus_return.ParentId; //'Olympus社内 其他'
               ast.AccountID = olympus_return.Id;                 //'Olympus社内 其他 退货'
               ast.Order_No__c = '';
               ast.Posting_Date__c = null;
               // CHAN-CCR6MW gzw 【委托】【保有设备】保有设备发货日逻辑 start
               // ast.Posting_Date__c = null;
               ast.Posting_Date__c = Date.today();
               // CHAN-CCR6MW gzw 【委托】【保有设备】保有设备发货日逻辑 end
               ast.DeliveryNote__c = '';
               ast.InstallDate = null;
               ast.Guarantee_period_for_products__c = null;