Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManager.java =================================================================== diff -u -r29112 -r29148 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManager.java (.../RecyclingApplicationManager.java) (revision 29112) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManager.java (.../RecyclingApplicationManager.java) (revision 29148) @@ -514,5 +514,5 @@ * 打印一次性物品汇总单(GDSZYY-14) * @return */ - public JSONArray printDisposableGoodsInvoicePlanSummary(String inventorySerialNumbers); + public JSONArray printDisposableGoodsInvoicePlanSummary(String inventorySerialNumbers, String startTime, String endTime); } Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java =================================================================== diff -u -r29137 -r29148 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java (.../RecyclingApplicationManagerImpl.java) (revision 29137) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java (.../RecyclingApplicationManagerImpl.java) (revision 29148) @@ -7920,8 +7920,11 @@ @SuppressWarnings("unchecked") @Override - public JSONArray printDisposableGoodsInvoicePlanSummary(String inventorySerialNumbers) { + public JSONArray printDisposableGoodsInvoicePlanSummary(String inventorySerialNumbers, String startTime, String endTime) { JSONArray jsonArray = new JSONArray(); + if(StringUtils.isBlank(inventorySerialNumbers) || StringUtils.isBlank(startTime) || StringUtils.isBlank(endTime)){ + return jsonArray; + } // 根据二沙岛、芳村、大学城分院的科室编码 String[] orgUnitCodings = {"002","003","005"}; @@ -7986,13 +7989,16 @@ + " %s ti join %s ip on ip.id = ti.recyclingApplication_ID " + " join %s ou on ip.departCoding = ou.orgUnitCoding " + " join %s dg on ti.disposableGoodsId = dg.id where (1=1) " - + " and ti.isPrinted = 0 " + " and ti.tousseType = '%s' " - + " and ip.committedstatus = 1 " // 未提交的单据不打印,处于暂存状态 - + " and ip.deliverStatus <> '已终止' ", // 发货状态为已终止的单据不打印 + + " and ti.isPrinted = 1 " // 物品的打印状态为已打印的 + + " and (ti.isTerminated = 0 or ti.isTerminated is null) " // 是否已终止状态为否 + + " and ti.sendOutAmount = 0 " // 发货数量属性为0 + + " and ip.deliverStatus = '%s' " // 发货状态为待发货 + + " and ip.committedstatus = 1 ", // 未提交的单据不打印,处于暂存状态 TousseItem.class.getSimpleName(), InvoicePlan.class.getSimpleName(), OrgUnit.class.getSimpleName(), DisposableGoods.class.getSimpleName(), - DisposableGoods.TYPE_NAME); + DisposableGoods.TYPE_NAME, + InvoicePlan.DELIVERSTATUS_AWAITDELIVER); if(CollectionUtils.isNotEmpty(disposableGoodsList)){ sql += " and " + SqlUtils.getNonStringFieldInLargeCollectionsPredicate("dg.id", disposableGoodsIds); @@ -8002,6 +8008,13 @@ sql += " and " + SqlUtils.getNonStringFieldInLargeCollectionsPredicate("ou.id", allOrgUnitIds); } + // 根据时间过滤 + if(StringUtils.isNotBlank(startTime) && StringUtils.isNotBlank(endTime)){ + String start = dateQueryAdapter.dateAdapter(startTime); + String end = dateQueryAdapter.dateAdapter(endTime); + sql += String.format(" and (ip.applicationTime >= %s and ip.applicationTime <= %s) ", start, end); + } + sql += " order by ou.id "; ResultSet rs = null; try { Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/action/RecyclingApplicationAction.java =================================================================== diff -u -r29112 -r29148 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/action/RecyclingApplicationAction.java (.../RecyclingApplicationAction.java) (revision 29112) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/action/RecyclingApplicationAction.java (.../RecyclingApplicationAction.java) (revision 29148) @@ -1635,7 +1635,9 @@ public void printDisposableGoodsInvoicePlanSummary(){ try { String inventorySerialNumbers = StrutsParamUtils.getPraramValue("inventorySerialNumber", null); - JSONArray result = recyclingApplicationManager.printDisposableGoodsInvoicePlanSummary(inventorySerialNumbers); + String startDate = StrutsParamUtils.getPraramValue("startDate", ""); + String endDate = StrutsParamUtils.getPraramValue("endDate", ""); + JSONArray result = recyclingApplicationManager.printDisposableGoodsInvoicePlanSummary(inventorySerialNumbers, startDate, endDate); StrutsResponseUtils.output(true, result); } catch (Exception e) { e.printStackTrace(); Index: forgon-core/src/main/java/com/forgon/servertime/action/ServerTimeAction.java =================================================================== diff -u -r28342 -r29148 --- forgon-core/src/main/java/com/forgon/servertime/action/ServerTimeAction.java (.../ServerTimeAction.java) (revision 28342) +++ forgon-core/src/main/java/com/forgon/servertime/action/ServerTimeAction.java (.../ServerTimeAction.java) (revision 29148) @@ -17,6 +17,7 @@ import com.forgon.tools.StrutsParamUtils; import com.forgon.tools.StrutsResponseUtils; import com.forgon.tools.date.DateTools; +import com.forgon.tools.db.DatabaseUtil; import com.forgon.tools.json.JSONUtil; /** @@ -152,6 +153,34 @@ } /** + * 获取当前时间和当前时间前*分钟 + * @param dateformat 时间的格式默认是:yyyy-MM-dd HH:mm:ss + * @param beforeTime 当前时间的前*分钟 + */ + public void getCurrentTime(){ + try { + String dateFormat = StrutsParamUtils.getPraramValue("dateformat", Constants.DATEFORMAT_YYYYMMDDHHMMSS); + String beforeTime = StrutsParamUtils.getPraramValue("beforeTime", "0"); + Calendar calendar = Calendar.getInstance(); + String endDateTime = DateTools.formatTime(calendar, dateFormat); + Long time = 0l; + if(DatabaseUtil.isPoIdValid(beforeTime)){ + time = Long.parseLong(beforeTime) * 60 * 1000; + } + calendar.setTimeInMillis(calendar.getTimeInMillis() - time); + String startDateTime = DateTools.formatTime(calendar, dateFormat); + JSONObject data = new JSONObject(); + data.put("startDateTime", startDateTime); + data.put("endDateTime", endDateTime); + StrutsResponseUtils.output(JSONUtil.buildJsonObject(true, data)); + } catch (Exception e) { + logger.error(e,e); + StrutsResponseUtils.output(false, "获取时间失败后!"); + } + + } + + /** * 获取当前月第一天的开始时间和当天的结束时间 * @param dateformat 时间的格式默认是:yyyy-MM-dd HH:mm:ss */