Index: ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordListSqlGenerator.java =================================================================== diff -u -r28020 -r28505 --- ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordListSqlGenerator.java (.../RecyclingRecordListSqlGenerator.java) (revision 28020) +++ ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordListSqlGenerator.java (.../RecyclingRecordListSqlGenerator.java) (revision 28505) @@ -18,6 +18,7 @@ import com.forgon.tools.SqlBuilder; import com.forgon.tools.db.InitDbConnection; import com.forgon.tools.json.JSONUtil; +import com.forgon.tools.util.SqlUtils; /** * 历史回收记录过滤条件的sql生成类 @@ -61,15 +62,15 @@ String idCardBarcodeStr = JSONUtil.optString(jsonObj, "idCardBarcode", null); String tousseInstanceBarcodeStr = JSONUtil.optString(jsonObj, "tousseInstanceBarcode", null); String packingSerialNum = JSONUtil.optString(jsonObj, "packingSerialNum", null); + String operationRoomStr = JSONUtil.optString(jsonObj, "operationRoom", null); Map map = new HashMap(); map.put(recyclingRecordPoName + ".departCode", departCodes); map.put(recyclingRecordPoName + ".operator", userNames); map.put(recyclingRecordPoName + ".status", status); map.put(invoicePlanPoName + ".type", appType); - return buildRecyclingRecordFilterSql(map) + " and " + dateRangeSql + " and " + buildIdCardBarcodeSql(idCardBarcodeStr) - + " and " + bulidTousseInstanceBarcodeSql(tousseInstanceBarcodeStr) + " and " + buildPackingSerialNumSql(packingSerialNum); + + " and " + bulidTousseInstanceBarcodeSql(tousseInstanceBarcodeStr) + " and " + buildPackingSerialNumSql(packingSerialNum) + SqlUtils.getWhereSqlByfilterFieldAndStringValue(invoicePlanPoName + ".operationRoom", operationRoomStr); } private String buildPackingSerialNumSql(String packingSerialNum) { String sql = " (1=1) "; Index: ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java =================================================================== diff -u -r28488 -r28505 --- ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java (.../RecyclingRecordManagerImpl.java) (revision 28488) +++ ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java (.../RecyclingRecordManagerImpl.java) (revision 28505) @@ -4498,6 +4498,10 @@ if(enableUrgentFunction){ extraQuery = ",ul.id ulId,ul.name ulName,ul.colorCode,ul.colorName,ul.grade ulGrade "; } + boolean showORRoomColumnInHistoryRecyclingRecordList = CssdUtils.getSystemSetConfigByNameBool("showORRoomColumnInHistoryRecyclingRecordList", false); + if(showORRoomColumnInHistoryRecyclingRecordList){ + extraQuery += ",p.operationRoom "; + } RecyclingRecordListSqlGenerator sqlGenerator = new RecyclingRecordListSqlGenerator(dbConnection,start,end,filterJson,extraQuery); String sql = sqlGenerator.getListSql(); List records = new ArrayList(); @@ -4531,6 +4535,9 @@ } ip.setUrgentLevel(urgentLevel); } + if(showORRoomColumnInHistoryRecyclingRecordList){ + ip.setOperationRoom(rs.getString("operationRoom")); + } ip.setRecyclingStatus(rs.getString("recyclingStatus")); record.setRecyclingApplication(ip); // 设置申请单状态 Index: ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/dwr/table/RecyclingRecordTableManager.java =================================================================== diff -u -r27465 -r28505 --- ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/dwr/table/RecyclingRecordTableManager.java (.../RecyclingRecordTableManager.java) (revision 27465) +++ ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/dwr/table/RecyclingRecordTableManager.java (.../RecyclingRecordTableManager.java) (revision 28505) @@ -476,12 +476,23 @@ return JSONUtil.buildJsonObject(false, message).toString(); } - - public String searchOperationRoom(String searchString) { + /** + * 查询申请单上的手术间 + * @param searchString 查询内容 + * @param filterRecyclingStatus 是否过滤回收状态(目前过滤状态包含'待回收','部分回收','待接收') + * @return + */ + public String searchOperationRoom(String searchString, boolean filterRecyclingStatus) { JSONArray array = new JSONArray(); - String sql = String.format("select distinct po.operationRoom from %s po where po.recyclingStatus in('%s','%s','%s') and po.operationRoom is not null ", - InvoicePlan.class.getSimpleName(),InvoicePlan.RECYCLINGSTATUS_AWAITRECYCLE, - InvoicePlan.RECYCLINGSTATUS_PARTRECYCLE,InvoicePlan.RECYCLINGSTATUS_AWAITRECEIVE); + String filterRecyclingStatusSql = null; + if(filterRecyclingStatus){ + filterRecyclingStatusSql = String.format("po.recyclingStatus in('%s','%s','%s') and ", InvoicePlan.RECYCLINGSTATUS_AWAITRECYCLE, + InvoicePlan.RECYCLINGSTATUS_PARTRECYCLE,InvoicePlan.RECYCLINGSTATUS_AWAITRECEIVE); + }else{ + filterRecyclingStatusSql = ""; + } + String sql = String.format("select distinct po.operationRoom from %s po where %s po.operationRoom is not null ", + InvoicePlan.class.getSimpleName(),filterRecyclingStatusSql); searchString = searchString.trim(); if (searchString.length() > 0) {