var pageNo = 1; var totalPages = 0; var param1 = ''; var param2 = ''; var param3 = ''; //设备列表 getListDataAjax(); //获取设备列表 ajax请求 function getListDataAjax(queryParam = {}, pageNo = 1) { queryParam.pageNo = pageNo; // queryParam.pageSize = 4; ajaxRequest(DEVICE_LIST_SEARCH, "POST", queryParam, function(result) { let data = result.pageList; let items = ''; if (result.totalCount > 0) { data.forEach(function(item, key) { let transmissionModel = ""; if (item.transmission_model == 1) { transmissionModel = "NB-IOT" } else if (item.transmission_model == 2) { transmissionModel = "Lora-IOT" } else { transmissionModel = "2G/4G/5G" } items += "" + "" + "" + item.ownerCode + "" + "" + item.ownerName + "" + "" + item.dwtype + "" + "" + item.installMan + "" + "" + getFormatDate(item.installTime) + "" + "" }) } $('#dataList').html(items); totalPages = result.totalPages; $('#totalPage').html(totalPages); //总共多少页 $('#dataTotal').html(result.totalCount); //总共多少条数据 $('#currentPage').val(pageNo); //当前页面 let pageFrom = (pageNo - 1) * result.pageSize + 1; //开始 let pageTo = result.pageNo * result.pageSize; //结束 pageTo = pageTo > result.totalCount ? result.totalCount : pageTo; $('#pageFrom').html(pageFrom); $('#pageTo').html(pageTo); // 无数据时 if (!data.length) { $('.pager.has-data').hide() $('.pager.no-data').show() } else { $('.pager.has-data').show() $('.pager.no-data').hide() } if (pageNo < totalPages) { $('#nextPageButton,#lastPageButton').removeClass('disabled'); } else { $('#nextPageButton,#lastPageButton').addClass('disabled'); } if (pageNo === 1) { $('#firstPageButton,#prevPageButton').addClass('disabled'); } else { $('#firstPageButton,#prevPageButton').removeClass('disabled'); } }, function(errorMsg) { alert("请求数据失败!"); }) } //按钮搜索 $('#buttonClick').on('click', function() { pageNo = 1; getListDataAjax(getSearchParamObj()); param1 = $('#ownerName').val() param2 = $('#startTime').val() param3 = $('#endTime').val() }) //拼接搜索条件 function getSearchParamObj() { let queryParam = {}; let ownerName = $('#ownerName').val(); let startTime = $('#startTime').val() let endTime = $('#endTime').val() queryParam.ownerName = ownerName; queryParam.startTime = startTime; queryParam.endTime = endTime; return queryParam; } //重置表单 $('.reset').click(resetForm); //分页刷新按钮 $('.pg-refresh').click(resetForm) //重置表单 function resetForm() { pageNo = 1; $("#ownerName").val(""); $("#startTime").val(""); $("#endTime").val(""); getListDataAjax(getSearchParamObj()); param1 = $('#ownerName').val() param2 = $('#startTime').val() param3 = $('#endTime').val() } //分页操作 $('#firstPageButton').on('click', function() { pageNo = 1; getListDataAjax(getSearchParamObj(), 1); }) $('#lastPageButton').on('click', function() { pageNo = totalPages; getListDataAjax(getSearchParamObj(), pageNo); }) $('#prevPageButton').on('click', function() { pageNo -= 1; getListDataAjax(getSearchParamObj(), pageNo); }) $('#nextPageButton').on('click', function() { pageNo += 1; getListDataAjax(getSearchParamObj(), pageNo); }) //单位下拉 getCompanyList() function getCompanyList() { ajaxRequest(COMPANY_LIST, "POST", {}, function(result) { let data = result.data; let items = ''; data.forEach(function(item, key) { items += `` }) $('#getCompanyList').append(items); $('#getCompanyList2').append(items); }, function(errorMsg) { alert("请求数据失败!"); }) } //类型下拉 getTypeList() function getTypeList() { ajaxRequest(DEVICE_TYPE_EXPORT, "POST", {}, function(result) { let data = result.RESULT.pageList; let items = ''; data.forEach(function(item, key) { items += `` }) $('#getTypeList').append(items); $('#getTypeList2').append(items); }, function(errorMsg) { alert("请求数据失败!"); }) } //建筑下拉 getBuildingList() function getBuildingList() { ajaxRequest(BUILD_TREE_LIST, "POST", {}, function(result) { let data = result.data; let items = ''; data.forEach(function(item, key) { items += `` }) $('#getBuildingList').append(items); $('#getBuildingList2').append(items); }, function(errorMsg) { alert("请求数据失败!"); }) } // 建筑与楼层 linkFloor('#getBuildingList') linkFloor('#getBuildingList2') function linkFloor(element) { $(element).on('change', function() { //获取公司id let buildId = $(this).find('option:selected').val(); ajaxRequest(BUILD_TREE_LIST, "POST", { "buildId": buildId }, function(result) { let floorItems = ''; let buildObj = result.data; if (buildObj) { buildObj.forEach(function(item, key) { floorItems += `` }) $('#getFloorList').html(floorItems); $('#getFloorList2').html(floorItems); } else { $('#getFloorList').html(floorItems); $('#getFloorList2').html(floorItems); } }, function(errorMsg) { alert("请求数据失败!"); }) }) } // 楼层与房间联动 linkRoom('#getFloorList') linkRoom('#getFloorList2') function linkRoom(element) { $(element).on('change', function() { //获取楼层id let floorName = $(this).find('option:selected').val(); ajaxRequest(BUILD_TREE_LIST, "POST", { "floorId": floorName }, function(result) { let roomItems = ''; let floorObj = result.data; floorObj.forEach(function(item, key) { roomItems += `` }) $('#getRoomList').html(roomItems); }, function(errorMsg) { alert("请求数据失败!"); }) }) } /*新增 修改 关闭 弹框*/ var layer = layui.layer; var layerCreateIndex = ''; var layerUpdateIndex = '' layui.use('layer', function() { //新增弹框 $('.add').click(function() { layerCreateIndex = layer.open({ type: 1, title: false, closeBtn: 0, skin: 'yourclass', area: ['1000px', '400px'], content: $(".addDeviceListOut"), success: function() { $('.clsBtn,.cancel').click(function() { layer.close(layerCreateIndex); }) } }) }), //修改弹框信息 $('.edit').click(function() { if (!$('.pure-table tr').has('.checked').length) { layer.msg('请选择一条需要修改的信息!', { icon: 5 }); } else { let userInfo = $('.pure-table tr').find('.checked').data('user'); $('.editDeviceListOut input[name=ownerCode]').val(userInfo.ownerCode) $('.editDeviceListOut input[name=ownerName]').val(userInfo.ownerName) $('.editDeviceListOut input[name=unitinfo').val(userInfo.unitinfo) // 建筑赋值 $('.editDeviceListOut select[name=ownerXh]').val(userInfo.ownerXh) // 楼层下拉展示及赋值 if ($('#getBuildingList2').val()) { listFloor() function listFloor() { let buildId = $('#getBuildingList2').find('option:selected').val(); ajaxRequest(BUILD_TREE_LIST, "POST", { "buildId": buildId }, function(result) { let floorItems = ''; let buildObj = result.data; if (buildObj) { buildObj.forEach(function(item, key) { floorItems += `` }) $('#getFloorList2').html(floorItems); } else { $('#getFloorList2').html(floorItems); } }, function(errorMsg) { alert("请求数据失败!"); }) } } $('.editDeviceListOut select[name=louyu]').val(userInfo.louyu) // 房间下拉展示及赋值 if ($('#getFloorList2').val()) { listRoom() function listRoom() { let floorId = $('#getFloorList2').find('option:selected').val(); ajaxRequest(BUILD_TREE_LIST, "POST", { "floorId": floorId }, function(result) { let roomItems = ''; let floorObj = result.data; if (floorObj) { floorObj.forEach(function(item, key) { roomItems += `` }) $('#getRoomList2').html(roomItems); } else { $('#getRoomList2').html(roomItems); } }, function(errorMsg) { alert("请求数据失败!"); }) } } $('.editDeviceListOut select[name=rtmp]').val(userInfo.rtmp) $('.editDeviceListOut input[name=address').val(userInfo.address) $('.editDeviceListOut input[name=posistion').val(userInfo.posistion) $('.editDeviceListOut select[name=dwtype]').val(userInfo.dwtypeCode) $('.editDeviceListOut select[name=company]').val(userInfo.company) $('.editDeviceListOut input[name=transferType').val(userInfo.transferType) $('.editDeviceListOut input[name=hls').val(userInfo.hls) $('.editDeviceListOut input[name=ownerCode').val(userInfo.ownerCode) // userInfo.addr1 = "上海"; $('.editDeviceListOut select[name=addr1]').val(userInfo.addr1) provinceText = userInfo.addr1; $.each(provinceList, function(i, item) { if (provinceText == item.name) { cityItem = i; return cityItem } }); removeEle(city); removeEle(town); $.each(provinceList[cityItem].cityList, function(i, item) { addEle(city, item.name) }) // userInfo.addr2 = "市辖区" $('.editDeviceListOut select[name=addr2]').val(userInfo.addr2) cityText = userInfo.addr2; removeEle(town); $.each(provinceList, function(i, item) { if (provinceText == item.name) { cityItem = i; return cityItem } }); $.each(provinceList[cityItem].cityList, function(i, item) { if (cityText == item.name) { for (var n = 0; n < item.areaList.length; n++) { addEle(town, item.areaList[n]) } } }); // userInfo.addr3 = "黄浦区" $('.editDeviceListOut select[name=addr3]').val(userInfo.addr3) layerUpdateIndex = layer.open({ type: 1, title: false, closeBtn: 0, skin: 'yourclass', area: ['1000px', '400px'], content: $(".editDeviceListOut"), success: function() { $('.clsBtn,.cancel').click(function() { layer.close(layerUpdateIndex); }) } }); } }) //删除信息 $('.delete').click(function() { if (!$('.pure-table tr').has('.checked').length) { layer.msg('请选择一条需要删除的信息!', { icon: 5 }); } else { let ownerCode = $('.pure-table tr').find('.checked').data('ownercode'); ajaxRequest(DEVICE_LIST_DELETE, "POST", { "ownerCode": ownerCode }, function(result) { $(".pure-table tbody tr.selected").remove() layer.close(layer.layerCreateIndex); layer.msg('删除成功!', { icon: 6 }); getListDataAjax() }, function(errorMsg) { alert("用户删除失败!"); }) } }) }) /* 新增发送请求 */ $('#addData').click(function() { //获取表单的值 并转换成对象 let allParam = serializeArrayToObj($("#addDataForm").serializeArray()); if (!allParam.ownerCode) { alert('请输入设备编号'); return; } else { let pattern = /(?!^\d+$)(?!^[a-zA-Z]+$)[0-9a-zA-Z]{1,23}/ if (!pattern.test(allParam.ownerCode)) { alert('设备编号只能输入数字或字母!'); return false; } } //验证数据是否为空 let res = validParamIsEmpty(allParam, { // "ownerCode": "请输入设备编号", "ownerName": "请输入设备名称", "unitinfo": "填写安装位置", "ownerXh": "请选择建筑", // "louyu": "请选择楼层", // "rtmp": "请选择房间", "addr1": "请选择省份", "addr2": "请选择所属市区", "addr3": "请选择所属区、县", "address": "请输入详细地址", "posistion": "请填写GIS坐标", "dwtype": "请选择设备类型", "company": "请选择所属单位", "transferType": "请输入传输方式", }); if (res.code == -1) { alert(res.msg); return; } //验证通过 请求ajax ajaxRequest(DEVICE_LIST_ADD, "POST", allParam, function(result) { layer.close(layerCreateIndex); layer.msg('添加成功!', { icon: 6 }); getListDataAjax(); $('#addDataForm')[0].reset(); }, function(errorMsg) { alert("异常错误!"); }) }) /* 修改发送请求 */ $('#dataUpdate').click(function() { //获取表单的值 并转换成对象 let allParam = serializeArrayToObj($("#updateForm").serializeArray()); //验证数据是否为空 let res = validParamIsEmpty(allParam, { "ownerCode": "请输入设备编号", "ownerName": "请输入设备名称", "unitinfo": "填写安装位置", "ownerXh": "请选择建筑", // "louyu": "请选择楼层", // "rtmp": "请选择房间", "addr1": "请选择省份", "addr2": "请选择所属市区", "addr3": "请选择所属区、县", "address": "请输入详细地址", "posistion": "请填写GIS坐标", "dwtype": "请选择设备类型", "company": "请选择所属单位", "transferType": "请输入传输方式", }); if (res.code == -1) { alert(res.msg); return; } ajaxRequest(DEVICE_LIST_UPDATE, "POST", allParam, function(result) { if (result.flag) { layer.msg('修改成功!', { icon: 6 }); } else { //服务端返回报错 alert(result.msg); } layer.close(layerUpdateIndex); getListDataAjax(); }, function(errorMsg) { alert("数据修改失败!"); }) }) // 导出 start $('.export').click(function() { getDataExport({ "ownerName": param1, "startTime": param2, "endTime": param3 }) }) function getDataExport(queryParam = {}) { ajaxRequest(DEVICE_LIST_EXPORT, "POST", queryParam, function(result) { console.log(result) let data = result.pageList; let newData = []; if (data) { data.forEach(function(item, index) { var installTime = item.installTime ? getFormatDate(item.installTime) : ''; newData.push({ ownerCode: item.ownerCode, ownerName: item.ownerName, dwtype: item.dwtype, installMan: item.installMan, installTime: installTime }) }); } let str = '设备编号设备名称设备类型添加人添加时间'; // 循环遍历,每行加入tr标签,每个单元格加td标签 for (let i = 0; i < newData.length; i++) { str += ''; for (const key in newData[i]) { // 增加\t为了不让表格显示科学计数法或者其他格式 str += `${ newData[i][key] + '\t'}`; } str += ''; } downExcel(str, '设备列表数据表') }, function(errorMsg) { alert("请求数据失败!"); }) } // 导出 end