Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/bioreader/service/BioreaderManagerImpl.java
===================================================================
diff -u -r26334 -r26517
--- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/bioreader/service/BioreaderManagerImpl.java (.../BioreaderManagerImpl.java) (revision 26334)
+++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/bioreader/service/BioreaderManagerImpl.java (.../BioreaderManagerImpl.java) (revision 26517)
@@ -83,62 +83,103 @@
}
@Override
- public Elements getBiologicalMonitoringResult(String ip) {
- String historyURL="http://" + ip + "/history.htm";
+ public Elements getTagInfoByUrlAndTag(String url, String tag) {
Elements elements = null;
try {
- elements=GrabPageTool.getDocument(historyURL).getElementsByTag("tbody").get(0).children();
+ elements = GrabPageTool.getDocument(url).getElementsByTag(tag);
} catch (Exception e) {
e.printStackTrace();
- }
- return elements;
+ }
+ return elements;
}
@Override
- public JSONObject getFromBiologicalReadinInfo(Bioreader bioreader, String cardPosition , String sterilizationRecordId) {
+ public JSONObject getBioreaderData(String url, String cardPosition , Date endDate, String cardPositionOfControlTube) {
JSONObject json = null;
try {
- Elements elements = getBiologicalMonitoringResult(bioreader.getBioreaderIp());
+ //获取生物阅读器的监测信息
+ Elements elements = getTagInfoByUrlAndTag(url,"tbody").get(0).children();
if(elements == null){
json = JSONUtil.buildJsonObject(false, "读取失败,请检查读取地址");
return json;
}
- SterilizationRecord sterilizationRecord =(SterilizationRecord)objectDao.getById(SterilizationRecord.class.getSimpleName(), sterilizationRecordId);
- SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- for (int i = 0; i < elements.size(); i++) {
- Element element=elements.get(i);
- //#孔号 型号 :#8 1492
- String C2=element.child(1).text();
- String ResultCardPosition=C2.substring(1, 3).trim();//孔号
- if("10".equals(ResultCardPosition) ){ //对照管不查询
- continue;
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ String monitoringTubeResult = null;//监测管结果
+ String controlTubeResult = null;//对照管结果
+ String monitoringTubeMsg = null;//监测管读取的结果信息
+ String controlTubeMsg = null;//对照管读取的结果信息
+ BiologicalReadingDataVo biVO = new BiologicalReadingDataVo();
+ //灭菌结束时间与开始监测时间配置的间隔时间,默认60
+ int timeOfMonitoringInterval = CssdUtils.getSystemSetConfigByNameInt("timeOfMonitoringInterval", 60);
+ for (int i = 0; i < elements.size(); i++) {//遍历生物阅读器的监测数据
+ if(monitoringTubeResult != null && controlTubeResult != null){//监测管对照管都读取到数据就不再遍历
+ break;
}
+ Element element = elements.get(i);
+ //生物阅读器列名c2的数据:各位为#孔号 型号 ,例如#8 1492
+ String c2 = element.child(1).text();
+ String resultCardPosition = c2.substring(1, 3).trim();//孔号
//生物监测开始时间
- String startDateStr=element.child(2).text();
- Date startDate=new Date();
- startDate=sdf.parse(startDateStr);
- //如果孔号相等 且 灭菌结束时间比开始监测时间不大于配置的间隔时间,默认60
- int timeOfMonitoringInterval = CssdUtils.getSystemSetConfigByNameInt("timeOfMonitoringInterval", 60);
- Long count= DateTools.getDateDiff(sterilizationRecord.getEndDate(), startDate, TimeUnit.MINUTES);
- if(ResultCardPosition.equals(cardPosition) && count < timeOfMonitoringInterval && count >= 0){
- Date endDate = DateTools.addHours(startDate, 1);
- //C4:结果: +:合格 -:不合格 else:监测错误+错误提示码
- String result=element.child(3).text();
- if("-".equals(result)){
- result = SterilizationRecord.MONITOR_RESULT_QUALIFIED;
- }else if("+".equals(result)){
- result = SterilizationRecord.MONITOR_RESULT_UNQUALIFIED;
+ String startDateStr = element.child(2).text();
+ Date startDate = sdf.parse(startDateStr);
+ Long minutesCount = null;
+ if(monitoringTubeResult == null){//未获取监测管结果
+ //间隔的分数:生物监测器上的生物监测开始时间和灭菌结束时间的间隔分数
+ minutesCount = DateTools.getDateDiff(endDate, startDate, TimeUnit.MINUTES);
+ }
+ Long hoursCount = null;
+ if(controlTubeResult == null){//未获取对照管结果时
+ //对照管开始时间和当前时间的小时差
+ hoursCount = DateTools.getDateDiff(startDate, new Date(), TimeUnit.HOURS);
+ }
+ if(monitoringTubeResult == null && resultCardPosition.equals(cardPosition) && minutesCount < timeOfMonitoringInterval && minutesCount >= 0){//监测管
+ Date endDateOfBioreader = DateTools.addHours(startDate, 1);
+ //生物阅读器列名c4的数据
+ monitoringTubeResult = element.child(3).text();
+ if("-".equals(monitoringTubeResult)){//阴性
+ monitoringTubeResult = SterilizationRecord.MONITOR_RESULT_NEGATIVE;
+ }else if("+".equals(monitoringTubeResult)){//阳性
+ monitoringTubeResult = SterilizationRecord.MONITOR_RESULT_POSITIVE;
+ }else{//异常
+ monitoringTubeResult = SterilizationRecord.MONITOR_RESULT_ABNORMAL;
+ }
+ monitoringTubeMsg = "监测管卡位成功读取到"+ cardPosition +"号孔的数据,开始时间为"+ sdf.format(startDate) +",结束时间为"+ sdf.format(endDateOfBioreader) +",监测结果为" + monitoringTubeResult;
+ biVO.setBiologicalMonitoringStartDate(startDate);
+ biVO.setBiologicalMonitoringEndDate(endDateOfBioreader);
+ biVO.setMonitoringTubeResult(monitoringTubeResult);
+ }else if(controlTubeResult == null && resultCardPosition.equals(cardPositionOfControlTube) && hoursCount <= 23){//对照管监测数据只查24小时以内的,刚好24小时不算在内
+ Date endDateOfBioreader = DateTools.addHours(startDate, 1);
+ controlTubeResult = element.child(3).text();
+ if("-".equals(controlTubeResult)){
+ controlTubeResult = SterilizationRecord.MONITOR_RESULT_NEGATIVE;
+ }else if("+".equals(controlTubeResult)){
+ controlTubeResult = SterilizationRecord.MONITOR_RESULT_POSITIVE;
}else{
- result = SterilizationRecord.MONITOR_RESULT_ERROR + result;
+ controlTubeResult = SterilizationRecord.MONITOR_RESULT_ABNORMAL;
}
- BiologicalReadingDataVo biVO=new BiologicalReadingDataVo(startDate, endDate, result);
- json = JSONUtil.buildJsonObject(true, "成功读取" + bioreader.getBioreaderName() + "的" + ResultCardPosition + "号孔数据。开始时间:" + sdf.format(startDate) + ",结束时间:" + sdf.format(endDate) + ",监测结果:" + result);
- json = JSONUtil.addProperty(json, "BiologicalReadingDataVo", biVO);
- break;
- }else if(i == (elements.size() - 1)){//ResultCount次都不匹配
- json = JSONUtil.buildJsonObject(false, "最新数据100条里无匹配数据");
+ biVO.setControlTubeResult(controlTubeResult);
+ controlTubeMsg = "对照管卡位成功读取到"+ cardPositionOfControlTube +"号孔的数据,开始时间为"+ sdf.format(startDate) +",结束时间为"+ sdf.format(endDateOfBioreader) +",监测结果为" + controlTubeResult;
+ }else if(i == (elements.size() - 1)){//(elements.size()次都不匹配
+ json = JSONUtil.buildJsonObject(false, "最新数据"+ elements.size() +"条里无匹配数据");
}
}
+ if(SterilizationRecord.MONITOR_RESULT_POSITIVE.equals(controlTubeResult) &&
+ SterilizationRecord.MONITOR_RESULT_NEGATIVE.equals(monitoringTubeResult)){//监测管阴性,对照管阳性,则生物监测结果合格
+ biVO.setBiologyResult(SterilizationRecord.MONITOR_RESULT_QUALIFIED);
+ json = JSONUtil.buildJsonObject(true, monitoringTubeMsg + "
" + controlTubeMsg);
+ }else if(monitoringTubeResult == null && controlTubeResult == null){
+ json = JSONUtil.buildJsonObject(false, cardPosition + "号监测管卡位,"+ cardPositionOfControlTube +"号对照管卡位均无匹配数据");
+ }else if(monitoringTubeResult == null){
+ json = JSONUtil.buildJsonObject(false, cardPosition + "号监测管卡位无匹配数据");
+ }else if(controlTubeResult == null){
+ json = JSONUtil.buildJsonObject(false, cardPositionOfControlTube + "号对照管卡位无匹配数据");
+ }else{
+ biVO.setBiologyResult(SterilizationRecord.MONITOR_RESULT_UNQUALIFIED);
+ json = JSONUtil.buildJsonObject(true, monitoringTubeMsg + "
" + controlTubeMsg);
+ }
+ biVO.setMonitoringTubeResult(monitoringTubeResult);
+ biVO.setControlTubeResult(controlTubeResult);
+ json.put("BiologicalReadingDataVo", biVO);
} catch (ParseException e){
e.printStackTrace();
json = JSONUtil.buildJsonObject(false, "日期格式错误");
Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/sterilizationmanager/sterilizationrecord/SterilizationRecord.java
===================================================================
diff -u -r26366 -r26517
--- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/sterilizationmanager/sterilizationrecord/SterilizationRecord.java (.../SterilizationRecord.java) (revision 26366)
+++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/sterilizationmanager/sterilizationrecord/SterilizationRecord.java (.../SterilizationRecord.java) (revision 26517)
@@ -28,6 +28,7 @@
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.forgon.Constants;
+import com.forgon.disinfectsystem.entity.basedatamanager.bioreader.Bioreader;
import com.forgon.disinfectsystem.entity.basedatamanager.sterilizer.Sterilizer;
import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseInstance;
import com.forgon.disinfectsystem.entity.packing.ReviewedBasket;
@@ -187,12 +188,15 @@
private String biologyResult;
/**
- * 监测的结果三种情况,无、合格、不合格
+ * 监测的结果,无、合格、不合格,阴性,阳性
*/
public static final String MONITOR_RESULT_NO = "无";
public static final String MONITOR_RESULT_QUALIFIED = "合格";
public static final String MONITOR_RESULT_UNQUALIFIED = "不合格";
public static final String MONITOR_RESULT_ERROR = "监测错误";
+ public static final String MONITOR_RESULT_NEGATIVE = "阴性";
+ public static final String MONITOR_RESULT_POSITIVE = "阳性";
+ public static final String MONITOR_RESULT_ABNORMAL = "异常";
/**
* 生物监测的开始时间
*/
@@ -281,7 +285,42 @@
* 用于灭菌记录页面显示加急
*/
private String urgent = Constants.STR_NO;
-
+ /**
+ * 生物阅读器
+ */
+ private Bioreader bioreader;
+ /**
+ * 监测管卡位
+ */
+ private String cardPosition;
+ /**
+ * 对照管卡位
+ */
+ private String cardPositionOfControlTube;
+ /**
+ * 监测管结果
+ */
+ private String monitoringTubeResult;
+ /**
+ * 对照管结果
+ */
+ private String controlTubeResult;
+ /**
+ * 监测管批号
+ */
+ private String monitoringBatchNum;
+ /**
+ * 监测管有效期
+ */
+ private String monitoringTubeExpiryDate;
+ /**
+ * 对照管批号
+ */
+ private String controlBatchNum;
+ /**
+ * 对照管有效期
+ */
+ private String controlTubeExpiryDate;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
public Long getId() {
@@ -421,7 +460,7 @@
return bioreaderName;
}
- public void setBioreader(String bioreaderName) {
+ public void setBioreaderName(String bioreaderName) {
this.bioreaderName = bioreaderName;
}
@@ -792,4 +831,78 @@
public void setUrgent(String urgent) {
this.urgent = urgent;
}
+ @ManyToOne
+ @JoinColumn(name = "bioreaderId")
+ public Bioreader getBioreader() {
+ return bioreader;
+ }
+
+ public void setBioreader(Bioreader bioreader) {
+ this.bioreader = bioreader;
+ }
+
+ public String getCardPosition() {
+ return cardPosition;
+ }
+
+ public void setCardPosition(String cardPosition) {
+ this.cardPosition = cardPosition;
+ }
+
+ public String getCardPositionOfControlTube() {
+ return cardPositionOfControlTube;
+ }
+
+ public void setCardPositionOfControlTube(String cardPositionOfControlTube) {
+ this.cardPositionOfControlTube = cardPositionOfControlTube;
+ }
+
+ public String getMonitoringTubeResult() {
+ return monitoringTubeResult;
+ }
+
+ public void setMonitoringTubeResult(String monitoringTubeResult) {
+ this.monitoringTubeResult = monitoringTubeResult;
+ }
+
+ public String getControlTubeResult() {
+ return controlTubeResult;
+ }
+
+ public void setControlTubeResult(String controlTubeResult) {
+ this.controlTubeResult = controlTubeResult;
+ }
+
+ public String getMonitoringBatchNum() {
+ return monitoringBatchNum;
+ }
+
+ public void setMonitoringBatchNum(String monitoringBatchNum) {
+ this.monitoringBatchNum = monitoringBatchNum;
+ }
+
+ public String getMonitoringTubeExpiryDate() {
+ return monitoringTubeExpiryDate;
+ }
+
+ public void setMonitoringTubeExpiryDate(String monitoringTubeExpiryDate) {
+ this.monitoringTubeExpiryDate = monitoringTubeExpiryDate;
+ }
+
+ public String getControlBatchNum() {
+ return controlBatchNum;
+ }
+
+ public void setControlBatchNum(String controlBatchNum) {
+ this.controlBatchNum = controlBatchNum;
+ }
+
+ public String getControlTubeExpiryDate() {
+ return controlTubeExpiryDate;
+ }
+
+ public void setControlTubeExpiryDate(String controlTubeExpiryDate) {
+ this.controlTubeExpiryDate = controlTubeExpiryDate;
+ }
+
}
Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/bioreader/service/BioreaderManager.java
===================================================================
diff -u -r25480 -r26517
--- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/bioreader/service/BioreaderManager.java (.../BioreaderManager.java) (revision 25480)
+++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/bioreader/service/BioreaderManager.java (.../BioreaderManager.java) (revision 26517)
@@ -1,5 +1,7 @@
package com.forgon.disinfectsystem.sterilizationmanager.bioreader.service;
+import java.util.Date;
+
import org.jsoup.select.Elements;
import net.sf.json.JSONArray;
@@ -45,18 +47,19 @@
*/
public JSONObject getBioreaderInfo(Bioreader bioreader);
/**
- * 获取生物阅读器历史记录
- * @param ip 生物阅读器ip地址
+ * 获取指定页面的标签信息
+ * @param url url地址
+ * @param tag 标签名
* @return Element 历史数据
*/
- public Elements getBiologicalMonitoringResult(String ip);
+ public Elements getTagInfoByUrlAndTag(String url, String tag);
/**
- * 保存,读取生物阅读记录
- * @param bioreader
- * @param cardPosition
- * @param ResultCount
- * @param sterilizationRecordId
+ * 获取生物阅读器监测管与对照管的数据
+ * @param url 生物阅读器历史记录地址
+ * @param cardPosition 监测管卡位
+ * @param endDate 灭菌结束时间
+ * @param cardPositionOfControlTube 对照管卡位
*/
- public JSONObject getFromBiologicalReadinInfo(Bioreader bioreader, String cardPosition, String sterilizationRecordId);
+ public JSONObject getBioreaderData(String url, String cardPosition, Date endDate, String cardPositionOfControlTube);
}
Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/bioreader/action/BioreaderAction.java
===================================================================
diff -u -r25480 -r26517
--- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/bioreader/action/BioreaderAction.java (.../BioreaderAction.java) (revision 25480)
+++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/bioreader/action/BioreaderAction.java (.../BioreaderAction.java) (revision 26517)
@@ -1,5 +1,8 @@
package com.forgon.disinfectsystem.sterilizationmanager.bioreader.action;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
import net.sf.json.JSONObject;
import org.apache.commons.lang.StringUtils;
@@ -55,13 +58,14 @@
/**
* 给灭菌记录读取生物阅读结果数据
*/
- public void getBiologicalMonitoringResult(){
- String sterilizationRecordId = StrutsParamUtils.getPraramValue("sterilizationRecordId", "");
+ public void getBiologicalMonitoringResult(){
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ Date endDate = StrutsParamUtils.getDatePraramValue("endDate", null, sdf);
String cardPosition = StrutsParamUtils.getPraramValue("cardPosition", "");
- if(bioreader.getId() == null){
- return;
- }
- JSONObject outputJson = bioreaderManager.getFromBiologicalReadinInfo(bioreader, cardPosition, sterilizationRecordId);
+ String cardPositionOfControlTube = StrutsParamUtils.getPraramValue("cardPositionOfControlTube", "");
+ //生物阅读器历史记录地址
+ String url = String.format("http://%s/history.htm", bioreader.getBioreaderIp());
+ JSONObject outputJson = bioreaderManager.getBioreaderData(url, cardPosition, endDate, cardPositionOfControlTube);
StrutsResponseUtils.output(outputJson);
}
/**
Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/bioreader/vo/BiologicalReadingDataVo.java
===================================================================
diff -u -r25480 -r26517
--- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/bioreader/vo/BiologicalReadingDataVo.java (.../BiologicalReadingDataVo.java) (revision 25480)
+++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/bioreader/vo/BiologicalReadingDataVo.java (.../BiologicalReadingDataVo.java) (revision 26517)
@@ -3,18 +3,42 @@
import java.util.Date;
public class BiologicalReadingDataVo {
- //生物阅读器序列号
+ /**
+ * 生物阅读器序列号
+ */
private Integer SerialNo;
- //孔号类型
+ /**
+ * 孔号,卡位类型
+ */
private String poreType;
- //孔号
+ /**
+ * 监测管卡位
+ */
private Integer cardPosition;
- //生物监测开始时间
+ /**
+ * 生物监测开始时间
+ */
private Date biologicalMonitoringStartDate;
- //生物监测结束时间
+ /**
+ * 生物监测结束时间
+ */
private Date biologicalMonitoringEndDate;
- //生物监测结果
+ /**
+ * 生物监测结果
+ */
private String biologyResult;
+ /**
+ * 对照管卡位
+ */
+ private String cardPositionOfControlTube;
+ /**
+ * 监测管结果
+ */
+ private String monitoringTubeResult;
+ /**
+ * 对照管结果
+ */
+ private String controlTubeResult;
public BiologicalReadingDataVo(){}
@@ -59,5 +83,37 @@
public void setBiologyResult(String biologyResult) {
this.biologyResult = biologyResult;
}
+
+ public Integer getCardPosition() {
+ return cardPosition;
+ }
+
+ public void setCardPosition(Integer cardPosition) {
+ this.cardPosition = cardPosition;
+ }
+
+ public String getCardPositionOfControlTube() {
+ return cardPositionOfControlTube;
+ }
+
+ public void setCardPositionOfControlTube(String cardPositionOfControlTube) {
+ this.cardPositionOfControlTube = cardPositionOfControlTube;
+ }
+
+ public String getMonitoringTubeResult() {
+ return monitoringTubeResult;
+ }
+
+ public void setMonitoringTubeResult(String monitoringTubeResult) {
+ this.monitoringTubeResult = monitoringTubeResult;
+ }
+
+ public String getControlTubeResult() {
+ return controlTubeResult;
+ }
+
+ public void setControlTubeResult(String controlTubeResult) {
+ this.controlTubeResult = controlTubeResult;
+ }
}
Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/action/SterilizationRecordAction.java
===================================================================
diff -u -r25847 -r26517
--- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/action/SterilizationRecordAction.java (.../SterilizationRecordAction.java) (revision 25847)
+++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/action/SterilizationRecordAction.java (.../SterilizationRecordAction.java) (revision 26517)
@@ -48,6 +48,7 @@
import com.forgon.disinfectsystem.barcode.service.BarcodeManager;
import com.forgon.disinfectsystem.basedatamanager.supplyroomconfig.service.SupplyRoomConfigManager;
import com.forgon.disinfectsystem.basedatamanager.toussedefinition.service.TousseInstanceUtils;
+import com.forgon.disinfectsystem.entity.basedatamanager.bioreader.Bioreader;
import com.forgon.disinfectsystem.entity.basedatamanager.container.Container;
import com.forgon.disinfectsystem.entity.basedatamanager.imagefilemanager.ImageFile;
import com.forgon.disinfectsystem.entity.basedatamanager.position.Position;
@@ -240,6 +241,13 @@
String originalRecordIdStr = StrutsParamUtils.getPraramValue(
"recordId", "");
+ Long bioreaderId = StrutsParamUtils.getPraramLongValue("bioreaderId", null);
+ if(bioreaderId != null){
+ Bioreader bioreader = new Bioreader();
+ bioreader.setId(bioreaderId);
+ sterilizationRecord.setBioreader(bioreader);
+ }
+
//这个字段来决定是否从干预界面进入的
String isInterfereStr = StrutsParamUtils.getPraramValue(
"isInterfere", "");
Index: ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationRecordForm.js
===================================================================
diff -u -r26384 -r26517
--- ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationRecordForm.js (.../sterilizationRecordForm.js) (revision 26384)
+++ ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationRecordForm.js (.../sterilizationRecordForm.js) (revision 26517)
@@ -3329,7 +3329,7 @@
anchor : '100%'
}]
},{
- columnWidth : 0.5,
+ columnWidth : 1,
layout : 'form',
labelWidth : 120,
hidden : !enableBioreaderInterface,
@@ -3345,7 +3345,7 @@
triggerAction : 'all',
forceSelection : true,
editable : true,
- anchor : '100%',
+ anchor : '50%',
store : bioreaderStore,
listeners : {
select : function(combo,
@@ -3356,57 +3356,52 @@
}
}]
},{
- columnWidth : 0.3,
- layout : 'form',
- labelWidth : 120,
- hidden : !enableBioreaderInterface,
- items:[{
- xtype : 'combo',
- fieldLabel : '卡位',
- valueField : 'cardPosition',
- displayField : 'cardPosition',
- id : 'cardPosition',
- name : 'cardPosition',
- mode : 'local',
- triggerAction : 'all',
- forceSelection : true,
- editable : true,
- anchor : '100%',
- store : new Ext.data.SimpleStore({
- fields : [ 'cardPosition' ],
- autoLoad : false,
- data :[['1'],['2'],['3'],['4'],['5'],['6'],['7'],['8'],['9'],['10']]
- })
- }]
- },{
- columnWidth : .2,
+ columnWidth : 1,
layout : 'form',
cls:'edit-5char-labelwidth',
- labelWidth : 70,
hidden : !enableBioreaderInterface,
- items : [{ xtype:'button',
+ items : [{
+ xtype:'button',
text : '获取生物监测结果',
+ style: {
+ marginLeft:'120px',//距左边宽度
+ },
name : "getBiologyResult",
id : "getBiologyResult",
handler : function(){
+ var endDate = top.Ext.getCmp('endDate').getValue();
+ if(endDate == null || endDate == ''){
+ showResult("请先完成灭菌");
+ return;
+ }
var bioreaderId = top.Ext.getCmp('bioreaderId').getValue();
var cardPosition = top.Ext.getCmp('cardPosition').getValue();
+ var cardPositionOfControlTube = top.Ext.getCmp('cardPositionOfControlTube').getValue();
if(bioreaderId.length == 0){
showResult("请选择生物阅读器");
top.Ext.getCmp('bioreaderId').focus();
return;
- }else if(cardPosition == 0){
- showResult("请选择卡位");
+ }else if(cardPosition == ""){
+ showResult("请选择监测管卡位");
top.Ext.getCmp('cardPosition').focus();
return;
+ }else if(cardPositionOfControlTube == ""){
+ showResult("请选择对照管卡位");
+ top.Ext.getCmp('cardPositionOfControlTube').focus();
+ return;
+ }else if(cardPosition == cardPositionOfControlTube){
+ showResult("监测管卡位,对照管卡位必须不一致");
+ top.Ext.getCmp('cardPosition').focus();
+ return;
}
formObj.getEl().mask("正在加载,请稍候...");
Ext.Ajax.request({
url : WWWROOT + '/disinfectSystem/sterilization/bioreaderAction!getBiologicalMonitoringResult.do',
params : {
- sterilizationRecordId : id,
+ endDate : endDate.format("Y-m-d H:i:s"),
id : bioreaderId,
- cardPosition : cardPosition
+ cardPosition : cardPosition,
+ cardPositionOfControlTube : cardPositionOfControlTube
},
waitMsg : '正在处理,请稍候...',
success : function(response, options) {
@@ -3418,8 +3413,10 @@
top.Ext.getCmp('biologyResult').setValue(result.BiologicalReadingDataVo.biologyResult);
top.Ext.getCmp('biologicalMonitoringStartDate').setValue(new Date(result.BiologicalReadingDataVo.biologicalMonitoringStartDate.time));
top.Ext.getCmp('biologicalMonitoringEndDate').setValue(new Date(result.BiologicalReadingDataVo.biologicalMonitoringEndDate.time));
+ top.Ext.getCmp('controlTubeResult').setValue(result.BiologicalReadingDataVo.controlTubeResult);
+ top.Ext.getCmp('monitoringTubeResult').setValue(result.BiologicalReadingDataVo.monitoringTubeResult);
}
- });
+ });
}else{
showResult(result.message);
}
@@ -3435,12 +3432,144 @@
}
}]
},{
+ columnWidth : 0.5,
+ layout : 'form',
+ labelWidth : 120,
+ hidden : !enableBioreaderInterface,
+ items:[{
+ xtype : 'combo',
+ fieldLabel : '监测管卡位',
+ valueField : 'cardPosition',
+ displayField : 'cardPosition',
+ id : 'cardPosition',
+ name : 'cardPosition',
+ mode : 'local',
+ triggerAction : 'all',
+ forceSelection : true,
+ editable : true,
+ anchor : '100%',
+ store : new Ext.data.SimpleStore({
+ fields : [ 'cardPosition' ],
+ autoLoad : false,
+ data :[['1'],['2'],['3'],['4'],['5'],['6'],['7'],['8'],['9'],['10']]
+ })
+ }]
+ },{
columnWidth : .5,
+ labelWidth : 120,
layout : 'form',
+ cls:'edit-5char-labelwidth',
+ hidden : !enableBioreaderInterface,
+ items : [{
+ xtype : 'textfield',
+ fieldLabel : "监测管结果",
+ name : "monitoringTubeResult",
+ id : "monitoringTubeResult",
+ anchor : '100%',
+ readOnly : true,
+ cls:'x-item-disabled'
+ }]
+ },{
+ columnWidth : .5,
labelWidth : 120,
+ layout : 'form',
cls:'edit-5char-labelwidth',
+ hidden : !enableBioreaderInterface,
items : [{
xtype : 'textfield',
+ fieldLabel : "监测管批号",
+ name : "monitoringBatchNum",
+ id : "monitoringBatchNum",
+ anchor : '100%',
+ cls:'edit-5char-labelwidth'
+ }]
+ },{
+ columnWidth : .5,
+ labelWidth : 120,
+ layout : 'form',
+ cls:'edit-5char-labelwidth',
+ hidden : !enableBioreaderInterface,
+ items : [{
+ xtype : 'textfield',
+ fieldLabel : "监测管有效期",
+ name : "monitoringTubeExpiryDate",
+ id : "monitoringTubeExpiryDate",
+ anchor : '100%',
+ cls:'edit-5char-labelwidth'
+ }]
+ },{
+ columnWidth : 0.5,
+ layout : 'form',
+ labelWidth : 120,
+ hidden : !enableBioreaderInterface,
+ items:[{
+ xtype : 'combo',
+ fieldLabel : '对照管卡位',
+ valueField : 'cardPositionOfControlTube',
+ displayField : 'cardPositionOfControlTube',
+ id : 'cardPositionOfControlTube',
+ name : 'cardPositionOfControlTube',
+ mode : 'local',
+ triggerAction : 'all',
+ forceSelection : true,
+ editable : true,
+ anchor : '100%',
+ store : new Ext.data.SimpleStore({
+ fields : [ 'cardPositionOfControlTube' ],
+ autoLoad : false,
+ data :[['1'],['2'],['3'],['4'],['5'],['6'],['7'],['8'],['9'],['10']]
+ })
+ }]
+ },{
+ columnWidth : .5,
+ labelWidth : 120,
+ layout : 'form',
+ cls:'edit-5char-labelwidth',
+ hidden : !enableBioreaderInterface,
+ items : [{
+ xtype : 'textfield',
+ fieldLabel : "对照管结果",
+ name : "controlTubeResult",
+ id : "controlTubeResult",
+ anchor : '100%',
+ readOnly : true,
+ cls:'x-item-disabled'
+ }]
+ },{
+ columnWidth : .5,
+ labelWidth : 120,
+ layout : 'form',
+ cls:'edit-5char-labelwidth',
+ hidden : !enableBioreaderInterface,
+ items : [{
+ xtype : 'textfield',
+ fieldLabel : "对照管批号",
+ name : "controlBatchNum",
+ id : "controlBatchNum",
+ anchor : '100%',
+ cls:'edit-5char-labelwidth'
+ }]
+ },{
+ columnWidth : .5,
+ labelWidth : 120,
+ layout : 'form',
+ cls:'edit-5char-labelwidth',
+ hidden : !enableBioreaderInterface,
+ items : [{
+ xtype : 'textfield',
+ fieldLabel : "对照管有效期",
+ name : "controlTubeExpiryDate",
+ id : "controlTubeExpiryDate",
+ anchor : '100%',
+ cls:'edit-5char-labelwidth'
+ }]
+ },{
+ columnWidth : .5,
+ layout : 'form',
+ labelWidth : 120,
+ cls:'edit-5char-labelwidth',
+ items : [{
+ xtype : 'textfield',
fieldLabel : "监测员条码",
name : "monitorUserBarcode",
id : "monitorUserBarcode",
@@ -3781,9 +3910,14 @@
}
bioreaderStore.load();
} else {
- if(sr.sterilizer.bioreader != null){
- top.Ext.getCmp('bioreaderId').setValue(sr.sterilizer.bioreader.id);
- }
+ //优先显示生物监测数据来源的生物阅读器,其次显示灭菌炉绑定的生物阅读器
+ if(sr.bioreader != null){
+ top.Ext.getCmp('bioreaderId').setValue(sr.bioreader.id);
+ top.Ext.getCmp('bioreaderName').setValue(sr.bioreader.bioreaderName);
+ }else if(sr.sterilizer.bioreader != null){
+ top.Ext.getCmp('bioreaderId').setValue(sr.sterilizer.bioreader.id);
+ top.Ext.getCmp('bioreaderName').setValue(sr.sterilizer.bioreader.bioreaderName);
+ }
top.Ext.getCmp('startDate').setValue(formatDateYear(sr.startDate));
top.Ext.getCmp('endDate').setValue(formatDateYear(sr.endDate));
top.Ext.getCmp('srSituationComfirmer').setValue(sr.srSituationComfirmer);