mirror of
https://gitee.com/pan648540858/wvp-GB28181-pro.git
synced 2026-06-19 01:37:49 +08:00
1078-添加部标通道页面
This commit is contained in:
parent
f7d811a299
commit
5d5d654410
@ -20,7 +20,7 @@ public class JTChannel {
|
|||||||
* 设备的数据库ID
|
* 设备的数据库ID
|
||||||
*/
|
*/
|
||||||
@Schema(description = "设备的数据库ID")
|
@Schema(description = "设备的数据库ID")
|
||||||
private int deviceId;
|
private int terminalId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 通道ID
|
* 通道ID
|
||||||
@ -51,12 +51,12 @@ public class JTChannel {
|
|||||||
this.name = name;
|
this.name = name;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getDeviceId() {
|
public int getTerminalId() {
|
||||||
return deviceId;
|
return terminalId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDeviceId(int deviceId) {
|
public void setTerminalId(int terminalId) {
|
||||||
this.deviceId = deviceId;
|
this.terminalId = terminalId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getCreateTime() {
|
public String getCreateTime() {
|
||||||
@ -88,7 +88,7 @@ public class JTChannel {
|
|||||||
return "JTChannel{" +
|
return "JTChannel{" +
|
||||||
"id=" + id +
|
"id=" + id +
|
||||||
", name='" + name + '\'' +
|
", name='" + name + '\'' +
|
||||||
", deviceId=" + deviceId +
|
", terminalId=" + terminalId +
|
||||||
", channelId=" + channelId +
|
", channelId=" + channelId +
|
||||||
", createTime='" + createTime + '\'' +
|
", createTime='" + createTime + '\'' +
|
||||||
", updateTime='" + updateTime + '\'' +
|
", updateTime='" + updateTime + '\'' +
|
||||||
|
|||||||
@ -44,7 +44,7 @@ public class JTDevice {
|
|||||||
* 终端型号
|
* 终端型号
|
||||||
*/
|
*/
|
||||||
@Schema(description = "终端型号")
|
@Schema(description = "终端型号")
|
||||||
private String deviceModel;
|
private String model;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 终端手机号
|
* 终端手机号
|
||||||
@ -89,6 +89,10 @@ public class JTDevice {
|
|||||||
private Double latitude;
|
private Double latitude;
|
||||||
|
|
||||||
|
|
||||||
|
@Schema(description = "注册时间")
|
||||||
|
private String registerTime;
|
||||||
|
|
||||||
|
|
||||||
@Schema(description = "创建时间")
|
@Schema(description = "创建时间")
|
||||||
private String createTime;
|
private String createTime;
|
||||||
|
|
||||||
@ -146,12 +150,12 @@ public class JTDevice {
|
|||||||
this.makerId = makerId;
|
this.makerId = makerId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getDeviceModel() {
|
public String getModel() {
|
||||||
return deviceModel;
|
return model;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDeviceModel(String deviceModel) {
|
public void setModel(String model) {
|
||||||
this.deviceModel = deviceModel;
|
this.model = model;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getPhoneNumber() {
|
public String getPhoneNumber() {
|
||||||
@ -234,6 +238,14 @@ public class JTDevice {
|
|||||||
this.status = status;
|
this.status = status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getRegisterTime() {
|
||||||
|
return registerTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRegisterTime(String registerTime) {
|
||||||
|
this.registerTime = registerTime;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return "JTDevice{" +
|
return "JTDevice{" +
|
||||||
@ -242,11 +254,12 @@ public class JTDevice {
|
|||||||
", 市县域ID='" + cityId + '\'' +
|
", 市县域ID='" + cityId + '\'' +
|
||||||
", 市县域文字描述='" + cityText + '\'' +
|
", 市县域文字描述='" + cityText + '\'' +
|
||||||
", 制造商ID='" + makerId + '\'' +
|
", 制造商ID='" + makerId + '\'' +
|
||||||
", 终端型号='" + deviceModel + '\'' +
|
", 终端型号='" + model + '\'' +
|
||||||
", 终端手机号='" + phoneNumber + '\'' +
|
", 终端手机号='" + phoneNumber + '\'' +
|
||||||
", 设备ID='" + terminalId + '\'' +
|
", 设备ID='" + terminalId + '\'' +
|
||||||
", 车牌颜色=" + plateColor +
|
", 车牌颜色=" + plateColor +
|
||||||
", 车牌='" + plateNo + '\'' +
|
", 车牌='" + plateNo + '\'' +
|
||||||
|
", 注册时间='" + registerTime + '\'' +
|
||||||
", 鉴权码='" + authenticationCode + '\'' +
|
", 鉴权码='" + authenticationCode + '\'' +
|
||||||
", status=" + status +
|
", status=" + status +
|
||||||
'}';
|
'}';
|
||||||
|
|||||||
@ -81,7 +81,7 @@ public class JT1078Template {
|
|||||||
*/
|
*/
|
||||||
public Object startLive(String devId, J9101 j9101, Integer timeOut) {
|
public Object startLive(String devId, J9101 j9101, Integer timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H9101)
|
.setMsgId(H9101)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -98,7 +98,7 @@ public class JT1078Template {
|
|||||||
*/
|
*/
|
||||||
public Object stopLive(String devId, J9102 j9102, Integer timeOut) {
|
public Object stopLive(String devId, J9102 j9102, Integer timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H9102)
|
.setMsgId(H9102)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -115,7 +115,7 @@ public class JT1078Template {
|
|||||||
*/
|
*/
|
||||||
public Object queryBackTime(String devId, J9205 j9205, Integer timeOut) {
|
public Object queryBackTime(String devId, J9205 j9205, Integer timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H9205)
|
.setMsgId(H9205)
|
||||||
.setRespId(H1205)
|
.setRespId(H1205)
|
||||||
@ -132,7 +132,7 @@ public class JT1078Template {
|
|||||||
*/
|
*/
|
||||||
public Object startBackLive(String devId, J9201 j9201, Integer timeOut) {
|
public Object startBackLive(String devId, J9201 j9201, Integer timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H9201)
|
.setMsgId(H9201)
|
||||||
.setRespId(H1205)
|
.setRespId(H1205)
|
||||||
@ -149,7 +149,7 @@ public class JT1078Template {
|
|||||||
*/
|
*/
|
||||||
public Object controlBackLive(String devId, J9202 j9202, Integer timeOut) {
|
public Object controlBackLive(String devId, J9202 j9202, Integer timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H9202)
|
.setMsgId(H9202)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -166,7 +166,7 @@ public class JT1078Template {
|
|||||||
*/
|
*/
|
||||||
public Object fileUpload(String devId, J9206 j9206, Integer timeOut) {
|
public Object fileUpload(String devId, J9206 j9206, Integer timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H9206)
|
.setMsgId(H9206)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -183,7 +183,7 @@ public class JT1078Template {
|
|||||||
*/
|
*/
|
||||||
public Object fileUploadControl(String devId, J9207 j9207, Integer timeOut) {
|
public Object fileUploadControl(String devId, J9207 j9207, Integer timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H9207)
|
.setMsgId(H9207)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -200,7 +200,7 @@ public class JT1078Template {
|
|||||||
*/
|
*/
|
||||||
public Object ptzRotate(String devId, J9301 j9301, Integer timeOut) {
|
public Object ptzRotate(String devId, J9301 j9301, Integer timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H9301)
|
.setMsgId(H9301)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -217,7 +217,7 @@ public class JT1078Template {
|
|||||||
*/
|
*/
|
||||||
public Object ptzFocal(String devId, J9302 j9302, Integer timeOut) {
|
public Object ptzFocal(String devId, J9302 j9302, Integer timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H9302)
|
.setMsgId(H9302)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -234,7 +234,7 @@ public class JT1078Template {
|
|||||||
*/
|
*/
|
||||||
public Object ptzIris(String devId, J9303 j9303, Integer timeOut) {
|
public Object ptzIris(String devId, J9303 j9303, Integer timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H9303)
|
.setMsgId(H9303)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -251,7 +251,7 @@ public class JT1078Template {
|
|||||||
*/
|
*/
|
||||||
public Object ptzWiper(String devId, J9304 j9304, Integer timeOut) {
|
public Object ptzWiper(String devId, J9304 j9304, Integer timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H9304)
|
.setMsgId(H9304)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -268,7 +268,7 @@ public class JT1078Template {
|
|||||||
*/
|
*/
|
||||||
public Object ptzSupplementaryLight(String devId, J9305 j9305, Integer timeOut) {
|
public Object ptzSupplementaryLight(String devId, J9305 j9305, Integer timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H9305)
|
.setMsgId(H9305)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -285,7 +285,7 @@ public class JT1078Template {
|
|||||||
*/
|
*/
|
||||||
public Object ptzZoom(String devId, J9306 j9306, Integer timeOut) {
|
public Object ptzZoom(String devId, J9306 j9306, Integer timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H9306)
|
.setMsgId(H9306)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -302,7 +302,7 @@ public class JT1078Template {
|
|||||||
public Object getDeviceConfig(String devId, J8104 j8104, Integer timeOut) {
|
public Object getDeviceConfig(String devId, J8104 j8104, Integer timeOut) {
|
||||||
|
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8104)
|
.setMsgId(H8104)
|
||||||
.setRespId(H0104)
|
.setRespId(H0104)
|
||||||
@ -319,7 +319,7 @@ public class JT1078Template {
|
|||||||
public Object getDeviceSpecifyConfig(String devId, J8106 j8106, Integer timeOut) {
|
public Object getDeviceSpecifyConfig(String devId, J8106 j8106, Integer timeOut) {
|
||||||
|
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8106)
|
.setMsgId(H8106)
|
||||||
.setRespId(H0104)
|
.setRespId(H0104)
|
||||||
@ -336,7 +336,7 @@ public class JT1078Template {
|
|||||||
public Object setDeviceSpecifyConfig(String devId, J8103 j8103, Integer timeOut) {
|
public Object setDeviceSpecifyConfig(String devId, J8103 j8103, Integer timeOut) {
|
||||||
|
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8103)
|
.setMsgId(H8103)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -354,7 +354,7 @@ public class JT1078Template {
|
|||||||
*/
|
*/
|
||||||
public Object deviceControl(String devId, J8105 j8105, int timeOut) {
|
public Object deviceControl(String devId, J8105 j8105, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8105)
|
.setMsgId(H8105)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -368,7 +368,7 @@ public class JT1078Template {
|
|||||||
*/
|
*/
|
||||||
public Object deviceAttribute(String devId, J8107 j8107, int timeOut) {
|
public Object deviceAttribute(String devId, J8107 j8107, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8107)
|
.setMsgId(H8107)
|
||||||
.setRespId(H0107)
|
.setRespId(H0107)
|
||||||
@ -382,7 +382,7 @@ public class JT1078Template {
|
|||||||
*/
|
*/
|
||||||
public Object queryPositionInfo(String devId, J8201 j8201, int timeOut) {
|
public Object queryPositionInfo(String devId, J8201 j8201, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8201)
|
.setMsgId(H8201)
|
||||||
.setRespId(H0201)
|
.setRespId(H0201)
|
||||||
@ -393,7 +393,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object tempPositionTrackingControl(String devId, J8202 j8202, int timeOut) {
|
public Object tempPositionTrackingControl(String devId, J8202 j8202, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8202)
|
.setMsgId(H8202)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -404,7 +404,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object confirmationAlarmMessage(String devId, J8203 j8203, int timeOut) {
|
public Object confirmationAlarmMessage(String devId, J8203 j8203, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8203)
|
.setMsgId(H8203)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -415,7 +415,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object linkDetection(String devId, J8204 j8204, int timeOut) {
|
public Object linkDetection(String devId, J8204 j8204, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8204)
|
.setMsgId(H8204)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -426,7 +426,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object textMessage(String devId, J8300 j8300, int timeOut) {
|
public Object textMessage(String devId, J8300 j8300, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8300)
|
.setMsgId(H8300)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -437,7 +437,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object telephoneCallback(String devId, J8400 j8400, int timeOut) {
|
public Object telephoneCallback(String devId, J8400 j8400, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8400)
|
.setMsgId(H8400)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -448,7 +448,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object setPhoneBook(String devId, J8401 j8401, int timeOut) {
|
public Object setPhoneBook(String devId, J8401 j8401, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8401)
|
.setMsgId(H8401)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -459,7 +459,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object vehicleControl(String devId, J8500 j8500, int timeOut) {
|
public Object vehicleControl(String devId, J8500 j8500, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8500)
|
.setMsgId(H8500)
|
||||||
.setRespId(H0500)
|
.setRespId(H0500)
|
||||||
@ -470,7 +470,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object setAreaForCircle(String devId, J8600 j8600, int timeOut) {
|
public Object setAreaForCircle(String devId, J8600 j8600, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8600)
|
.setMsgId(H8600)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -481,7 +481,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object deleteAreaForCircle(String devId, J8601 j8601, int timeOut) {
|
public Object deleteAreaForCircle(String devId, J8601 j8601, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8601)
|
.setMsgId(H8601)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -492,7 +492,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object setAreaForRectangle(String devId, J8602 j8602, int timeOut) {
|
public Object setAreaForRectangle(String devId, J8602 j8602, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8602)
|
.setMsgId(H8602)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -503,7 +503,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object deleteAreaForRectangle(String devId, J8603 j8603, int timeOut) {
|
public Object deleteAreaForRectangle(String devId, J8603 j8603, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8603)
|
.setMsgId(H8603)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -514,7 +514,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object setAreaForPolygon(String devId, J8604 j8604, int timeOut) {
|
public Object setAreaForPolygon(String devId, J8604 j8604, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8604)
|
.setMsgId(H8604)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -525,7 +525,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object deleteAreaForPolygon(String devId, J8605 j8605, int timeOut) {
|
public Object deleteAreaForPolygon(String devId, J8605 j8605, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8605)
|
.setMsgId(H8605)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -536,7 +536,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object setRoute(String devId, J8606 j8606, int timeOut) {
|
public Object setRoute(String devId, J8606 j8606, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8606)
|
.setMsgId(H8606)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -547,7 +547,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object deleteRoute(String devId, J8607 j8607, int timeOut) {
|
public Object deleteRoute(String devId, J8607 j8607, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8607)
|
.setMsgId(H8607)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -558,7 +558,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object queryAreaOrRoute(String devId, J8608 j8608, int timeOut) {
|
public Object queryAreaOrRoute(String devId, J8608 j8608, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8608)
|
.setMsgId(H8608)
|
||||||
.setRespId(H0608)
|
.setRespId(H0608)
|
||||||
@ -569,7 +569,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object queryDriverInformation(String devId, J8702 j8702, int timeOut) {
|
public Object queryDriverInformation(String devId, J8702 j8702, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8702)
|
.setMsgId(H8702)
|
||||||
.setRespId(H0702)
|
.setRespId(H0702)
|
||||||
@ -580,7 +580,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object shooting(String devId, J8801 j8801, int timeOut) {
|
public Object shooting(String devId, J8801 j8801, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8801)
|
.setMsgId(H8801)
|
||||||
.setRespId(H0805)
|
.setRespId(H0805)
|
||||||
@ -591,7 +591,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object queryMediaData(String devId, J8802 j8802, int timeOut) {
|
public Object queryMediaData(String devId, J8802 j8802, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8802)
|
.setMsgId(H8802)
|
||||||
.setRespId(H0802)
|
.setRespId(H0802)
|
||||||
@ -602,7 +602,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object uploadMediaData(String devId, J8803 j8803, int timeOut) {
|
public Object uploadMediaData(String devId, J8803 j8803, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8803)
|
.setMsgId(H8803)
|
||||||
.setRespId(H0801)
|
.setRespId(H0801)
|
||||||
@ -613,7 +613,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object record(String devId, J8804 j8804, int timeOut) {
|
public Object record(String devId, J8804 j8804, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8804)
|
.setMsgId(H8804)
|
||||||
.setRespId(H0001)
|
.setRespId(H0001)
|
||||||
@ -624,7 +624,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object uploadMediaDataForSingle(String devId, J8805 j8805, int timeOut) {
|
public Object uploadMediaDataForSingle(String devId, J8805 j8805, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H8805)
|
.setMsgId(H8805)
|
||||||
.setRespId(H0801)
|
.setRespId(H0801)
|
||||||
@ -635,7 +635,7 @@ public class JT1078Template {
|
|||||||
|
|
||||||
public Object queryMediaAttribute(String devId, J9003 j9003, int timeOut) {
|
public Object queryMediaAttribute(String devId, J9003 j9003, int timeOut) {
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setDevId(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
.setMsgId(H9003)
|
.setMsgId(H9003)
|
||||||
.setRespId(H1003)
|
.setRespId(H1003)
|
||||||
|
|||||||
@ -12,7 +12,6 @@ import com.genersoft.iot.vmp.service.bean.InviteErrorCode;
|
|||||||
import com.genersoft.iot.vmp.vmanager.bean.ErrorCode;
|
import com.genersoft.iot.vmp.vmanager.bean.ErrorCode;
|
||||||
import com.genersoft.iot.vmp.vmanager.bean.StreamContent;
|
import com.genersoft.iot.vmp.vmanager.bean.StreamContent;
|
||||||
import com.genersoft.iot.vmp.vmanager.bean.WVPResult;
|
import com.genersoft.iot.vmp.vmanager.bean.WVPResult;
|
||||||
import com.github.pagehelper.PageInfo;
|
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.Parameter;
|
import io.swagger.v3.oas.annotations.Parameter;
|
||||||
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
||||||
|
|||||||
@ -21,11 +21,11 @@ import java.util.List;
|
|||||||
|
|
||||||
@ConditionalOnProperty(value = "jt1078.enable", havingValue = "true")
|
@ConditionalOnProperty(value = "jt1078.enable", havingValue = "true")
|
||||||
@RestController
|
@RestController
|
||||||
@Tag(name = "部标设备管理")
|
@Tag(name = "部标终端以及通道管理")
|
||||||
@RequestMapping("/api/jt1078/device")
|
@RequestMapping("/api/jt1078/terminal")
|
||||||
public class JT1078DeviceController {
|
public class JT1078TerminalController {
|
||||||
|
|
||||||
private final static Logger logger = LoggerFactory.getLogger(JT1078DeviceController.class);
|
private final static Logger logger = LoggerFactory.getLogger(JT1078TerminalController.class);
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
Ijt1078Service service;
|
Ijt1078Service service;
|
||||||
@ -71,18 +71,21 @@ public class JT1078DeviceController {
|
|||||||
|
|
||||||
|
|
||||||
@Operation(summary = "1078-查询部标通道", security = @SecurityRequirement(name = JwtUtils.HEADER))
|
@Operation(summary = "1078-查询部标通道", security = @SecurityRequirement(name = JwtUtils.HEADER))
|
||||||
|
@Parameter(name = "page", description = "当前页", required = true)
|
||||||
|
@Parameter(name = "count", description = "每页查询数量", required = true)
|
||||||
@Parameter(name = "deviceId", description = "设备ID", required = true)
|
@Parameter(name = "deviceId", description = "设备ID", required = true)
|
||||||
@Parameter(name = "query", description = "查询内容")
|
@Parameter(name = "query", description = "查询内容")
|
||||||
@GetMapping("/channel/list")
|
@GetMapping("/channel/list")
|
||||||
public List<JTChannel> getChannels(@RequestParam(required = true) Integer deviceId,
|
public PageInfo<JTChannel> getChannels(int page, int count,
|
||||||
|
@RequestParam(required = true) Integer deviceId,
|
||||||
@RequestParam(required = false) String query) {
|
@RequestParam(required = false) String query) {
|
||||||
assert deviceId != null;
|
assert deviceId != null;
|
||||||
return service.getChannelList(deviceId, query);
|
return service.getChannelList(page, count, deviceId, query);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Operation(summary = "1078-更新通道", security = @SecurityRequirement(name = JwtUtils.HEADER))
|
@Operation(summary = "1078-更新通道", security = @SecurityRequirement(name = JwtUtils.HEADER))
|
||||||
@Parameter(name = "channel", description = "通道", required = true)
|
@Parameter(name = "channel", description = "通道", required = true)
|
||||||
@PostMapping("/update")
|
@PostMapping("/channel/update")
|
||||||
public void updateChannel(JTChannel channel){
|
public void updateChannel(JTChannel channel){
|
||||||
assert channel.getId() > 0;
|
assert channel.getId() > 0;
|
||||||
assert channel.getChannelId() != null;
|
assert channel.getChannelId() != null;
|
||||||
@ -91,14 +94,14 @@ public class JT1078DeviceController {
|
|||||||
|
|
||||||
@Operation(summary = "1078-新增通道", security = @SecurityRequirement(name = JwtUtils.HEADER))
|
@Operation(summary = "1078-新增通道", security = @SecurityRequirement(name = JwtUtils.HEADER))
|
||||||
@Parameter(name = "channel", description = "通道", required = true)
|
@Parameter(name = "channel", description = "通道", required = true)
|
||||||
@PostMapping("/add")
|
@PostMapping("/channel/add")
|
||||||
public void addChannel(JTChannel channel){
|
public void addChannel(JTChannel channel){
|
||||||
assert channel.getChannelId() != null;
|
assert channel.getChannelId() != null;
|
||||||
service.addChannel(channel);
|
service.addChannel(channel);
|
||||||
}
|
}
|
||||||
@Operation(summary = "1078-删除通道", security = @SecurityRequirement(name = JwtUtils.HEADER))
|
@Operation(summary = "1078-删除通道", security = @SecurityRequirement(name = JwtUtils.HEADER))
|
||||||
@Parameter(name = "id", description = "通道的数据库ID", required = true)
|
@Parameter(name = "id", description = "通道的数据库ID", required = true)
|
||||||
@DeleteMapping("/delete")
|
@DeleteMapping("/channel/delete")
|
||||||
public void deleteChannel(Integer id){
|
public void deleteChannel(Integer id){
|
||||||
service.deleteChannelById(id);
|
service.deleteChannelById(id);
|
||||||
}
|
}
|
||||||
@ -9,7 +9,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
|
|||||||
@Schema(description = "人工确认报警消息参数")
|
@Schema(description = "人工确认报警消息参数")
|
||||||
public class ConfirmationAlarmMessageParam {
|
public class ConfirmationAlarmMessageParam {
|
||||||
|
|
||||||
@Schema(description = "设备")
|
@Schema(description = "终端手机号")
|
||||||
private String phoneNumber;
|
private String phoneNumber;
|
||||||
@Schema(description = "报警消息流水号")
|
@Schema(description = "报警消息流水号")
|
||||||
private int alarmPackageNo;
|
private int alarmPackageNo;
|
||||||
|
|||||||
@ -1,9 +1,11 @@
|
|||||||
package com.genersoft.iot.vmp.jt1078.controller.bean;
|
package com.genersoft.iot.vmp.jt1078.controller.bean;
|
||||||
|
|
||||||
import com.genersoft.iot.vmp.jt1078.bean.JTDeviceConnectionControl;
|
import com.genersoft.iot.vmp.jt1078.bean.JTDeviceConnectionControl;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
|
||||||
public class ConnectionControlParam {
|
public class ConnectionControlParam {
|
||||||
|
|
||||||
|
@Schema(description = "终端手机号")
|
||||||
private String phoneNumber;
|
private String phoneNumber;
|
||||||
private JTDeviceConnectionControl control;
|
private JTDeviceConnectionControl control;
|
||||||
|
|
||||||
|
|||||||
@ -7,7 +7,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
|
|||||||
@Schema(description = "存储多媒体数据参数")
|
@Schema(description = "存储多媒体数据参数")
|
||||||
public class QueryMediaDataParam {
|
public class QueryMediaDataParam {
|
||||||
|
|
||||||
@Schema(description = "设备")
|
@Schema(description = "终端手机号")
|
||||||
private String phoneNumber;
|
private String phoneNumber;
|
||||||
|
|
||||||
@Schema(description = "多媒体 ID, 单条存储多媒体数据检索上传时有效")
|
@Schema(description = "多媒体 ID, 单条存储多媒体数据检索上传时有效")
|
||||||
|
|||||||
@ -8,7 +8,7 @@ import java.util.List;
|
|||||||
@Schema(description = "设置区域参数")
|
@Schema(description = "设置区域参数")
|
||||||
public class SetAreaParam {
|
public class SetAreaParam {
|
||||||
|
|
||||||
@Schema(description = "设备")
|
@Schema(description = "终端手机号")
|
||||||
private String phoneNumber;
|
private String phoneNumber;
|
||||||
|
|
||||||
@Schema(description = "圆形区域项")
|
@Schema(description = "圆形区域项")
|
||||||
|
|||||||
@ -1,10 +1,15 @@
|
|||||||
package com.genersoft.iot.vmp.jt1078.controller;
|
package com.genersoft.iot.vmp.jt1078.controller.bean;
|
||||||
|
|
||||||
import com.genersoft.iot.vmp.jt1078.bean.JTDeviceConfig;
|
import com.genersoft.iot.vmp.jt1078.bean.JTDeviceConfig;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
|
||||||
|
@Schema(description = "终端参数设置")
|
||||||
public class SetConfigParam {
|
public class SetConfigParam {
|
||||||
|
|
||||||
|
@Schema(description = "终端手机号")
|
||||||
private String phoneNumber;
|
private String phoneNumber;
|
||||||
|
|
||||||
|
@Schema(description = "终端参数设置")
|
||||||
private JTDeviceConfig config;
|
private JTDeviceConfig config;
|
||||||
|
|
||||||
public String getPhoneNumber() {
|
public String getPhoneNumber() {
|
||||||
@ -9,7 +9,7 @@ import java.util.List;
|
|||||||
@Schema(description = "设置电话本")
|
@Schema(description = "设置电话本")
|
||||||
public class SetPhoneBookParam {
|
public class SetPhoneBookParam {
|
||||||
|
|
||||||
@Schema(description = "设备手机号")
|
@Schema(description = "终端手机号")
|
||||||
private String phoneNumber;
|
private String phoneNumber;
|
||||||
|
|
||||||
@Schema(description = "设置类型:\n" +
|
@Schema(description = "设置类型:\n" +
|
||||||
|
|||||||
@ -5,7 +5,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
|
|||||||
@Schema(description = "摄像头立即拍摄命令参数")
|
@Schema(description = "摄像头立即拍摄命令参数")
|
||||||
public class ShootingParam {
|
public class ShootingParam {
|
||||||
|
|
||||||
@Schema(description = "设备")
|
@Schema(description = "终端手机号")
|
||||||
private String phoneNumber;
|
private String phoneNumber;
|
||||||
|
|
||||||
@Schema(description = "拍摄命令参数")
|
@Schema(description = "拍摄命令参数")
|
||||||
|
|||||||
@ -9,7 +9,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
|
|||||||
@Schema(description = "人工确认报警消息参数")
|
@Schema(description = "人工确认报警消息参数")
|
||||||
public class TextMessageParam {
|
public class TextMessageParam {
|
||||||
|
|
||||||
@Schema(description = "设备手机号")
|
@Schema(description = "终端手机号")
|
||||||
private String phoneNumber;
|
private String phoneNumber;
|
||||||
@Schema(description = "标志")
|
@Schema(description = "标志")
|
||||||
private JTTextSign sign;
|
private JTTextSign sign;
|
||||||
|
|||||||
@ -14,18 +14,18 @@ public interface JTChannelMapper {
|
|||||||
"from " +
|
"from " +
|
||||||
"wvp_jt_channel jc " +
|
"wvp_jt_channel jc " +
|
||||||
"WHERE " +
|
"WHERE " +
|
||||||
"device_id = #{deviceId}" +
|
"terminal_id = #{terminalId}" +
|
||||||
" <if test='query != null'> AND " +
|
" <if test='query != null'> AND " +
|
||||||
"jc.name LIKE concat('%',#{query},'%') " +
|
"jc.name LIKE concat('%',#{query},'%') " +
|
||||||
"</if> " +
|
"</if> " +
|
||||||
"ORDER BY jc.update_time " +
|
"ORDER BY jc.update_time " +
|
||||||
" </script>"})
|
" </script>"})
|
||||||
List<JTChannel> getAll(@Param("deviceId") int deviceId, @Param("query") String query);
|
List<JTChannel> getAll(@Param("terminalId") int terminalId, @Param("query") String query);
|
||||||
|
|
||||||
@Update(value = {" <script>" +
|
@Update(value = {" <script>" +
|
||||||
"UPDATE wvp_jt_channel " +
|
"UPDATE wvp_jt_channel " +
|
||||||
"SET update_time=#{updateTime}" +
|
"SET update_time=#{updateTime}" +
|
||||||
"<if test=\"deviceId != null\">, device_id=#{deviceId}</if>" +
|
"<if test=\"terminalId != null\">, terminal_id=#{terminalId}</if>" +
|
||||||
"<if test=\"name != null\">, name=#{name}</if>" +
|
"<if test=\"name != null\">, name=#{name}</if>" +
|
||||||
"<if test=\"channelId != null\">, channelId=#{channelId}</if>" +
|
"<if test=\"channelId != null\">, channelId=#{channelId}</if>" +
|
||||||
"WHERE id=#{id}"+
|
"WHERE id=#{id}"+
|
||||||
@ -33,13 +33,13 @@ public interface JTChannelMapper {
|
|||||||
void update(JTChannel channel);
|
void update(JTChannel channel);
|
||||||
|
|
||||||
@Insert("INSERT INTO wvp_jt_channel (" +
|
@Insert("INSERT INTO wvp_jt_channel (" +
|
||||||
"device_id,"+
|
"terminal_id,"+
|
||||||
"channel_id,"+
|
"channel_id,"+
|
||||||
"name,"+
|
"name,"+
|
||||||
"create_time,"+
|
"create_time,"+
|
||||||
"update_time"+
|
"update_time"+
|
||||||
") VALUES (" +
|
") VALUES (" +
|
||||||
"#{deviceId}," +
|
"#{terminalId}," +
|
||||||
"#{channelId}," +
|
"#{channelId}," +
|
||||||
"#{name}," +
|
"#{name}," +
|
||||||
"#{createTime}," +
|
"#{createTime}," +
|
||||||
|
|||||||
@ -14,18 +14,19 @@ public interface JTTerminalMapper {
|
|||||||
@Update(value = {" <script>" +
|
@Update(value = {" <script>" +
|
||||||
"UPDATE wvp_jt_terminal " +
|
"UPDATE wvp_jt_terminal " +
|
||||||
"SET update_time=#{updateTime}" +
|
"SET update_time=#{updateTime}" +
|
||||||
"<if test=\"terminalId != null\">, terminal_id=#{terminalId}</if>" +
|
|
||||||
"<if test=\"provinceId != null\">, province_id=#{provinceId}</if>" +
|
"<if test=\"provinceId != null\">, province_id=#{provinceId}</if>" +
|
||||||
|
"<if test=\"terminalId != null\">, terminal_id=#{terminalId}</if>" +
|
||||||
"<if test=\"provinceText != null\">, province_text=#{provinceText}</if>" +
|
"<if test=\"provinceText != null\">, province_text=#{provinceText}</if>" +
|
||||||
"<if test=\"cityId != null\">, city_id=#{cityId}</if>" +
|
"<if test=\"cityId != null\">, city_id=#{cityId}</if>" +
|
||||||
"<if test=\"cityText != null\">, city_text=#{cityText}</if>" +
|
"<if test=\"cityText != null\">, city_text=#{cityText}</if>" +
|
||||||
"<if test=\"makerId != null\">, maker_id=#{makerId}</if>" +
|
"<if test=\"makerId != null\">, maker_id=#{makerId}</if>" +
|
||||||
"<if test=\"deviceModel != null\">, device_model=#{deviceModel}</if>" +
|
"<if test=\"model != null\">, model=#{model}</if>" +
|
||||||
"<if test=\"plateColor != null\">, plate_color=#{plateColor}</if>" +
|
"<if test=\"plateColor != null\">, plate_color=#{plateColor}</if>" +
|
||||||
"<if test=\"plateNo != null\">, plate_no=#{plateNo}</if>" +
|
"<if test=\"plateNo != null\">, plate_no=#{plateNo}</if>" +
|
||||||
"<if test=\"authenticationCode != null\">, authentication_code=#{authenticationCode}</if>" +
|
"<if test=\"authenticationCode != null\">, authentication_code=#{authenticationCode}</if>" +
|
||||||
"<if test=\"longitude != null\">, longitude=#{longitude}</if>" +
|
"<if test=\"longitude != null\">, longitude=#{longitude}</if>" +
|
||||||
"<if test=\"latitude != null\">, latitude=#{latitude}</if>" +
|
"<if test=\"latitude != null\">, latitude=#{latitude}</if>" +
|
||||||
|
"<if test=\"registerTime != null\">, register_time=#{registerTime}</if>" +
|
||||||
"<if test=\"status != null\">, status=#{status}</if>" +
|
"<if test=\"status != null\">, status=#{status}</if>" +
|
||||||
"WHERE phone_number=#{phoneNumber}"+
|
"WHERE phone_number=#{phoneNumber}"+
|
||||||
" </script>"})
|
" </script>"})
|
||||||
@ -38,11 +39,12 @@ public interface JTTerminalMapper {
|
|||||||
"1=1" +
|
"1=1" +
|
||||||
" <if test='query != null'> AND (" +
|
" <if test='query != null'> AND (" +
|
||||||
"jd.phone_number LIKE concat('%',#{query},'%') " +
|
"jd.phone_number LIKE concat('%',#{query},'%') " +
|
||||||
|
"jd.terminal_id LIKE concat('%',#{query},'%') " +
|
||||||
"jd.province_id LIKE concat('%',#{query},'%') " +
|
"jd.province_id LIKE concat('%',#{query},'%') " +
|
||||||
"OR jd.city_id LIKE concat('%',#{query},'%') " +
|
"OR jd.city_id LIKE concat('%',#{query},'%') " +
|
||||||
"OR jd.maker_id LIKE concat('%',#{query},'%') " +
|
"OR jd.maker_id LIKE concat('%',#{query},'%') " +
|
||||||
"OR jd.device_model LIKE concat('%',#{query},'%') " +
|
"OR jd.model LIKE concat('%',#{query},'%') " +
|
||||||
"OR jd.terminal_id LIKE concat('%',#{query},'%') " +
|
"OR jd.phone_number LIKE concat('%',#{query},'%') " +
|
||||||
"OR jd.plate_no LIKE concat('%',#{query},'%')" +
|
"OR jd.plate_no LIKE concat('%',#{query},'%')" +
|
||||||
")</if> " +
|
")</if> " +
|
||||||
" <if test='online == true' > AND jd.status= true</if>" +
|
" <if test='online == true' > AND jd.status= true</if>" +
|
||||||
@ -52,36 +54,38 @@ public interface JTTerminalMapper {
|
|||||||
List<JTDevice> getDeviceList(@Param("query") String query, @Param("online") Boolean online);
|
List<JTDevice> getDeviceList(@Param("query") String query, @Param("online") Boolean online);
|
||||||
|
|
||||||
@Insert("INSERT INTO wvp_jt_terminal (" +
|
@Insert("INSERT INTO wvp_jt_terminal (" +
|
||||||
"phone_number,"+
|
"terminal_id,"+
|
||||||
"province_id,"+
|
"province_id,"+
|
||||||
"province_text,"+
|
"province_text,"+
|
||||||
"city_id,"+
|
"city_id,"+
|
||||||
"city_text,"+
|
"city_text,"+
|
||||||
"maker_id,"+
|
"maker_id,"+
|
||||||
"terminal_id,"+
|
"phone_number,"+
|
||||||
"device_model,"+
|
"model,"+
|
||||||
"plate_color,"+
|
"plate_color,"+
|
||||||
"plate_no,"+
|
"plate_no,"+
|
||||||
"authentication_code,"+
|
"authentication_code,"+
|
||||||
"longitude,"+
|
"longitude,"+
|
||||||
"latitude,"+
|
"latitude,"+
|
||||||
"create_time,"+
|
"create_time,"+
|
||||||
|
"register_time,"+
|
||||||
"update_time"+
|
"update_time"+
|
||||||
") VALUES (" +
|
") VALUES (" +
|
||||||
"#{phoneNumber}," +
|
"#{terminalId}," +
|
||||||
"#{provinceId}," +
|
"#{provinceId}," +
|
||||||
"#{provinceText}," +
|
"#{provinceText}," +
|
||||||
"#{cityId}," +
|
"#{cityId}," +
|
||||||
"#{cityText}," +
|
"#{cityText}," +
|
||||||
"#{makerId}," +
|
"#{makerId}," +
|
||||||
"#{terminalId}," +
|
"#{phoneNumber}," +
|
||||||
"#{deviceModel}," +
|
"#{model}," +
|
||||||
"#{plateColor}," +
|
"#{plateColor}," +
|
||||||
"#{plateNo}," +
|
"#{plateNo}," +
|
||||||
"#{authenticationCode}," +
|
"#{authenticationCode}," +
|
||||||
"#{longitude}," +
|
"#{longitude}," +
|
||||||
"#{latitude}," +
|
"#{latitude}," +
|
||||||
"#{createTime}," +
|
"#{createTime}," +
|
||||||
|
"#{registerTime}," +
|
||||||
"#{updateTime}" +
|
"#{updateTime}" +
|
||||||
")")
|
")")
|
||||||
void addDevice(JTDevice device);
|
void addDevice(JTDevice device);
|
||||||
|
|||||||
@ -20,7 +20,6 @@ public class Header {
|
|||||||
// 消息体流水号
|
// 消息体流水号
|
||||||
Integer sn;
|
Integer sn;
|
||||||
|
|
||||||
|
|
||||||
// 协议版本号
|
// 协议版本号
|
||||||
Short version = -1;
|
Short version = -1;
|
||||||
|
|
||||||
|
|||||||
@ -8,7 +8,7 @@ import com.genersoft.iot.vmp.jt1078.proc.response.Rs;
|
|||||||
* @email qingtaij@163.com
|
* @email qingtaij@163.com
|
||||||
*/
|
*/
|
||||||
public class Cmd {
|
public class Cmd {
|
||||||
String devId;
|
String phoneNumber;
|
||||||
Long packageNo;
|
Long packageNo;
|
||||||
String msgId;
|
String msgId;
|
||||||
String respId;
|
String respId;
|
||||||
@ -18,19 +18,19 @@ public class Cmd {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Cmd(Builder builder) {
|
public Cmd(Builder builder) {
|
||||||
this.devId = builder.devId;
|
this.phoneNumber = builder.phoneNumber;
|
||||||
this.packageNo = builder.packageNo;
|
this.packageNo = builder.packageNo;
|
||||||
this.msgId = builder.msgId;
|
this.msgId = builder.msgId;
|
||||||
this.respId = builder.respId;
|
this.respId = builder.respId;
|
||||||
this.rs = builder.rs;
|
this.rs = builder.rs;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getDevId() {
|
public String getPhoneNumber() {
|
||||||
return devId;
|
return phoneNumber;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDevId(String devId) {
|
public void setPhoneNumber(String phoneNumber) {
|
||||||
this.devId = devId;
|
this.phoneNumber = phoneNumber;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getPackageNo() {
|
public Long getPackageNo() {
|
||||||
@ -66,14 +66,14 @@ public class Cmd {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static class Builder {
|
public static class Builder {
|
||||||
String devId;
|
String phoneNumber;
|
||||||
Long packageNo;
|
Long packageNo;
|
||||||
String msgId;
|
String msgId;
|
||||||
String respId;
|
String respId;
|
||||||
Rs rs;
|
Rs rs;
|
||||||
|
|
||||||
public Builder setDevId(String devId) {
|
public Builder setPhoneNumber(String phoneNumber) {
|
||||||
this.devId = devId.replaceFirst("^0*", "");
|
this.phoneNumber = phoneNumber.replaceFirst("^0*", "");
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -106,7 +106,7 @@ public class Cmd {
|
|||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return "Cmd{" +
|
return "Cmd{" +
|
||||||
"devId='" + devId + '\'' +
|
"devId='" + phoneNumber + '\'' +
|
||||||
", packageNo=" + packageNo +
|
", packageNo=" + packageNo +
|
||||||
", msgId='" + msgId + '\'' +
|
", msgId='" + msgId + '\'' +
|
||||||
", respId='" + respId + '\'' +
|
", respId='" + respId + '\'' +
|
||||||
|
|||||||
@ -10,6 +10,7 @@ import com.genersoft.iot.vmp.jt1078.proc.response.Rs;
|
|||||||
import com.genersoft.iot.vmp.jt1078.service.Ijt1078Service;
|
import com.genersoft.iot.vmp.jt1078.service.Ijt1078Service;
|
||||||
import com.genersoft.iot.vmp.jt1078.session.Session;
|
import com.genersoft.iot.vmp.jt1078.session.Session;
|
||||||
import com.genersoft.iot.vmp.utils.CivilCodeUtil;
|
import com.genersoft.iot.vmp.utils.CivilCodeUtil;
|
||||||
|
import com.genersoft.iot.vmp.utils.DateUtil;
|
||||||
import io.netty.buffer.ByteBuf;
|
import io.netty.buffer.ByteBuf;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
@ -43,7 +44,7 @@ public class J0100 extends Re {
|
|||||||
device.setMakerId(buf.readCharSequence(11, Charset.forName("GBK"))
|
device.setMakerId(buf.readCharSequence(11, Charset.forName("GBK"))
|
||||||
.toString().trim());
|
.toString().trim());
|
||||||
|
|
||||||
device.setDeviceModel(buf.readCharSequence(30, Charset.forName("GBK"))
|
device.setModel(buf.readCharSequence(30, Charset.forName("GBK"))
|
||||||
.toString().trim());
|
.toString().trim());
|
||||||
|
|
||||||
device.setTerminalId(buf.readCharSequence(30, Charset.forName("GBK"))
|
device.setTerminalId(buf.readCharSequence(30, Charset.forName("GBK"))
|
||||||
@ -62,7 +63,7 @@ public class J0100 extends Re {
|
|||||||
|
|
||||||
byte[] bytes20 = new byte[20];
|
byte[] bytes20 = new byte[20];
|
||||||
buf.readBytes(bytes20);
|
buf.readBytes(bytes20);
|
||||||
device.setDeviceModel(new String(bytes20).trim());
|
device.setModel(new String(bytes20).trim());
|
||||||
|
|
||||||
byte[] bytes7 = new byte[7];
|
byte[] bytes7 = new byte[7];
|
||||||
buf.readBytes(bytes7);
|
buf.readBytes(bytes7);
|
||||||
@ -93,6 +94,7 @@ public class J0100 extends Re {
|
|||||||
deviceInDb.setAuthenticationCode(authenticationCode);
|
deviceInDb.setAuthenticationCode(authenticationCode);
|
||||||
deviceInDb.setStatus(true);
|
deviceInDb.setStatus(true);
|
||||||
deviceInDb.setProvinceId(device.getProvinceId());
|
deviceInDb.setProvinceId(device.getProvinceId());
|
||||||
|
deviceInDb.setRegisterTime(DateUtil.getNow());
|
||||||
CivilCodePo provinceCivilCodePo = CivilCodeUtil.INSTANCE.get(device.getProvinceId());
|
CivilCodePo provinceCivilCodePo = CivilCodeUtil.INSTANCE.get(device.getProvinceId());
|
||||||
if (provinceCivilCodePo != null) {
|
if (provinceCivilCodePo != null) {
|
||||||
deviceInDb.setProvinceText(provinceCivilCodePo.getName());
|
deviceInDb.setProvinceText(provinceCivilCodePo.getName());
|
||||||
@ -103,7 +105,7 @@ public class J0100 extends Re {
|
|||||||
if (cityCivilCodePo != null) {
|
if (cityCivilCodePo != null) {
|
||||||
deviceInDb.setCityText(cityCivilCodePo.getName());
|
deviceInDb.setCityText(cityCivilCodePo.getName());
|
||||||
}
|
}
|
||||||
deviceInDb.setDeviceModel(device.getDeviceModel());
|
deviceInDb.setModel(device.getModel());
|
||||||
deviceInDb.setMakerId(device.getMakerId());
|
deviceInDb.setMakerId(device.getMakerId());
|
||||||
deviceInDb.setTerminalId(device.getTerminalId());
|
deviceInDb.setTerminalId(device.getTerminalId());
|
||||||
// TODO 支持直接展示车牌颜色的描述
|
// TODO 支持直接展示车牌颜色的描述
|
||||||
|
|||||||
@ -118,7 +118,7 @@ public interface Ijt1078Service {
|
|||||||
|
|
||||||
void recordDownload(String phoneNumber, String channelId, String startTime, String endTime, Integer type, Integer rate, GeneralCallback<String> fileCallback);
|
void recordDownload(String phoneNumber, String channelId, String startTime, String endTime, Integer type, Integer rate, GeneralCallback<String> fileCallback);
|
||||||
|
|
||||||
List<JTChannel> getChannelList(int deviceId, String query);
|
PageInfo<JTChannel> getChannelList(int page, int count, int deviceId, String query);
|
||||||
|
|
||||||
void updateChannel(JTChannel channel);
|
void updateChannel(JTChannel channel);
|
||||||
|
|
||||||
|
|||||||
@ -113,6 +113,10 @@ public class jt1078ServiceImpl implements Ijt1078Service {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addDevice(JTDevice device) {
|
public void addDevice(JTDevice device) {
|
||||||
|
JTDevice deviceInDb = jtDeviceMapper.getDevice(device.getPhoneNumber());
|
||||||
|
if (deviceInDb != null) {
|
||||||
|
throw new ControllerException(ErrorCode.ERROR100.getCode(), "设备" + device.getPhoneNumber() + "已存在");
|
||||||
|
}
|
||||||
device.setCreateTime(DateUtil.getNow());
|
device.setCreateTime(DateUtil.getNow());
|
||||||
device.setUpdateTime(DateUtil.getNow());
|
device.setUpdateTime(DateUtil.getNow());
|
||||||
jtDeviceMapper.addDevice(device);
|
jtDeviceMapper.addDevice(device);
|
||||||
@ -1006,17 +1010,22 @@ public class jt1078ServiceImpl implements Ijt1078Service {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<JTChannel> getChannelList(int deviceId, String query) {
|
public PageInfo<JTChannel> getChannelList(int page, int count, int deviceId, String query) {
|
||||||
return jtChannelMapper.getAll(deviceId, query);
|
PageHelper.startPage(page, count);
|
||||||
|
List<JTChannel> all = jtChannelMapper.getAll(deviceId, query);
|
||||||
|
return new PageInfo<>(all);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateChannel(JTChannel channel) {
|
public void updateChannel(JTChannel channel) {
|
||||||
|
channel.setUpdateTime(DateUtil.getNow());
|
||||||
jtChannelMapper.update(channel);
|
jtChannelMapper.update(channel);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addChannel(JTChannel channel) {
|
public void addChannel(JTChannel channel) {
|
||||||
|
channel.setCreateTime(DateUtil.getNow());
|
||||||
|
channel.setUpdateTime(DateUtil.getNow());
|
||||||
jtChannelMapper.add(channel);
|
jtChannelMapper.add(channel);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -5,8 +5,6 @@ import io.netty.channel.Channel;
|
|||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
import java.util.concurrent.SynchronousQueue;
|
import java.util.concurrent.SynchronousQueue;
|
||||||
@ -75,16 +73,16 @@ public enum SessionManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object request(Cmd cmd, Integer timeOut) {
|
public Object request(Cmd cmd, Integer timeOut) {
|
||||||
Session session = this.get(cmd.getDevId());
|
Session session = this.get(cmd.getPhoneNumber());
|
||||||
if (session == null) {
|
if (session == null) {
|
||||||
log.error("DevId: {} not online!", cmd.getDevId());
|
log.error("DevId: {} not online!", cmd.getPhoneNumber());
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
String requestKey = requestKey(cmd.getDevId(), cmd.getRespId(), cmd.getPackageNo());
|
String requestKey = requestKey(cmd.getPhoneNumber(), cmd.getRespId(), cmd.getPackageNo());
|
||||||
System.out.println("requestKey==" + requestKey);
|
System.out.println("requestKey==" + requestKey);
|
||||||
SynchronousQueue<Object> subscribe = subscribe(requestKey);
|
SynchronousQueue<Object> subscribe = subscribe(requestKey);
|
||||||
if (subscribe == null) {
|
if (subscribe == null) {
|
||||||
log.error("DevId: {} key:{} send repaid", cmd.getDevId(), requestKey);
|
log.error("DevId: {} key:{} send repaid", cmd.getPhoneNumber(), requestKey);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
session.writeObject(cmd);
|
session.writeObject(cmd);
|
||||||
|
|||||||
544
web_src/src/components/JTChannelList.vue
Executable file
544
web_src/src/components/JTChannelList.vue
Executable file
@ -0,0 +1,544 @@
|
|||||||
|
<template>
|
||||||
|
<div id="channelList" style="width: 100%">
|
||||||
|
<div class="page-header">
|
||||||
|
<div class="page-title">
|
||||||
|
<el-button icon="el-icon-back" size="mini" style="font-size: 20px; color: #000;" type="text" @click="showDevice" ></el-button>
|
||||||
|
<el-divider direction="vertical"></el-divider>
|
||||||
|
通道列表
|
||||||
|
</div>
|
||||||
|
<div class="page-header-btn">
|
||||||
|
<div style="display: inline;">
|
||||||
|
搜索:
|
||||||
|
<el-input @input="search" style="margin-right: 1rem; width: auto;" size="mini" placeholder="关键字"
|
||||||
|
prefix-icon="el-icon-search" v-model="searchSrt" clearable></el-input>
|
||||||
|
<el-button icon="el-icon-plus" size="mini" style="margin-right: 1rem;" type="primary" @click="add">添加通道</el-button>
|
||||||
|
<el-button icon="el-icon-refresh-right" circle size="mini" @click="refresh()"></el-button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<devicePlayer ref="devicePlayer"></devicePlayer>
|
||||||
|
<el-container v-loading="isLoging" style="height: 82vh;">
|
||||||
|
<el-main style="padding: 5px;">
|
||||||
|
<el-table ref="channelListTable" :data="deviceChannelList" :height="winHeight" style="width: 100%"
|
||||||
|
header-row-class-name="table-header">
|
||||||
|
<el-table-column prop="channelId" label="通道编号" min-width="180">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="name" label="名称" min-width="180">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="快照" min-width="100">
|
||||||
|
<template v-slot:default="scope">
|
||||||
|
<el-image
|
||||||
|
:src="getSnap(scope.row)"
|
||||||
|
:preview-src-list="getBigSnap(scope.row)"
|
||||||
|
@error="getSnapErrorEvent(scope.row.deviceId, scope.row.channelId)"
|
||||||
|
:fit="'contain'"
|
||||||
|
style="width: 60px">
|
||||||
|
<div slot="error" class="image-slot">
|
||||||
|
<i class="el-icon-picture-outline"></i>
|
||||||
|
</div>
|
||||||
|
</el-image>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="开启音频" min-width="100">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-switch @change="updateChannel(scope.row)" v-model="scope.row.hasAudio" active-color="#409EFF">
|
||||||
|
</el-switch>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="操作" min-width="340" fixed="right">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-button size="medium" v-bind:disabled="device == null || device.online === 0" icon="el-icon-video-play"
|
||||||
|
type="text" @click="sendDevicePush(scope.row)">播放
|
||||||
|
</el-button>
|
||||||
|
<el-button size="medium" v-bind:disabled="device == null || device.online === 0"
|
||||||
|
icon="el-icon-switch-button"
|
||||||
|
type="text" style="color: #f56c6c" v-if="!!scope.row.streamId"
|
||||||
|
@click="stopDevicePush(scope.row)">停止
|
||||||
|
</el-button>
|
||||||
|
<el-divider direction="vertical"></el-divider>
|
||||||
|
<el-button
|
||||||
|
v-if="scope.row.edit"
|
||||||
|
size="medium"
|
||||||
|
type="text"
|
||||||
|
icon="el-icon-edit-outline"
|
||||||
|
@click="handleSave(scope.row)"
|
||||||
|
>
|
||||||
|
保存
|
||||||
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
v-else
|
||||||
|
size="medium"
|
||||||
|
type="text"
|
||||||
|
icon="el-icon-edit"
|
||||||
|
@click="handleEdit(scope.row)"
|
||||||
|
>
|
||||||
|
编辑
|
||||||
|
</el-button>
|
||||||
|
<el-divider direction="vertical"></el-divider>
|
||||||
|
<el-button size="medium" icon="el-icon-s-open" type="text"
|
||||||
|
v-if="scope.row.subCount > 0 || scope.row.parental === 1"
|
||||||
|
@click="changeSubchannel(scope.row)">查看
|
||||||
|
</el-button>
|
||||||
|
<el-divider v-if="scope.row.subCount > 0 || scope.row.parental === 1" direction="vertical"></el-divider>
|
||||||
|
<!-- <el-button size="medium" v-bind:disabled="device == null || device.online === 0"-->
|
||||||
|
<!-- icon="el-icon-video-camera"-->
|
||||||
|
<!-- type="text" @click="queryRecords(scope.row)">设备录像-->
|
||||||
|
<!-- </el-button>-->
|
||||||
|
<!-- <el-button size="medium" v-bind:disabled="device == null || device.online === 0" icon="el-icon-cloudy"-->
|
||||||
|
<!-- type="text" @click="queryCloudRecords(scope.row)">云端录像-->
|
||||||
|
<!-- </el-button>-->
|
||||||
|
<el-dropdown @command="(command)=>{moreClick(command, scope.row)}">
|
||||||
|
<el-button size="medium" type="text" >
|
||||||
|
更多功能<i class="el-icon-arrow-down el-icon--right"></i>
|
||||||
|
</el-button>
|
||||||
|
<el-dropdown-menu slot="dropdown">
|
||||||
|
<el-dropdown-item command="records" v-bind:disabled="device == null || device.online === 0">
|
||||||
|
设备录像</el-dropdown-item>
|
||||||
|
<el-dropdown-item command="cloudRecords" v-bind:disabled="device == null || device.online === 0" >
|
||||||
|
云端录像</el-dropdown-item>
|
||||||
|
</el-dropdown-menu>
|
||||||
|
</el-dropdown>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<el-pagination
|
||||||
|
style="float: right"
|
||||||
|
@size-change="handleSizeChange"
|
||||||
|
@current-change="currentChange"
|
||||||
|
:current-page="currentPage"
|
||||||
|
:page-size="count"
|
||||||
|
:page-sizes="[15, 25, 35, 50]"
|
||||||
|
layout="total, sizes, prev, pager, next"
|
||||||
|
:total="total">
|
||||||
|
</el-pagination>
|
||||||
|
</el-main>
|
||||||
|
</el-container>
|
||||||
|
<channelEdit ref="channelEdit"></channelEdit>
|
||||||
|
<!--设备列表-->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import devicePlayer from './dialog/devicePlayer.vue'
|
||||||
|
import uiHeader from '../layout/UiHeader.vue'
|
||||||
|
import DeviceService from "./service/DeviceService";
|
||||||
|
import DeviceTree from "./common/DeviceTree";
|
||||||
|
import channelEdit from "./dialog/jtChannelEdit.vue";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'channelList',
|
||||||
|
components: {
|
||||||
|
channelEdit,
|
||||||
|
devicePlayer,
|
||||||
|
uiHeader,
|
||||||
|
DeviceTree
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
deviceService: new DeviceService(),
|
||||||
|
device: null,
|
||||||
|
deviceId: this.$route.params.deviceId,
|
||||||
|
parentChannelId: this.$route.params.parentChannelId,
|
||||||
|
deviceChannelList: [],
|
||||||
|
videoComponentList: [],
|
||||||
|
currentPlayerInfo: {}, //当前播放对象
|
||||||
|
updateLooper: 0, //数据刷新轮训标志
|
||||||
|
searchSrt: "",
|
||||||
|
channelType: "",
|
||||||
|
online: "",
|
||||||
|
subStream: "",
|
||||||
|
winHeight: window.innerHeight - 200,
|
||||||
|
currentPage: 1,
|
||||||
|
count: 15,
|
||||||
|
total: 0,
|
||||||
|
beforeUrl: "/jtDeviceList",
|
||||||
|
isLoging: false,
|
||||||
|
loadSnap: {},
|
||||||
|
ptzTypes: {
|
||||||
|
0: "未知",
|
||||||
|
1: "球机",
|
||||||
|
2: "半球",
|
||||||
|
3: "固定枪机",
|
||||||
|
4: "遥控枪机"
|
||||||
|
}
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
|
mounted() {
|
||||||
|
if (this.deviceId) {
|
||||||
|
this.deviceService.getDevice(this.deviceId, (result) => {
|
||||||
|
this.device = result;
|
||||||
|
|
||||||
|
}, (error) => {
|
||||||
|
console.log("获取设备信息失败")
|
||||||
|
console.error(error)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
this.initData();
|
||||||
|
|
||||||
|
},
|
||||||
|
destroyed() {
|
||||||
|
this.$destroy('videojs');
|
||||||
|
clearTimeout(this.updateLooper);
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
initData: function () {
|
||||||
|
this.getDeviceChannelList();
|
||||||
|
},
|
||||||
|
initParam: function () {
|
||||||
|
this.deviceId = this.$route.params.deviceId;
|
||||||
|
this.parentChannelId = this.$route.params.parentChannelId;
|
||||||
|
this.currentPage = 1;
|
||||||
|
this.count = 15;
|
||||||
|
if (this.parentChannelId == "" || this.parentChannelId == 0) {
|
||||||
|
this.beforeUrl = "/deviceList"
|
||||||
|
}
|
||||||
|
|
||||||
|
},
|
||||||
|
currentChange: function (val) {
|
||||||
|
this.currentPage = val;
|
||||||
|
this.initData();
|
||||||
|
},
|
||||||
|
handleSizeChange: function (val) {
|
||||||
|
this.count = val;
|
||||||
|
this.getDeviceChannelList();
|
||||||
|
},
|
||||||
|
getDeviceChannelList: function () {
|
||||||
|
let that = this;
|
||||||
|
if (typeof (this.$route.params.deviceId) == "undefined") return;
|
||||||
|
this.$axios({
|
||||||
|
method: 'get',
|
||||||
|
url: `/api/jt1078/terminal/channel/list`,
|
||||||
|
params: {
|
||||||
|
page: that.currentPage,
|
||||||
|
count: that.count,
|
||||||
|
query: that.searchSrt,
|
||||||
|
deviceId: this.$route.params.deviceId,
|
||||||
|
}
|
||||||
|
}).then(function (res) {
|
||||||
|
if (res.data.code === 0) {
|
||||||
|
that.total = res.data.data.total;
|
||||||
|
that.deviceChannelList = res.data.data.list;
|
||||||
|
// 防止出现表格错位
|
||||||
|
that.$nextTick(() => {
|
||||||
|
that.$refs.channelListTable.doLayout();
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
}).catch(function (error) {
|
||||||
|
console.log(error);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
//通知设备上传媒体流
|
||||||
|
sendDevicePush: function (itemData) {
|
||||||
|
let deviceId = this.deviceId;
|
||||||
|
this.isLoging = true;
|
||||||
|
let channelId = itemData.channelId;
|
||||||
|
console.log("通知设备推流1:" + deviceId + " : " + channelId);
|
||||||
|
let that = this;
|
||||||
|
this.$axios({
|
||||||
|
method: 'get',
|
||||||
|
url: '/api/play/start/' + deviceId + '/' + channelId,
|
||||||
|
params: {
|
||||||
|
isSubStream: this.isSubStream
|
||||||
|
}
|
||||||
|
}).then(function (res) {
|
||||||
|
console.log(res)
|
||||||
|
that.isLoging = false;
|
||||||
|
if (res.data.code === 0) {
|
||||||
|
|
||||||
|
setTimeout(() => {
|
||||||
|
|
||||||
|
let snapId = deviceId + "_" + channelId;
|
||||||
|
that.loadSnap[deviceId + channelId] = 0;
|
||||||
|
that.getSnapErrorEvent(snapId)
|
||||||
|
}, 5000)
|
||||||
|
itemData.streamId = res.data.data.stream;
|
||||||
|
that.$refs.devicePlayer.openDialog("media", deviceId, channelId, {
|
||||||
|
streamInfo: res.data.data,
|
||||||
|
hasAudio: itemData.hasAudio
|
||||||
|
});
|
||||||
|
setTimeout(() => {
|
||||||
|
that.initData();
|
||||||
|
}, 1000)
|
||||||
|
|
||||||
|
} else {
|
||||||
|
that.$message.error(res.data.msg);
|
||||||
|
}
|
||||||
|
}).catch(function (e) {
|
||||||
|
console.error(e)
|
||||||
|
that.isLoging = false;
|
||||||
|
// that.$message.error("请求超时");
|
||||||
|
});
|
||||||
|
},
|
||||||
|
moreClick: function (command, itemData) {
|
||||||
|
if (command === "records") {
|
||||||
|
this.queryRecords(itemData)
|
||||||
|
}else if (command === "cloudRecords") {
|
||||||
|
this.queryCloudRecords(itemData)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
queryRecords: function (itemData) {
|
||||||
|
let deviceId = this.deviceId;
|
||||||
|
let channelId = itemData.channelId;
|
||||||
|
|
||||||
|
this.$router.push(`/gbRecordDetail/${deviceId}/${channelId}`)
|
||||||
|
},
|
||||||
|
queryCloudRecords: function (itemData) {
|
||||||
|
let deviceId = this.deviceId;
|
||||||
|
let channelId = itemData.channelId;
|
||||||
|
|
||||||
|
this.$router.push(`/cloudRecordDetail/rtp/${deviceId}_${channelId}`)
|
||||||
|
},
|
||||||
|
stopDevicePush: function (itemData) {
|
||||||
|
var that = this;
|
||||||
|
this.$axios({
|
||||||
|
method: 'get',
|
||||||
|
url: '/api/play/stop/' + this.deviceId + "/" + itemData.channelId,
|
||||||
|
params: {
|
||||||
|
isSubStream: this.isSubStream
|
||||||
|
}
|
||||||
|
}).then(function (res) {
|
||||||
|
that.initData();
|
||||||
|
}).catch(function (error) {
|
||||||
|
if (error.response.status === 402) { // 已经停止过
|
||||||
|
that.initData();
|
||||||
|
} else {
|
||||||
|
console.log(error)
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
getSnap: function (row) {
|
||||||
|
let baseUrl = window.baseUrl ? window.baseUrl : "";
|
||||||
|
return ((process.env.NODE_ENV === 'development') ? process.env.BASE_API : baseUrl) + '/api/device/query/snap/' + row.deviceId + '/' + row.channelId;
|
||||||
|
},
|
||||||
|
getBigSnap: function (row) {
|
||||||
|
return [this.getSnap(row)]
|
||||||
|
},
|
||||||
|
getSnapErrorEvent: function (deviceId, channelId) {
|
||||||
|
|
||||||
|
if (typeof (this.loadSnap[deviceId + channelId]) != "undefined") {
|
||||||
|
console.log("下载截图" + this.loadSnap[deviceId + channelId])
|
||||||
|
if (this.loadSnap[deviceId + channelId] > 5) {
|
||||||
|
delete this.loadSnap[deviceId + channelId];
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
setTimeout(() => {
|
||||||
|
let url = (process.env.NODE_ENV === 'development' ? "debug" : "") + '/api/device/query/snap/' + deviceId + '/' + channelId
|
||||||
|
this.loadSnap[deviceId + channelId]++
|
||||||
|
document.getElementById(deviceId + channelId).setAttribute("src", url + '?' + new Date().getTime())
|
||||||
|
}, 1000)
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
showDevice: function () {
|
||||||
|
this.$router.push(this.beforeUrl).then(() => {
|
||||||
|
this.initParam();
|
||||||
|
this.initData();
|
||||||
|
})
|
||||||
|
},
|
||||||
|
changeSubchannel(itemData) {
|
||||||
|
this.beforeUrl = this.$router.currentRoute.path;
|
||||||
|
|
||||||
|
var url = `/${this.$router.currentRoute.name}/${this.$router.currentRoute.params.deviceId}/${itemData.channelId}`
|
||||||
|
this.$router.push(url).then(() => {
|
||||||
|
this.searchSrt = "";
|
||||||
|
this.channelType = "";
|
||||||
|
this.online = "";
|
||||||
|
this.initParam();
|
||||||
|
this.initData();
|
||||||
|
})
|
||||||
|
},
|
||||||
|
search: function () {
|
||||||
|
this.currentPage = 1;
|
||||||
|
this.total = 0;
|
||||||
|
this.initData();
|
||||||
|
},
|
||||||
|
updateChannel: function (row) {
|
||||||
|
this.$axios({
|
||||||
|
method: 'post',
|
||||||
|
url: `/api/device/query/channel/update/${this.deviceId}`,
|
||||||
|
params: row
|
||||||
|
}).then(function (res) {
|
||||||
|
console.log(JSON.stringify(res));
|
||||||
|
});
|
||||||
|
},
|
||||||
|
subStreamChange: function () {
|
||||||
|
this.$confirm('确定重置所有通道的码流类型?', '提示', {
|
||||||
|
confirmButtonText: '确定',
|
||||||
|
cancelButtonText: '取消',
|
||||||
|
type: 'warning'
|
||||||
|
}).then(() => {
|
||||||
|
this.$axios({
|
||||||
|
method: 'post',
|
||||||
|
url: `/api/device/query/channel/stream/identification/update/`,
|
||||||
|
params: {
|
||||||
|
deviceId: this.deviceId,
|
||||||
|
streamIdentification: this.subStream
|
||||||
|
}
|
||||||
|
}).then((res)=> {
|
||||||
|
console.log(JSON.stringify(res));
|
||||||
|
this.initData()
|
||||||
|
}).finally(()=>{
|
||||||
|
this.subStream = ""
|
||||||
|
})
|
||||||
|
}).catch(() => {
|
||||||
|
this.subStream = ""
|
||||||
|
});
|
||||||
|
|
||||||
|
},
|
||||||
|
channelSubStreamChange: function (row) {
|
||||||
|
this.$axios({
|
||||||
|
method: 'post',
|
||||||
|
url: `/api/device/query/channel/stream/identification/update/`,
|
||||||
|
params: {
|
||||||
|
deviceId: this.deviceId,
|
||||||
|
channelId: row.channelId,
|
||||||
|
streamIdentification: row.streamIdentification
|
||||||
|
}
|
||||||
|
}).then(function (res) {
|
||||||
|
console.log(JSON.stringify(res));
|
||||||
|
});
|
||||||
|
},
|
||||||
|
refresh: function () {
|
||||||
|
this.initData();
|
||||||
|
},
|
||||||
|
add: function () {
|
||||||
|
this.$refs.channelEdit.openDialog(null, this.deviceId, () => {
|
||||||
|
this.$refs.channelEdit.close();
|
||||||
|
this.$message({
|
||||||
|
showClose: true,
|
||||||
|
message: "添加成功",
|
||||||
|
type: "success",
|
||||||
|
});
|
||||||
|
setTimeout(this.getList, 200)
|
||||||
|
|
||||||
|
})
|
||||||
|
},
|
||||||
|
treeNodeClickEvent: function (device, data, isCatalog) {
|
||||||
|
console.log(device)
|
||||||
|
if (!!!data.channelId) {
|
||||||
|
this.parentChannelId = device.deviceId;
|
||||||
|
} else {
|
||||||
|
this.parentChannelId = data.channelId;
|
||||||
|
}
|
||||||
|
this.initData();
|
||||||
|
},
|
||||||
|
// 保存
|
||||||
|
handleSave(row) {
|
||||||
|
if (row.location) {
|
||||||
|
const segements = row.location.split(",");
|
||||||
|
if (segements.length !== 2) {
|
||||||
|
this.$message.warning("位置信息格式有误,例:117.234,36.378");
|
||||||
|
return;
|
||||||
|
} else {
|
||||||
|
row.customLongitude = parseFloat(segements[0]);
|
||||||
|
row.custom_latitude = parseFloat(segements[1]);
|
||||||
|
if (!(row.longitude && row.latitude)) {
|
||||||
|
this.$message.warning("位置信息格式有误,例:117.234,36.378");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
delete row.longitude;
|
||||||
|
delete row.latitude;
|
||||||
|
}
|
||||||
|
Object.keys(row).forEach(key => {
|
||||||
|
const value = row[key];
|
||||||
|
if (value === null || value === undefined || (typeof value === "string" && value.trim() === "")) {
|
||||||
|
delete row[key];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
this.$axios({
|
||||||
|
method: 'post',
|
||||||
|
url: `/api/device/query/channel/update/${this.deviceId}`,
|
||||||
|
params: row
|
||||||
|
}).then(response => {
|
||||||
|
if (response.data.code === 0) {
|
||||||
|
this.$message.success("修改成功!");
|
||||||
|
this.initData();
|
||||||
|
} else {
|
||||||
|
this.$message.error("修改失败!");
|
||||||
|
}
|
||||||
|
}).catch(_ => {
|
||||||
|
this.$message.error("修改失败!");
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 是否正在编辑
|
||||||
|
isEdit() {
|
||||||
|
let editing = false;
|
||||||
|
this.deviceChannelList.forEach(e => {
|
||||||
|
if (e.edit) {
|
||||||
|
editing = true;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
return editing;
|
||||||
|
},
|
||||||
|
// 编辑
|
||||||
|
handleEdit(row) {
|
||||||
|
if (this.isEdit()) {
|
||||||
|
this.$message.warning('请保存当前编辑项!');
|
||||||
|
} else {
|
||||||
|
row.edit = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
.videoList {
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
align-content: flex-start;
|
||||||
|
}
|
||||||
|
|
||||||
|
.video-item {
|
||||||
|
position: relative;
|
||||||
|
width: 15rem;
|
||||||
|
height: 10rem;
|
||||||
|
margin-right: 1rem;
|
||||||
|
background-color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.video-item-img {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
bottom: 0;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
margin: auto;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.video-item-img:after {
|
||||||
|
content: "";
|
||||||
|
display: inline-block;
|
||||||
|
position: absolute;
|
||||||
|
z-index: 2;
|
||||||
|
top: 0;
|
||||||
|
bottom: 0;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
margin: auto;
|
||||||
|
width: 3rem;
|
||||||
|
height: 3rem;
|
||||||
|
background-image: url("../assets/loading.png");
|
||||||
|
background-size: cover;
|
||||||
|
background-color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.video-item-title {
|
||||||
|
position: absolute;
|
||||||
|
bottom: 0;
|
||||||
|
color: #000000;
|
||||||
|
background-color: #ffffff;
|
||||||
|
line-height: 1.5rem;
|
||||||
|
padding: 0.3rem;
|
||||||
|
width: 14.4rem;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@ -3,25 +3,25 @@
|
|||||||
<div class="page-header">
|
<div class="page-header">
|
||||||
<div class="page-title">设备列表</div>
|
<div class="page-title">设备列表</div>
|
||||||
<div class="page-header-btn">
|
<div class="page-header-btn">
|
||||||
<el-button icon="el-icon-plus" size="mini" style="margin-right: 1rem;" type="primary" @click="add">添加设备
|
<el-button icon="el-icon-plus" size="mini" style="margin-right: 1rem;" type="primary" @click="add">接入新设备
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button icon="el-icon-refresh-right" circle size="mini" :loading="getDeviceListLoading"
|
<el-button icon="el-icon-refresh-right" circle size="mini" :loading="getListLoading"
|
||||||
@click="getDeviceList()"></el-button>
|
@click="getList()"></el-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!--设备列表-->
|
<!--设备列表-->
|
||||||
<el-table :data="deviceList" style="width: 100%;font-size: 12px;" :height="winHeight" header-row-class-name="table-header">
|
<el-table :data="deviceList" style="width: 100%;font-size: 12px;" :height="winHeight" header-row-class-name="table-header">
|
||||||
|
<el-table-column prop="phoneNumber" label="终端手机号" min-width="160">
|
||||||
|
</el-table-column>
|
||||||
<el-table-column prop="terminalId" label="终端ID" min-width="160" >
|
<el-table-column prop="terminalId" label="终端ID" min-width="160" >
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="provinceText" label="省域" min-width="160">
|
<el-table-column prop="provinceText" label="省域" min-width="160">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="cityText" label="市县域" min-width="160" >
|
<el-table-column prop="cityText" label="市县域" min-width="160" >
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="makerId" label="制造商ID" min-width="160" >
|
<el-table-column prop="makerId" label="制造商" min-width="160" >
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="deviceModel" label="终端型号" min-width="160" >
|
<el-table-column prop="model" label="型号" min-width="160" >
|
||||||
</el-table-column>
|
|
||||||
<el-table-column prop="deviceId" label="设备ID" min-width="160" >
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="车牌颜色" min-width="160" >
|
<el-table-column label="车牌颜色" min-width="160" >
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
@ -41,6 +41,8 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="plateNo" label="车牌" min-width="160" >
|
<el-table-column prop="plateNo" label="车牌" min-width="160" >
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
<el-table-column prop="registerTime" label="注册时间" min-width="160" >
|
||||||
|
</el-table-column>
|
||||||
<el-table-column label="状态" min-width="160">
|
<el-table-column label="状态" min-width="160">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<div slot="reference" class="name-wrapper">
|
<div slot="reference" class="name-wrapper">
|
||||||
@ -51,6 +53,10 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作" min-width="450" fixed="right">
|
<el-table-column label="操作" min-width="450" fixed="right">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
|
<el-divider direction="vertical"></el-divider>
|
||||||
|
<el-button type="text" size="medium" icon="el-icon-video-camera"
|
||||||
|
@click="showChannelList(scope.row)">通道
|
||||||
|
</el-button>
|
||||||
<el-divider direction="vertical"></el-divider>
|
<el-divider direction="vertical"></el-divider>
|
||||||
<el-button size="medium" icon="el-icon-edit" type="text" @click="edit(scope.row)">编辑</el-button>
|
<el-button size="medium" icon="el-icon-edit" type="text" @click="edit(scope.row)">编辑</el-button>
|
||||||
<el-divider direction="vertical"></el-divider>
|
<el-divider direction="vertical"></el-divider>
|
||||||
@ -97,7 +103,7 @@ export default {
|
|||||||
currentPage: 1,
|
currentPage: 1,
|
||||||
count: 15,
|
count: 15,
|
||||||
total: 0,
|
total: 0,
|
||||||
getDeviceListLoading: false,
|
getListLoading: false,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -123,21 +129,21 @@ export default {
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
initData: function () {
|
initData: function () {
|
||||||
this.getDeviceList();
|
this.getList();
|
||||||
},
|
},
|
||||||
currentChange: function (val) {
|
currentChange: function (val) {
|
||||||
this.currentPage = val;
|
this.currentPage = val;
|
||||||
this.getDeviceList();
|
this.getList();
|
||||||
},
|
},
|
||||||
handleSizeChange: function (val) {
|
handleSizeChange: function (val) {
|
||||||
this.count = val;
|
this.count = val;
|
||||||
this.getDeviceList();
|
this.getList();
|
||||||
},
|
},
|
||||||
getDeviceList: function () {
|
getList: function () {
|
||||||
this.getDeviceListLoading = true;
|
this.getListLoading = true;
|
||||||
this.$axios({
|
this.$axios({
|
||||||
method: 'get',
|
method: 'get',
|
||||||
url: `/api/jt1078/device/list`,
|
url: `/api/jt1078/terminal/list`,
|
||||||
params: {
|
params: {
|
||||||
page: this.currentPage,
|
page: this.currentPage,
|
||||||
count: this.count
|
count: this.count
|
||||||
@ -147,10 +153,10 @@ export default {
|
|||||||
this.total = res.data.data.total;
|
this.total = res.data.data.total;
|
||||||
this.deviceList = res.data.data.list;
|
this.deviceList = res.data.data.list;
|
||||||
}
|
}
|
||||||
this.getDeviceListLoading = false;
|
this.getListLoading = false;
|
||||||
}).catch( (error)=> {
|
}).catch( (error)=> {
|
||||||
console.error(error);
|
console.error(error);
|
||||||
this.getDeviceListLoading = false;
|
this.getListLoading = false;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
deleteDevice: function (row) {
|
deleteDevice: function (row) {
|
||||||
@ -163,12 +169,12 @@ export default {
|
|||||||
}).then(() => {
|
}).then(() => {
|
||||||
this.$axios({
|
this.$axios({
|
||||||
method: 'delete',
|
method: 'delete',
|
||||||
url: '/api/jt1078/device/delete',
|
url: '/api/jt1078/terminal/delete',
|
||||||
params: {
|
params: {
|
||||||
deviceId: row.deviceId
|
deviceId: row.deviceId
|
||||||
}
|
}
|
||||||
}).then((res) => {
|
}).then((res) => {
|
||||||
this.getDeviceList();
|
this.getList();
|
||||||
}).catch((error) => {
|
}).catch((error) => {
|
||||||
console.error(error);
|
console.error(error);
|
||||||
});
|
});
|
||||||
@ -184,10 +190,13 @@ export default {
|
|||||||
message: "设备修改成功,通道字符集将在下次更新生效",
|
message: "设备修改成功,通道字符集将在下次更新生效",
|
||||||
type: "success",
|
type: "success",
|
||||||
});
|
});
|
||||||
setTimeout(this.getDeviceList, 200)
|
setTimeout(this.getList, 200)
|
||||||
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
showChannelList: function (row) {
|
||||||
|
this.$router.push(`/jtChannelList/${row.id}`);
|
||||||
|
},
|
||||||
add: function () {
|
add: function () {
|
||||||
this.$refs.deviceEdit.openDialog(null, () => {
|
this.$refs.deviceEdit.openDialog(null, () => {
|
||||||
this.$refs.deviceEdit.close();
|
this.$refs.deviceEdit.close();
|
||||||
@ -196,7 +205,7 @@ export default {
|
|||||||
message: "添加成功",
|
message: "添加成功",
|
||||||
type: "success",
|
type: "success",
|
||||||
});
|
});
|
||||||
setTimeout(this.getDeviceList, 200)
|
setTimeout(this.getList, 200)
|
||||||
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|||||||
97
web_src/src/components/dialog/jtChannelEdit.vue
Executable file
97
web_src/src/components/dialog/jtChannelEdit.vue
Executable file
@ -0,0 +1,97 @@
|
|||||||
|
<template>
|
||||||
|
<div id="deviceEdit" v-loading="isLoging">
|
||||||
|
<el-dialog
|
||||||
|
title="通道编辑"
|
||||||
|
width="40%"
|
||||||
|
top="2rem"
|
||||||
|
:close-on-click-modal="false"
|
||||||
|
:visible.sync="showDialog"
|
||||||
|
:destroy-on-close="true"
|
||||||
|
@close="close()"
|
||||||
|
>
|
||||||
|
<div id="shared" style="margin-top: 1rem;margin-right: 100px;">
|
||||||
|
<el-form ref="form" :rules="rules" :model="form" label-width="100px" >
|
||||||
|
<el-form-item label="编号" prop="channelId">
|
||||||
|
<el-input v-model="form.channelId" clearable></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="名称" prop="name">
|
||||||
|
<el-input v-model="form.name" clearable></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item>
|
||||||
|
<div style="float: right;">
|
||||||
|
<el-button type="primary" @click="onSubmit" >确认</el-button>
|
||||||
|
<el-button @click="close">取消</el-button>
|
||||||
|
</div>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: "deviceEdit",
|
||||||
|
props: {},
|
||||||
|
computed: {},
|
||||||
|
created() {},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
listChangeCallback: null,
|
||||||
|
showDialog: false,
|
||||||
|
isLoging: false,
|
||||||
|
form: {},
|
||||||
|
deviceId: "",
|
||||||
|
isEdit: false,
|
||||||
|
rules: {
|
||||||
|
deviceId: [{ required: true, message: "请输入设备编号", trigger: "blur" }]
|
||||||
|
},
|
||||||
|
};
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
openDialog: function (row, deviceId, callback) {
|
||||||
|
console.log(row)
|
||||||
|
this.showDialog = true;
|
||||||
|
this.isEdit = false;
|
||||||
|
if (row) {
|
||||||
|
this.isEdit = true;
|
||||||
|
}
|
||||||
|
this.form = {};
|
||||||
|
this.deviceId = deviceId;
|
||||||
|
this.listChangeCallback = callback;
|
||||||
|
if (row != null) {
|
||||||
|
this.form = row;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onSubmit: function () {
|
||||||
|
console.log("onSubmit");
|
||||||
|
this.$axios({
|
||||||
|
method: 'post',
|
||||||
|
url:`/api/jt1078/terminal/channel/${this.isEdit?'update':'add'}/`,
|
||||||
|
params: {
|
||||||
|
terminalId: this.deviceId,
|
||||||
|
name: this.form.name,
|
||||||
|
channelId: this.form.channelId,
|
||||||
|
}
|
||||||
|
}).then((res) => {
|
||||||
|
console.log(res.data)
|
||||||
|
if (res.data.code === 0) {
|
||||||
|
this.listChangeCallback()
|
||||||
|
}else {
|
||||||
|
this.$message({
|
||||||
|
showClose: true,
|
||||||
|
message: res.data.msg,
|
||||||
|
type: "error",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}).catch(function (error) {
|
||||||
|
console.log(error);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
close: function () {
|
||||||
|
this.showDialog = false;
|
||||||
|
this.$refs.form.resetFields();
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
@ -11,8 +11,8 @@
|
|||||||
>
|
>
|
||||||
<div id="shared" style="margin-top: 1rem;margin-right: 100px;">
|
<div id="shared" style="margin-top: 1rem;margin-right: 100px;">
|
||||||
<el-form ref="form" :rules="rules" :model="form" label-width="200px" >
|
<el-form ref="form" :rules="rules" :model="form" label-width="200px" >
|
||||||
<el-form-item label="终端ID" prop="terminalId">
|
<el-form-item label="终端手机号" prop="phoneNumber">
|
||||||
<el-input v-model="form.terminalId" clearable></el-input>
|
<el-input v-model="form.phoneNumber" clearable></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<div style="float: right;">
|
<div style="float: right;">
|
||||||
@ -62,7 +62,7 @@ export default {
|
|||||||
console.log("onSubmit");
|
console.log("onSubmit");
|
||||||
this.$axios({
|
this.$axios({
|
||||||
method: 'post',
|
method: 'post',
|
||||||
url:`/api/jt1078/device/${this.isEdit?'update':'add'}/`,
|
url:`/api/jt1078/terminal/${this.isEdit?'update':'add'}/`,
|
||||||
params: this.form
|
params: this.form
|
||||||
}).then((res) => {
|
}).then((res) => {
|
||||||
console.log(res.data)
|
console.log(res.data)
|
||||||
|
|||||||
@ -5,6 +5,7 @@ import Layout from "../layout/index.vue"
|
|||||||
import console from '../components/console.vue'
|
import console from '../components/console.vue'
|
||||||
import deviceList from '../components/DeviceList.vue'
|
import deviceList from '../components/DeviceList.vue'
|
||||||
import jtDeviceList from '../components/JTDeviceList.vue'
|
import jtDeviceList from '../components/JTDeviceList.vue'
|
||||||
|
import jtChannelList from '../components/JTChannelList.vue'
|
||||||
import channelList from '../components/channelList.vue'
|
import channelList from '../components/channelList.vue'
|
||||||
import gbRecordDetail from '../components/GBRecordDetail.vue'
|
import gbRecordDetail from '../components/GBRecordDetail.vue'
|
||||||
import pushVideoList from '../components/PushVideoList.vue'
|
import pushVideoList from '../components/PushVideoList.vue'
|
||||||
@ -58,6 +59,10 @@ export default new VueRouter({
|
|||||||
path: '/jtDeviceList',
|
path: '/jtDeviceList',
|
||||||
component: jtDeviceList,
|
component: jtDeviceList,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: '/jtChannelList/:deviceId',
|
||||||
|
component: jtChannelList,
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: '/pushVideoList',
|
path: '/pushVideoList',
|
||||||
component: pushVideoList,
|
component: pushVideoList,
|
||||||
|
|||||||
@ -317,21 +317,21 @@ create table wvp_resources_tree (
|
|||||||
|
|
||||||
create table wvp_jt_terminal (
|
create table wvp_jt_terminal (
|
||||||
id serial primary key,
|
id serial primary key,
|
||||||
device_id character varying(50),
|
|
||||||
phone_number character varying(50),
|
phone_number character varying(50),
|
||||||
|
terminal_id character varying(50),
|
||||||
province_id character varying(50),
|
province_id character varying(50),
|
||||||
province_text character varying(100),
|
province_text character varying(100),
|
||||||
city_id character varying(50),
|
city_id character varying(50),
|
||||||
city_text character varying(100),
|
city_text character varying(100),
|
||||||
maker_id character varying(50),
|
maker_id character varying(50),
|
||||||
device_model character varying(50),
|
model character varying(50),
|
||||||
plate_color character varying(50),
|
plate_color character varying(50),
|
||||||
plate_no character varying(50),
|
plate_no character varying(50),
|
||||||
authentication_code character varying(255),
|
authentication_code character varying(255),
|
||||||
longitude double precision,
|
longitude double precision,
|
||||||
latitude double precision,
|
latitude double precision,
|
||||||
status bool default false,
|
status bool default false,
|
||||||
register_time character varying(50) not null,
|
register_time character varying(50) default null,
|
||||||
update_time character varying(50) not null,
|
update_time character varying(50) not null,
|
||||||
create_time character varying(50) not null,
|
create_time character varying(50) not null,
|
||||||
constraint uk_jt_device_id_device_id unique (id, phone_number)
|
constraint uk_jt_device_id_device_id unique (id, phone_number)
|
||||||
@ -339,7 +339,7 @@ create table wvp_jt_terminal (
|
|||||||
create table wvp_jt_channel (
|
create table wvp_jt_channel (
|
||||||
id serial primary key,
|
id serial primary key,
|
||||||
channel_id integer,
|
channel_id integer,
|
||||||
device_id integer,
|
terminal_id integer,
|
||||||
name character varying(255),
|
name character varying(255),
|
||||||
update_time character varying(50) not null,
|
update_time character varying(50) not null,
|
||||||
create_time character varying(50) not null,
|
create_time character varying(50) not null,
|
||||||
|
|||||||
@ -317,21 +317,21 @@ create table wvp_resources_tree (
|
|||||||
|
|
||||||
create table wvp_jt_terminal (
|
create table wvp_jt_terminal (
|
||||||
id serial primary key,
|
id serial primary key,
|
||||||
device_id character varying(50),
|
|
||||||
phone_number character varying(50),
|
phone_number character varying(50),
|
||||||
|
terminal_id character varying(50),
|
||||||
province_id character varying(50),
|
province_id character varying(50),
|
||||||
province_text character varying(100),
|
province_text character varying(100),
|
||||||
city_id character varying(50),
|
city_id character varying(50),
|
||||||
city_text character varying(100),
|
city_text character varying(100),
|
||||||
maker_id character varying(50),
|
maker_id character varying(50),
|
||||||
device_model character varying(50),
|
model character varying(50),
|
||||||
plate_color character varying(50),
|
plate_color character varying(50),
|
||||||
plate_no character varying(50),
|
plate_no character varying(50),
|
||||||
authentication_code character varying(255),
|
authentication_code character varying(255),
|
||||||
longitude double precision,
|
longitude double precision,
|
||||||
latitude double precision,
|
latitude double precision,
|
||||||
status bool default false,
|
status bool default false,
|
||||||
register_time character varying(50) not null,
|
register_time character varying(50) default null,
|
||||||
update_time character varying(50) not null,
|
update_time character varying(50) not null,
|
||||||
create_time character varying(50) not null,
|
create_time character varying(50) not null,
|
||||||
constraint uk_jt_device_id_device_id unique (id, phone_number)
|
constraint uk_jt_device_id_device_id unique (id, phone_number)
|
||||||
@ -339,7 +339,7 @@ create table wvp_jt_terminal (
|
|||||||
create table wvp_jt_channel (
|
create table wvp_jt_channel (
|
||||||
id serial primary key,
|
id serial primary key,
|
||||||
channel_id integer,
|
channel_id integer,
|
||||||
device_id integer,
|
terminal_id integer,
|
||||||
name character varying(255),
|
name character varying(255),
|
||||||
update_time character varying(50) not null,
|
update_time character varying(50) not null,
|
||||||
create_time character varying(50) not null,
|
create_time character varying(50) not null,
|
||||||
|
|||||||
@ -1,20 +1,20 @@
|
|||||||
create table wvp_jt_terminal (
|
create table wvp_jt_terminal (
|
||||||
id serial primary key,
|
id serial primary key,
|
||||||
device_id character varying(50),
|
|
||||||
phone_number character varying(50),
|
phone_number character varying(50),
|
||||||
|
terminal_id character varying(50),
|
||||||
province_id character varying(50),
|
province_id character varying(50),
|
||||||
province_text character varying(100),
|
province_text character varying(100),
|
||||||
city_id character varying(50),
|
city_id character varying(50),
|
||||||
city_text character varying(100),
|
city_text character varying(100),
|
||||||
maker_id character varying(50),
|
maker_id character varying(50),
|
||||||
device_model character varying(50),
|
model character varying(50),
|
||||||
plate_color character varying(50),
|
plate_color character varying(50),
|
||||||
plate_no character varying(50),
|
plate_no character varying(50),
|
||||||
authentication_code character varying(255),
|
authentication_code character varying(255),
|
||||||
longitude double precision,
|
longitude double precision,
|
||||||
latitude double precision,
|
latitude double precision,
|
||||||
status bool default false,
|
status bool default false,
|
||||||
register_time character varying(50) not null,
|
register_time character varying(50) default null,
|
||||||
update_time character varying(50) not null,
|
update_time character varying(50) not null,
|
||||||
create_time character varying(50) not null,
|
create_time character varying(50) not null,
|
||||||
constraint uk_jt_device_id_device_id unique (id, phone_number)
|
constraint uk_jt_device_id_device_id unique (id, phone_number)
|
||||||
@ -22,7 +22,7 @@ create table wvp_jt_terminal (
|
|||||||
|
|
||||||
create table wvp_jt_channel (
|
create table wvp_jt_channel (
|
||||||
id serial primary key,
|
id serial primary key,
|
||||||
device_id integer,
|
terminal_id integer,
|
||||||
channel_id integer,
|
channel_id integer,
|
||||||
name character varying(255),
|
name character varying(255),
|
||||||
update_time character varying(50) not null,
|
update_time character varying(50) not null,
|
||||||
|
|||||||
@ -1,20 +1,20 @@
|
|||||||
create table wvp_jt_terminal (
|
create table wvp_jt_terminal (
|
||||||
id serial primary key,
|
id serial primary key,
|
||||||
device_id character varying(50),
|
|
||||||
phone_number character varying(50),
|
phone_number character varying(50),
|
||||||
|
terminal_id character varying(50),
|
||||||
province_id character varying(50),
|
province_id character varying(50),
|
||||||
province_text character varying(100),
|
province_text character varying(100),
|
||||||
city_id character varying(50),
|
city_id character varying(50),
|
||||||
city_text character varying(100),
|
city_text character varying(100),
|
||||||
maker_id character varying(50),
|
maker_id character varying(50),
|
||||||
device_model character varying(50),
|
model character varying(50),
|
||||||
plate_color character varying(50),
|
plate_color character varying(50),
|
||||||
plate_no character varying(50),
|
plate_no character varying(50),
|
||||||
authentication_code character varying(255),
|
authentication_code character varying(255),
|
||||||
longitude double precision,
|
longitude double precision,
|
||||||
latitude double precision,
|
latitude double precision,
|
||||||
status bool default false,
|
status bool default false,
|
||||||
register_time character varying(50) not null,
|
register_time character varying(50) default null,
|
||||||
update_time character varying(50) not null,
|
update_time character varying(50) not null,
|
||||||
create_time character varying(50) not null,
|
create_time character varying(50) not null,
|
||||||
constraint uk_jt_device_id_device_id unique (id, phone_number)
|
constraint uk_jt_device_id_device_id unique (id, phone_number)
|
||||||
@ -22,7 +22,7 @@ create table wvp_jt_terminal (
|
|||||||
create table wvp_jt_channel (
|
create table wvp_jt_channel (
|
||||||
id serial primary key,
|
id serial primary key,
|
||||||
channel_id integer,
|
channel_id integer,
|
||||||
device_id integer,
|
terminal_id integer,
|
||||||
name character varying(255),
|
name character varying(255),
|
||||||
update_time character varying(50) not null,
|
update_time character varying(50) not null,
|
||||||
create_time character varying(50) not null,
|
create_time character varying(50) not null,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user