public with sharing class CM_SearchContactServiceController { public Contact newCon { get; set; } public Contact searchCon { get; set; } public List lineInfoList { get; set; } public String conId { get; set; } public String openLine { get; set; } private String accountId; private String nowValue; public CM_SearchContactServiceController() { openLine = Apexpages.currentPage().getParameters().get('line'); accountId = Apexpages.currentPage().getParameters().get('acc'); nowValue = Apexpages.currentPage().getParameters().get('now'); } public void init() { searchCon = new Contact(); if (nowValue != null && nowValue != '') { searchCon = [select Id, Name, Department__c, Type__c, Search_LastName__c, Search_FirstName__c, Phone, Supplement__c, FirstName, LastName from Contact where Id = :nowValue]; searchCon.Search_LastName__c = searchCon.LastName; searchCon.Search_FirstName__c = searchCon.FirstName; } searchContact(); newCon = new Contact(); newCon.AccountId = accountId; return; } public PageReference searchContact() { String searchStr = 'select Id, Name, Department__c, Type__c, AccountName__c, Supplement__c, Phone '; searchStr += ', City__c , State__c '; //2018/11/19 HWAG-B399RW 读取省和市 searchStr += ' from Contact '; searchStr += ' where Isactive__c = \'有效\' '; searchStr += ' and AccountId = :accountId '; if (searchCon.Search_LastName__c != null && searchCon.Search_LastName__c != '') { searchStr += ' and LastName like \'%' + searchCon.Search_LastName__c + '%\''; } if (searchCon.Search_FirstName__c != null && searchCon.Search_FirstName__c != '') { searchStr += ' and FirstName like \'%' + searchCon.Search_FirstName__c + '%\''; } system.debug('=====searchStr:' + searchStr); List searchResult = Database.query(searchStr); lineInfoList = new List(); Integer line = 0; for (Contact con : searchResult) { line += 1; LineInfo li = new LineInfo(line, con); lineInfoList.add(li); } editClear(); return null; } public PageReference editContact() { if (conId != null && conId != '') { newCon = [select Id, Name, Department__c, Type__c, Search_LastName__c, Search_FirstName__c, Phone, Supplement__c, FirstName, LastName from Contact where Id = :conId]; newCon.Search_LastName__c = newCon.LastName; newCon.Search_FirstName__c = newCon.FirstName; } return null; } public PageReference saveNew() { if (newCon.Search_LastName__c == null || newCon.Search_LastName__c == '') { newCon.Search_LastName__c.addError('必须填写。'); return null; } newCon.LastName = newCon.Search_LastName__c; newCon.FirstName = newCon.Search_FirstName__c; upsert newCon; searchCon.Search_LastName__c = newCon.LastName; searchCon.Search_FirstName__c = newCon.FirstName; searchContact(); return null; } public PageReference editClear() { newCon = new Contact(); newCon.AccountId = accountId; return null; } class LineInfo { public Integer lineNo { get; set; } public Contact con { get; set; } public LineInfo(Integer in_line) { lineNo = in_line; con = new Contact(); } public LineInfo(Integer in_line, Contact in_con) { lineNo = in_line; con = in_con; } } }