main
徐景良 2026-03-10 14:50:31 +08:00
parent ab3b0b0f6a
commit 1e84834d6e
12 changed files with 69 additions and 180 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

View File

@ -691,7 +691,7 @@
background: #0c2411;
background-size: 100% 100%;
border: 1px solid #00601a;
top: 0px;
top: 105px;
right: -640px;
padding: 10px;
border-radius: 3px;

View File

@ -11,7 +11,17 @@ export const option = {
way: [],
endName: '终点',
endLngLat: [],
endWay:[]
endWay:[],
navMethod:"all",
navMethodOptions:[
{
label:"高德+PostGIS",
value:"all"
},{
label:"PostGIS",
value:"postgis"
}
]
},
dataStyle:{
marginTop: 25,

View File

@ -1,163 +1,13 @@
<template>
<CollapseItem name="设置" :expanded="true">
<SettingItemBox name="整体样式">
<SettingItem name="上边距离">
<n-input-number
v-model:value="optionData.dataStyle.marginTop"
:min="0"
size="small"
placeholder="上边距离"
></n-input-number>
</SettingItem>
<SettingItem name="左右距离">
<n-input-number
v-model:value="optionData.dataStyle.marginLeft"
:min="0"
size="small"
placeholder="左右距离"
></n-input-number>
</SettingItem>
<SettingItem name="弹窗关闭按钮大小">
<n-input-number
v-model:value="optionData.dataStyle.closeButtonWidth"
:min="0"
size="small"
placeholder="弹窗关闭按钮大小"
></n-input-number>
</SettingItem>
</SettingItemBox>
<SettingItemBox name="上半部分样式">
<SettingItem name="标题字体颜色">
<n-color-picker
size="small"
:modes="['rgb']"
v-model:value="optionData.dataStyle.titleFontColor"
></n-color-picker>
</SettingItem>
<SettingItem name="标题字体大小">
<n-input-number
v-model:value="optionData.dataStyle.titleFontSize"
:min="0"
size="small"
placeholder="标题字体大小"
></n-input-number>
</SettingItem>
<SettingItem name="标题图案大小">
<n-input-number
v-model:value="optionData.dataStyle.titleSvgWidthAndHeight"
:min="0"
size="small"
placeholder="标题图案大小"
></n-input-number>
</SettingItem>
<SettingItem />
<SettingItem name="起点终点字体颜色">
<n-color-picker
size="small"
:modes="['rgb']"
v-model:value="optionData.dataStyle.wayStartFontColor"
></n-color-picker>
</SettingItem>
<SettingItem name="起点终点字体大小">
<n-input-number
v-model:value="optionData.dataStyle.wayStartFontSize"
:min="0"
size="small"
placeholder="起点终点字体大小"
></n-input-number>
</SettingItem>
<SettingItem name="起点终点底图大小">
<n-input-number
v-model:value="optionData.dataStyle.waySvgWidth"
:min="0"
size="small"
placeholder="起点终点底图大小"
></n-input-number>
</SettingItem>
<SettingItem />
<SettingItem name="途经点字体颜色">
<n-color-picker
size="small"
:modes="['rgb']"
v-model:value="optionData.dataStyle.wayFontColor"
></n-color-picker>
</SettingItem>
<SettingItem name="途经点字体大小">
<n-input-number
v-model:value="optionData.dataStyle.wayFontSize"
:min="0"
size="small"
placeholder="途经点字体大小"
></n-input-number>
</SettingItem>
</SettingItemBox>
<SettingItemBox name="规划方案">
<SettingItem name="规划方案字体颜色">
<n-color-picker
size="small"
:modes="['rgb']"
v-model:value="optionData.dataStyle.planFontColor"
></n-color-picker>
</SettingItem>
<SettingItem name="规划方案字体大小">
<n-input-number
v-model:value="optionData.dataStyle.planFontSize"
:min="0"
size="small"
placeholder="规划方案字体大小"
></n-input-number>
</SettingItem>
<SettingItem name="规划方案图案大小">
<n-input-number
v-model:value="optionData.dataStyle.planButtonWidth"
:min="0"
size="small"
placeholder="规划方案图案大小"
></n-input-number>
</SettingItem>
<SettingItem name="驾车和步行按钮字体颜色">
<n-color-picker
size="small"
:modes="['rgb']"
v-model:value="optionData.dataStyle.driveOrWalkFontColor"
></n-color-picker>
</SettingItem>
<SettingItem name="驾车和步行按钮字体大小">
<n-input-number
v-model:value="optionData.dataStyle.driveOrWalkFontSize"
:min="0"
size="small"
placeholder="驾车和步行按钮字体大小"
></n-input-number>
</SettingItem>
<SettingItem name="驾车和步行按钮按钮大小">
<n-input-number
v-model:value="optionData.dataStyle.driveOrWalkWidth"
:min="0"
size="small"
placeholder="驾车和步行按钮按钮大小"
></n-input-number>
</SettingItem>
<SettingItem />
<SettingItem name="方案按钮字体颜色">
<n-color-picker
size="small"
:modes="['rgb']"
v-model:value="optionData.dataStyle.buttonFontColor"
></n-color-picker>
</SettingItem>
<SettingItem name="方案按钮字体大小">
<n-input-number
v-model:value="optionData.dataStyle.buttonFontSize"
:min="0"
size="small"
placeholder="方案按钮字体大小"
></n-input-number>
<SettingItemBox name="导航方式">
<SettingItem name="导航方式">
<n-select
v-model:value="optionData.dataset.navMethod"
size="middle"
placeholder="请选择导航方式"
:options="optionData.dataset.navMethodOptions"
></n-select>
</SettingItem>
</SettingItemBox>
</CollapseItem>

View File

@ -667,7 +667,7 @@
// getRouter(postgisParams);
getRouterFunc(postgisParams,'postgis').then(res => {
getRouterFunc(postgisParams,option.dataset.navMethod).then(res => {
if(res){
// this.tripFlyArray[index] = res.allCoordinates;
console.log("res:999",res);

View File

@ -76,12 +76,19 @@ export const getRouterFunc = (params, method = 'postgis') => {
getRouterByGD(params).then(solution => {
// solution 为多条线路的数组,现在先用第一条线路 solution.path[0]
let gdRoute = solution.path[0]
// let postgisParams = {
// startlng: gdRoute.endCoordinates[0],
// startlat: gdRoute.endCoordinates[1],
// endlng: endlng,
// endlat: endlat,
// areaname: "feixian",
// }
let postgisParams = {
startlng: gdRoute.endCoordinates[0],
startlat: gdRoute.endCoordinates[1],
endlng: endlng,
endlat: endlat,
areaname: "feixian",
startCoord:gdRoute.endCoordinates[1]+","+gdRoute.endCoordinates[0],
endCoord:endlat+","+endlng,
profile:"car",
points_encoded:"false"
}
//使用gpostgis求出剩下的路线
getRouterByPostGis(postgisParams).then(geojson => {

View File

@ -108,8 +108,8 @@
useChartDataFetch(props.chartConfig, useChartEditStore, (resData: any[]) => {
props.chartConfig.option.dataset = resData;
option.dataset = resData;
});
</script>
<style lang="scss" scoped>

View File

@ -7,11 +7,11 @@ import { ZhiGan_YongHuShuConfig } from './index'
export const option = {
dataset: [
{
title: '小程序',
title: '扫码次数',
num: '728',
},
{
title: 'APP用户数',
title: '登记人数',
num: '315',
}
],

View File

@ -17,7 +17,7 @@
/>
</div>
<div :class="index + 1 == 1 ? 'xcxNum' : 'appNum'">
<span>{{ item.num }}</span>
<span>{{ staticInfo[item.title] }}</span>
</div>
<div :class="index + 1 == 1 ? 'xcxTitle' : 'appTitle'">
<span>{{ item.title }}</span>
@ -51,22 +51,44 @@
dataStyle: props.chartConfig.option.dataStyle,
});
const staticInfo = ref({
"扫码次数":0,
"登记人数":0
});
onMounted(() => {
//
const sql = props.chartConfig.request?.requestSQLContent?.sql;
EventBus.on(props.chartConfig.id + 'dataupdate', (data) => {
props.chartConfig.request.requestSQLContent.sql = replaceSqlParams(sql, { Id: data.id });
// callback
useChartDataFetch(props.chartConfig, useChartEditStore, (resData: any[]) => {
option.dataset = resData;
});
// const sql = props.chartConfig.request?.requestSQLContent?.sql;
let sql = `SELECT
COUNT(*) AS 扫码次数,
(SELECT COUNT(DISTINCT "CardNo") FROM fm_enteringinfo) AS 登记人数
FROM fm_enteringinfo`;
props.chartConfig.request.requestSQLContent.sql = sql;
useChartDataFetch(props.chartConfig, useChartEditStore, (resData: any[]) => {
console.log("resData",resData);
staticInfo.value = resData[0];
// option.dataset = resData;
});
// EventBus.on(props.chartConfig.id + 'dataupdate', (data) => {
// props.chartConfig.request.requestSQLContent.sql = replaceSqlParams(sql, { Id: data.id });
// // callback
// useChartDataFetch(props.chartConfig, useChartEditStore, (resData: any[]) => {
// option.dataset = resData;
// });
// });
});
// callback
useChartDataFetch(props.chartConfig, useChartEditStore, (resData: any[]) => {
option.dataset = resData;
});
// useChartDataFetch(props.chartConfig, useChartEditStore, (resData: any[]) => {
// option.dataset = resData;
// });
</script>
<style lang="scss" scoped>