public void storeRoworder(ReportRequest rrequest, ReportBean rbean) { String rowordertype = rrequest.getStringAttribute(rbean.getId() + "_ROWORDERTYPE", ""); if (rowordertype.equals("") || !Consts.lstAllRoworderTypes.contains(rowordertype)) return; String roworderparams = rrequest.getStringAttribute(rbean.getId() + "_ROWORDERPARAMS", ""); if (roworderparams.equals("")) return; AbsListReportBean alrbean = (AbsListReportBean) rbean.getExtendConfigDataForReportType(AbsListReportType.KEY); IListReportRoworderPersistence lsObj = alrbean.getLoadStoreRoworderObject(); // 获取到读写行排序顺序值的类对象 if (lsObj == null) lsObj = Config.default_roworder_object; List<Map<String, String>> lstColValusInAllRows = EditableReportAssistant.getInstance().parseSaveDataStringToList(roworderparams); if (lstColValusInAllRows.size() == 0) return; Map<String, String> mColValuesInRow = lstColValusInAllRows.get(0); log.debug("被排序记录行参数:" + mColValuesInRow); if (rowordertype.equals(Consts.ROWORDER_INPUTBOX)) { String newrowordervalue = rrequest.getStringAttribute(rbean.getId() + "_ROWORDERVALUE", ""); lsObj.storeRoworderByInputbox(rrequest, rbean, mColValuesInRow, newrowordervalue); } else if (rowordertype.equals(Consts.ROWORDER_TOP)) { lsObj.storeRoworderByTop(rrequest, rbean, mColValuesInRow); } else { String direct = rrequest.getStringAttribute(rbean.getId() + "_ROWORDERDIRECT", ""); String destrowParams = rrequest.getStringAttribute(rbean.getId() + "_DESTROWPARAMS", ""); Map<String, String> mColValuesInDestRow = null; if (!destrowParams.trim().equals("")) { mColValuesInDestRow = EditableReportAssistant.getInstance().parseSaveDataStringToList(destrowParams).get(0); log.debug("目标位置记录行参数:" + mColValuesInDestRow); } if (rowordertype.equals(Consts.ROWORDER_DRAG)) { lsObj.storeRoworderByDrag( rrequest, rbean, mColValuesInRow, mColValuesInDestRow, direct.toLowerCase().trim().equals("true")); } else { lsObj.storeRoworderByArrow( rrequest, rbean, mColValuesInRow, mColValuesInDestRow, direct.toLowerCase().trim().equals("true")); } } }