java.lang.IndexOutOfBoundsException: Index: 1, Size: 1,提示是153行出错,求大神帮解释下
/**
* 保存方案
* @param po
* @param list
* @return
*/
@SuppressWarnings({ "rawtypes", "unchecked" })
public String saveScheme(InsuresetSchemePO po , //方案PO
List insureIdsList,//险种ID
List groupNameList,//分组
List empIdsList,//人员ID
List<List<InsuresetSchemeBasePO>> baseList //险种基数
){
boolean isAdd = false;
String schemeId = null;
if(isNull(schemeId)){
isAdd = true;
}
// 新建
if(isAdd){
// 设置方案状态 有效
po.setStatue(new Code("1"));
// 保存方案PO
DBContext.save(po);
// 得到保存后的方案ID
schemeId = po.getId();
InsuresetSchemeGroupPO groupPO = null;
for(int i = 0 ;i<groupNameList.size() ;i++){
// 参保人员分组
String groupName = (String)groupNameList.get(i);
// 险种
LinkedList<String> insureList = (LinkedList) insureIdsList.get(i);
//分组人员表
LinkedList<String> empId = (LinkedList)empIdsList.get(i);
//保存参保人员分组PO
groupPO = new InsuresetSchemeGroupPO();
groupPO.setGroupName(groupName);
groupPO.setSchemeId(schemeId);
DBContext.save(groupPO);
//保存成功之后,取得分组Id
String groupId = groupPO.getId();
//分组人员
InsuresetSchemeGroupEmpPO empPO =null;
for (String str : empId) {
empPO = new InsuresetSchemeGroupEmpPO();
empPO.setEmpId(str);
empPO.setGroupId(groupId);
DBContext.save(empPO);
}
//险种基数
List<InsuresetSchemeBasePO> schemeBaseList = baseList.get(i);
for(InsuresetSchemeBasePO basePO : schemeBaseList){
basePO.setSchemeId(schemeId);
basePO.setGroupId(groupId);
basePO.setInsureName(new Code((String)insureList.get(i)));
}
DBContext.save(schemeBaseList,100);
}
}
return schemeId;
}