public with sharing class StraightBackAddressControllerX { /** * 页面顶部检索数据 */ public String numtextA1 { get; set; } //第一个下拉列表 public List optionType { get; set; } //类型 public String txtName{get;set;}//客户名 public String txtAddress{get;set;}//地址 /***************表格数据*********************/ public List tableData { get; set; } /***************底部 编辑和新增的 对象*********************/ public Address__c insUpdData{get;set;} /***************被编辑数据的id*********************/ public String UpdId{get;set;} /***************复选框选中id*********************/ public String adoptId{get;set;} /***************联系人的对象*********************/ public Contact addContact{get;set;} /***************url传来的修理单id*********************/ public String RepairId{get;set;} /***************修理单的收货地址id*********************/ public String Repair_Address_ID{get;set;} public StraightBackAddressControllerX() { //获取url数据 RepairId = System.currentPageReference().getParameters().get('id'); /** * 初始化搜索框 */ numtextA1 = '医院'; optionType = new List(); optionType.add(new SelectOption('医院', '医院')); optionType.add(new SelectOption('办事处', '办事处')); optionType.add(new SelectOption('经销商', '经销商')); //table 数据 tableData = new List(); insUpdData = new Address__c(); UpdId = ''; adoptId = ''; Repair_Address_ID = ''; addContact = new Contact(); } /** * 开始方法 */ public PageReference init(){ searchBtn(); /*tableData = new List(); try{ //获取修理单的数据 String RepairSql = makeTextRepairSql(RepairId); Repair__c pc = Database.query(RepairSql); //获取地址信息 String AddressSql = makeTextAddressSql(pc.HP_ID__c,pc.Dealer__c); List dataList = Database.query(AddressSql); if(dataList != null && dataList.size()> 0){ for(Integer i = 0;i(); String RepairSql = makeTextRepairSql(RepairId); try{ Repair__c pc = Database.query(RepairSql); //由于如果查询条件为类型中的任意一个,那么他需要查询到修理表上对应的数据,放到列表的第一行 if(!String.isBlank(numtextA1)){ if('医院'.equals(numtextA1) && pc.HP_ID__c != null){ //查询医院 String AccountSql = makeTextAccountSql(pc.HP_ID__c); //获取地址信息 List accoutList = Database.query(AccountSql); if(accoutList != null && accoutList.size() > 0){ indexCou++; tableData.add(new AddressData(accoutList[0],'none','医院')); } } //办事处 待开发 if('办事处'.equals(numtextA1)){ String AccountOfficeSql = makeTextAccOfficeSql(); //获取地址信息 List accDataList = Database.query(AccountOfficeSql); if(accDataList != null && accDataList.size() > 0){ for(Integer i = 0;i accoutList = Database.query(AccountSql); if(accoutList != null && accoutList.size() > 0){//防止一条也没查到 indexCou++; tableData.add(new AddressData(accoutList[0],'none','经销商')); } } } //获取地址信息 String AddressSql = makeTextAddressSql(pc.HP_ID__c,pc.Dealer__c); List dataList = Database.query(AddressSql); if(dataList != null && dataList.size()> 0){ indexCou += dataList.size(); for(Integer i = 0;i