@@ -413,6 +426,7 @@
show_txl: '',
show_mobile: '',
auto_schoolmate: '',
+ is_chart:'',
qun_image_id: '',
image_id: '',
publicize_ids: [],
@@ -449,6 +463,10 @@
required: true,
message: '请选择是否自动成为校友'
}],
+ is_chart: [{
+ required: true,
+ message: '请选择是否统计'
+ }],
sign_start_date: [{
required: true,
message: '请选择报名开始日期'
@@ -545,7 +563,6 @@
this.form.show_txl = selectedCourseType.show_txl;
this.form.show_mobile = selectedCourseType.show_mobile;
this.form.auto_schoolmate = selectedCourseType.auto_schoolmate;
-
console.log('课程体系选择变更,自动填充字段:', {
is_fee: this.form.is_fee,
is_arrange: this.form.is_arrange,
@@ -757,6 +774,7 @@
this.form.show_txl = res.show_txl === 0 ? 0 : 1
this.form.show_mobile = res.show_mobile ? res.show_mobile : 0
this.form.auto_schoolmate = res.auto_schoolmate ? res.auto_schoolmate : 0
+ this.form.is_chart = res.is_chart ? res.is_chart : 0
this.showTinymce = true
})
},
@@ -853,6 +871,7 @@
show_txl: '',
show_mobile: '',
auto_schoolmate: '',
+ is_chart:'',
qun_image_id: '',
image_id: '',
publicize_ids: [],
diff --git a/src/views/course/txl.vue b/src/views/course/txl.vue
index 6f5db1f..9f69c35 100644
--- a/src/views/course/txl.vue
+++ b/src/views/course/txl.vue
@@ -50,9 +50,9 @@
{changeSelectType(e,'company_type')}" multiple collapse-tags
placeholder="请选择企业资质" clearable>
-
-
+
+
diff --git a/src/views/dashboard/country.json b/src/views/dashboard/country.json
new file mode 100644
index 0000000..53c34d2
--- /dev/null
+++ b/src/views/dashboard/country.json
@@ -0,0 +1,2081 @@
+[
+ {
+ "province": "北京市",
+ "city": "北京市",
+ "address": "北京市",
+ "longitude": 116.407387,
+ "latitude": 39.904179
+ },
+ {
+ "province": "天津市",
+ "city": "天津市",
+ "address": "天津市",
+ "longitude": 117.201509,
+ "latitude": 39.085318
+ },
+ {
+ "province": "河北省",
+ "city": "石家庄市",
+ "address": "河北省石家庄市",
+ "longitude": 114.514976,
+ "latitude": 38.042007
+ },
+ {
+ "province": "河北省",
+ "city": "唐山市",
+ "address": "河北省唐山市",
+ "longitude": 118.180149,
+ "latitude": 39.630680
+ },
+ {
+ "province": "河北省",
+ "city": "秦皇岛市",
+ "address": "河北省秦皇岛市",
+ "longitude": 119.520220,
+ "latitude": 39.888243
+ },
+ {
+ "province": "河北省",
+ "city": "邯郸市",
+ "address": "河北省邯郸市",
+ "longitude": 114.539150,
+ "latitude": 36.625849
+ },
+ {
+ "province": "河北省",
+ "city": "邢台市",
+ "address": "河北省邢台市",
+ "longitude": 114.497420,
+ "latitude": 37.060227
+ },
+ {
+ "province": "河北省",
+ "city": "保定市",
+ "address": "河北省保定市",
+ "longitude": 115.464523,
+ "latitude": 38.874476
+ },
+ {
+ "province": "河北省",
+ "city": "张家口市",
+ "address": "河北省张家口市",
+ "longitude": 114.885895,
+ "latitude": 40.768931
+ },
+ {
+ "province": "河北省",
+ "city": "承德市",
+ "address": "河北省承德市",
+ "longitude": 117.962749,
+ "latitude": 40.952942
+ },
+ {
+ "province": "河北省",
+ "city": "沧州市",
+ "address": "河北省沧州市",
+ "longitude": 116.838715,
+ "latitude": 38.304676
+ },
+ {
+ "province": "河北省",
+ "city": "廊坊市",
+ "address": "河北省廊坊市",
+ "longitude": 116.683546,
+ "latitude": 39.538304
+ },
+ {
+ "province": "河北省",
+ "city": "衡水市",
+ "address": "河北省衡水市",
+ "longitude": 115.668987,
+ "latitude": 37.739367
+ },
+ {
+ "province": "山西省",
+ "city": "太原市",
+ "address": "山西省太原市",
+ "longitude": 112.549656,
+ "latitude": 37.870451
+ },
+ {
+ "province": "山西省",
+ "city": "大同市",
+ "address": "山西省大同市",
+ "longitude": 113.366749,
+ "latitude": 40.097110
+ },
+ {
+ "province": "山西省",
+ "city": "阳泉市",
+ "address": "山西省阳泉市",
+ "longitude": 113.580426,
+ "latitude": 37.857094
+ },
+ {
+ "province": "山西省",
+ "city": "长治市",
+ "address": "山西省长治市",
+ "longitude": 113.117394,
+ "latitude": 36.195142
+ },
+ {
+ "province": "山西省",
+ "city": "晋城市",
+ "address": "山西省晋城市",
+ "longitude": 112.852022,
+ "latitude": 35.491315
+ },
+ {
+ "province": "山西省",
+ "city": "朔州市",
+ "address": "山西省朔州市",
+ "longitude": 112.432906,
+ "latitude": 39.331734
+ },
+ {
+ "province": "山西省",
+ "city": "晋中市",
+ "address": "山西省晋中市",
+ "longitude": 112.752633,
+ "latitude": 37.688006
+ },
+ {
+ "province": "山西省",
+ "city": "运城市",
+ "address": "山西省运城市",
+ "longitude": 111.007051,
+ "latitude": 35.026670
+ },
+ {
+ "province": "山西省",
+ "city": "忻州市",
+ "address": "山西省忻州市",
+ "longitude": 112.734149,
+ "latitude": 38.415958
+ },
+ {
+ "province": "山西省",
+ "city": "临汾市",
+ "address": "山西省临汾市",
+ "longitude": 111.519310,
+ "latitude": 36.088581
+ },
+ {
+ "province": "山西省",
+ "city": "吕梁市",
+ "address": "山西省吕梁市",
+ "longitude": 111.144540,
+ "latitude": 37.518996
+ },
+ {
+ "province": "内蒙古自治区",
+ "city": "呼和浩特市",
+ "address": "内蒙古自治区呼和浩特市",
+ "longitude": 111.748814,
+ "latitude": 40.842127
+ },
+ {
+ "province": "内蒙古自治区",
+ "city": "包头市",
+ "address": "内蒙古自治区包头市",
+ "longitude": 109.953150,
+ "latitude": 40.621327
+ },
+ {
+ "province": "内蒙古自治区",
+ "city": "乌海市",
+ "address": "内蒙古自治区乌海市",
+ "longitude": 106.794150,
+ "latitude": 39.655048
+ },
+ {
+ "province": "内蒙古自治区",
+ "city": "赤峰市",
+ "address": "内蒙古自治区赤峰市",
+ "longitude": 118.887613,
+ "latitude": 42.256876
+ },
+ {
+ "province": "内蒙古自治区",
+ "city": "通辽市",
+ "address": "内蒙古自治区通辽市",
+ "longitude": 122.243309,
+ "latitude": 43.653566
+ },
+ {
+ "province": "内蒙古自治区",
+ "city": "鄂尔多斯市",
+ "address": "内蒙古自治区鄂尔多斯市",
+ "longitude": 109.782473,
+ "latitude": 39.608744
+ },
+ {
+ "province": "内蒙古自治区",
+ "city": "呼伦贝尔市",
+ "address": "内蒙古自治区呼伦贝尔市",
+ "longitude": 119.778450,
+ "latitude": 49.166536
+ },
+ {
+ "province": "内蒙古自治区",
+ "city": "巴彦淖尔市",
+ "address": "内蒙古自治区巴彦淖尔市",
+ "longitude": 107.387767,
+ "latitude": 40.742987
+ },
+ {
+ "province": "内蒙古自治区",
+ "city": "乌兰察布市",
+ "address": "内蒙古自治区乌兰察布市",
+ "longitude": 113.132227,
+ "latitude": 40.994526
+ },
+ {
+ "province": "辽宁省",
+ "city": "沈阳市",
+ "address": "辽宁省沈阳市",
+ "longitude": 123.464675,
+ "latitude": 41.677576
+ },
+ {
+ "province": "辽宁省",
+ "city": "大连市",
+ "address": "辽宁省大连市",
+ "longitude": 121.614786,
+ "latitude": 38.913962
+ },
+ {
+ "province": "辽宁省",
+ "city": "鞍山市",
+ "address": "辽宁省鞍山市",
+ "longitude": 122.994183,
+ "latitude": 41.108239
+ },
+ {
+ "province": "辽宁省",
+ "city": "抚顺市",
+ "address": "辽宁省抚顺市",
+ "longitude": 123.957053,
+ "latitude": 41.881311
+ },
+ {
+ "province": "辽宁省",
+ "city": "本溪市",
+ "address": "辽宁省本溪市",
+ "longitude": 123.766669,
+ "latitude": 41.294123
+ },
+ {
+ "province": "辽宁省",
+ "city": "丹东市",
+ "address": "辽宁省丹东市",
+ "longitude": 124.354419,
+ "latitude": 40.000646
+ },
+ {
+ "province": "辽宁省",
+ "city": "锦州市",
+ "address": "辽宁省锦州市",
+ "longitude": 121.126859,
+ "latitude": 41.096114
+ },
+ {
+ "province": "辽宁省",
+ "city": "营口市",
+ "address": "辽宁省营口市",
+ "longitude": 122.219148,
+ "latitude": 40.625027
+ },
+ {
+ "province": "辽宁省",
+ "city": "阜新市",
+ "address": "辽宁省阜新市",
+ "longitude": 121.670052,
+ "latitude": 42.022028
+ },
+ {
+ "province": "辽宁省",
+ "city": "辽阳市",
+ "address": "辽宁省辽阳市",
+ "longitude": 123.239669,
+ "latitude": 41.267396
+ },
+ {
+ "province": "辽宁省",
+ "city": "盘锦市",
+ "address": "辽宁省盘锦市",
+ "longitude": 122.170729,
+ "latitude": 40.719560
+ },
+ {
+ "province": "辽宁省",
+ "city": "铁岭市",
+ "address": "辽宁省铁岭市",
+ "longitude": 123.726008,
+ "latitude": 42.223709
+ },
+ {
+ "province": "辽宁省",
+ "city": "朝阳市",
+ "address": "辽宁省朝阳市",
+ "longitude": 120.488801,
+ "latitude": 41.601855
+ },
+ {
+ "province": "辽宁省",
+ "city": "葫芦岛市",
+ "address": "辽宁省葫芦岛市",
+ "longitude": 120.836783,
+ "latitude": 40.710974
+ },
+ {
+ "province": "吉林省",
+ "city": "长春市",
+ "address": "吉林省长春市",
+ "longitude": 125.323643,
+ "latitude": 43.816996
+ },
+ {
+ "province": "吉林省",
+ "city": "吉林市",
+ "address": "吉林省吉林市",
+ "longitude": 126.549719,
+ "latitude": 43.838132
+ },
+ {
+ "province": "吉林省",
+ "city": "四平市",
+ "address": "吉林省四平市",
+ "longitude": 124.350599,
+ "latitude": 43.166764
+ },
+ {
+ "province": "吉林省",
+ "city": "辽源市",
+ "address": "吉林省辽源市",
+ "longitude": 125.144676,
+ "latitude": 42.887961
+ },
+ {
+ "province": "吉林省",
+ "city": "通化市",
+ "address": "吉林省通化市",
+ "longitude": 125.939721,
+ "latitude": 41.728312
+ },
+ {
+ "province": "吉林省",
+ "city": "白山市",
+ "address": "吉林省白山市",
+ "longitude": 126.414274,
+ "latitude": 41.944132
+ },
+ {
+ "province": "吉林省",
+ "city": "松原市",
+ "address": "吉林省松原市",
+ "longitude": 124.825321,
+ "latitude": 45.141910
+ },
+ {
+ "province": "吉林省",
+ "city": "白城市",
+ "address": "吉林省白城市",
+ "longitude": 122.838102,
+ "latitude": 45.620131
+ },
+ {
+ "province": "黑龙江省",
+ "city": "哈尔滨市",
+ "address": "黑龙江省哈尔滨市",
+ "longitude": 126.535050,
+ "latitude": 45.802981
+ },
+ {
+ "province": "黑龙江省",
+ "city": "齐齐哈尔市",
+ "address": "黑龙江省齐齐哈尔市",
+ "longitude": 123.918193,
+ "latitude": 47.354892
+ },
+ {
+ "province": "黑龙江省",
+ "city": "鸡西市",
+ "address": "黑龙江省鸡西市",
+ "longitude": 130.969385,
+ "latitude": 45.295087
+ },
+ {
+ "province": "黑龙江省",
+ "city": "鹤岗市",
+ "address": "黑龙江省鹤岗市",
+ "longitude": 130.297687,
+ "latitude": 47.350659
+ },
+ {
+ "province": "黑龙江省",
+ "city": "双鸭山市",
+ "address": "黑龙江省双鸭山市",
+ "longitude": 131.141563,
+ "latitude": 46.676157
+ },
+ {
+ "province": "黑龙江省",
+ "city": "大庆市",
+ "address": "黑龙江省大庆市",
+ "longitude": 125.104078,
+ "latitude": 46.589498
+ },
+ {
+ "province": "黑龙江省",
+ "city": "伊春市",
+ "address": "黑龙江省伊春市",
+ "longitude": 128.840863,
+ "latitude": 47.728332
+ },
+ {
+ "province": "黑龙江省",
+ "city": "佳木斯市",
+ "address": "黑龙江省佳木斯市",
+ "longitude": 130.318916,
+ "latitude": 46.800002
+ },
+ {
+ "province": "黑龙江省",
+ "city": "七台河市",
+ "address": "黑龙江省七台河市",
+ "longitude": 131.003015,
+ "latitude": 45.771178
+ },
+ {
+ "province": "黑龙江省",
+ "city": "牡丹江市",
+ "address": "黑龙江省牡丹江市",
+ "longitude": 129.632928,
+ "latitude": 44.551486
+ },
+ {
+ "province": "黑龙江省",
+ "city": "黑河市",
+ "address": "黑龙江省黑河市",
+ "longitude": 127.528226,
+ "latitude": 50.244887
+ },
+ {
+ "province": "黑龙江省",
+ "city": "绥化市",
+ "address": "黑龙江省绥化市",
+ "longitude": 126.968714,
+ "latitude": 46.654147
+ },
+ {
+ "province": "上海市",
+ "city": "上海市",
+ "address": "上海市",
+ "longitude": 121.473667,
+ "latitude": 31.230525
+ },
+ {
+ "province": "江苏省",
+ "city": "南京市",
+ "address": "江苏省南京市",
+ "longitude": 118.796624,
+ "latitude": 32.059344
+ },
+ {
+ "province": "江苏省",
+ "city": "无锡市",
+ "address": "江苏省无锡市",
+ "longitude": 120.311889,
+ "latitude": 31.491064
+ },
+ {
+ "province": "江苏省",
+ "city": "徐州市",
+ "address": "江苏省徐州市",
+ "longitude": 117.283752,
+ "latitude": 34.204224
+ },
+ {
+ "province": "江苏省",
+ "city": "常州市",
+ "address": "江苏省常州市",
+ "longitude": 119.974092,
+ "latitude": 31.811313
+ },
+ {
+ "province": "江苏省",
+ "city": "苏州市",
+ "address": "江苏省苏州市",
+ "longitude": 120.585294,
+ "latitude": 31.299758
+ },
+ {
+ "province": "江苏省",
+ "city": "南通市",
+ "address": "江苏省南通市",
+ "longitude": 120.894522,
+ "latitude": 31.981269
+ },
+ {
+ "province": "江苏省",
+ "city": "连云港市",
+ "address": "江苏省连云港市",
+ "longitude": 119.221487,
+ "latitude": 34.596639
+ },
+ {
+ "province": "江苏省",
+ "city": "淮安市",
+ "address": "江苏省淮安市",
+ "longitude": 119.113166,
+ "latitude": 33.551495
+ },
+ {
+ "province": "江苏省",
+ "city": "盐城市",
+ "address": "江苏省盐城市",
+ "longitude": 120.162630,
+ "latitude": 33.348176
+ },
+ {
+ "province": "江苏省",
+ "city": "扬州市",
+ "address": "江苏省扬州市",
+ "longitude": 119.412834,
+ "latitude": 32.394404
+ },
+ {
+ "province": "江苏省",
+ "city": "镇江市",
+ "address": "江苏省镇江市",
+ "longitude": 119.424441,
+ "latitude": 32.188141
+ },
+ {
+ "province": "江苏省",
+ "city": "泰州市",
+ "address": "江苏省泰州市",
+ "longitude": 119.922883,
+ "latitude": 32.456692
+ },
+ {
+ "province": "江苏省",
+ "city": "宿迁市",
+ "address": "江苏省宿迁市",
+ "longitude": 118.275228,
+ "latitude": 33.963186
+ },
+ {
+ "province": "浙江省",
+ "city": "杭州市",
+ "address": "浙江省杭州市",
+ "longitude": 120.209903,
+ "latitude": 30.246566
+ },
+ {
+ "province": "浙江省",
+ "city": "宁波市",
+ "address": "浙江省宁波市",
+ "longitude": 121.624540,
+ "latitude": 29.860258
+ },
+ {
+ "province": "浙江省",
+ "city": "温州市",
+ "address": "浙江省温州市",
+ "longitude": 120.699279,
+ "latitude": 27.993849
+ },
+ {
+ "province": "浙江省",
+ "city": "嘉兴市",
+ "address": "浙江省嘉兴市",
+ "longitude": 120.755623,
+ "latitude": 30.746814
+ },
+ {
+ "province": "浙江省",
+ "city": "湖州市",
+ "address": "浙江省湖州市",
+ "longitude": 120.086881,
+ "latitude": 30.894178
+ },
+ {
+ "province": "浙江省",
+ "city": "绍兴市",
+ "address": "浙江省绍兴市",
+ "longitude": 120.582886,
+ "latitude": 30.051549
+ },
+ {
+ "province": "浙江省",
+ "city": "金华市",
+ "address": "浙江省金华市",
+ "longitude": 119.647265,
+ "latitude": 29.079195
+ },
+ {
+ "province": "浙江省",
+ "city": "衢州市",
+ "address": "浙江省衢州市",
+ "longitude": 118.859307,
+ "latitude": 28.970229
+ },
+ {
+ "province": "浙江省",
+ "city": "舟山市",
+ "address": "浙江省舟山市",
+ "longitude": 122.207395,
+ "latitude": 29.985578
+ },
+ {
+ "province": "浙江省",
+ "city": "台州市",
+ "address": "浙江省台州市",
+ "longitude": 121.420790,
+ "latitude": 28.655716
+ },
+ {
+ "province": "浙江省",
+ "city": "丽水市",
+ "address": "浙江省丽水市",
+ "longitude": 119.923249,
+ "latitude": 28.467694
+ },
+ {
+ "province": "安徽省",
+ "city": "合肥市",
+ "address": "安徽省合肥市",
+ "longitude": 117.227267,
+ "latitude": 31.820567
+ },
+ {
+ "province": "安徽省",
+ "city": "芜湖市",
+ "address": "安徽省芜湖市",
+ "longitude": 118.433065,
+ "latitude": 31.352614
+ },
+ {
+ "province": "安徽省",
+ "city": "蚌埠市",
+ "address": "安徽省蚌埠市",
+ "longitude": 117.388566,
+ "latitude": 32.916820
+ },
+ {
+ "province": "安徽省",
+ "city": "淮南市",
+ "address": "安徽省淮南市",
+ "longitude": 117.018603,
+ "latitude": 32.585384
+ },
+ {
+ "province": "安徽省",
+ "city": "马鞍山市",
+ "address": "安徽省马鞍山市",
+ "longitude": 118.506850,
+ "latitude": 31.668765
+ },
+ {
+ "province": "安徽省",
+ "city": "淮北市",
+ "address": "安徽省淮北市",
+ "longitude": 116.798362,
+ "latitude": 33.956264
+ },
+ {
+ "province": "安徽省",
+ "city": "铜陵市",
+ "address": "安徽省铜陵市",
+ "longitude": 117.811298,
+ "latitude": 30.945214
+ },
+ {
+ "province": "安徽省",
+ "city": "安庆市",
+ "address": "安徽省安庆市",
+ "longitude": 117.115349,
+ "latitude": 30.531828
+ },
+ {
+ "province": "安徽省",
+ "city": "黄山市",
+ "address": "安徽省黄山市",
+ "longitude": 118.337643,
+ "latitude": 29.714886
+ },
+ {
+ "province": "安徽省",
+ "city": "滁州市",
+ "address": "安徽省滁州市",
+ "longitude": 118.333439,
+ "latitude": 32.255904
+ },
+ {
+ "province": "安徽省",
+ "city": "阜阳市",
+ "address": "安徽省阜阳市",
+ "longitude": 115.814252,
+ "latitude": 32.891032
+ },
+ {
+ "province": "安徽省",
+ "city": "宿州市",
+ "address": "安徽省宿州市",
+ "longitude": 116.964190,
+ "latitude": 33.647726
+ },
+ {
+ "province": "安徽省",
+ "city": "六安市",
+ "address": "安徽省六安市",
+ "longitude": 116.519729,
+ "latitude": 31.735892
+ },
+ {
+ "province": "安徽省",
+ "city": "亳州市",
+ "address": "安徽省亳州市",
+ "longitude": 115.778588,
+ "latitude": 33.846285
+ },
+ {
+ "province": "安徽省",
+ "city": "池州市",
+ "address": "安徽省池州市",
+ "longitude": 117.495663,
+ "latitude": 30.674264
+ },
+ {
+ "province": "安徽省",
+ "city": "宣城市",
+ "address": "安徽省宣城市",
+ "longitude": 118.759127,
+ "latitude": 30.939278
+ },
+ {
+ "province": "福建省",
+ "city": "福州市",
+ "address": "福建省福州市",
+ "longitude": 119.296411,
+ "latitude": 26.074286
+ },
+ {
+ "province": "福建省",
+ "city": "厦门市",
+ "address": "福建省厦门市",
+ "longitude": 118.088910,
+ "latitude": 24.479627
+ },
+ {
+ "province": "福建省",
+ "city": "莆田市",
+ "address": "福建省莆田市",
+ "longitude": 119.007662,
+ "latitude": 25.454202
+ },
+ {
+ "province": "福建省",
+ "city": "三明市",
+ "address": "福建省三明市",
+ "longitude": 117.638919,
+ "latitude": 26.263455
+ },
+ {
+ "province": "福建省",
+ "city": "泉州市",
+ "address": "福建省泉州市",
+ "longitude": 118.675724,
+ "latitude": 24.874452
+ },
+ {
+ "province": "福建省",
+ "city": "漳州市",
+ "address": "福建省漳州市",
+ "longitude": 117.647298,
+ "latitude": 24.515297
+ },
+ {
+ "province": "福建省",
+ "city": "南平市",
+ "address": "福建省南平市",
+ "longitude": 118.081325,
+ "latitude": 27.382829
+ },
+ {
+ "province": "福建省",
+ "city": "龙岩市",
+ "address": "福建省龙岩市",
+ "longitude": 117.017362,
+ "latitude": 25.075884
+ },
+ {
+ "province": "福建省",
+ "city": "宁德市",
+ "address": "福建省宁德市",
+ "longitude": 119.547729,
+ "latitude": 26.666222
+ },
+ {
+ "province": "江西省",
+ "city": "南昌市",
+ "address": "江西省南昌市",
+ "longitude": 115.857972,
+ "latitude": 28.682976
+ },
+ {
+ "province": "江西省",
+ "city": "景德镇市",
+ "address": "江西省景德镇市",
+ "longitude": 117.184892,
+ "latitude": 29.274400
+ },
+ {
+ "province": "江西省",
+ "city": "萍乡市",
+ "address": "江西省萍乡市",
+ "longitude": 113.887147,
+ "latitude": 27.658721
+ },
+ {
+ "province": "江西省",
+ "city": "九江市",
+ "address": "江西省九江市",
+ "longitude": 115.953560,
+ "latitude": 29.661160
+ },
+ {
+ "province": "江西省",
+ "city": "新余市",
+ "address": "江西省新余市",
+ "longitude": 114.916665,
+ "latitude": 27.818553
+ },
+ {
+ "province": "江西省",
+ "city": "鹰潭市",
+ "address": "江西省鹰潭市",
+ "longitude": 117.039532,
+ "latitude": 28.272092
+ },
+ {
+ "province": "江西省",
+ "city": "赣州市",
+ "address": "江西省赣州市",
+ "longitude": 114.933494,
+ "latitude": 25.831139
+ },
+ {
+ "province": "江西省",
+ "city": "吉安市",
+ "address": "江西省吉安市",
+ "longitude": 114.966810,
+ "latitude": 27.091243
+ },
+ {
+ "province": "江西省",
+ "city": "宜春市",
+ "address": "江西省宜春市",
+ "longitude": 114.416826,
+ "latitude": 27.816245
+ },
+ {
+ "province": "江西省",
+ "city": "抚州市",
+ "address": "江西省抚州市",
+ "longitude": 116.358054,
+ "latitude": 27.948979
+ },
+ {
+ "province": "江西省",
+ "city": "上饶市",
+ "address": "江西省上饶市",
+ "longitude": 117.943064,
+ "latitude": 28.455130
+ },
+ {
+ "province": "山东省",
+ "city": "济南市",
+ "address": "山东省济南市",
+ "longitude": 117.120128,
+ "latitude": 36.652069
+ },
+ {
+ "province": "山东省",
+ "city": "青岛市",
+ "address": "山东省青岛市",
+ "longitude": 120.382665,
+ "latitude": 36.066938
+ },
+ {
+ "province": "山东省",
+ "city": "淄博市",
+ "address": "山东省淄博市",
+ "longitude": 118.054994,
+ "latitude": 36.813787
+ },
+ {
+ "province": "山东省",
+ "city": "枣庄市",
+ "address": "山东省枣庄市",
+ "longitude": 117.323759,
+ "latitude": 34.810858
+ },
+ {
+ "province": "山东省",
+ "city": "东营市",
+ "address": "山东省东营市",
+ "longitude": 118.674633,
+ "latitude": 37.433992
+ },
+ {
+ "province": "山东省",
+ "city": "烟台市",
+ "address": "山东省烟台市",
+ "longitude": 121.447755,
+ "latitude": 37.464551
+ },
+ {
+ "province": "山东省",
+ "city": "潍坊市",
+ "address": "山东省潍坊市",
+ "longitude": 119.161721,
+ "latitude": 36.707668
+ },
+ {
+ "province": "山东省",
+ "city": "济宁市",
+ "address": "山东省济宁市",
+ "longitude": 116.587116,
+ "latitude": 35.415117
+ },
+ {
+ "province": "山东省",
+ "city": "泰安市",
+ "address": "山东省泰安市",
+ "longitude": 117.086963,
+ "latitude": 36.201784
+ },
+ {
+ "province": "山东省",
+ "city": "威海市",
+ "address": "山东省威海市",
+ "longitude": 122.120519,
+ "latitude": 37.513315
+ },
+ {
+ "province": "山东省",
+ "city": "日照市",
+ "address": "山东省日照市",
+ "longitude": 119.526850,
+ "latitude": 35.416912
+ },
+ {
+ "province": "山东省",
+ "city": "临沂市",
+ "address": "山东省临沂市",
+ "longitude": 118.356464,
+ "latitude": 35.103771
+ },
+ {
+ "province": "山东省",
+ "city": "德州市",
+ "address": "山东省德州市",
+ "longitude": 116.359244,
+ "latitude": 37.433992
+ },
+ {
+ "province": "山东省",
+ "city": "聊城市",
+ "address": "山东省聊城市",
+ "longitude": 115.985238,
+ "latitude": 36.455857
+ },
+ {
+ "province": "山东省",
+ "city": "滨州市",
+ "address": "山东省滨州市",
+ "longitude": 117.970731,
+ "latitude": 37.382687
+ },
+ {
+ "province": "山东省",
+ "city": "菏泽市",
+ "address": "山东省菏泽市",
+ "longitude": 115.479646,
+ "latitude": 35.234309
+ },
+ {
+ "province": "河南省",
+ "city": "郑州市",
+ "address": "河南省郑州市",
+ "longitude": 113.625351,
+ "latitude": 34.746303
+ },
+ {
+ "province": "河南省",
+ "city": "开封市",
+ "address": "河南省开封市",
+ "longitude": 114.314278,
+ "latitude": 34.798083
+ },
+ {
+ "province": "河南省",
+ "city": "洛阳市",
+ "address": "河南省洛阳市",
+ "longitude": 112.453895,
+ "latitude": 34.619702
+ },
+ {
+ "province": "河南省",
+ "city": "平顶山市",
+ "address": "河南省平顶山市",
+ "longitude": 113.192595,
+ "latitude": 33.766554
+ },
+ {
+ "province": "河南省",
+ "city": "安阳市",
+ "address": "河南省安阳市",
+ "longitude": 114.297305,
+ "latitude": 36.098779
+ },
+ {
+ "province": "河南省",
+ "city": "鹤壁市",
+ "address": "河南省鹤壁市",
+ "longitude": 114.297305,
+ "latitude": 35.748329
+ },
+ {
+ "province": "河南省",
+ "city": "新乡市",
+ "address": "河南省新乡市",
+ "longitude": 113.926790,
+ "latitude": 35.303589
+ },
+ {
+ "province": "河南省",
+ "city": "焦作市",
+ "address": "河南省焦作市",
+ "longitude": 113.241902,
+ "latitude": 35.215726
+ },
+ {
+ "province": "河南省",
+ "city": "濮阳市",
+ "address": "河南省濮阳市",
+ "longitude": 115.029246,
+ "latitude": 35.762731
+ },
+ {
+ "province": "河南省",
+ "city": "许昌市",
+ "address": "河南省许昌市",
+ "longitude": 113.852004,
+ "latitude": 34.037320
+ },
+ {
+ "province": "河南省",
+ "city": "漯河市",
+ "address": "河南省漯河市",
+ "longitude": 114.016600,
+ "latitude": 33.580380
+ },
+ {
+ "province": "河南省",
+ "city": "三门峡市",
+ "address": "河南省三门峡市",
+ "longitude": 111.200482,
+ "latitude": 34.773196
+ },
+ {
+ "province": "河南省",
+ "city": "南阳市",
+ "address": "河南省南阳市",
+ "longitude": 112.584753,
+ "latitude": 33.016102
+ },
+ {
+ "province": "河南省",
+ "city": "商丘市",
+ "address": "河南省商丘市",
+ "longitude": 115.656358,
+ "latitude": 34.415165
+ },
+ {
+ "province": "河南省",
+ "city": "信阳市",
+ "address": "河南省信阳市",
+ "longitude": 114.091058,
+ "latitude": 32.148624
+ },
+ {
+ "province": "河南省",
+ "city": "周口市",
+ "address": "河南省周口市",
+ "longitude": 114.701222,
+ "latitude": 33.634652
+ },
+ {
+ "province": "河南省",
+ "city": "驻马店市",
+ "address": "河南省驻马店市",
+ "longitude": 114.021988,
+ "latitude": 33.014038
+ },
+ {
+ "province": "湖北省",
+ "city": "武汉市",
+ "address": "湖北省武汉市",
+ "longitude": 114.304569,
+ "latitude": 30.593354
+ },
+ {
+ "province": "湖北省",
+ "city": "黄石市",
+ "address": "湖北省黄石市",
+ "longitude": 115.038999,
+ "latitude": 30.201082
+ },
+ {
+ "province": "湖北省",
+ "city": "十堰市",
+ "address": "湖北省十堰市",
+ "longitude": 110.798921,
+ "latitude": 32.629057
+ },
+ {
+ "province": "湖北省",
+ "city": "宜昌市",
+ "address": "湖北省宜昌市",
+ "longitude": 111.286962,
+ "latitude": 30.692170
+ },
+ {
+ "province": "湖北省",
+ "city": "襄阳市",
+ "address": "湖北省襄阳市",
+ "longitude": 112.121743,
+ "latitude": 32.010161
+ },
+ {
+ "province": "湖北省",
+ "city": "鄂州市",
+ "address": "湖北省鄂州市",
+ "longitude": 114.894909,
+ "latitude": 30.391461
+ },
+ {
+ "province": "湖北省",
+ "city": "荆门市",
+ "address": "湖北省荆门市",
+ "longitude": 112.199009,
+ "latitude": 31.035445
+ },
+ {
+ "province": "湖北省",
+ "city": "孝感市",
+ "address": "湖北省孝感市",
+ "longitude": 113.956962,
+ "latitude": 30.918311
+ },
+ {
+ "province": "湖北省",
+ "city": "荆州市",
+ "address": "湖北省荆州市",
+ "longitude": 112.241430,
+ "latitude": 30.336282
+ },
+ {
+ "province": "湖北省",
+ "city": "黄冈市",
+ "address": "湖北省黄冈市",
+ "longitude": 114.872425,
+ "latitude": 30.453722
+ },
+ {
+ "province": "湖北省",
+ "city": "咸宁市",
+ "address": "湖北省咸宁市",
+ "longitude": 114.322601,
+ "latitude": 29.841350
+ },
+ {
+ "province": "湖北省",
+ "city": "随州市",
+ "address": "湖北省随州市",
+ "longitude": 113.382324,
+ "latitude": 31.690275
+ },
+ {
+ "province": "湖北省",
+ "city": "恩施土家族苗族自治州",
+ "address": "湖北省恩施土家族苗族自治州",
+ "longitude": 109.488076,
+ "latitude": 30.272104
+ },
+ {
+ "province": "湖南省",
+ "city": "长沙市",
+ "address": "湖南省长沙市",
+ "longitude": 112.938882,
+ "latitude": 28.228304
+ },
+ {
+ "province": "湖南省",
+ "city": "株洲市",
+ "address": "湖南省株洲市",
+ "longitude": 113.132783,
+ "latitude": 27.828862
+ },
+ {
+ "province": "湖南省",
+ "city": "湘潭市",
+ "address": "湖南省湘潭市",
+ "longitude": 112.945439,
+ "latitude": 27.831360
+ },
+ {
+ "province": "湖南省",
+ "city": "衡阳市",
+ "address": "湖南省衡阳市",
+ "longitude": 112.572016,
+ "latitude": 26.894216
+ },
+ {
+ "province": "湖南省",
+ "city": "邵阳市",
+ "address": "湖南省邵阳市",
+ "longitude": 111.467855,
+ "latitude": 27.239528
+ },
+ {
+ "province": "湖南省",
+ "city": "岳阳市",
+ "address": "湖南省岳阳市",
+ "longitude": 113.128922,
+ "latitude": 29.356480
+ },
+ {
+ "province": "湖南省",
+ "city": "常德市",
+ "address": "湖南省常德市",
+ "longitude": 111.699050,
+ "latitude": 29.031446
+ },
+ {
+ "province": "湖南省",
+ "city": "张家界市",
+ "address": "湖南省张家界市",
+ "longitude": 110.478887,
+ "latitude": 29.117343
+ },
+ {
+ "province": "湖南省",
+ "city": "益阳市",
+ "address": "湖南省益阳市",
+ "longitude": 112.355994,
+ "latitude": 28.554853
+ },
+ {
+ "province": "湖南省",
+ "city": "郴州市",
+ "address": "湖南省郴州市",
+ "longitude": 113.015517,
+ "latitude": 25.770117
+ },
+ {
+ "province": "湖南省",
+ "city": "永州市",
+ "address": "湖南省永州市",
+ "longitude": 111.613482,
+ "latitude": 26.419861
+ },
+ {
+ "province": "湖南省",
+ "city": "怀化市",
+ "address": "湖南省怀化市",
+ "longitude": 110.001598,
+ "latitude": 27.569813
+ },
+ {
+ "province": "湖南省",
+ "city": "娄底市",
+ "address": "湖南省娄底市",
+ "longitude": 111.994468,
+ "latitude": 27.699838
+ },
+ {
+ "province": "广东省",
+ "city": "广州市",
+ "address": "广东省广州市",
+ "longitude": 113.264499,
+ "latitude": 23.130061
+ },
+ {
+ "province": "广东省",
+ "city": "韶关市",
+ "address": "广东省韶关市",
+ "longitude": 113.597324,
+ "latitude": 24.810977
+ },
+ {
+ "province": "广东省",
+ "city": "深圳市",
+ "address": "广东省深圳市",
+ "longitude": 114.057939,
+ "latitude": 22.543527
+ },
+ {
+ "province": "广东省",
+ "city": "珠海市",
+ "address": "广东省珠海市",
+ "longitude": 113.576892,
+ "latitude": 22.271644
+ },
+ {
+ "province": "广东省",
+ "city": "汕头市",
+ "address": "广东省汕头市",
+ "longitude": 116.681956,
+ "latitude": 23.354152
+ },
+ {
+ "province": "广东省",
+ "city": "佛山市",
+ "address": "广东省佛山市",
+ "longitude": 113.121586,
+ "latitude": 23.021351
+ },
+ {
+ "province": "广东省",
+ "city": "江门市",
+ "address": "广东省江门市",
+ "longitude": 113.081548,
+ "latitude": 22.578948
+ },
+ {
+ "province": "广东省",
+ "city": "湛江市",
+ "address": "广东省湛江市",
+ "longitude": 110.357538,
+ "latitude": 21.270108
+ },
+ {
+ "province": "广东省",
+ "city": "茂名市",
+ "address": "广东省茂名市",
+ "longitude": 110.925533,
+ "latitude": 21.662728
+ },
+ {
+ "province": "广东省",
+ "city": "肇庆市",
+ "address": "广东省肇庆市",
+ "longitude": 112.465245,
+ "latitude": 23.047747
+ },
+ {
+ "province": "广东省",
+ "city": "惠州市",
+ "address": "广东省惠州市",
+ "longitude": 114.415587,
+ "latitude": 23.112368
+ },
+ {
+ "province": "广东省",
+ "city": "梅州市",
+ "address": "广东省梅州市",
+ "longitude": 116.122046,
+ "latitude": 24.288832
+ },
+ {
+ "province": "广东省",
+ "city": "汕尾市",
+ "address": "广东省汕尾市",
+ "longitude": 115.375557,
+ "latitude": 22.787204
+ },
+ {
+ "province": "广东省",
+ "city": "河源市",
+ "address": "广东省河源市",
+ "longitude": 114.700215,
+ "latitude": 23.744276
+ },
+ {
+ "province": "广东省",
+ "city": "阳江市",
+ "address": "广东省阳江市",
+ "longitude": 111.983430,
+ "latitude": 21.856853
+ },
+ {
+ "province": "广东省",
+ "city": "清远市",
+ "address": "广东省清远市",
+ "longitude": 113.056098,
+ "latitude": 23.682064
+ },
+ {
+ "province": "广东省",
+ "city": "东莞市",
+ "address": "广东省东莞市",
+ "longitude": 113.751884,
+ "latitude": 23.021016
+ },
+ {
+ "province": "广东省",
+ "city": "中山市",
+ "address": "广东省中山市",
+ "longitude": 113.392517,
+ "latitude": 22.517024
+ },
+ {
+ "province": "广东省",
+ "city": "潮州市",
+ "address": "广东省潮州市",
+ "longitude": 116.621901,
+ "latitude": 23.657662
+ },
+ {
+ "province": "广东省",
+ "city": "揭阳市",
+ "address": "广东省揭阳市",
+ "longitude": 116.372732,
+ "latitude": 23.550968
+ },
+ {
+ "province": "广东省",
+ "city": "云浮市",
+ "address": "广东省云浮市",
+ "longitude": 112.044524,
+ "latitude": 22.915163
+ },
+ {
+ "province": "广西壮族自治区",
+ "city": "南宁市",
+ "address": "广西壮族自治区南宁市",
+ "longitude": 108.366407,
+ "latitude": 22.817700
+ },
+ {
+ "province": "广西壮族自治区",
+ "city": "柳州市",
+ "address": "广西壮族自治区柳州市",
+ "longitude": 109.428071,
+ "latitude": 24.326442
+ },
+ {
+ "province": "广西壮族自治区",
+ "city": "桂林市",
+ "address": "广西壮族自治区桂林市",
+ "longitude": 110.179752,
+ "latitude": 25.235615
+ },
+ {
+ "province": "广西壮族自治区",
+ "city": "梧州市",
+ "address": "广西壮族自治区梧州市",
+ "longitude": 111.279022,
+ "latitude": 23.476733
+ },
+ {
+ "province": "广西壮族自治区",
+ "city": "北海市",
+ "address": "广西壮族自治区北海市",
+ "longitude": 109.120248,
+ "latitude": 21.481305
+ },
+ {
+ "province": "广西壮族自治区",
+ "city": "防城港市",
+ "address": "广西壮族自治区防城港市",
+ "longitude": 108.354670,
+ "latitude": 21.686732
+ },
+ {
+ "province": "广西壮族自治区",
+ "city": "钦州市",
+ "address": "广西壮族自治区钦州市",
+ "longitude": 108.654355,
+ "latitude": 21.980894
+ },
+ {
+ "province": "广西壮族自治区",
+ "city": "贵港市",
+ "address": "广西壮族自治区贵港市",
+ "longitude": 109.598903,
+ "latitude": 23.111820
+ },
+ {
+ "province": "广西壮族自治区",
+ "city": "玉林市",
+ "address": "广西壮族自治区玉林市",
+ "longitude": 110.180970,
+ "latitude": 22.654001
+ },
+ {
+ "province": "广西壮族自治区",
+ "city": "百色市",
+ "address": "广西壮族自治区百色市",
+ "longitude": 106.618690,
+ "latitude": 23.903070
+ },
+ {
+ "province": "广西壮族自治区",
+ "city": "贺州市",
+ "address": "广西壮族自治区贺州市",
+ "longitude": 111.567216,
+ "latitude": 24.404182
+ },
+ {
+ "province": "广西壮族自治区",
+ "city": "河池市",
+ "address": "广西壮族自治区河池市",
+ "longitude": 108.636390,
+ "latitude": 24.485230
+ },
+ {
+ "province": "广西壮族自治区",
+ "city": "来宾市",
+ "address": "广西壮族自治区来宾市",
+ "longitude": 109.221243,
+ "latitude": 23.750105
+ },
+ {
+ "province": "广西壮族自治区",
+ "city": "崇左市",
+ "address": "广西壮族自治区崇左市",
+ "longitude": 107.364973,
+ "latitude": 22.377139
+ },
+ {
+ "province": "海南省",
+ "city": "海口市",
+ "address": "海南省海口市",
+ "longitude": 110.200162,
+ "latitude": 20.046316
+ },
+ {
+ "province": "海南省",
+ "city": "三亚市",
+ "address": "海南省三亚市",
+ "longitude": 109.511709,
+ "latitude": 18.252865
+ },
+ {
+ "province": "海南省",
+ "city": "三沙市",
+ "address": "海南省三沙市",
+ "longitude": 112.338649,
+ "latitude": 16.831004
+ },
+ {
+ "province": "海南省",
+ "city": "儋州市",
+ "address": "海南省儋州市",
+ "longitude": 109.580812,
+ "latitude": 19.520948
+ },
+ {
+ "province": "四川省",
+ "city": "成都市",
+ "address": "四川省成都市",
+ "longitude": 104.066301,
+ "latitude": 30.572961
+ },
+ {
+ "province": "四川省",
+ "city": "自贡市",
+ "address": "四川省自贡市",
+ "longitude": 104.779307,
+ "latitude": 29.339240
+ },
+ {
+ "province": "四川省",
+ "city": "攀枝花市",
+ "address": "四川省攀枝花市",
+ "longitude": 101.729116,
+ "latitude": 26.558645
+ },
+ {
+ "province": "四川省",
+ "city": "泸州市",
+ "address": "四川省泸州市",
+ "longitude": 105.441866,
+ "latitude": 28.870980
+ },
+ {
+ "province": "四川省",
+ "city": "德阳市",
+ "address": "四川省德阳市",
+ "longitude": 104.397795,
+ "latitude": 31.127449
+ },
+ {
+ "province": "四川省",
+ "city": "绵阳市",
+ "address": "四川省绵阳市",
+ "longitude": 104.679127,
+ "latitude": 31.467673
+ },
+ {
+ "province": "四川省",
+ "city": "广元市",
+ "address": "四川省广元市",
+ "longitude": 105.844004,
+ "latitude": 32.435774
+ },
+ {
+ "province": "四川省",
+ "city": "遂宁市",
+ "address": "四川省遂宁市",
+ "longitude": 105.592602,
+ "latitude": 30.532680
+ },
+ {
+ "province": "四川省",
+ "city": "内江市",
+ "address": "四川省内江市",
+ "longitude": 105.057992,
+ "latitude": 29.580210
+ },
+ {
+ "province": "四川省",
+ "city": "乐山市",
+ "address": "四川省乐山市",
+ "longitude": 103.766085,
+ "latitude": 29.552275
+ },
+ {
+ "province": "四川省",
+ "city": "南充市",
+ "address": "四川省南充市",
+ "longitude": 106.110565,
+ "latitude": 30.837235
+ },
+ {
+ "province": "四川省",
+ "city": "眉山市",
+ "address": "四川省眉山市",
+ "longitude": 103.848417,
+ "latitude": 30.077113
+ },
+ {
+ "province": "四川省",
+ "city": "宜宾市",
+ "address": "四川省宜宾市",
+ "longitude": 104.642826,
+ "latitude": 28.752354
+ },
+ {
+ "province": "四川省",
+ "city": "广安市",
+ "address": "四川省广安市",
+ "longitude": 106.632647,
+ "latitude": 30.456354
+ },
+ {
+ "province": "四川省",
+ "city": "达州市",
+ "address": "四川省达州市",
+ "longitude": 107.467780,
+ "latitude": 31.209278
+ },
+ {
+ "province": "四川省",
+ "city": "雅安市",
+ "address": "四川省雅安市",
+ "longitude": 103.041538,
+ "latitude": 30.009998
+ },
+ {
+ "province": "四川省",
+ "city": "巴中市",
+ "address": "四川省巴中市",
+ "longitude": 106.747548,
+ "latitude": 31.867853
+ },
+ {
+ "province": "四川省",
+ "city": "资阳市",
+ "address": "四川省资阳市",
+ "longitude": 104.627265,
+ "latitude": 30.129236
+ },
+ {
+ "province": "四川省",
+ "city": "阿坝藏族羌族自治州",
+ "address": "四川省阿坝藏族羌族自治州",
+ "longitude": 102.224504,
+ "latitude": 31.899427
+ },
+ {
+ "province": "四川省",
+ "city": "甘孜藏族自治州",
+ "address": "四川省甘孜藏族自治州",
+ "longitude": 101.962310,
+ "latitude": 30.049520
+ },
+ {
+ "province": "四川省",
+ "city": "凉山彝族自治州",
+ "address": "四川省凉山彝族自治州",
+ "longitude": 102.267713,
+ "latitude": 27.881396
+ },
+ {
+ "province": "贵州省",
+ "city": "贵阳市",
+ "address": "贵州省贵阳市",
+ "longitude": 106.628201,
+ "latitude": 26.646694
+ },
+ {
+ "province": "贵州省",
+ "city": "六盘水市",
+ "address": "贵州省六盘水市",
+ "longitude": 104.830357,
+ "latitude": 26.592538
+ },
+ {
+ "province": "贵州省",
+ "city": "遵义市",
+ "address": "贵州省遵义市",
+ "longitude": 107.031922,
+ "latitude": 27.721931
+ },
+ {
+ "province": "贵州省",
+ "city": "安顺市",
+ "address": "贵州省安顺市",
+ "longitude": 105.947600,
+ "latitude": 26.253103
+ },
+ {
+ "province": "贵州省",
+ "city": "毕节市",
+ "address": "贵州省毕节市",
+ "longitude": 105.291544,
+ "latitude": 27.283615
+ },
+ {
+ "province": "贵州省",
+ "city": "铜仁市",
+ "address": "贵州省铜仁市",
+ "longitude": 109.189528,
+ "latitude": 27.731555
+ },
+ {
+ "province": "贵州省",
+ "city": "黔西南布依族苗族自治州",
+ "address": "贵州省黔西南布依族苗族自治州",
+ "longitude": 104.906419,
+ "latitude": 25.087733
+ },
+ {
+ "province": "贵州省",
+ "city": "黔东南苗族侗族自治州",
+ "address": "贵州省黔东南苗族侗族自治州",
+ "longitude": 107.982838,
+ "latitude": 26.583759
+ },
+ {
+ "province": "贵州省",
+ "city": "黔南布依族苗族自治州",
+ "address": "贵州省黔南布依族苗族自治州",
+ "longitude": 107.522303,
+ "latitude": 26.253136
+ },
+ {
+ "province": "云南省",
+ "city": "昆明市",
+ "address": "云南省昆明市",
+ "longitude": 102.833669,
+ "latitude": 24.881490
+ },
+ {
+ "province": "云南省",
+ "city": "曲靖市",
+ "address": "云南省曲靖市",
+ "longitude": 103.796288,
+ "latitude": 25.490866
+ },
+ {
+ "province": "云南省",
+ "city": "玉溪市",
+ "address": "云南省玉溪市",
+ "longitude": 102.526673,
+ "latitude": 24.346786
+ },
+ {
+ "province": "云南省",
+ "city": "保山市",
+ "address": "云南省保山市",
+ "longitude": 99.161489,
+ "latitude": 25.112018
+ },
+ {
+ "province": "云南省",
+ "city": "昭通市",
+ "address": "云南省昭通市",
+ "longitude": 103.717078,
+ "latitude": 27.338185
+ },
+ {
+ "province": "云南省",
+ "city": "丽江市",
+ "address": "云南省丽江市",
+ "longitude": 100.225936,
+ "latitude": 26.855165
+ },
+ {
+ "province": "云南省",
+ "city": "普洱市",
+ "address": "云南省普洱市",
+ "longitude": 100.966011,
+ "latitude": 22.825229
+ },
+ {
+ "province": "云南省",
+ "city": "临沧市",
+ "address": "云南省临沧市",
+ "longitude": 100.088837,
+ "latitude": 23.884175
+ },
+ {
+ "province": "云南省",
+ "city": "楚雄彝族自治州",
+ "address": "云南省楚雄彝族自治州",
+ "longitude": 101.528304,
+ "latitude": 25.045678
+ },
+ {
+ "province": "云南省",
+ "city": "红河哈尼族彝族自治州",
+ "address": "云南省红河哈尼族彝族自治州",
+ "longitude": 103.374873,
+ "latitude": 23.363129
+ },
+ {
+ "province": "云南省",
+ "city": "文山壮族苗族自治州",
+ "address": "云南省文山壮族苗族自治州",
+ "longitude": 104.215670,
+ "latitude": 23.400983
+ },
+ {
+ "province": "云南省",
+ "city": "西双版纳傣族自治州",
+ "address": "云南省西双版纳傣族自治州",
+ "longitude": 100.797002,
+ "latitude": 22.009037
+ },
+ {
+ "province": "云南省",
+ "city": "大理白族自治州",
+ "address": "云南省大理白族自治州",
+ "longitude": 100.267608,
+ "latitude": 25.606548
+ },
+ {
+ "province": "云南省",
+ "city": "德宏傣族景颇族自治州",
+ "address": "云南省德宏傣族景颇族自治州",
+ "longitude": 98.585621,
+ "latitude": 24.433146
+ },
+ {
+ "province": "云南省",
+ "city": "怒江傈僳族自治州",
+ "address": "云南省怒江傈僳族自治州",
+ "longitude": 98.856600,
+ "latitude": 25.817555
+ },
+ {
+ "province": "云南省",
+ "city": "迪庆藏族自治州",
+ "address": "云南省迪庆藏族自治州",
+ "longitude": 99.702110,
+ "latitude": 27.819149
+ },
+ {
+ "province": "西藏自治区",
+ "city": "拉萨市",
+ "address": "西藏自治区拉萨市",
+ "longitude": 91.171924,
+ "latitude": 29.653491
+ },
+ {
+ "province": "西藏自治区",
+ "city": "日喀则市",
+ "address": "西藏自治区日喀则市",
+ "longitude": 88.880423,
+ "latitude": 29.266838
+ },
+ {
+ "province": "西藏自治区",
+ "city": "昌都市",
+ "address": "西藏自治区昌都市",
+ "longitude": 97.170425,
+ "latitude": 31.142879
+ },
+ {
+ "province": "西藏自治区",
+ "city": "林芝市",
+ "address": "西藏自治区林芝市",
+ "longitude": 94.361436,
+ "latitude": 29.648750
+ },
+ {
+ "province": "西藏自治区",
+ "city": "山南市",
+ "address": "西藏自治区山南市",
+ "longitude": 91.771426,
+ "latitude": 29.237722
+ },
+ {
+ "province": "西藏自治区",
+ "city": "那曲市",
+ "address": "西藏自治区那曲市",
+ "longitude": 92.051510,
+ "latitude": 31.477905
+ },
+ {
+ "province": "西藏自治区",
+ "city": "阿里地区",
+ "address": "西藏自治区阿里地区",
+ "longitude": 80.105786,
+ "latitude": 32.500987
+ },
+ {
+ "province": "陕西省",
+ "city": "西安市",
+ "address": "陕西省西安市",
+ "longitude": 108.939645,
+ "latitude": 34.343207
+ },
+ {
+ "province": "陕西省",
+ "city": "铜川市",
+ "address": "陕西省铜川市",
+ "longitude": 108.945116,
+ "latitude": 34.897133
+ },
+ {
+ "province": "陕西省",
+ "city": "宝鸡市",
+ "address": "陕西省宝鸡市",
+ "longitude": 107.237682,
+ "latitude": 34.362862
+ },
+ {
+ "province": "陕西省",
+ "city": "咸阳市",
+ "address": "陕西省咸阳市",
+ "longitude": 108.708837,
+ "latitude": 34.329896
+ },
+ {
+ "province": "陕西省",
+ "city": "渭南市",
+ "address": "陕西省渭南市",
+ "longitude": 109.470962,
+ "latitude": 34.520632
+ },
+ {
+ "province": "陕西省",
+ "city": "延安市",
+ "address": "陕西省延安市",
+ "longitude": 109.494680,
+ "latitude": 36.650109
+ },
+ {
+ "province": "陕西省",
+ "city": "汉中市",
+ "address": "陕西省汉中市",
+ "longitude": 107.023190,
+ "latitude": 33.066373
+ },
+ {
+ "province": "陕西省",
+ "city": "榆林市",
+ "address": "陕西省榆林市",
+ "longitude": 109.734104,
+ "latitude": 38.285760
+ },
+ {
+ "province": "陕西省",
+ "city": "安康市",
+ "address": "陕西省安康市",
+ "longitude": 109.029017,
+ "latitude": 32.685435
+ },
+ {
+ "province": "陕西省",
+ "city": "商洛市",
+ "address": "陕西省商洛市",
+ "longitude": 109.918646,
+ "latitude": 33.873358
+ },
+ {
+ "province": "甘肃省",
+ "city": "兰州市",
+ "address": "甘肃省兰州市",
+ "longitude": 103.834228,
+ "latitude": 36.060798
+ },
+ {
+ "province": "甘肃省",
+ "city": "嘉峪关市",
+ "address": "甘肃省嘉峪关市",
+ "longitude": 98.288200,
+ "latitude": 39.773250
+ },
+ {
+ "province": "甘肃省",
+ "city": "金昌市",
+ "address": "甘肃省金昌市",
+ "longitude": 102.187972,
+ "latitude": 38.521468
+ },
+ {
+ "province": "甘肃省",
+ "city": "白银市",
+ "address": "甘肃省白银市",
+ "longitude": 104.138872,
+ "latitude": 36.545123
+ },
+ {
+ "province": "甘肃省",
+ "city": "天水市",
+ "address": "甘肃省天水市",
+ "longitude": 105.724828,
+ "latitude": 34.581514
+ },
+ {
+ "province": "甘肃省",
+ "city": "武威市",
+ "address": "甘肃省武威市",
+ "longitude": 102.637821,
+ "latitude": 37.928980
+ },
+ {
+ "province": "甘肃省",
+ "city": "张掖市",
+ "address": "甘肃省张掖市",
+ "longitude": 100.449858,
+ "latitude": 38.924766
+ },
+ {
+ "province": "甘肃省",
+ "city": "平凉市",
+ "address": "甘肃省平凉市",
+ "longitude": 106.664913,
+ "latitude": 35.542417
+ }
+]
\ No newline at end of file
diff --git a/src/views/dashboard/index copy.vue b/src/views/dashboard/index copy.vue
new file mode 100644
index 0000000..c3b998b
--- /dev/null
+++ b/src/views/dashboard/index copy.vue
@@ -0,0 +1,1219 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+

+
+
+
+
校友总数
+
{{ schoolmate_total }}
+
+
+
+
+
+

+
+
+
+
2025年校友数
+
{{ schoolmate_year }}
+
+
+
+
+
+
+
+
+
+
+
+
课堂分类
+
+
+
+
+ {{ item.name }} {{ item.percentage }}%
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+

+
+
+
开课场次
+
{{course_total}}
+
+
+
+
+
+
+
+
+
+
+
+

+
+
+
开课天数
+
{{course_day_total}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+

+
+
+
{{currentYear}}
+
开课场次
+
{{course_year_total}}
+
+
+
+
+
+
+
+
+
+
+
+

+
+
+
{{currentYear}}
+
开课天数
+
{{course_year_day_total}}
+
+
+
+
+
+
+
+
+
+
+
+
+
校友企业所属领域
+
+
+
+
+ {{ index + 1 }}
+
+
{{ item.name }}
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/dashboard/index.vue b/src/views/dashboard/index.vue
index c3b998b..d3a6211 100644
--- a/src/views/dashboard/index.vue
+++ b/src/views/dashboard/index.vue
@@ -1,187 +1,259 @@
-
-
+
-
-
-
-
-
-
-
-
-

-
+
+
-
校友总数
{{ schoolmate_total }}
+
校友总数
-
-
-

-
+
+
-
2025年校友数
{{ schoolmate_year }}
+
2025年新增校友
+
+
+
+
+
+
+
+
+
{{ yuanhe_company }}
+
元禾投后企业
+
+
+
+
+
{{ yuanhe_employee }}
+
元禾员工参与
+
+
+
+
+
{{ city_cadre }}
+
全市干部参与
+
+
+
+
+
+
+
"三个全覆盖"完成度
+
+
{{ item.title }}
+
+
+
+ {{ item.current }}{{ item.unit }}
+
+
+
+
{{ item.total }}{{ item.unit }}
-
-
-
-
-
-
-
-
课堂分类
-
-
-
-
-
{{ item.name }} {{ item.percentage }}%
+
+
+
+ 本月课程
+
+
+
+
+
+
{{ course.name }}
+
{{ course.location }}
+
{{ course.teacher }}
+
+
-
-
-
-
-
-
-
-
-
-
苏州地区校友分布
+
+
+
+
+
+
-
-
+
+
+
+
+
+
+
+
+
![timeline-flag]()
+
+
+
+
+
+
+
+
+
![timeline-flag]()
+
+
{{ item.time }}
+
+
+
+
+
+
+
+
+
+
课程体系数据总览
+
+
+
+
+
+
{{ item.name }}
+
{{ item.sessions }}期
+
{{ item.people }}人
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-

-
-
-
开课场次
-
{{course_total}}
-
+
+
+
-
-
-
-
-
-
-
-
-

-
-
-
开课天数
-
{{course_day_total}}
+
+
+
+

+
+
+
![]()
+
+
+
+
+ 校友数: {{ item.value }}
+
+
+
-
-
-
-
-
-
-
-
-
-
-

-
-
-
{{currentYear}}
-
开课场次
-
{{course_year_total}}
-
+
+
+ NO.{{ index + 1 + rankingPageIndex * 3 }}
+ {{ item.name }}
+ {{ item.value }}
-
-
-
-
-
-
-
-
-

-
-
-
{{currentYear}}
-
开课天数
-
{{course_year_day_total}}
-
+
+
+ NO.{{ index + 1 + nationalRankingPageIndex * 3 }}
+ {{ item.name }}
+ {{ item.value }}
-
-
-
-
-
-
-
-
校友企业所属领域
-
-
-
-
- {{ index + 1 }}
-
-
{{ item.name }}
-
-
-
-
{{ item.value }}
+
+
+
+
@@ -192,1028 +264,2127 @@
+ // 绘制全国城市标记
+ renderNationalCities() {
+ if (!this.nationalMapInstance || !(window && window.AMap)) return
+ if (this.nationalMarkers.length) {
+ this.nationalMapInstance.remove(this.nationalMarkers)
+ this.nationalMarkers = []
+ }
+ this.nationalMapData.forEach(city => {
+ if (!city.lnglat || city.lnglat.length !== 2) return
+ const marker = new window.AMap.Marker({
+ position: city.lnglat,
+ anchor: 'bottom-center',
+ content: this.createMarkerContent(city),
+ offset: new window.AMap.Pixel(0, -20),
+ bubble: true
+ })
+ this.nationalMapInstance.add(marker)
+ this.nationalMarkers.push(marker)
+ })
+ },
-
diff --git a/src/views/statistics/index.vue b/src/views/statistics/index.vue
index 3b40e63..1b29277 100644
--- a/src/views/statistics/index.vue
+++ b/src/views/statistics/index.vue
@@ -1,6 +1,6 @@
-
+
@@ -69,6 +69,7 @@
+
@@ -104,6 +105,12 @@
+
+ 累计:
+ 培养人数(未去重):{{ courseDetailSummary.totalPeople }}
+ 培养人数(课程体系内已去重):{{ courseDetailSummary.uniquePeople }}
+ 课程培养人数:{{ courseDetailSummary.coursePeople }}
+
@@ -115,9 +122,14 @@
区域明细统计
-
- 导出数据
-
+
+
+ 导出区域明细数据
+
+
+ 导出数据
+
+
@@ -125,6 +137,11 @@
+
+ 累计:
+ 培养人数(未去重):{{ regionSummary.totalPeople }}
+ 培养人数(已去重):{{ regionSummary.uniquePeople }}
+
@@ -134,7 +151,7 @@
@@ -322,12 +455,27 @@
/* 校友信息子列每个用户的分隔样式 */
.user-item {
- padding: 6px 0;
- border-bottom: 1px dashed #dcdfe6;
+ padding: 0;
+ margin: 0;
line-height: 1.2;
word-break: break-all;
+ display: flex;
+ flex-direction: column;
+ box-sizing: border-box;
+ border-bottom: 1px dashed #dcdfe6;
}
.user-item:last-child {
border-bottom: none;
}
+ /* 统一的单元格行样式,确保所有列的行高一致 */
+ .user-cell-row {
+ height: 40px;
+ line-height: 28px;
+ padding: 6px 0;
+ margin: 0;
+ box-sizing: border-box;
+ display: flex;
+ align-items: center;
+ flex-shrink: 0;
+ }
diff --git a/src/views/student/search.vue b/src/views/student/search.vue
index b2e7cfe..8c5b7a5 100644
--- a/src/views/student/search.vue
+++ b/src/views/student/search.vue
@@ -134,9 +134,9 @@
{changeSelectType(e,'company_type')}" multiple collapse-tags
placeholder="请选择企业资质" clearable>
-
-
+
+
@@ -660,4 +660,4 @@
}
}
-
\ No newline at end of file
+
diff --git a/src/views/timeEvent/components/addTimeEvent.vue b/src/views/timeEvent/components/addTimeEvent.vue
new file mode 100644
index 0000000..770a309
--- /dev/null
+++ b/src/views/timeEvent/components/addTimeEvent.vue
@@ -0,0 +1,150 @@
+
+
+
+
+
+
+
+
diff --git a/src/views/timeEvent/index.vue b/src/views/timeEvent/index.vue
new file mode 100644
index 0000000..c70b9da
--- /dev/null
+++ b/src/views/timeEvent/index.vue
@@ -0,0 +1,146 @@
+
+
+
+
+
+
+
+
+
+
+
+ 查询
+
+
+ 新增
+
+
+
+
+
+
+
+
+
+
+
+
+ 编辑
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/user_statistics_config_json结构说明.md b/user_statistics_config_json结构说明.md
new file mode 100644
index 0000000..a42822e
--- /dev/null
+++ b/user_statistics_config_json结构说明.md
@@ -0,0 +1,550 @@
+# 用户统计数据配置 JSON 结构说明
+
+## 概述
+
+`user_statistics_configs` 表的 `config_json` 字段用于存储动态统计配置,包含三个主要部分:数据来源、条件设置、统计方式。
+
+## JSON 结构
+
+```json
+{
+ "data_source": {
+ "main_model": "user|company|course_sign|course|course_type",
+ "relations": ["user", "company", "course_sign", "course", "course_type"]
+ },
+ "conditions": {
+ "logic": "and|or",
+ "items": [
+ {
+ "key": "字段名",
+ "operator": "操作类型",
+ "value": "值"
+ }
+ ]
+ },
+ "statistics": {
+ "type": "sum|max|min|count|count_distinct",
+ "field": "统计字段(sum/max/min 时使用,可选)",
+ "distinct_field": "去重字段(count_distinct 时使用,可选)",
+ "group_by": "分组字段(可选,不设置则不分组)",
+ "order_by": {
+ "field": "排序字段(可选)",
+ "direction": "asc|desc"
+ }
+ }
+}
+```
+
+---
+
+## 一、数据来源(data_source)
+
+### 1.1 主模型(main_model)
+
+**说明**:指定统计数据的主要来源模型。
+
+**可选值**:
+- `user` - 用户模型
+- `company` - 公司模型
+- `course_sign` - 报名模型
+- `course` - 课程模型
+- `course_type` - 课程分类模型
+
+**示例**:
+```json
+{
+ "main_model": "user"
+}
+```
+
+### 1.2 关联模型(relations)
+
+**说明**:指定需要关联的其他模型,可以关联多个模型。
+
+**可选值**(数组):
+- `user` - 用户模型
+- `company` - 公司模型
+- `course_sign` - 报名模型
+- `course` - 课程模型
+- `course_type` - 课程分类模型
+
+**注意**:
+- 关联模型不能包含主模型本身
+- 可以关联多个模型
+- 数组可以为空
+
+**示例**:
+```json
+{
+ "relations": ["company", "course_sign"]
+}
+```
+
+---
+
+## 二、条件设置(conditions)
+
+### 2.1 逻辑关系(logic)
+
+**说明**:指定多个条件之间的逻辑关系。
+
+**可选值**:
+- `and` - 所有条件都必须满足(AND)
+- `or` - 至少一个条件满足(OR)
+
+**示例**:
+```json
+{
+ "logic": "and"
+}
+```
+
+### 2.2 条件项(items)
+
+**说明**:条件数组,每个条件包含键名、操作类型和值。
+
+**条件项结构**:
+```json
+{
+ "key": "字段名",
+ "operator": "操作类型",
+ "value": "值"
+}
+```
+
+#### 字段说明
+
+- **key**(字符串):要查询的字段名
+ - 可以是主模型的字段
+ - 可以是关联模型的字段(使用点号分隔,如 `company.name`)
+
+- **operator**(字符串):操作类型
+ - `eq` - 等于
+ - `neq` - 不等于
+ - `gt` - 大于
+ - `egt` - 大于等于
+ - `lt` - 小于
+ - `elt` - 小于等于
+ - `like` - 模糊匹配
+ - `notlike` - 不匹配
+ - `in` - 在范围内(值为逗号分隔的字符串)
+ - `notin` - 不在范围内
+ - `between` - 在范围内(值为逗号分隔的两个值)
+ - `notbetween` - 不在范围内
+ - `isnull` - 为空(value 可省略)
+ - `isnotnull` - 不为空(value 可省略)
+
+- **value**(字符串/数字/数组):条件值
+ - 根据操作类型不同,值的形式也不同
+ - `in` 操作:值为逗号分隔的字符串,如 `"1,2,3"`
+ - `between` 操作:值为逗号分隔的两个值,如 `"2024-01-01,2024-12-31"`
+ - `isnull` 和 `isnotnull` 操作:value 可以省略
+
+**示例**:
+
+```json
+{
+ "logic": "and",
+ "items": [
+ {
+ "key": "is_schoolmate",
+ "operator": "eq",
+ "value": "1"
+ },
+ {
+ "key": "company.is_yh_invested",
+ "operator": "eq",
+ "value": "1"
+ },
+ {
+ "key": "created_at",
+ "operator": "between",
+ "value": "2024-01-01,2024-12-31"
+ }
+ ]
+}
+```
+
+---
+
+## 三、统计方式(statistics)
+
+### 3.1 统计类型(type)
+
+**说明**:指定统计的方式。
+
+**可选值**:
+- `sum` - 求和(需要指定 `field` 字段)
+- `max` - 最大值(需要指定 `field` 字段)
+- `min` - 最小值(需要指定 `field` 字段)
+- `count` - 统计总数量(不需要指定 `field` 字段)
+- `count_distinct` - 统计去重数量(需要指定 `distinct_field` 字段)
+
+**示例**:
+```json
+{
+ "type": "count"
+}
+```
+
+### 3.2 统计字段(field)
+
+**说明**:当统计类型为 `sum`、`max` 或 `min` 时,指定要统计的字段名。
+
+**注意**:
+- `type` 为 `sum`、`max`、`min` 时必须指定 `field`
+- `type` 为 `count` 时可以省略 `field`
+- 可以是主模型的字段
+- 可以是关联模型的字段(使用点号分隔,如 `company.company_fund`)
+
+**示例**:
+```json
+{
+ "type": "sum",
+ "field": "company_fund"
+}
+```
+
+```json
+{
+ "type": "max",
+ "field": "company.company_fund"
+}
+```
+
+```json
+{
+ "type": "min",
+ "field": "created_at"
+}
+```
+
+### 3.3 去重字段(distinct_field)
+
+**说明**:当统计类型为 `count_distinct` 时,指定要去重的字段名。
+
+**注意**:
+- `type` 为 `count_distinct` 时必须指定 `distinct_field`
+- 可以是主模型的字段
+- 可以是关联模型的字段(使用点号分隔,如 `user.mobile`)
+- **可以与 `group_by` 同时使用**:可以按某个字段分组,然后统计每个分组的去重数量
+
+**示例1:不分组去重统计**
+```json
+{
+ "type": "count_distinct",
+ "distinct_field": "mobile"
+}
+```
+
+**示例2:关联模型字段去重**
+```json
+{
+ "type": "count_distinct",
+ "distinct_field": "user.mobile"
+}
+```
+
+**示例3:分组 + 去重统计(组合使用)**
+```json
+{
+ "type": "count_distinct",
+ "distinct_field": "user.mobile",
+ "group_by": "course.type"
+}
+```
+
+### 3.4 分组字段(group_by)
+
+**说明**:指定按哪个字段进行分组统计。这是一个可选配置,可以选择不分组或选择具体的分组字段。
+
+**配置选项**:
+- **不分组**:不设置 `group_by` 字段,或设置为 `null`,将返回所有符合条件的记录列表
+- **按字段分组**:设置具体的分组字段,将按该字段进行分组统计
+
+**分组字段格式**:
+- 可以是主模型的字段(如:`company_area`)
+- 可以是关联模型的字段(使用点号分隔,如 `company.company_area`)
+
+**示例1:不分组统计**
+```json
+{
+ "statistics": {
+ "type": "count"
+ // 不设置 group_by,表示不分组
+ }
+}
+```
+
+**示例2:按主模型字段分组**
+```json
+{
+ "statistics": {
+ "type": "count",
+ "group_by": "company_area"
+ }
+}
+```
+
+**示例3:按关联模型字段分组**
+```json
+{
+ "statistics": {
+ "type": "count",
+ "group_by": "company.company_area"
+ }
+}
+```
+
+**示例4:分组 + 去重统计(组合使用)**
+```json
+{
+ "statistics": {
+ "type": "count_distinct",
+ "distinct_field": "user.mobile",
+ "group_by": "course.type"
+ }
+}
+```
+
+### 3.4 排序方式(order_by)
+
+**说明**:指定结果的排序方式。
+
+**结构**:
+```json
+{
+ "field": "排序字段",
+ "direction": "asc|desc"
+}
+```
+
+**字段说明**:
+- **field**(字符串):排序字段名
+ - 可以是主模型的字段
+ - 可以是关联模型的字段(使用点号分隔)
+ - 可以是统计结果字段(如 `total`、`count`)
+
+- **direction**(字符串):排序方向
+ - `asc` - 升序
+ - `desc` - 降序
+
+**示例**:
+```json
+{
+ "order_by": {
+ "field": "total",
+ "direction": "desc"
+ }
+}
+```
+
+---
+
+## 完整示例
+
+### 示例1:统计各区域的校友人数
+
+```json
+{
+ "data_source": {
+ "main_model": "user",
+ "relations": ["company"]
+ },
+ "conditions": {
+ "logic": "and",
+ "items": [
+ {
+ "key": "is_schoolmate",
+ "operator": "eq",
+ "value": "1"
+ },
+ {
+ "key": "created_at",
+ "operator": "between",
+ "value": "2024-01-01,2024-12-31"
+ }
+ ]
+ },
+ "statistics": {
+ "type": "count",
+ "group_by": "company.company_area",
+ "order_by": {
+ "field": "count",
+ "direction": "desc"
+ }
+ }
+}
+```
+
+### 示例2:统计各课程类型的报名人数
+
+```json
+{
+ "data_source": {
+ "main_model": "course_sign",
+ "relations": ["course", "user"]
+ },
+ "conditions": {
+ "logic": "and",
+ "items": [
+ {
+ "key": "status",
+ "operator": "eq",
+ "value": "1"
+ },
+ {
+ "key": "created_at",
+ "operator": "between",
+ "value": "2024-01-01,2024-12-31"
+ }
+ ]
+ },
+ "statistics": {
+ "type": "count",
+ "group_by": "course.type",
+ "order_by": {
+ "field": "count",
+ "direction": "desc"
+ }
+ }
+}
+```
+
+### 示例3:统计各公司的融资总额
+
+```json
+{
+ "data_source": {
+ "main_model": "company",
+ "relations": ["user"]
+ },
+ "conditions": {
+ "logic": "and",
+ "items": [
+ {
+ "key": "is_yh_invested",
+ "operator": "eq",
+ "value": "1"
+ },
+ {
+ "key": "company_fund",
+ "operator": "isnotnull"
+ }
+ ]
+ },
+ "statistics": {
+ "type": "sum",
+ "field": "company_fund",
+ "group_by": "company_area",
+ "order_by": {
+ "field": "total",
+ "direction": "desc"
+ }
+ }
+}
+```
+
+### 示例4:统计审核通过或待审核的报名人数
+
+```json
+{
+ "data_source": {
+ "main_model": "course_sign",
+ "relations": []
+ },
+ "conditions": {
+ "logic": "or",
+ "items": [
+ {
+ "key": "status",
+ "operator": "eq",
+ "value": "0"
+ },
+ {
+ "key": "status",
+ "operator": "eq",
+ "value": "1"
+ }
+ ]
+ },
+ "statistics": {
+ "type": "count",
+ "order_by": {
+ "field": "created_at",
+ "direction": "desc"
+ }
+ }
+}
+```
+
+### 示例5:统计各课程类型的去重培养人数(按手机号去重)
+
+```json
+{
+ "data_source": {
+ "main_model": "course_sign",
+ "relations": ["user", "course"]
+ },
+ "conditions": {
+ "logic": "and",
+ "items": [
+ {
+ "key": "status",
+ "operator": "eq",
+ "value": "1"
+ },
+ {
+ "key": "created_at",
+ "operator": "between",
+ "value": "2020-01-01," . date('Y-m-d')
+ }
+ ]
+ },
+ "statistics": {
+ "type": "count_distinct",
+ "distinct_field": "user.mobile",
+ "group_by": "course.type",
+ "order_by": {
+ "field": "total",
+ "direction": "desc"
+ }
+ }
+}
+```
+
+---
+
+## 注意事项
+
+1. **字段引用**:
+ - 主模型字段直接使用字段名
+ - 关联模型字段使用 `模型名.字段名` 格式
+ - 例如:`company.name`、`course.type`
+
+2. **数据类型**:
+ - 所有值在 JSON 中都存储为字符串
+ - 系统会根据字段类型自动转换
+
+3. **条件逻辑**:
+ - `and` 表示所有条件都必须满足
+ - `or` 表示至少一个条件满足
+ - 条件数组可以为空(表示无条件)
+
+4. **统计字段**:
+ - `sum` 类型必须指定 `field`
+ - `count` 类型不需要 `field`
+ - 分组字段可以为空(表示不分组)
+
+5. **排序字段**:
+ - 可以按任意字段排序
+ - 可以按统计结果字段排序(如 `total`、`count`)
+ - 排序字段可以为空(使用默认排序)
+
+---
+
+## 文档版本
+
+- **创建日期**:2025-11-19
+- **最后更新**:2025-11-19
+
diff --git a/vue.config.js b/vue.config.js
index 680480d..19d070b 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -27,8 +27,10 @@ module.exports = {
*
*/
publicPath: process.env.ENV === 'staging' ? '/admin' : '/admin',
- // outputDir: '/Users/mac/Documents/朗业/2025/s-苏州科技商学院/wx.sstbc.com/public/admin',
- outputDir: '/Users/mac/Documents/朗业/2024/s-苏州科技商学院/wx.sstbc.com/public/admin',
+ // 测试
+ outputDir: '/Users/mac/Documents/朗业/2025/s-苏州科技商学院/wx.sstbc.com/public/admin',
+// 正式
+ // outputDir: '/Users/mac/Documents/朗业/2024/s-苏州科技商学院/wx.sstbc.com/public/admin',
assetsDir: 'static',
css: {
loaderOptions: { // 向 CSS 相关的 loader 传递选项