From de2174b3de1c39f8edd9549fc34597b20bf1296e Mon Sep 17 00:00:00 2001 From: zhizhi wu <2377881365@qq.com> Date: Wed, 26 Jan 2022 10:25:44 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9B=BE=E5=83=8F=E5=9D=90=E6=A0=87=E8=BF=94?= =?UTF-8?q?=E5=9B=9E=E6=A0=87=E5=BF=97=E4=BD=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ccsens/yanyuan/bean/vo/TrainBelongVo.java | 2 ++ .../ccsens/yanyuan/service/TalkingPenService.java | 14 +++++++++++++- .../com/ccsens/yanyuan/util/YanYuanConstant.java | 2 +- src/main/resources/application.yml | 4 ++-- src/main/resources/mapper_dao/TrainCardDao.xml | 3 ++- 5 files changed, 20 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/ccsens/yanyuan/bean/vo/TrainBelongVo.java b/src/main/java/com/ccsens/yanyuan/bean/vo/TrainBelongVo.java index 8e1c676..02f590b 100644 --- a/src/main/java/com/ccsens/yanyuan/bean/vo/TrainBelongVo.java +++ b/src/main/java/com/ccsens/yanyuan/bean/vo/TrainBelongVo.java @@ -67,6 +67,8 @@ public class TrainBelongVo { private BigDecimal coordinatesY; @ApiModelProperty("操作时间") private Long operateTime; + @ApiModelProperty("标志 1:按下(开始) 0:普通 3:抬起(结束)") + private Byte sign; } @Data diff --git a/src/main/java/com/ccsens/yanyuan/service/TalkingPenService.java b/src/main/java/com/ccsens/yanyuan/service/TalkingPenService.java index 0eea4a9..1be71b9 100644 --- a/src/main/java/com/ccsens/yanyuan/service/TalkingPenService.java +++ b/src/main/java/com/ccsens/yanyuan/service/TalkingPenService.java @@ -283,6 +283,7 @@ public class TalkingPenService implements ITalkingPenService { List processPoints = new ArrayList<>(); List processLines = new ArrayList<>(); TrainProcessPoint prev = null; + boolean emptyPackage = true; for (int i = 0; i < points.size() ; i+=group) { double x = points.get(i + TalkingPenDto.Point.OID3_X).getValue()/ 100.0; @@ -296,6 +297,7 @@ public class TalkingPenService implements ITalkingPenService { TrainProcessPoint initPoint = initPoint(cardId, label, x, y, time, (int)angle, points); processPoints.add(initPoint); prev = initPoint; + emptyPackage = false; } if (label == TalkingPenDto.Point.SIGN_START) { // 开始 @@ -308,6 +310,7 @@ public class TalkingPenService implements ITalkingPenService { } else { // 其他 if (prev == null) { + // 前面的点都是空点,上一个非开始点应该为结束点 TrainProcessPointExample pointExample = new TrainProcessPointExample(); pointExample.createCriteria().andCardIdEqualTo(cardId); pointExample.setOrderByClause("id desc limit 1"); @@ -316,6 +319,13 @@ public class TalkingPenService implements ITalkingPenService { continue; } prev = trainProcessPoints.get(0); + if (prev.getSign() == TalkingPenDto.Point.SIGN_CENTER) { + TrainProcessPoint update = new TrainProcessPoint(); + update.setId(prev.getId()); + update.setSign(TalkingPenDto.Point.SIGN_END); + trainProcessDao.updateByPrimaryKeySelective(update); + log.info("修改上一个点为结束点:{}", update); + } } if (processLines.isEmpty()) { // 查询系统中的最近的线条 @@ -345,7 +355,9 @@ public class TalkingPenService implements ITalkingPenService { trainProcessDao.replaceLineBatch(processLines); } - judgeProcess(trainCard, coordinates, firstDto.getAuthId()); + if (!emptyPackage) { + judgeProcess(trainCard, coordinates, firstDto.getAuthId()); + } } /** diff --git a/src/main/java/com/ccsens/yanyuan/util/YanYuanConstant.java b/src/main/java/com/ccsens/yanyuan/util/YanYuanConstant.java index 2d0aa46..91f43cb 100644 --- a/src/main/java/com/ccsens/yanyuan/util/YanYuanConstant.java +++ b/src/main/java/com/ccsens/yanyuan/util/YanYuanConstant.java @@ -155,7 +155,7 @@ public class YanYuanConstant { * 点读笔判断找不同是否正确 */ public final static String TALKING_PEN_JUDGE_AUDIO_KEY = "talking_pen_judge_{}_audio"; - public final static long TALKING_PEN_JUDGE_AUDIO_TIME = 1; + public final static long TALKING_PEN_JUDGE_AUDIO_TIME = 60; /** * 点读笔试题查询,下一个 */ diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 5abf242..c3b11fb 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -1,4 +1,4 @@ spring: profiles: - active: prod - include: common, util-prod + active: test + include: common, util-test diff --git a/src/main/resources/mapper_dao/TrainCardDao.xml b/src/main/resources/mapper_dao/TrainCardDao.xml index 96592f4..5677016 100644 --- a/src/main/resources/mapper_dao/TrainCardDao.xml +++ b/src/main/resources/mapper_dao/TrainCardDao.xml @@ -16,6 +16,7 @@ + @@ -23,7 +24,7 @@ select c.id as trainRecordId,c.created_at AS createdAt, 1 as resultType, c.equipment_id as equipmentId, c.assist_id as assistId, t.id as toolId, t.`code` as toolCode, tc.url as cardUrl, - pp.id as ppId, pp.coordinates_x, pp.coordinates_y, pp.real_time + pp.id as ppId, pp.coordinates_x, pp.coordinates_y, pp.real_time, pp.sign from u_train_card c left join t_tool_equipment e on c.equipment_id = e.id and e.rec_status = 0 left join t_tool t on e.tool_id = t.id and t.rec_status = 0