From 06b461567e8d8538e70a71f61ec4f3fa5c5d9175 Mon Sep 17 00:00:00 2001 From: sige Date: Wed, 29 May 2024 13:51:49 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AF=95=E7=AE=A1=E6=9E=B6=E5=8F=96=E5=87=BA?= =?UTF-8?q?=E5=90=8D=E7=A7=B0=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app.db | Bin 925696 -> 925696 bytes .../digester/DigestionTaskTheadManager.java | 9 +++++++++ .../com/iflytop/digester/DigestionTaskThread.java | 12 +++++++----- 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/app.db b/app.db index 947884d00d5396576051710a599e3bab45bed5ba..d0b2ed7bf240dc889e5cea8148909810720aec13 100644 GIT binary patch delta 434 zcmZoTV9{{EVuCbd$wV1v#*&Q*75y41sV2sj1{S8eMn-0)x+aMxNxDgvKvs&Wu~BlO zVTzfVp+#EwJMm2uSP!r=eP&?#yqzn6@g);ycajlXsAu@p^2z5{sBEtfW{hB+-ZP7d zo5Re~)X3b}%xHQe6RXem>k*7v&$$^G7^K+#G4QYAPu|Ysz!c6uJvpCoM*DAnCLm@8 zViq7~1!A`Czx~W@n=$HXGKVr*q?wu;Cs~^6 zrUIR(Ym#aPbaI+$lCEWY_N7<2t}wH32{RV9*WTa)Vs0Sj*ZoZ_1mFEDcIHS%}KvW40fvRD)2py`bboMzKcPvqrNb;-{!@-IluQ>sl1 jo6BZoU}U0e01SUi1w%tCLnA8#Gd)8??`NG%$1KEgH delta 294 zcmZoTV9{{EVuCbd>O>i5#?*}o75y3p$w}rWsg|j_W+}-Ax+dnvrn(l1NtU{1hQ?`W zspcsuW|qcj;pZl8n!tL1l{tukIcPgq0OL!h$p@_CxVpQUjo3mx!>3qIKEFa`yFxHy z1nc(e5sX^Tx%rbBq}UcQ@ULQ9w4KL+DV(2$fq}ujJ>8!Ph?#+y1&CRJm~DHyKl`i+ zER63M!l$!7U|+*tz~sav!N9P6#{+gVMi$^meHWTox>hLDLzpaH+De<}qka|M-qsg;99>!Yf=im{~Z!Fa)*N-rxdaZXo8_ nUVDSL-CTf;a}@*M9^Mij9j+%__MEFWD_)q!xqX!+Ul()); + return ; + } else if ( "DoorClose".equals(actionName) ) { + Device.getInstance().door.close(); + this.sendMessageToTransBot("DoorCloseDone", new HashMap<>()); + return ; } Map actionParams = new HashMap<>(); diff --git a/src/main/java/com/iflytop/digester/DigestionTaskThread.java b/src/main/java/com/iflytop/digester/DigestionTaskThread.java index 4716001..4fd28f9 100644 --- a/src/main/java/com/iflytop/digester/DigestionTaskThread.java +++ b/src/main/java/com/iflytop/digester/DigestionTaskThread.java @@ -267,7 +267,7 @@ public class DigestionTaskThread extends Thread { // 正常消解结束; this.updateTaskStatus("LastRound", "取出试管架"); device.door.open(); // 打开门 - this.waitForTubeRackTakeOut(this.heatingSlot.tubes); // 等待取出 + this.waitForTubeRackTakeOut(this.heatingSlot.tubes, "Normal"); // 等待取出 device.door.close(); // 关闭门 this.heatingSlot.setTubeRackNo(null); // 释放加热位 this.updateTaskStatus("LastRound", "执行最后一轮配置结束"); @@ -399,7 +399,7 @@ public class DigestionTaskThread extends Thread { // 等待取出试管架 device.door.open(); var errorSlot = device.heatingTurntable.getErrorSlot(); - this.waitForTubeRackTakeOut(errorSlot.tubes); + this.waitForTubeRackTakeOut(errorSlot.tubes,"Failed"); for ( var index : this.errorTubeIndexes ) { errorSlot.tubes.set(index, null); } @@ -487,7 +487,7 @@ public class DigestionTaskThread extends Thread { for ( var index : this.finishedErrorTubeIndexes ) { tubes.add(errorSlot.tubes.get(index)); } - this.waitForTubeRackTakeOut(tubes); + this.waitForTubeRackTakeOut(tubes, "Abnormal"); device.door.close(); this.unlockLiquidPlate("异常处理:消解完成的试管已取出"); @@ -573,15 +573,17 @@ public class DigestionTaskThread extends Thread { } // 等待取出试管架 - private void waitForTubeRackTakeOut( List tubes ) { + private void waitForTubeRackTakeOut( List tubes, String type ) { this.updateTaskStatus("TubeRackTakeOutWait", "等待取出试管架"); Map message = new HashMap<>(); message.put("taskId", this.taskModel.outTaskId); message.put("batchNo", this.taskModel.batchNo); + message.put("type", type); message.put("tubes", tubes); if ( "auto".equals(this.taskModel.mode) ) { - this.manager.sendMessageToTransBot("TubeRackTakeOut", message); + String actionName = String.format("%sTubeRackTakeOut", type); + this.manager.sendMessageToTransBot(actionName, message); } else { UfMdbNotification.action("TubeRackTakeOut", message); }