| | |
| | | public static String processData(String fileData,String sobjectName,List<String> fields) { |
| | | system.debug('fileData===============>'+fileData); |
| | | String errorMage = ''; |
| | | String str = ''; |
| | | try { |
| | | if(fileData != null){ |
| | | String[] fileLines = new String[]{}; |
| | | fileLines = fileData.split('\n'); |
| | | system.debug('fileLines===================>'+fileLines); |
| | | // 记录类型 |
| | | List<String> recordTypeList = new List<String>(); |
| | | // 客户名 |
| | | List<String> accountNameList = new List<String>(); |
| | | // 经销商管理编码 |
| | | List<String> managementCodeList = new List<String>(); |
| | | // 导入的数据 |
| | | List<List<String>> inputList = new List<List<String>>(); |
| | | for (Integer i = 1,j = fileLines.size(); i < j; i++) { |
| | |
| | | inputValues = fileLines[i].split(','); |
| | | System.debug('inputValues=============>'+inputValues); |
| | | if(inputValues != null){ |
| | | if(inputValues[0] == '' || inputValues[0] == null){ |
| | | errorMage += 'errorMage: 第' + i + '行,记录类型不能为空!'; |
| | | if(inputValues[0] == '' || inputValues[0]== null){ |
| | | errorMage += 'errorMage: 第' + i + '行,姓名不能为空!'; |
| | | errorMage += '='; |
| | | } |
| | | if(inputValues[1] == '' || inputValues[1]== null){ |
| | | errorMage += 'errorMage: 第' + i + '行,姓氏不能为空!'; |
| | | errorMage += '='; |
| | | } |
| | | if(inputValues[2] == '' || inputValues[2] == null){ |
| | | errorMage += 'errorMage: 第' + i + '行,名字不能为空!'; |
| | | errorMage += '='; |
| | | } |
| | | if(inputValues[3] == '' || inputValues[3] ==null){ |
| | | if(inputValues[1] == '' || inputValues[1] ==null){ |
| | | errorMage += 'errorMage: 第' + i + '行,手机不能为空!'; |
| | | errorMage += '='; |
| | | } |
| | | boolean mobileNumberFlag = mobileNumberVerification(inputValues[3]); |
| | | System.debug('mobileNumberFlag=============>'+mobileNumberFlag); |
| | | |
| | | boolean mobileNumberFlag = mobileNumberVerification(inputValues[1]); |
| | | if(mobileNumberFlag == false){ |
| | | errorMage += 'errorMage: 你的手机号码不太正确,请检查您的手机是否正确!'; |
| | | errorMage += '='; |
| | | } |
| | | if(inputValues[4] == '' || inputValues[4] == null){ |
| | | if(inputValues[2] == '' || inputValues[2] == null){ |
| | | errorMage += 'errorMage: 第' + i + '行,邮箱不能为空!'; |
| | | errorMage += '='; |
| | | } |
| | | boolean mailboxFlag = mailboxVerification(inputValues[4]); |
| | | System.debug('mailboxFlag=============>'+mailboxFlag); |
| | | |
| | | boolean mailboxFlag = mailboxVerification(inputValues[2]); |
| | | if(mailboxFlag == false){ |
| | | errorMage += 'errorMage: 你的邮箱不太正确,请检查您的邮箱格式!'; |
| | | errorMage += '='; |
| | | } |
| | | if(inputValues[5] == '' || inputValues[5] == null){ |
| | | errorMage += 'errorMage: 第' + i + '行,客户名不能为空!'; |
| | | if(inputValues[3] == '' || inputValues[3] == null){ |
| | | errorMage += 'errorMage: 第' + i + '行,经销商管理编码不能为空!'; |
| | | errorMage += '='; |
| | | } |
| | | |
| | | str = inputValues[5]; |
| | | recordTypeList.add(inputValues[0]); |
| | | accountNameList.add(str); |
| | | //导入的数据 |
| | | inputList.add(inputvalues); |
| | | |
| | | managementCodeList.add(inputValues[3]); |
| | | inputList.add(inputValues); |
| | | //导入的数据 |
| | | System.debug('inputValues[0]===============>'+ inputValues[0]); |
| | | System.debug('inputValues[1]===============>'+ inputValues[1]); |
| | | System.debug('inputValues[2]===============>'+ inputValues[2]); |
| | | System.debug('inputValues[3]===============>'+ inputValues[3]); |
| | | System.debug('inputValues[4]===============>'+ inputValues[4]); |
| | | System.debug('inputValues[5]===============>'+ inputValues[5]); |
| | | System.debug('inputValues[6]===============>'+ inputValues[6]); |
| | | } |
| | | } |
| | | |
| | | Map<String,Account> accountMap = new Map<String,Account>(); |
| | | List<String> accountIdList = new List<String>(); |
| | | Map<String,RecordType> recordTypeMap = new Map<String,RecordType>(); |
| | | List<String> recordTypeIdList = new List<String>(); |
| | | List<Account> accountList = [select id, Name from Account where Name in: accountNameList]; |
| | | List<RecordType> rectCo = [select Id,Name from RecordType where IsActive = true and SobjectType = 'Contact' and Name in: recordTypeList]; |
| | | Map<String,Account> accountIdMap = new Map<String,Account>(); |
| | | List<Account> accountList = [select id, Name,Management_Code__c from Account where Management_Code__c in: managementCodeList]; |
| | | for(Account ac : accountList){ |
| | | accountMap.put(ac.Name, ac); |
| | | accountIdList.add(ac.Id); |
| | | } |
| | | system.debug('accountList===============>'+accountList); |
| | | system.debug('accountNameList===============>'+accountNameList); |
| | | system.debug('accountMap===============>'+accountMap); |
| | | for(RecordType re : rectCo){ |
| | | recordTypeMap.put(re.Name, re); |
| | | recordTypeIdList.add(re.Id); |
| | | accountIdMap.put(ac.Management_Code__c,ac); |
| | | } |
| | | List<Contact> cnList = new List<Contact>(); |
| | | Integer lineNumber = 1; |
| | | for(List<String> lineList :inputList){ |
| | | Contact con = new Contact(); |
| | | if(recordTypeMap.containsKey(lineList[0])){ |
| | | con.RecordTypeId = recordTypeMap.get(lineList[0]).id; |
| | | //暂时导入的是经销商用户,所以记录类型只有经销商,暂时写死;后期如果有变动再更改 |
| | | con.RecordTypeId = '01210000000QfWiAAK'; |
| | | if(lineList[0] != null && lineList[0] != ''){ |
| | | con.LastName = lineList[0]; |
| | | }else{ |
| | | errorMage += 'error: 第'+ lineNumber +'行数据,记录类型'+lineList[0]+'不存在'; |
| | | errorMage += '='; |
| | | } |
| | | if(lineList[1] != null && lineList[1] != ''){ |
| | | con.LastName = lineList[1]; |
| | | }else{ |
| | | errorMage += 'error: 第'+ lineNumber +'行数据,姓氏'+lineList[1]+'不存在'; |
| | | errorMage += 'error: 第'+ lineNumber +'行数据,姓氏'+lineList[0]+'不存在'; |
| | | errorMage += '='; |
| | | } |
| | | if(lineList[1] != null && lineList[1] != ''){ |
| | | if(mobileNumberVerification(lineList[1])){ |
| | | con.MobilePhone = lineList[1]; |
| | | }else{ |
| | | errorMage += 'error: 第'+ lineNumber +'行数据,手机'+lineList[1]+'不正确!'; |
| | | errorMage += '='; |
| | | } |
| | | }else{ |
| | | errorMage += 'error: 第'+ lineNumber +'行数据,手机'+lineList[1]+'不存在'; |
| | | errorMage += '='; |
| | | } |
| | | if(lineList[2] != null && lineList[2] != ''){ |
| | | con.FirstName = lineList[2]; |
| | | }else{ |
| | | errorMage += 'error: 第'+ lineNumber +'行数据,名字'+lineList[2]+'不存在'; |
| | | errorMage += '='; |
| | | } |
| | | if(lineList[3] != null && lineList[3] != ''){ |
| | | if(mobileNumberVerification(lineList[3])){ |
| | | con.MobilePhone = lineList[3]; |
| | | if(mailboxVerification(lineList[2])){ |
| | | con.Email = lineList[2]; |
| | | }else{ |
| | | errorMage += 'error: 第'+ lineNumber +'行数据,手机'+lineList[3]+'不正确!'; |
| | | errorMage += 'error: 第'+ lineNumber +'行数据,电子邮件'+lineList[2]+'不正确!'; |
| | | errorMage += '='; |
| | | } |
| | | }else{ |
| | | errorMage += 'error: 第'+ lineNumber +'行数据,手机'+lineList[3]+'不存在'; |
| | | errorMage += 'error: 第'+ lineNumber +'行数据,电子邮件'+lineList[2]+'不存在'; |
| | | errorMage += '='; |
| | | } |
| | | if(lineList[4] != null && lineList[4] != ''){ |
| | | if(mailboxVerification(lineList[4])){ |
| | | con.Email = lineList[4]; |
| | | }else{ |
| | | errorMage += 'error: 第'+ lineNumber +'行数据,电子邮件'+lineList[4]+'不正确!'; |
| | | errorMage += '='; |
| | | } |
| | | if(accountIdMap.containsKey(lineList[3])){ |
| | | con.AccountId = accountIdMap.get(lineList[3]).id; |
| | | }else{ |
| | | errorMage += 'error: 第'+ lineNumber +'行数据,电子邮件'+lineList[4]+'不存在'; |
| | | errorMage += 'error: 第'+ lineNumber +'行数据,经销商编码'+lineList[3]+'不存在'; |
| | | errorMage += '='; |
| | | } |
| | | if(accountMap.containsKey(lineList[5])){ |
| | | con.AccountId = accountMap.get(lineList[5]).id; |
| | | }else{ |
| | | errorMage += 'error: 第'+ lineNumber +'行数据,客户名'+lineList[5]+'不存在'; |
| | | errorMage += '='; |
| | | } |
| | | if(lineList[6] == 'TRUE'){ |
| | | con.Agency_User__c = true; |
| | | }else{ |
| | | con.Agency_User__c = false; |
| | | } |
| | | //暂定创建直接为 true |
| | | con.Agency_User__c = true; |
| | | lineNumber++; |
| | | cnList.add(con); |
| | | } |
| | |
| | | } |
| | | //新增客户人员; |
| | | public static void insertContact(List<Contact> data) { |
| | | // System.debug('data==============>'+data); |
| | | // List<String> lastNameList = new List<String>(); |
| | | // List<String> firstNameList = new List<String>(); |
| | | // for(Contact con:data){ |
| | | // lastNameList.add(con.LastName); |
| | | // firstNameList.add(con.FirstName); |
| | | // } |
| | | // List<Contact> contactList = [select id, Name,Agency_User__c from contact where LastName in: lastNameList AND FirstName in: firstNameList]; |
| | | // if(contactList.size() >= 0){ |
| | | // return ''; |
| | | // } |
| | | // System.debug('strNameList==============>'+strNameList); |
| | | insert data; |
| | | } |
| | | |