diff --git a/dev/RuoYi-Vue-master/ruoyi-apt/src/main/java/com/ruoyi/apt/dispatch/mapper/AptDutyStateMapper.java b/dev/RuoYi-Vue-master/ruoyi-apt/src/main/java/com/ruoyi/apt/dispatch/mapper/AptDutyStateMapper.java index c945c12..250606f 100644 --- a/dev/RuoYi-Vue-master/ruoyi-apt/src/main/java/com/ruoyi/apt/dispatch/mapper/AptDutyStateMapper.java +++ b/dev/RuoYi-Vue-master/ruoyi-apt/src/main/java/com/ruoyi/apt/dispatch/mapper/AptDutyStateMapper.java @@ -26,10 +26,13 @@ public interface AptDutyStateMapper int updateCallStart(@Param("gyid") String gyid, @Param("jcid") String jcid, @Param("tempCall") boolean tempCall); - /** -> 3 已应答待离寓:SIP ConfbridgeJoin 或平板 ANSWERED+VERIFIED */ + /** -> 3 已应答待离寓:房间腿挂断(HANGUP)或平板 ANSWERED+VERIFIED */ int updateAnswered(@Param("gyid") String gyid, @Param("jcid") String jcid, @Param("fromStates") List fromStates); + /** 房间入会:仅补记 hjxysj,ryzt 保持 1 叫乘中(待离寓由挂断触发) */ + int updateJoinConf(@Param("gyid") String gyid, @Param("jcid") String jcid); + /** 1 叫乘中 -> 2 叫乘报警(30s 无入会 / 平板 NO_ANSWER / FAILED) */ int updateCallFailed(@Param("gyid") String gyid, @Param("jcid") String jcid); diff --git a/dev/RuoYi-Vue-master/ruoyi-apt/src/main/java/com/ruoyi/apt/dispatch/service/IAptDutyStateService.java b/dev/RuoYi-Vue-master/ruoyi-apt/src/main/java/com/ruoyi/apt/dispatch/service/IAptDutyStateService.java index af603b3..9b3f731 100644 --- a/dev/RuoYi-Vue-master/ruoyi-apt/src/main/java/com/ruoyi/apt/dispatch/service/IAptDutyStateService.java +++ b/dev/RuoYi-Vue-master/ruoyi-apt/src/main/java/com/ruoyi/apt/dispatch/service/IAptDutyStateService.java @@ -17,7 +17,10 @@ public interface IAptDutyStateService /** 0 待叫乘 -> 1 叫乘中 */ int callStart(String jcid); - /** -> 3 已应答待离寓 + finish_jc=1(SIP 入会 / 平板 VERIFIED) */ + /** 房间入会:补记 hjxysj,ryzt 保持 1 叫乘中(不变待离寓) */ + int joinConf(String jcid); + + /** -> 3 已应答待离寓 + finish_jc=1(房间挂断 / 平板 VERIFIED) */ int answered(String jcid); /** 1 叫乘中 -> 2 叫乘报警 */ diff --git a/dev/RuoYi-Vue-master/ruoyi-apt/src/main/resources/mapper/apt/AptJcxxMapper.xml b/dev/RuoYi-Vue-master/ruoyi-apt/src/main/resources/mapper/apt/AptJcxxMapper.xml index 765fc0b..127ee9a 100644 --- a/dev/RuoYi-Vue-master/ruoyi-apt/src/main/resources/mapper/apt/AptJcxxMapper.xml +++ b/dev/RuoYi-Vue-master/ruoyi-apt/src/main/resources/mapper/apt/AptJcxxMapper.xml @@ -243,6 +243,15 @@ AND j.ryzt = '1' AND j.finish_jc = '0' AND j.finish_ly = '0' AND j.call_mode = 'SIP' AND j.jcsj_s IS NOT NULL AND j.jcsj_s <= #{deadline} + + AND NOT EXISTS ( + SELECT 1 FROM apt_call_session s + WHERE s.gyid = j.gyid AND s.jcid = j.jcid + AND s.leg_role = 'ROOM' + AND s.call_state = 'JOINED_CONF' AND s.deleted = 0 + ) ORDER BY j.jcsj_s ASC LIMIT #{limit}