$(document).ready(function () { //切换项目,获取不同计时的打卡点 var roadId = $('.road-name').first().attr('road-id'); getTimeCp(roadId); //获取gpx路线上的打卡点 //初始化已经配置好的GPS计时点配置列表 $('body').on('change','table select',function () { var option = $(this).find('option:selected') var lat = Number(option.attr('data-lat')).toFixed(6); var lng = Number(option.attr('data-lng')).toFixed(6); $(this).parents('td').next().text(lat+","+lng); }); /* /!** * 点击项目切换不同项目的配置情况 *!/ $('body').on('click','.road-name',function () { $('.road-name').removeClass('active'); $(this).addClass("active"); var roadId=$(this).attr('road-id'); //获取计时系统的计时点列表 getTimeCp(roadId); }); */ $('.save-btn').click(function () { var params = []; var roadId = $('.road-name.active').attr('road-id'); $.each($('tbody tr'),function (i,e) { var param = {}; var id = $(e).attr('data-cpmap-id'); var checkpointId = $(e).find('td:eq(0)').attr('data-cp-id'); var checkpointDistance=$(e).find('td:eq(0)').attr('data-cp-distance'); var cmptId = getCmptId(); var checkpointName = $(e).find('td:eq(0)').text(); var checkpointGpsName = $(e).find('select').val() var checkpointLatitude = $(e).find('td:eq(2)').text().split(',')[0]; var checkpointLongitude = $(e).find('td:eq(2)').text().split(',')[1]; param.id = id; param.roadId = roadId; param.checkpointId = checkpointId; param.checkpointDistance=checkpointDistance; param.cmptId = cmptId; param.checkpointName = checkpointName; param.checkpointGpsName = checkpointGpsName; param.checkpointLatitude = checkpointLatitude; param.checkpointLongitude = checkpointLongitude; params.push(param) }); saveCpMap(params) }); $('.load').click(function () { $('li.road a').get()[0].click(); }); /** * 点击‘下载全部二维码’按钮,完成二维码的下载 */ $('.QRCodeDown').click(function () { var hasCp = $(this).attr('data-hasCp'); if(hasCp == 'false') return; var roadId = $('.road-name.active').attr('road-id'); console.log(roadId); const link = document.createElement('a') const body = document.querySelector('body') link.href = "/gk/scan/downLoadAllQRByRoadId/"+getCId()+"/"+roadId // fix Firefox link.style.display = 'none' body.appendChild(link) link.click() body.removeChild(link) }); }); //路线标注下来点击事情,获取下拉值,并更新选中的值 $(".selectgpscheckpoint").change(function(){ }); /** * 初始化已经配置好的GPS计时点配置列表 * @param roadId */ function getCpGpsList(roadId) { $.ajax({ url : '/gk/roadGpsCheckpoint/getRoadsGpsCheckpoint/'+getCId()+"/"+roadId, success:function (data) { if(data.status){ $.each(data.content,function (i,e) { var tr = $('td[data-cp-id='+e.checkpointId+']').parent(); tr.find('select').val(e.checkpointGpsName); tr.find('select').trigger('change'); tr.attr('data-cpmap-id',e.id); }); } } }) } /** * 获取计时的打卡点 * @param roadId */ function getTimeCp(roadId) { $('tbody').empty() $.ajax({ url : '/gk/roadGpsCheckpoint/getTimeCheckpointByRoadId/'+getCId()+"/"+roadId, success:function (data) { if(data.status){ $.each(data.content,function (i,e) { $('tbody').append(' \n' + ' \n' + ' '+e.checkpointName+'\n' + ' \n' + '
\n' + ' \n' + ' \n' + '
\n' + ' \n' + ' '+Number(e.checkpointLatitude == null? "0" : e.checkpointLatitude).toFixed(6)+','+Number(e.checkpointLongitude==null?"0":e.checkpointLongitude).toFixed(6)+'\n' + ' '); }) getGpsCp(roadId); } } }) } /** * 获取路线上的打卡点 * @param roadId */ function getGpsCp(roadId) { $.ajax({ url : '/gk/roadGpsCheckpoint/getGpsCheckPointByRoadId/'+getCId()+"/"+roadId, success:function (data) { if(data.status){ $('.load').show(); $('.noroute').hide(); $('.QRCodeDown').show(); $('.save-btn').show(); var optionstring=""; //将之前的下拉框的值清空 $(".gpscheckpoint").empty(); $.each(data.content,function (i,e) { //获取项目路线上的打卡点并初始化到下拉框 optionstring+=''; }); $.each($(".gpscheckpoint"),function (i,e) { $(e).append(optionstring); }); getCpGpsList(roadId); }else{ $('.road-name[road-id="'+roadId+'"]').append($('.noroute')); $('.noroute').show(); $('.QRCodeDown').hide(); $('.save-btn').hide(); $('.load').attr('road-id',roadId) $('.load').show(); $(".gpscheckpoint").append(""); } } }) } /** * * 保存对应关系 * */ function saveCpMap(param){ $.ajax({ url : '/gk/roadGpsCheckpoint/save', type:'post', contentType:'application/json', data:JSON.stringify(param), success:function (data) { if(data.status){ layer.msg('保存成功!') }else{ layer.msg('操作失败!') } } }) }