From b329ab986e250bb27e46ace97cf208f3b26d145a Mon Sep 17 00:00:00 2001
From: FUYU <fuyu@prec-tech.com>
Date: 星期一, 18 十二月 2023 17:38:15 +0800
Subject: [PATCH] 修改复制(不带产品按钮)

---
 force-app/main/default/aura/NewAgencyContact/NewAgencyContactController.js |  298 +++++++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 217 insertions(+), 81 deletions(-)

diff --git a/force-app/main/default/aura/NewAgencyContact/NewAgencyContactController.js b/force-app/main/default/aura/NewAgencyContact/NewAgencyContactController.js
index 49f4c47..5c76bf6 100644
--- a/force-app/main/default/aura/NewAgencyContact/NewAgencyContactController.js
+++ b/force-app/main/default/aura/NewAgencyContact/NewAgencyContactController.js
@@ -65,6 +65,7 @@
                             for(let s of layout){
                                 for(let c of s.layoutColumns){
                                     for(let item of c.layoutItems){
+                                        console.log('item.field = ' + item.field);
                                         if(rv.Data.data.hasOwnProperty(item.field)){
                                             item.value = rv.Data.data[item.field];
                                         }
@@ -103,8 +104,7 @@
                     });
                 }
                 
-            }else{
-                
+            }else{ 
                 helper.ShowToast({
                     "message" : "Init error",
                     "type" : "error"
@@ -123,16 +123,20 @@
         let url = staticResource.newUrl;
         let payloadPi = {};
         if (record_id && !isClone) {
-            url = staticResource.updateUrl
+            url = staticResource.updateUrl;
             payloadPi['dataId'] = component.get('v.record_data').AWS_Data_Id__c;
         }
         let layout = component.get('v.layout');
         
         let pi_fields_map = component.get('v.pi_fields_map');
         
+        let hospitalId = '';
         for(let s of layout){
             for(let c of s.layoutColumns){                
                 for(let item of c.layoutItems){
+                    if(item.field == 'Agency_Hospital__c'){
+                        hospitalId = item.value;
+                    }
                     if(pi_fields_map.hasOwnProperty(item.field)){
                         
                         payloadPi[pi_fields_map[item.field].AWS_Field_API__c] = item.value;
@@ -153,92 +157,224 @@
         }
         
         component.set("v.showSpinner", true);
-        helper.AwsPost(url, [payloadPi], function(result){
-            
-            let obj = result.object[0];
-            let data = {};
-            if(record_id && !isClone){
-                data.Id = record_id;
-            }else{
-                data.AWS_Data_Id__c = obj.dataId;
-            }
-            for(let s of layout){
-                for(let c of s.layoutColumns){                
-                    for(let item of c.layoutItems){
-                        if(item.field && item.behavior != "Readonly"){
-                            if(pi_fields_map.hasOwnProperty(item.field)){
-                                data[item.field] = obj[pi_fields_map[item.field].AWS_Field_API__c];
-                                data[pi_fields_map[item.field].SF_Field_Encrypted_API__c] = obj[pi_fields_map[item.field].AWS_Encrypted_Field_API__c];
-                            }else{
-                                data[item.field] = item.value;
-                            }
+        //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 start
+        debugger
+        let hospitalName = '';
+        //璋冪敤鍚庣searchAgencyDataId鏂规硶鏌ヨ鍑哄尰闄笅闈㈡墍鏈夊鎴蜂汉鍛榙ataid
+        helper.CallBackAction(component,'searchAgencyDataId',{
+            hospitalId : hospitalId
+        },function(data){
+            if(data.getState() == "SUCCESS"){
+                var data = data.getReturnValue();
+                if(data.IsSuccess == true){
+                    let agencyContactIds = ''
+                    if(data.Message == '' && data.Data && data.Data.length > 0){
+                        hospitalName = data.Data[0].Agency_Hospital__r.Name;
+                        for(var i=0;i<data.Data.length;i++){
+                            if(data.Data[i].AWS_Data_Id__c)
+                                agencyContactIds += ','+data.Data[i].AWS_Data_Id__c;
                         }
-                        
-                    }
-                }
-            }
-            
-            
-            $A.getCallback(function(){
-                helper.CallBackAction(component,'Save',{
-                    data : data,
-                    transId : result.txId
-                },function(data){
-                    component.set("v.showSpinner", false);
-                    if(data.getState() == "SUCCESS"){
-                        var rv = data.getReturnValue();
-                        console.log(rv);
-                        var sfId = null;
-                        if(rv.IsSuccess){
-                            sfId = rv.Data.recordId;
-                        }
-                        
-                        helper.AwsPost(staticResource.transactionUrl,{
-                            txId: result.txId,
-                            sfRecordId:sfId,
-                            isSuccess: rv.IsSuccess ? 1 : 0
-                        },function(data){
-                            if(rv.IsSuccess){
-                                helper.ShowToast({
-                                    "message" : "鎴愬姛",
-                                    "type" : "success"
-                                });
-                                
-                                if (record_id && !isClone){
-                                    
-                                    $A.get("e.force:closeQuickAction").fire();
-                                    $A.get('e.force:refreshView').fire();
-                                }else{
-                                    var sObjectEvent = $A.get("e.force:navigateToSObject");
-                                    sObjectEvent.setParams({
-                                        "recordId": sfId
-                                    })
-                                    sObjectEvent.fire();
-                                }
-                            }else{
-                                helper.ShowToast({
-                                    "message" : rv.Message,
-                                    "type" : "error"
-                                });
-                            }
-                        },staticResource.token);
-                        
-                        
+                        agencyContactIds = agencyContactIds.substring(1);
+                        payloadPi['agencyContactIds'] = agencyContactIds;
                     }else{
-                        
-                        helper.ShowToast({
-                            "message" : "Init error",
-                            "type" : "error"
-                        });
-                        
+                        payloadPi['agencyContactIds'] = agencyContactIds;
                     }
+                    helper.AwsPost(url+'V2', [payloadPi], function(result){
+                        //濡傛灉杩斿洖鏄�129琛ㄧず閲嶅浜嗭紝鎶ラ敊
+                        if(result.status == '129'){
+                            helper.ShowToast({
+                                "message" : '璇ュ鎴蜂汉鍛樺悕瀛楀凡瀛樺湪锛屽湪'+hospitalName+'鍖婚櫌锛岃淇敼',
+                                "type" : "error"
+                            });
+                            component.set("v.showSpinner", false);
+                            return
+                        }
+    
+                        let obj = result.object[0];
+                        let data = {};
+                        if(record_id && !isClone){
+                            data.Id = record_id;
+                        }else{
+                            data.AWS_Data_Id__c = obj.dataId;
+                        }
+                        for(let s of layout){
+                            for(let c of s.layoutColumns){                
+                                for(let item of c.layoutItems){
+                                    if(item.field && item.behavior != "Readonly"){
+                                        if(pi_fields_map.hasOwnProperty(item.field)){
+                                            data[item.field] = obj[pi_fields_map[item.field].AWS_Field_API__c];
+                                            //data[pi_fields_map[item.field].SF_Field_Encrypted_API__c] = obj[pi_fields_map[item.field].AWS_Encrypted_Field_API__c];
+                                        }else{
+                                            data[item.field] = item.value;
+                                        }
+                                    }
+                                    
+                                }
+                            }
+                        }
+                        
+                        
+                        $A.getCallback(function(){
+                            helper.CallBackAction(component,'Save',{
+                                data : data,
+                                transId : result.txId
+                            },function(data){
+                                component.set("v.showSpinner", false);
+                                if(data.getState() == "SUCCESS"){
+                                    var rv = data.getReturnValue();
+                                    console.log(rv);
+                                    var sfId = null;
+                                    if(rv.IsSuccess){
+                                        sfId = rv.Data.recordId;
+                                    }
+                                    
+                                    helper.AwsPost(staticResource.transactionUrl,{
+                                        txId: result.txId,
+                                        sfRecordId:sfId,
+                                        isSuccess: rv.IsSuccess ? 1 : 0
+                                    },function(data){
+                                        if(rv.IsSuccess){
+                                            helper.ShowToast({
+                                                "message" : "鎴愬姛",
+                                                "type" : "success"
+                                            });
+                                            if (record_id && !isClone){
+                                                
+                                                helper.closeAgencyContact(component);
+                                                //$A.get('e.force:refreshView').fire();
+                                            }else{
+                                                var sObjectEvent = $A.get("e.force:navigateToSObject");
+                                                sObjectEvent.setParams({
+                                                    "recordId": sfId
+                                                })
+                                                sObjectEvent.fire();
+                                            }
+                                        }else{
+                                            helper.ShowToast({
+                                                "message" : rv.Message,
+                                                "type" : "error"
+                                            });
+                                        }
+                                    },staticResource.token);
+                                    
+                                    
+                                }else{
+                                    
+                                    helper.ShowToast({
+                                        "message" : "Init error",
+                                        "type" : "error"
+                                    });
+                                    
+                                }
+                            });
+                        })();
+                        
+                    }, staticResource.token);
+                }else{
+                    helper.ShowToast({
+                        "message" : data.message,
+                        "type" : "error"
+                    });
+                    component.set("v.showSpinner", false);
+                }
+            }else{
+                helper.ShowToast({
+                    "message" : 'searchAgency澶辫触',
+                    "type" : "error"
                 });
-            })();
+                component.set("v.showSpinner", false);
+            }
+        });
+        //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 end
+
+        // helper.AwsPost(url, [payloadPi], function(result){
             
-        }, staticResource.token);
+        //     let obj = result.object[0];
+        //     let data = {};
+        //     if(record_id && !isClone){
+        //         data.Id = record_id;
+        //     }else{
+        //         data.AWS_Data_Id__c = obj.dataId;
+        //     }
+        //     for(let s of layout){
+        //         for(let c of s.layoutColumns){                
+        //             for(let item of c.layoutItems){
+        //                 if(item.field && item.behavior != "Readonly"){
+        //                     if(pi_fields_map.hasOwnProperty(item.field)){
+        //                         data[item.field] = obj[pi_fields_map[item.field].AWS_Field_API__c];
+        //                         data[pi_fields_map[item.field].SF_Field_Encrypted_API__c] = obj[pi_fields_map[item.field].AWS_Encrypted_Field_API__c];
+        //                     }else{
+        //                         data[item.field] = item.value;
+        //                     }
+        //                 }
+                        
+        //             }
+        //         }
+        //     }
+            
+            
+        //     $A.getCallback(function(){
+        //         helper.CallBackAction(component,'Save',{
+        //             data : data,
+        //             transId : result.txId
+        //         },function(data){
+        //             component.set("v.showSpinner", false);
+        //             if(data.getState() == "SUCCESS"){
+        //                 var rv = data.getReturnValue();
+        //                 console.log(rv);
+        //                 var sfId = null;
+        //                 if(rv.IsSuccess){
+        //                     sfId = rv.Data.recordId;
+        //                 }
+                        
+        //                 helper.AwsPost(staticResource.transactionUrl,{
+        //                     txId: result.txId,
+        //                     sfRecordId:sfId,
+        //                     isSuccess: rv.IsSuccess ? 1 : 0
+        //                 },function(data){
+        //                     if(rv.IsSuccess){
+        //                         helper.ShowToast({
+        //                             "message" : "鎴愬姛",
+        //                             "type" : "success"
+        //                         });
+                                
+        //                         if (record_id && !isClone){
+                                    
+        //                             $A.get("e.force:closeQuickAction").fire();
+        //                             $A.get('e.force:refreshView').fire();
+        //                         }else{
+        //                             var sObjectEvent = $A.get("e.force:navigateToSObject");
+        //                             sObjectEvent.setParams({
+        //                                 "recordId": sfId
+        //                             })
+        //                             sObjectEvent.fire();
+        //                         }
+        //                     }else{
+        //                         helper.ShowToast({
+        //                             "message" : rv.Message,
+        //                             "type" : "error"
+        //                         });
+        //                     }
+        //                 },staticResource.token);
+                        
+                        
+        //             }else{
+                        
+        //                 helper.ShowToast({
+        //                     "message" : "Init error",
+        //                     "type" : "error"
+        //                 });
+                        
+        //             }
+        //         });
+        //     })();
+            
+        // }, staticResource.token);
     },
     cancelClick : function(component, event, helper){
         $A.get("e.force:closeQuickAction").fire();
+        //document.getElementById('NewAgencyContact').remove();
+        //component.set('v.showNewAgencyContact', false);
     },
     
     scriptsLoaded : function(component, event, helper){}

--
Gitblit v1.9.1