Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java =================================================================== diff -u -r20196 -r20200 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 20196) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 20200) @@ -4866,10 +4866,14 @@ if (tousseInstances == null || tousseInstances.size() == 0) { return "未找到器械包实例!"; } + Set packingRecordIdSet = new HashSet(); for (TousseInstance tousseInstance : tousseInstances) { if (StringUtils.isNotBlank(packerCode)) { tousseInstance.setOperator(packer); tousseInstance.setOperatorCode(packerCode); + if(tousseInstance.getPackingRecord_id() != null){ + packingRecordIdSet.add(tousseInstance.getPackingRecord_id()); + } } if (StringUtils.isNotBlank(reviewerCode)) { tousseInstance.setReviewer(reviewer); @@ -4939,6 +4943,12 @@ } tousseInstanceManager.saveOrUpdate(tousseInstance); } + // 更新装配记录 + if(!packingRecordIdSet.isEmpty()){ + String updateSql = String.format(" update %s set packer='%s' where %s", PackingRecord.class.getSimpleName(),packer,SqlUtils.getNonStringFieldInCollectionsPredicate("id", packingRecordIdSet)); + objectDao.excuteSQL(updateSql); + } + return "success"; } @@ -5399,19 +5409,22 @@ .getParameter("continueOnVirtualBasketInsufficient");// 虚拟篮筐不够时是否继续 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); - Date date = null; + Date currentDate = new Date(); + Date sterileDate = currentDate; try { - date = sdf.parse(disinfectionDate); + sterileDate = sdf.parse(disinfectionDate); } catch (ParseException e1) { e1.printStackTrace(); - date = new Date(); + sterileDate = currentDate; } + String sterileStartTime = Constants.SIMPLEDATEFORMAT_YYYYMMDDHHMMSS + .format(sterileDate); Date validUntil = null; Date warningUntil = null; // 失效期和预警期计算 JSONObject expirationObj = expirationDateInfoManager.getExpirationDate( - date.getTime() + "", packageType); + sterileDate.getTime() + "", packageType); String packageTypeAbbreviation = TousseInstanceUtils .getPackageTypeAbbreviation(objectDao, packageType); @@ -5529,9 +5542,7 @@ // 打印条码、保存包实例 List tousseInstanceList = new ArrayList(); - Date currentDate = new Date(); - String sterileStartTime = Constants.SIMPLEDATEFORMAT_YYYYMMDDHHMMSS - .format(currentDate); + // 虚拟篮筐校验 Integer packingAmountPerVirtualBasket = td == null ? null : td .getPackingAmountPerVirtualBasket();