camera.html 10.6 KB
<!DOCTYPE HTML>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<meta charset="utf-8">
<head th:include="include :: header"></head>
<body class="gray-bg">
    <div class="container-div ">
		<div class="row">
			<ul id="myTab" class="nav nav-tabs">
				<li class="active">
					<a href="#tabHeader" data-toggle="tab">摄像头IP配置</a>
				</li>
				<li><a href="#tabDetail" data-toggle="tab">串口配置</a></li>
			</ul>
			<div id="myTabContent" class="tab-content">
				<div class="tab-pane fade in active" id="tabHeader">
					<div class="col-sm-12 select-info">
						<form id="formId-camera">
							<div class="select-list">
								<ul>
									<li>
										<label>ip:</label>
										<input type="text" name="ip"/>
									</li>
									<li>
										<label>端口:</label>
										<input type="text" name="port"/>
									</li>
									<li>
										<label>登录名称:</label>
										<input type="text" name="userName"/>
									</li>
									<li>
										<label>使用标识:</label>
										<input type="text" name="useKey" value=""/>
									</li>
									<li>
										<label>是否可用:</label>
										<input type="text" name="isEnable"/>
									</li>
									<li>
										<label>状态:</label>
										<input type="text" name="isLocked"/>
									</li>
									<li>
										<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
										<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset('formId-camera')"><i class="fa fa-refresh"></i>&nbsp;重置</a>
									</li>
								</ul>
							</div>
						</form>
						<div class="btn-group hidden-xs" id="toolbar" role="group">
							<a class="btn btn-outline btn-success btn-rounded" onclick="$.operate.add()">
								<i class="fa fa-plus"></i> 新增
							</a>
							<a class="btn btn-outline btn-danger btn-rounded" onclick="$.operate.batRemove()" >
								<i class="fa fa-trash-o"></i> 删除
							</a>
						</div>
						<div class="col-sm-12 select-info table-striped tab-pane">
							<table id="bootstrap-table" data-mobile-responsive="true" class="table table-bordered table-hover text-nowrap"></table>
						</div>
					</div>
				</div>
				<div class="tab-pane fade" id="tabDetail">
					<div class="col-sm-12 select-info">
						<form id="formId">
							<div class="select-list">
								<ul>
									<li>
										<label>仓库编码:</label>
										<input type="text" name="warehouseCode"/>
									</li>
									<li>
										<label>url地址:</label>
										<input type="text" name="url"/>
									</li>
									<li>
										<label>useArea:</label>
										<input type="text" name="useArea"/>
									</li>
									<li>
										<label>串口:</label>
										<input type="text" name="currCom"/>
									</li>
									<li>
										<label>波特率:</label>
										<select name="baudrate" th:with="type=${@dict.getType('baudrate')}">
											<option value="">所有</option>
											<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
										</select>
									</li>
									<li>
										<label>是否删除:</label>
										<select name="deleted">
											<option value="">所有</option>
										</select>
									</li>
									<li>
										<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
										<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
									</li>
								</ul>
							</div>
						</form>
						<div class="btn-group hidden-xs" id="toolbar1" role="group">
							<a class="btn btn-outline btn-success btn-rounded" onclick="$.operate.add()" shiro:hasPermission="config:serialPorts:add">
								<i class="fa fa-plus"></i> 新增
							</a>
							<a class="btn btn-outline btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="config:serialPorts:edit">
								<i class="fa fa-edit"></i> 修改
							</a>
							<a class="btn btn-outline btn-danger btn-rounded multiple disabled" onclick="$.operate.batRemove()" shiro:hasPermission="config:serialPorts:remove">
								<i class="fa fa-trash-o"></i> 删除
							</a>
						</div>

						<div class="col-sm-12 select-info table-striped">
							<table id="bootstrap-table1" data-mobile-responsive="true"></table>
						</div>
					</div>
				</div>
			</div>
		</div>
    </div>
    <div th:include="include :: footer"></div>
    <script th:inline="javascript">
        var editFlag = [[${@permission.hasPermi('config:camera:edit')}]];
		var removeFlag = [[${@permission.hasPermi('config:camera:remove')}]];
        var prefix = ctx + "config/camera"

		var serialPortEditFlag = [[${@permission.hasPermi('config:serialPorts:edit')}]];
		var serialPortRemoveFlag = [[${@permission.hasPermi('config:serialPorts:remove')}]];
		var serialPortPrefix = ctx + "config/serialPorts"



        $(function() {
            var options = {
                url: prefix + "/list",
                createUrl: prefix + "/add",
                updateUrl: prefix + "/edit/{id}",
                removeUrl: prefix + "/remove",
                modalName: "【请填写功能名称】",
                columns: [{
		            checkbox: true
		        },
						{
							field: 'id',
							title: 'id',
							visible: true
						},
						{
							field: 'warehouseCode',
							title: '仓库编码',
							visible: false
						},
						{
							field: 'companyCode',
							title: '货主编码',
							visible: false
						},
						{
							field: 'ip',
							title: 'ip',
							align: 'center',
						},
						{
							field: 'port',
							title: '端口',
							align: 'center',
						},
						{
							field: 'userName',
							title: '登录名称',
							align: 'center',
						},
						{
							field: 'password',
							title: '密码',
							visible: false
						},
						{
							field: 'useKey',
							title: '使用标识',
							visible: false
						},
						{
							field: 'isEnable',
							title: '状态',
							align: 'center',
							formatter: function(value, row, index) {
								if(value!=undefined){
									if(value==0){
										return '<span class="badge badge-info">空闲</span>'
									}else if(value==1){
										return '<span class="badge badge-danger">使用中</span>'
									}
								}
								return '';
							}
						},
						{
							field: 'bindName',
							title: '绑定名称',
							align: 'center',
						},
						{
							field: 'isLocked',
							title: '锁定',
							align: 'center',
							formatter: function(value, row, index) {
								if(value!=undefined){
									if(value==0){
										return '<span class="badge badge-info">正常</span>'
									}else if(value==1){
										return '<span class="badge badge-danger">锁定</span>'
									}
								}
								return '';
							}
						},
						{
							title: '操作',
							align: 'center',
							formatter: function(value, row, index) {
								var actions = [];
								// actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="#" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
								actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-trash-o"></i>删除</a>');
								actions.push('<a class="btn btn-info btn-xs ' + removeFlag + '" href="#" onclick="resetPwd(\'' + row.id + '\')"><i class="fa fa-key"></i>修改密码</a>');
								actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="bindCamera(\'' + row.id + '\')"><i class="fa fa-lock"></i>绑定摄像头</a>');
								if (row.useKey != undefined && row.useKey != '' ){
									actions.push('<a class="btn btn-primary btn-xs ' + removeFlag + '" href="#" onclick="unBind(\'' + row.id + '\')"><i class="fa fa-unlock"></i>解绑</a>');
								}
								return actions.join('');
							}
						}]
            		};
            $.table.init(options);
			detailInit();
        });

		function detailInit(){
			$("#bootstrap-table1").bootstrapTable({
				url: serialPortPrefix + "/list",
				method: 'post',
				createUrl: serialPortPrefix + "/add",
				updateUrl: serialPortPrefix + "/edit/{id}",
				removeUrl: serialPortPrefix + "/remove",
				clickToSelect: true,
				showColumns:true, //列选择
				sortable: true, //排序
				iconSize: "outline",
				showRefresh: true, //刷新
				showToggle:true, //视图切换
				contentType: "application/x-www-form-urlencoded",
				toolbar: "#toolbar1",
				modalName: "serialPorts",
				onRefresh: function(){
					detailInit();
				},
				columns: [{
					checkbox: true
				},
					{
						field: 'id',
						title: 'id',
						visible: false
					},
					{
						field: 'url',
						title: 'url地址'
					},
					{
						field: 'useArea',
						title: 'useArea'
					},
					{
						field: 'currCom',
						title: '串口'
					},
					{
						field: 'baudrate',
						title: '波特率',
						formatter: function(value, row, index) {
							return $("#bootstrap-table1").selectDictLabel(baudrateDatas, value);
						}
					},
					{
						field: 'deleted',
						title: '是否删除'
					},
					{
						title: '操作',
						align: 'center',
						formatter: function(value, row, index) {
							var actions = [];
							actions.push('<a class="btn btn-success btn-xs ' + serialPortEditFlag + '" href="#" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
							actions.push('<a class="btn btn-danger btn-xs ' + serialPortRemoveFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a>');
							return actions.join('');
						}
					}]
			});
		}

		function initFrame() {
			$.ajax({
				url:ctx + 'config/camera/list',
				type:"post",
				success:function (value) {
					$('#bootstrap-table').bootstrapTable({
						toolbar:"#toolbar",
						data:value.data,
						columns: value.total,
					});
				}
			});
		}
		/*用户管理-重置密码*/
		function resetPwd(id) {
			var url = prefix + '/cameraReset/' + id;
			$.modal.open("重置密码", url, '800', '300');
		}

		/*用户管理-重置密码*/
		function bindCamera(id) {
			var url = prefix + '/bindCamera/' + id;
			$.modal.open("绑定摄像头", url, '800', '300');
		}

		function unBind(id) {
			var url = prefix + '/unBind/' + id;
			var config = {
				url: url,
				type: "post",
				dataType: "json",
				success: function (result) {
					layer.alert(result.msg, { icon: 1, closeBtn: 0 }, function () {
						location.reload();
					})
				}
			};
			$.ajax(config);
		}
    </script>
</body>
</html>