李彤
2023-05-29 41a627eaaf29658a401ac43e4da838a5b622f44e
force-app/main/default/classes/NFM110Rest.cls
@@ -473,6 +473,7 @@
         List<Opportunity> oppList = [Select Id, Purchase_Type__c, Opportunity_No__c, Strategic_department_Class_Name__c,
                                      Sales_Root__c, SAP_Province__c, Trade__c, Agency1__c, Agency1__r.Name,
                                      Agency1__r.OCM_man_province_txt__c, Opportunity_Category__c
                              //  ,SAP_Province__c //20230323 lt DB202303088261 两票制 add
                                      From Opportunity Where Opportunity_No__c IN :inquiryNoList];
         // update by gzw 2020-04-27 start
         Map<String, Opportunity> oppMap = new Map<String, Opportunity>();
@@ -782,7 +783,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);
                        rac.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                        // 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);
@@ -855,6 +864,13 @@
                                                             netProviston : netProviston * Decimal.valueOf(Label.Account_Exc);
                        }
                        // 20210108 gzw add 虚拟合同号追加 end
                        //20230323 lt DB202303088261 两票制 Start
                        // if(oppMap.get(InquiryNoStr).SAP_Province__c == 'OSH-安徽省'){
                        //    delAst.OSHFLG__c = true ;
                        // }
                        //20230323 lt DB202303088261 两票制 End
                        // CHAN-BGYE7C end
                        // CHAN-BJX9EQ Start
                        delAst.NMPA_Approbation_No__c           = dnInfo.NMPA_NO;
@@ -938,7 +954,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);
                              rac.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                              // 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);
@@ -1054,7 +1078,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
                     orderdetInfo.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                     // 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
@@ -1096,6 +1128,11 @@
                     }
                     if (astsMap.get(ast.Product_Serial_No__c ) == null) {
                        ast = new Asset();
                        //20230323 lt DB202303088261 两票制 Start
                        if(oppMap.get(InquiryNoStr).SAP_Province__c == 'OSH-安徽省'){
                           ast.OSHFLG__c = true ;
                        }
                        //20230323 lt DB202303088261 两票制 End
                        astList.add(ast);
                        //astUpdateMap.put(ast.Product_Serial_No__c, ast);
@@ -1249,7 +1286,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);
                     rac.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                     // 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;
@@ -1302,6 +1347,11 @@
                  }
                  if (astsMap.get(ast.Product_Serial_No__c ) == null) {
                     ast = new Asset();
                     //20230323 lt DB202303088261 两票制 Start
                     if(oppMap.get(InquiryNoStr).SAP_Province__c == 'OSH-安徽省'){
                        ast.OSHFLG__c = true ;
                     }
                     //20230323 lt DB202303088261 两票制 End
                     astList.add(ast);
                     //astUpdateMap.put(ast.Product_Serial_No__c, ast);
                     logstr += dnInfo.OTCode + ':' + dnInfo.SerialNoorLotNo + '(' + dnInfo.TracingCode + ')' + ' ';
@@ -1454,6 +1504,11 @@
                  }
                  if (astsMap.get(ast.Product_Serial_No__c ) == null) {
                     ast = new Asset();
                     //20230323 lt DB202303088261 两票制 Start
                     if(oppMap.get(InquiryNoStr).SAP_Province__c == 'OSH-安徽省'){
                        ast.OSHFLG__c = true ;
                     }
                     //20230323 lt DB202303088261 两票制 End
                     astList.add(ast);
                     logstr += dnInfo.OTCode + ':' + dnInfo.SerialNoorLotNo + '(' + dnInfo.TracingCode + ')' + ' ';
                  } else {
@@ -1613,7 +1668,15 @@
                  }
                  rac.Asset_Model_No__c         = prdSearch.Asset_Model_No__c;
                  rac.Deliver_date__c           = NFMUtil.parseStr2Date(infoH.DeliveryDate);
                  rac.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                  // 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;
@@ -1671,6 +1734,11 @@
                  }
                  if (astsMap.get(ast.Product_Serial_No__c ) == null) {
                     ast = new Asset();
                     //20230323 lt DB202303088261 两票制 Start
                     if(oppMap.get(InquiryNoStr).SAP_Province__c == 'OSH-安徽省'){
                        ast.OSHFLG__c = true ;
                     }
                     //20230323 lt DB202303088261 两票制 End
                     astList.add(ast);
                     //astUpdateMap.put(ast.Product_Serial_No__c, ast);
                     logstr += dnInfo.OTCode + ':' + dnInfo.SerialNoorLotNo + '(' + dnInfo.TracingCode + ')' + ' ';
@@ -1694,6 +1762,11 @@
                         ) {
                        continue;
                     }
                     //20230323 lt DB202303088261 两票制 Start
                     if(oppMap.get(InquiryNoStr).SAP_Province__c == 'OSH-安徽省'){
                        ast.OSHFLG__c = true ;
                     }
                     //20230323 lt DB202303088261 两票制 End
                     astList.add(ast);
                     /* 原代码
                        iflog.ErrorLog__c += 'Warning! Asset' + '[' + dnInfo.OTCode + ':' + dnInfo.SerialNoorLotNo  + '] Exist. This asset is skipped.\n';
@@ -1920,7 +1993,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);
                  rac.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                  // 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);
@@ -1972,6 +2053,11 @@
                  }
                  if (astsMap.get(ast.Product_Serial_No__c ) == null) {
                     ast = new Asset();
                     //20230323 lt DB202303088261 两票制 Start
                     if(oppMap.get(InquiryNoStr).SAP_Province__c == 'OSH-安徽省'){
                        ast.OSHFLG__c = true ;
                     }
                     //20230323 lt DB202303088261 两票制 End
                     astList.add(ast);
                     //astUpdateMap.put(ast.Product_Serial_No__c, ast);
                     logstr += dnInfo.OTCode + ':' + dnInfo.SerialNoorLotNo + '(' + dnInfo.TracingCode + ')' + ' ';
@@ -1995,6 +2081,11 @@
                         ) {
                        continue;
                     }
                     //20230323 lt DB202303088261 两票制 Start
                     if(oppMap.get(InquiryNoStr).SAP_Province__c == 'OSH-安徽省'){
                        ast.OSHFLG__c = true ;
                     }
                     //20230323 lt DB202303088261 两票制 End
                     astList.add(ast);
                     //原代码:
@@ -2276,7 +2367,15 @@
                  // rac.Arrive_date__c           = NFMUtil.parseStr2Date(infoH.DeliveryDate);
                  // rac.Used_date__c           = NFMUtil.parseStr2Date(infoH.DeliveryDate);
                  // 自动修改最终用户 update by vivek end
                  rac.Sterilization_limit__c    = NFMUtil.parseStr2Date(dnInfo.ValidTo);
                  // 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;
@@ -2324,6 +2423,11 @@
                  if (astsMap.get(ast.Product_Serial_No__c ) == null) {
                     ast = new Asset();
                     //20230323 lt DB202303088261 两票制 Start
                     if(oppMap.get(InquiryNoStr).SAP_Province__c == 'OSH-安徽省'){
                        ast.OSHFLG__c = true ;
                     }
                     //20230323 lt DB202303088261 两票制 End
                     astList.add(ast);
                     logstr += dnInfo.SorLMark == 'S' ? dnInfo.OTCode + ':' + dnInfo.SerialNoorLotNo : dnInfo.OTCode + ':' + dnInfo.SerialNoorLotNo + '(' + dnInfo.TracingCode + ')';
                  } else {
@@ -2338,6 +2442,11 @@
                        iflog.ErrorLog__c += 'Warning! Asset' + '[' + errMes + '] Exist. This asset is skipped.\n';
                        continue;
                     }
                     //20230323 lt DB202303088261 两票制 Start
                     if(oppMap.get(InquiryNoStr).SAP_Province__c == 'OSH-安徽省'){
                        ast.OSHFLG__c = true ;
                     }
                     //20230323 lt DB202303088261 两票制 End
                     astList.add(ast);
                     // CHAN-BUY3GV end
                     // 原代码