Index: ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseInstanceManagerImpl.java =================================================================== diff -u -r30080 -r30183 --- ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseInstanceManagerImpl.java (.../TousseInstanceManagerImpl.java) (revision 30080) +++ ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseInstanceManagerImpl.java (.../TousseInstanceManagerImpl.java) (revision 30183) @@ -879,7 +879,7 @@ + " where 1=1 and ti.comboTousseInstanceId is null and tdancestor.isTraceable='否' "+keyWordSearchSql+" " + "and ti.status='"+TousseInstance.STATUS_REVIEWED+"' and ti.comboTousseInstanceId is null "+departSearchSql+" and ti.reviewBasket_id is null and ((ti.proxyDisinfection_id is null and ti.orgUnitCoding='"+orgUnitCoding+"') " + "or (ti.proxyDisinfection_id is not null and ti.proxyDisinfection_id in " - + "(select ip.id from InvoicePlan ip where ip.handleDepartCoding='"+orgUnitCoding+"')))group by tdancestor.id,tdancestor.name,s.sterilizationMode)) " + + "(select ip.id from InvoicePlan ip where ip.handleDepartCoding='"+orgUnitCoding+"')))group by tdancestor.id,tdancestor.name,s.sterilizationMode) " + orderSql + " ) " + "v where rownum <= "+amount+") v1 where rn > "+start+" " + orderSql; } @@ -941,7 +941,7 @@ + "toussedefinition tdancestor on td.ancestorID=tdancestor.id where 1=1 and tdancestor.isTraceable='否' "+keyWordSearchSql+" " + "and ti.status='"+TousseInstance.STATUS_REVIEWED+"' and ti.comboTousseInstanceId is null "+departSearchSql+" and ti.reviewBasket_id is null " + "and ((ti.proxyDisinfection_id is null and ti.orgUnitCoding='"+orgUnitCoding+"') " - + "or (ti.proxyDisinfection_id is not null and ti.proxyDisinfection_id in (select ip.id from InvoicePlan ip where ip.handleDepartCoding='"+orgUnitCoding+"'))) group by tdancestor.id,tdancestor.name)) aa )" + + "or (ti.proxyDisinfection_id is not null and ti.proxyDisinfection_id in (select ip.id from InvoicePlan ip where ip.handleDepartCoding='"+orgUnitCoding+"'))) group by tdancestor.id,tdancestor.name)) aa " + orderSql + " )" + orderSql; } @@ -950,7 +950,7 @@ */ @Override @SuppressWarnings("unchecked") - public List getAllReviewedTousseInstanceWithOutBasketDate(String orgUnitCode,int start ,int limit,String searchKeyWord){ + public List getAllReviewedTousseInstanceWithOutBasketDate(String orgUnitCode,int start ,int limit,String searchKeyWord,String field,String direction){ String findSql = ""; boolean isDepart=false; //搜索内容中是否包括科室名,格式为:'搜索内容|科室code' @@ -977,6 +977,13 @@ if(CssdUtils.getSystemSetConfigByNameBool("enableUrgentFunction", false)){ orderSql = " order by ulGrade desc "; } + if(StringUtils.isNotBlank(field) && StringUtils.isNotBlank(direction)){ + if(StringUtils.isNotBlank(orderSql)){ + orderSql += "," + field + " " + direction + " "; + }else{ + orderSql = " order by "+field+" "+direction+" "; + } + } if(dbConnection.isSqlServer()){ findSql = getTousseInstanceWithOutBasketBySqlServer(start,limit,orgUnitCode,departSearchSql,keyWordSearchSql,orderSql); }else if(dbConnection.isOracle()){ Index: ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseInstanceManager.java =================================================================== diff -u -r30042 -r30183 --- ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseInstanceManager.java (.../TousseInstanceManager.java) (revision 30042) +++ ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseInstanceManager.java (.../TousseInstanceManager.java) (revision 30183) @@ -921,7 +921,7 @@ */ public List getAllReviewedTousseInstanceWithOutBasketDate( String currentOrgUnitCode,int start, int limit, - String searchKeyWord); + String searchKeyWord,String field,String direction); /** * 根据器械包的包定义,设置包实例的状态。聚合包不包含在内 * @param tousseInstance 器械包实例,需要先设置好与包定义的关联关系,不然会抛出异常 Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/action/TousseInstanceAction.java =================================================================== diff -u -r30080 -r30183 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/action/TousseInstanceAction.java (.../TousseInstanceAction.java) (revision 30080) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/action/TousseInstanceAction.java (.../TousseInstanceAction.java) (revision 30183) @@ -766,6 +766,8 @@ String searchKeyWord = StrutsParamUtils.getPraramValue("searchKeyWordReal", ""); String start = StrutsParamUtils.getPraramValue("start", ""); String limit = StrutsParamUtils.getPraramValue("limit", ""); + String field = StrutsParamUtils.getPraramValue("field", ""); + String direction = StrutsParamUtils.getPraramValue("direction", ""); JSONArray jsonArray = new JSONArray(); Map sqlCondition = new HashMap(); //以前的分页不适用于固定条码汇总 @@ -778,7 +780,7 @@ if(count > 0){ //采用原生sql分页 toussesList = tousseInstanceManager. - getAllReviewedTousseInstanceWithOutBasketDate(acegiHelper.getCurrentOrgUnitCode(),Integer.parseInt(start),Integer.parseInt(limit),searchKeyWord); + getAllReviewedTousseInstanceWithOutBasketDate(acegiHelper.getCurrentOrgUnitCode(),Integer.parseInt(start),Integer.parseInt(limit),searchKeyWord,field,direction); } } catch (Exception e) { e.printStackTrace();