force-app/main/default/aura/WeeklyReport/WeeklyReport.cmp | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
force-app/main/default/aura/WeeklyReport/WeeklyReportController.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
force-app/main/default/aura/WeeklyReport/WeeklyReportHelper.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
force-app/main/default/classes/WeeklyReportCmp.cls | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
force-app/main/default/aura/WeeklyReport/WeeklyReport.cmp
@@ -89,7 +89,7 @@ <aura:renderIf isTrue="{!v.login}"> <div class="slds-spinner_container height100vh"> <div class="slds-spinner--brand slds-spinner slds-spinner--medium" role="alert"> <span class="slds-assistive-text">Loading</span> <span id="aa" class="slds-assistive-text">Loading</span> <div class="slds-spinner__dot-a"></div> <div class="slds-spinner__dot-b"></div> </div> force-app/main/default/aura/WeeklyReport/WeeklyReportController.js
@@ -212,7 +212,7 @@ }, processFileContent : function(component,event,helper){ helper.saveRecords(component,event); helper.saveRecords(component,event,helper); }, cancel : function(component,event,helper){ force-app/main/default/aura/WeeklyReport/WeeklyReportHelper.js
@@ -1260,7 +1260,6 @@ $A.getCallback(function(){ helper.to_agencycontact(component,result,agencyHospitalid); })(); }else{ console.log('AWS status error:' + result) component.set('v.login',false); @@ -1889,24 +1888,144 @@ reader.readAsDataURL(file); }, saveRecords : function(component,event){ saveRecords : function(component,event,helper){ component.set('v.login',true); var action = component.get("c.processData"); //fy 导入 20220424 start var action1 = component.get("c.processDataAWSId"); action1.setParams({ fileData : component.get("v.fileContentData"), }); action1.setCallback(this, function(response) { var state = response.getState(); if (state === "SUCCESS") { var ress = response.getReturnValue(); if(ress){ var valur =ress.split('error1'); if(valur.length<=1){ var res = JSON.parse(response.getReturnValue()); var dataArr = new Array(); var dataMap = new Map(); res.forEach(item => { if(item.AWS_Data_Id__c){ dataArr.push(item.AWS_Data_Id__c); dataMap.set(item.AWS_Data_Id__c,item.Name_Encrypted__c); } }); debugger let obj= Object.create(null); obj['dataIds'] = dataArr; var payload = JSON.stringify(obj); this.search_contact_url(component, 'Agency_Contact__c', (result)=>{ var token = result.token; var searchUrl = result.searchUrl; this.search_core(token,searchUrl,payload,(result)=>{ if(result.status == '0'){ if(result.object != null&&result.object.length != 0){ // var resultjson = JSON.stringify(result.object); // if(resultjson){ // debugger // console.warn('001'); // component.set('v.login',true); // this.ImportMethod(component,resultjson); // } component.set('v.login',true); this.saveRecordsEditFile(component,dataMap,result.object,helper); }else{ this.error('AWS search status ' ); component.set('v.login',false); } }else{ this.error('AWS search status : ' + result.status); component.set('v.login',false); } },component); // var resultjson =null; // this.ImportMethod(component,resultjson); }); // var resultjson =null; // this.ImportMethod(component,resultjson); }else{ this.error(valur[1]+'\n'+"请修改后重新上传"); } } } }); $A.enqueueAction(action1); //fy 导入 20220424 end // var action = component.get("c.processData"); // var selectDate = component.find('select_date').get('v.value'); // var fieldsList=['Name','Phone','AccountNumber']; //Please write your code dynamic // var sss=component.get("v.fileContentData"); // action.setParams({ // fileData : component.get("v.fileContentData"), // //selectDateselectDate :component.find('select_date').get('v.value'), // sobjectName:'Account', //Any object // fields:fieldsList // }); // action.setCallback(this, function(response) { // var state = response.getState(); // if (state === "SUCCESS") { // var res = response.getReturnValue(); // var res1 = ''; // console.log("[[[[[["+res); // if(res != 'success'){ // debugger // var ress = res.split('='); // console.log(ress); // for (var i=0; i<ress.length; i++) { // res1 += ress[i].substr(7)+'\n'; // } // // $('.forceToastManager').css('white-space', 'pre-wrap'); // console.log("=="+res1); // this.error(res1+"请修改后重新上传"); // component.set('v.login',false); // }else{ // component.set("v.showMain",true); // this.success("导入成功"); // // alert('saved successfully'); // component.set('v.login',false); // } // } // else if (state === "INCOMPLETE") { // // do something // component.set('v.login',false); // } // else if (state === "ERROR") { // var errors = response.getError(); // if (errors) { // if (errors[0] && errors[0].message) { // console.log("Error message: " + // errors[0].message); // component.set('v.login',false); // } // } else { // console.log("Unknown error"); // component.set('v.login',false); // } // } // }); // $A.enqueueAction(action); },ImportMethod : function(component,fileStr){ var actionss = component.get("c.processData"); var selectDate = component.find('select_date').get('v.value'); var fieldsList=['Name','Phone','AccountNumber']; //Please write your code dynamic var sss=component.get("v.fileContentData"); action.setParams({ fileData : component.get("v.fileContentData"), actionss.setParams({ // fileData : component.get("v.fileContentData"), fileData : fileStr, //selectDateselectDate :component.find('select_date').get('v.value'), sobjectName:'Account', //Any object fields:fieldsList // Agency_ContactListjson:resultjson }); action.setCallback(this, function(response) { actionss.setCallback(this, function(response) { console.log('002'); var state = response.getState(); if (state === "SUCCESS") { var res = response.getReturnValue(); var res1 = ''; console.log("[[[[[["+res); @@ -1946,7 +2065,53 @@ } } }); $A.enqueueAction(action); $A.enqueueAction(actionss); },saveRecordsEditFile : function(component,dataMap,searchData,helper){ var searchDataMap = new Map(); for (var i = 0; i < searchData.length; i++) { var sd = searchData[i]; searchDataMap.set(sd.name.replace(' ',''),sd.dataId); } console.log('searchDataMap='+searchDataMap); var error = ''; var fileData = component.get("v.fileContentData"); var files = fileData.split('\n'); var fileStr = files[0]; fileStr += '\n'; for (var i = 1; i < files.length-1; i++) { var filelist = files[i].split(','); var fileName = filelist[4]; if (searchDataMap.get(fileName.replace(' ',''))) { var nameDataId = searchDataMap.get(fileName.replace(' ','')); if (dataMap.get(nameDataId)) { filelist[4] = dataMap.get(nameDataId); }else { error += 'error1 第'+i+'行数据拜访人SF不存在'; error += '='; } }else { error += 'error1 第'+i+'行数据拜访人AWS不存在'; error += '='; } fileStr += filelist.toString(); fileStr += '\n'; } if (error != '') { this.error(error); console.log('error='+error); component.set('v.login',false); return; } console.log('fileStr='+fileStr); $A.getCallback(function(){ debugger helper.ImportMethod(component,fileStr); })(); }, convertArrayOfObjectsToCSV : function(component,objectRecords){ force-app/main/default/classes/WeeklyReportCmp.cls
@@ -591,19 +591,85 @@ // return [select id, Name, Agency_User__c from contact where Agency_User__c = true and AccountId in (select AccountId from User where id=:login_user_id)]; return [select id, Name, Agency_User__c from contact]; } // fy 导入 20220424 start public class GeDatass { public String dataId; public String doctorDivision1; public String doctorDivision1Encrypt; public Integer isDelete; public String name; public String nameEncrypt; public String sfRecordId; public String type; public String typeEncrypt; } @AuraEnabled public static String processData(String fileData,String sobjectName,List<String> fields) { public static String processDataAWSId(String fileData) { System.debug('fileData:::'+filedata); String errorMag = ''; // 创建周报 try{ if(fileData!=null){ String[] fileLines = new String[]{}; fileLines = fileData.split('\n'); // 经销商医院名称list List<String> ahlNameList = new List<String>(); //for content system.debug('fileLines.size()==============>'+fileLines.size()); for (Integer i=1,j=fileLines.size();i<j;i++){ List<String> inputvalues = new List<String>(); inputvalues = fileLines[i].split(','); if(inputvalues != null){ if(inputvalues[2] == '' || inputvalues[2] == null){ errorMag += 'error1 第'+i+'行数据医院不能为空'; } ahlNameList.add(inputvalues[2]); } } // 经销商医院的ocsm医院id的list List<String> ahlOcsmIdList = new List<String>(); List<Agency_Hospital_Link__c> ahlList = [select id,name,Hospital__c,MaxActivityDate__c from Agency_Hospital_Link__c where name = :ahlNameList and Agency_Campaign_Obj__c = true]; for(Agency_Hospital_Link__c ahl : ahlList){ ahlOcsmIdList.add(ahl.Hospital__c); } List<Agency_Contact__c> doctor2list = [select id,Name,Doctor_Division1__c,Type__c,Agency_Hospital__c,AWS_Data_Id__c,Name_Encrypted__c FROM Agency_Contact__c WHERE Hospital_ID18__c= :ahlOcsmIdList order by Name]; if(errorMag != ''){ return errorMag; } String doctor2listStr = JSON.serialize(doctor2list); return doctor2listStr; } }catch(Exception e){ System.debug('exception'+e); return e.getLineNumber()+'exception:'+e; } return 'success'; } // fy 导入 20220424 end @AuraEnabled// fy 导入 20220424 start String sobjectName,List<String> fields, // public static String processData(String fileData,String Agency_ContactListjson) { public static String processData(String fileData,String sobjectName,List<String> fields) { DateTime now =System.now(); System.debug('当前时间:::'+now); System.debug('fileData:::'+filedata); System.debug('sobjectName:::'+sobjectName); System.debug('fields:::'+fields); // System.debug('Agency_ContactListjson::::'+Agency_ContactListjson); String errorMag = ''; // 创建周报 try{ if(fileData!=null){ // List<GeDatass> Agency_ContactList = (List<GeDatass>)JSON.deserialize(Agency_ContactListjson,List<GeDatass>.class); // System.debug('Agency_ContactList::::'+Agency_ContactList); // Map<String,String> Agency_ContactMap = new Map<String,String>(); // for(GeDatass agconobj :Agency_ContactList){ // Agency_ContactMap.put(agconobj.name.replace(' ',''),agconobj.dataId); // } String[] fileLines = new String[]{}; fileLines = fileData.split('\n'); // 担当名称的list @@ -625,6 +691,7 @@ system.debug('for2022161329'); List<String> inputvalues = new List<String>(); inputvalues = fileLines[i].split(','); System.debug('inputvalues++'+inputvalues); if(inputvalues != null){ system.debug('if2022161333'); if(inputvalues[0] == '' || inputvalues[0] == null){ @@ -720,7 +787,8 @@ errorMag += '='; } } if(inputvalues[9] != '\r' && getResultlist(inputvalues[9])){ // if(inputvalues[9] != '\r' && getResultlist(inputvalues[9])){ if(inputvalues[9] != '' && getResultlist(inputvalues[9])){ // return 'error3 第'+i+'行数据结果选项列表的值'+inputvalues[9]+'不存在'; errorMag += 'error3 第'+i+'行数据结果选项列表的值'+inputvalues[9]+'不存在'; errorMag += '='; @@ -735,6 +803,7 @@ system.debug('inputvalues[7]=================>'+inputvalues[7]); system.debug('inputvalues[8]=================>'+inputvalues[8]); system.debug('inputvalues[9]=================>'+inputvalues[9]); // system.debug('inputvalues[10]=================>'+inputvalues[10]); nameList.add(inputvalues[0]); @@ -808,9 +877,14 @@ // for(ProductTypes__c protype : proTypeList){ // protypeMap.put(protype.Name, protype.Id); // } List<Agency_Contact__c> doctor2list = [select id,Name,Doctor_Division1__c,Type__c,Agency_Hospital__c FROM Agency_Contact__c WHERE Hospital_ID18__c= :ahlOcsmIdList order by Name]; //fy 20220424 start AWS_Data_Id__c List<Agency_Contact__c> doctor2list = [select id,Name,Doctor_Division1__c,Type__c,Agency_Hospital__c,AWS_Data_Id__c,Name_Encrypted__c FROM Agency_Contact__c WHERE Hospital_ID18__c= :ahlOcsmIdList order by Name]; for(Agency_Contact__c ac : doctor2list){ doctor2Map.put(ac.Name.replace(' ',''), ac.Id); //fy 20220424 start // doctor2Map.put(ac.AWS_Data_Id__c, ac.Id); // doctor2Map.put(ac.Name.replace(' ',''), ac.Id); doctor2Map.put(ac.Name_Encrypted__c, ac.Id); //fy 20220424 end } @@ -923,9 +997,15 @@ // errorMag += 'error2 第'+hang+'行数据科室'+lineList[3]+'不存在'; // errorMag += '='; } if(doctor2Map.containsKey(lineList[4].replace(' ',''))){ agencyReport.doctor2__c = doctor2Map.get(lineList[4].replace(' ','')); // 拜访人 //fy 20220424 start // if(doctor2Map.containsKey(lineList[4].replace(' ',''))){ if(doctor2Map.containsKey(lineList[4])){ // if(Agency_ContactMap.containsKey(lineList[4].replace(' ',''))){ // if(doctor2Map.containsKey(Agency_ContactMap.get(lineList[4].replace(' ','')))){ // agencyReport.doctor2__c = doctor2Map.get(lineList[4].replace(' ','')); // 拜访人 agencyReport.doctor2__c = doctor2Map.get(lineList[4]); // 拜访人 // agencyReport.doctor2__c = doctor2Map.get(Agency_ContactMap.get(lineList[4].replace(' ',''))); // 拜访人 // } }else{ if(lineList[4] != '' && lineList[4] != null){ // return 'error2 第'+hang+'行数据拜访人'+lineList[4]+'不存在'; @@ -989,6 +1069,11 @@ // agencyReport.Product_Category3__c = protypeMap.get(lineList[7]);// 产品区分3 // } agencyReport.Result__c = lineList[9]; if(lineList.size()==11){ if(lineList[10] != null && lineList[10] != ''){ agencyReport.SupportNeeds__c = lineList[10]; } } String headerStr = createHeader(week,s_agency); if(agency_report_headerMap.containsKey(headerStr)){ agencyReport.Agency_Report_Header__c = agency_report_headerMap.get(headerStr).Id; // 周报一览 @@ -1028,7 +1113,7 @@ return 'success'; }catch(Exception e){ System.debug('exception'+e); return 'exception'+e; return e.getLineNumber()+'exception:'+e; } return 'success'; }