From 0adf07d631aea75202fd93337693677db62f1c90 Mon Sep 17 00:00:00 2001
From: zhangyanpeng <bob.zhang@highdatas.com>
Date: 星期六, 03 八月 2024 12:37:02 +0800
Subject: [PATCH] 调整

---
 module/report/page/channelCustomerLayoutStructure.html         | 1145 ++++++++
 module/flow/page/flowStock.html                                |  528 +++
 module/md/page/customer/page/customer_basic.html               |  238 +
 module/target/page/customer_target_list.html                   |    4 
 module/flow/page/flow_purchase_list.html                       |    2 
 module/flow/page/flow_inventory_list.html                      |    2 
 module/md/page/customer/page/evaluation_management.html        |    6 
 module/flow/page/flowPurchase.html                             |  635 ++++
 module/flow/page/flowSales.html                                |  634 ++++
 module/visit/page/script_list.html                             |    4 
 module/md/page/terminal/page/hospital_list.html                |  157 +
 module/md/page/customer/page/customer_list_authorization.html  |    4 
 module/system/page/main.html                                   |   24 
 module/visit/page/visit_schedule_list.html                     |   78 
 module/report/page/overallChannelSalesProgress.html            | 2025 ++++++++++++++
 module/md/page/customer/page/customer_list_agreement_edit.html |   10 
 module/report/page/report_list_detail.html                     |    6 
 module/md/page/customer/page/channel_relationship.html         |    6 
 js/myelement.js                                                |    4 
 module/report/page/channelInventoryComposition.html            |  848 +++++
 module/report/page/salesPerformance.html                       |  492 +++
 module/report/page/netProgress.html                            | 1294 +++++++++
 module/visit/page/visit_log_list.html                          |    2 
 js/config.js                                                   |    2 
 module/target/page/terminal_target_list.html                   |    8 
 module/report/page/report_list.html                            |  387 --
 26 files changed, 8,097 insertions(+), 448 deletions(-)

diff --git a/js/config.js b/js/config.js
index fbde41f..e72d157 100644
--- a/js/config.js
+++ b/js/config.js
@@ -14,7 +14,7 @@
 
 
 config = {
-	jscssversion: "2024072901", //.js/.css鏂囦欢鐨勭増鏈彿锛屽幓闄ゅ墠绔紦瀛樼殑涓�绉嶆満鍒�
+	jscssversion: "2024080201", //.js/.css鏂囦欢鐨勭増鏈彿锛屽幓闄ゅ墠绔紦瀛樼殑涓�绉嶆満鍒�
 	isupgrading: false, //鏄惁鍗囩骇涓�
 	appName: "TPP",
 	title: "钀ラ攢涓�浣撳寲杩愯惀骞冲彴",
diff --git a/js/myelement.js b/js/myelement.js
index 45e76e4..4a7bc36 100644
--- a/js/myelement.js
+++ b/js/myelement.js
@@ -3060,8 +3060,8 @@
 				})
 				
 				// 琛ㄦ牸瀛楁鍒嗙粍锛屾牴鎹畉ableformgroup鍒ゆ柇tablegroupname鏄惁琛ㄦ牸鍗曞厓鏍间腑鐨勮〃鍗曞垎缁� 
-				// me_tableFields = listTOTableFieldsGroupByType(me_tableFields);
-				me_tableFields = listTOTableFieldsGroupByType(me.showTableFields);
+				me_tableFields = listTOTableFieldsGroupByType(me_tableFields);
+				// me_tableFields = listTOTableFieldsGroupByType(me.showTableFields);
 				
 			}
 			me_tableFields.map(t=>{
diff --git a/module/flow/page/flowPurchase.html b/module/flow/page/flowPurchase.html
new file mode 100644
index 0000000..2f7d0dd
--- /dev/null
+++ b/module/flow/page/flowPurchase.html
@@ -0,0 +1,635 @@
+<!doctype html>
+<html>
+	<head>
+		<meta charset="utf-8"><meta http-equiv="Expires" content="0"><meta http-equiv="Pragma" content="no-cache"><meta http-equiv="Cache-control" content="no-cache"><meta http-equiv="Cache" content="no-cache">
+		<title>閲囪喘娴佸悜</title>
+		
+		<script type="text/javascript">
+			function loadJsCss(callback) {
+				var jscss_urls = [];
+				window.top.initJsCss(document, jscss_urls, callback);
+			};
+			
+			function initVue() {
+				new TabTableVue({
+					el: "#vbody",
+					data: {
+						title: "閲囪喘娴佸悜",
+						//Tab椤硅缃�
+						tabs_d: [
+							{code: "monthflow", name: "鏈堟祦鍚�", dataname: "sys_data_property", filterTxt: "", orderby: ""},
+							{code: "dayflow", name: "鏃ユ祦鍚�", dataname: "sys_data_property", filterTxt: "", orderby: ""},
+						],
+						
+						d_tabs: {
+							monthflow: true,
+							dayflow: true,
+						},
+						filterTxt: "1<>1",
+						tabs: [],
+						tabsobj: {},
+						newdate: "",
+						
+						default_filterFields: {
+							monthflow: [
+								{isshow: "T", field: "year", name: "骞翠唤", type: "year", filterfield: "id", filteroperator: "="},
+								{isshow: "T", field: "month", name: "鏈堜唤", type: "month", filterfield: "id", filteroperator: "="},
+								{isshow: "T",field: "sell_customer_code",name: "鍗栨柟缂栫爜",filterfield: "",filteroperator: "like"},
+								{isshow: "T",field: "sell_customer_name",name: "鍗栨柟鍚嶇О",filterfield: "",filteroperator: "like"},
+								{isshow: "T",field: "buy_customer_code",name: "涔版柟缂栫爜",filterfield: "",filteroperator: "like"},
+								{isshow: "T",field: "buy_customer_name",name: "涔版柟鍚嶇О",filterfield: "",filteroperator: "like"},
+								{isshow: "T",field: "product_code",name: "浜у搧缂栫爜",filterfield: "",filteroperator: "like"},
+								{isshow: "T",field: "product_name",name: "浜у搧鍚嶇О",filterfield: "",filteroperator: "like"},
+								{isshow: "F", field: "dition_type",name: "", filterfield: "", filteroperator: "=", 
+								type: "radio", options: [
+									{code: "1", value: "鍒濈増"},
+									{code: "2", value: "缁堢増"},
+								]},
+							],
+							
+							dayflow: [
+								{isshow: "T", field: "year", name: "骞翠唤", type: "year", filterfield: "id", filteroperator: "="},
+								{isshow: "T", field: "month", name: "鏈堜唤", type: "month", filterfield: "id", filteroperator: "="},
+								{isshow: "T",field: "sell_customer_code",name: "鍗栨柟缂栫爜",filterfield: "",filteroperator: "like"},
+								{isshow: "T",field: "sell_customer_name",name: "鍗栨柟鍚嶇О",filterfield: "",filteroperator: "like"},
+								{isshow: "T",field: "buy_customer_code",name: "涔版柟缂栫爜",filterfield: "",filteroperator: "like"},
+								{isshow: "T",field: "buy_customer_name",name: "涔版柟鍚嶇О",filterfield: "",filteroperator: "like"},
+								{isshow: "T",field: "product_code",name: "浜у搧缂栫爜",filterfield: "",filteroperator: "like"},
+								{isshow: "T",field: "product_name",name: "浜у搧鍚嶇О",filterfield: "",filteroperator: "like"},
+							]
+						},
+						
+						default_filterObj: {
+							monthflow: {
+								year: new Date().getFullYear().toString(),
+								month: dateFormat(new Date(), "yyyy-MM"),
+								//month: new Date().getFullYear() + "-" + new Date().getMonth()+1,
+								dition_type: "1"
+							},
+							dayflow: {
+								year: new Date().getFullYear().toString(),
+								// month: new Date().getMonth()+1,
+								month: dateFormat(new Date(), "yyyy-MM"),
+							},
+						},
+						
+						
+						default_tableFields: [
+							{isshow: "T", field: "year", name: "骞翠唤", align: "center",width: "80"},
+							{isshow: "T", field: "month", name: "鏈堜唤", align: "center",width: "80"},
+							{isshow: "T",field: "biz_date",name: "鏃ユ湡",width: "120", formatter: "formatter_date"},
+							{isshow: "T",field: "sell_customer_code",name: "鍗栨柟缂栫爜",width: "100",align: "center"},
+							{isshow: "T",field: "sell_customer_name",name: "鍗栨柟鍚嶇О",align: "left", width: "200", isminwidth: true},
+							{isshow: "T",field: "sell_customer_name_old",name: "鍗栨柟鍘熷鍚嶇О",align: "left", width: "200", isminwidth: true},
+							{isshow: "T",field: "sell_province",name: "鍗栨柟鐪佷唤",width: "120"},
+							{isshow: "T",field: "sell_city",name: "鍗栨柟鍩庡競",width: "120"},
+							{isshow: "T",field: "sell_county",name: "鍗栨柟鍖哄幙",width: "120"},
+							{isshow: "T",field: "buy_customer_code",name: "涔版柟缂栫爜",width: "100",align: "center"},
+							{isshow: "T",field: "buy_customer_name",name: "涔版柟鍚嶇О",align: "left", width: "200", isminwidth: true},
+							{isshow: "T",field: "buy_customer_name_old",name: "涔版柟鍘熷鍚嶇О",align: "left", width: "200", isminwidth: true},
+							{isshow: "T",field: "buy_province",name: "涔版柟鐪佷唤",width: "120"},
+							{isshow: "T",field: "buy_city",name: "涔版柟鍩庡競",width: "120"},
+							{isshow: "T",field: "buy_county",name: "涔版柟鍖哄幙",width: "120"},
+							{isshow: "T",field: "product_code", name: "浜у搧缂栫爜", align: "center", width: "100"},
+							{isshow: "T", field: "product_name", name: "浜у搧鍚嶇О", align: "left", width: "180"},
+							{isshow: "T", field: "unit", name: "鍗曚綅", align: "left", width: "80", align: "center"},
+							{isshow: "T", field: "price", name: "鍗曚环", align: "right", width: "100",formatter: "formatter_money"},
+							{isshow: "T", field: "qty", name: "鏁伴噺", align: "right", width: "100"},
+							{isshow: "T", field: "amt", name: "閿�鍞噾棰�", align: "right", width: "100",formatter: "formatter_money"},
+							{isshow: "T", field: "batch_number", name: "鎵瑰彿", align: "center", width: "100"},
+						],
+						default_tableData: [
+							{
+								"year":"2023",
+								"month":"3",
+								"biz_date":"2023-03-10",
+								"sell_customer_code":"D00000119",
+								"sell_customer_name":"鍚夊畨甯傚悏宸炲尯鍙岄┈鍟嗚锤鏈夐檺鍏徃",
+								"sell_customer_name_old":"鍚夊畨甯傚悏宸炲尯鍙岄┈鍟嗚锤鏈夐檺鍏徃",
+								"sell_province":"姹熻タ鐪�",
+								"sell_city":"鍚夊畨甯�",
+								"sell_county":"鍚夊窞鍖�",
+								"buy_customer_code":"D00001158",
+								"buy_customer_name":"涓婃捣閫氭嘲鎱峰尰鐤楃鎶�鏈夐檺鍏徃",
+								"buy_customer_name_old":"涓婃捣閫氭嘲鎱峰尰鐤楃鎶�鏈夐檺鍏徃",
+								"buy_province":"涓婃捣甯�",
+								"buy_city":"涓婃捣甯�",
+								"buy_county":"闈掓郸鍖�",
+								"product_code":"00258",
+								"product_name":"鎰熷啋鐏甸绮�",
+								"unit":"鐩�",
+								"price":"13.98",
+								"qty":"100",
+								"amt":"1398",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"3",
+								"biz_date":"2023-03-11",
+								"sell_customer_code":"D00000055",
+								"sell_customer_name":"骞垮窞鍋ヨ寳鍖荤枟鍣ㄦ鏈夐檺鍏徃",
+								"sell_customer_name_old":"骞垮窞鍋ヨ寳鍖荤枟鍣ㄦ鏈夐檺鍏徃",
+								"sell_province":"骞夸笢鐪�",
+								"sell_city":"骞垮窞甯�",
+								"sell_county":"鑽旀咕鍖�",
+								"buy_customer_code":"D00000036",
+								"buy_customer_name":"骞垮窞寰锋眹鍚屽垱鍖荤枟鍣ㄦ鏈夐檺鍏徃",
+								"buy_customer_name_old":"骞垮窞寰锋眹鍚屽垱鍖荤枟鍣ㄦ鏈夐檺鍏徃",
+								"buy_province":"骞夸笢鐪�",
+								"buy_city":"骞垮窞甯�",
+								"buy_county":"鑽旀咕鍖�",
+								"product_code":"00258",
+								"product_name":"鎰熷啋鐏甸绮�",
+								"unit":"鐩�",
+								"price":"13.98",
+								"qty":"100",
+								"amt":"1398",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"3",
+								"biz_date":"2022-03-10",
+								"sell_customer_code":"D00000054",
+								"sell_customer_name":"骞垮窞鐟炴櫀鍖荤枟绉戞妧鏈夐檺鍏徃",
+								"sell_customer_name_old":"骞垮窞鐟炴櫀鍖荤枟绉戞妧鏈夐檺鍏徃",
+								"sell_province":"骞夸笢鐪�",
+								"sell_city":"骞垮窞甯�",
+								"sell_county":"鑽旀咕鍖�",
+								"buy_customer_code":"D00001038",
+								"buy_customer_name":"闀挎矙瑾夌編鍖荤枟鍣ㄦ璐告槗鏈夐檺鍏徃",
+								"buy_customer_name_old":"闀挎矙瑾夌編鍖荤枟鍣ㄦ璐告槗鏈夐檺鍏徃",
+								"buy_province":"婀栧崡鐪�",
+								"buy":"闀挎矙甯�",
+								"buy_county":"寮�绂忓尯",
+								"product_code":"00258",
+								"product_name":"鎰熷啋鐏甸绮�",
+								"unit":"鐩�",
+								"price":"13.98",
+								"qty":"100",
+								"amt":"1398",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"3",
+								"biz_date":"2022-03-10",
+								"sell_customer_code":"D00000039",
+								"sell_customer_name":"骞垮窞娉板皵搴疯锤鏄撴湁闄愬叕鍙�",
+								"sell_customer_name_old":"骞垮窞娉板皵搴疯锤鏄撴湁闄愬叕鍙�",
+								"sell_province":"骞夸笢鐪�",
+								"sell_city":"骞垮窞甯�",
+								"sell_county":"鑽旀咕鍖�",
+								"buy_customer_code":"D00000030",
+								"buy_customer_name":"姹熻タ瀹忎匠椤哄尰鐤楀櫒姊版湁闄愬叕鍙�",
+								"buy_customer_name_old":"姹熻タ瀹忎匠椤哄尰鐤楀櫒姊版湁闄愬叕鍙�",
+								"buy_province":"姹熻タ鐪�",
+								"buy_city":"钀嶄埂甯�",
+								"buy_county":"瀹夋簮鍖�",
+								"product_code":"00258",
+								"product_name":"鎰熷啋鐏甸绮�",
+								"unit":"鐩�",
+								"price":"13.98",
+								"qty":"100",
+								"amt":"1398",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"3",
+								"biz_date":"2023-01-10",
+								"sell_customer_code":"D00000030",
+								"sell_customer_name":"姹熻タ瀹忎匠椤哄尰鐤楀櫒姊版湁闄愬叕鍙�",
+								"sell_customer_name_old":"姹熻タ瀹忎匠椤哄尰鐤楀櫒姊版湁闄愬叕鍙�",
+								"sell_province":"姹熻タ鐪�",
+								"sell_city":"钀嶄埂甯�",
+								"sell_county":"瀹夋簮鍖�",
+								"buy_customer_code":"D00001165",
+								"buy_customer_name":"骞胯タ鐜嬪淇濆尰鑽俊鎭挩璇㈡湁闄愬叕鍙�",
+								"buy_customer_name_old":"骞胯タ鐜嬪淇濆尰鑽俊鎭挩璇㈡湁闄愬叕鍙�",
+								"buy_province":"骞胯タ澹棌鑷不鍖�",
+								"buy_city":"鍗楀畞甯�",
+								"buy_county":"姹熷崡鍖�",
+								"product_code":"00258",
+								"product_name":"鎰熷啋鐏甸绮�",
+								"unit":"鐩�",
+								"price":"13.98",
+								"qty":"100",
+								"amt":"1398",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"3",
+								"biz_date":"2022-01-15",
+								"sell_customer_code":"D00001038",
+								"sell_customer_name":"闀挎矙瑾夌編鍖荤枟鍣ㄦ璐告槗鏈夐檺鍏徃",
+								"sell_customer_name_old":"闀挎矙瑾夌編鍖荤枟鍣ㄦ璐告槗鏈夐檺鍏徃",
+								"sell_province":"婀栧崡鐪�",
+								"sell_city":"闀挎矙甯�",
+								"sell_county":"寮�绂忓尯",
+								"buy_customer_code":"D00000119",
+								"buy_customer_name":"鍚夊畨甯傚悏宸炲尯鍙岄┈鍟嗚锤鏈夐檺鍏徃",
+								"buy_customer_name_old":"鍚夊畨甯傚悏宸炲尯鍙岄┈鍟嗚锤鏈夐檺鍏徃",
+								"buy_province":"姹熻タ鐪�",
+								"buy_city":"鍚夊畨甯�",
+								"buy_county":"鍚夊窞鍖�",
+								"product_code":"00296",
+								"product_name":"鎰熷啋鐏甸绮�",
+								"unit":"鐩�",
+								"price":"9.98",
+								"qty":"100",
+								"amt":"998",
+								"batch_number":"1009",
+							},
+							{
+								"year":"2023",
+								"month":"3",
+								"biz_date":"2023-01-19",
+								"sell_customer_code":"D00000036",
+								"sell_customer_name":"骞垮窞寰锋眹鍚屽垱鍖荤枟鍣ㄦ鏈夐檺鍏徃",
+								"sell_customer_name_old":"骞垮窞寰锋眹鍚屽垱鍖荤枟鍣ㄦ鏈夐檺鍏徃",
+								"sell_province":"骞夸笢鐪�",
+								"sell_city":"骞垮窞甯�",
+								"sell_county":"鑽旀咕鍖�",
+								"buy_customer_code":"D00000055",
+								"buy_customer_name":"骞垮窞鍋ヨ寳鍖荤枟鍣ㄦ鏈夐檺鍏徃",
+								"buy_customer_name_old":"骞垮窞鍋ヨ寳鍖荤枟鍣ㄦ鏈夐檺鍏徃",
+								"buy_province":"骞夸笢鐪�",
+								"buy_city":"骞垮窞甯�",
+								"buy_county":"鑽旀咕鍖�",
+								"product_code":"00358",
+								"product_name":"鎰熷啋鐏甸绮�",
+								"unit":"鐩�",
+								"price":"15.98",
+								"qty":"100",
+								"amt":"1598",
+								"batch_number":"3001",
+							},
+							{
+								"year":"2023",
+								"month":"2",
+								"biz_date":"2023-02-09",
+								"sell_customer_code":"D00001158",
+								"sell_customer_name":"涓婃捣閫氭嘲鎱峰尰鐤楃鎶�鏈夐檺鍏徃",
+								"sell_customer_name_old":"涓婃捣閫氭嘲鎱峰尰鐤楃鎶�鏈夐檺鍏徃",
+								"sell_province":"涓婃捣甯�",
+								"sell_city":"涓婃捣甯�",
+								"sell_county":"闈掓郸鍖�",
+								"buy_customer_code":"D00000054",
+								"buy_customer_name":"骞垮窞鐟炴櫀鍖荤枟绉戞妧鏈夐檺鍏徃",
+								"buy_customer_name_old":"骞垮窞鐟炴櫀鍖荤枟绉戞妧鏈夐檺鍏徃",
+								"buy_province":"骞夸笢鐪�",
+								"buy_city":"骞垮窞甯�",
+								"buy_county":"鑽旀咕鍖�",
+								"product_code":"00278",
+								"product_name":"鎰熷啋鐏甸绮�",
+								"unit":"鐩�",
+								"price":"23.98",
+								"qty":"100",
+								"amt":"2398",
+								"batch_number":"1101",
+							},
+							{
+								"year":"2023",
+								"month":"2",
+								"biz_date":"2023-02-17",
+								"sell_customer_code":"D00000098",
+								"sell_customer_name":"骞垮窞绂忔簮鍖荤枟绉戞妧鏈夐檺鍏徃",
+								"sell_customer_name_old":"骞垮窞绂忔簮鍖荤枟绉戞妧鏈夐檺鍏徃",
+								"sell_province":"骞夸笢鐪�",
+								"sell_city":"骞垮窞甯�",
+								"sell_county":"鑽旀咕鍖�",
+								"buy_customer_code":"D00000039",
+								"buy_customer_name":"骞垮窞娉板皵搴疯锤鏄撴湁闄愬叕鍙�",
+								"buy_customer_name_old":"骞垮窞娉板皵搴疯锤鏄撴湁闄愬叕鍙�",
+								"buy_province":"骞夸笢鐪�",
+								"buy_city":"骞垮窞甯�",
+								"buy_county":"鑽旀咕鍖�",
+								"product_code":"01258",
+								"product_name":"鎰熷啋鐏甸绮�",
+								"unit":"鐩�",
+								"price":"20.98",
+								"qty":"100",
+								"amt":"2098",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"2",
+								"biz_date":"2023-02-27",
+								"sell_customer_code":"D00001165",
+								"sell_customer_name":"骞胯タ鐜嬪淇濆尰鑽俊鎭挩璇㈡湁闄愬叕鍙�",
+								"sell_customer_name_old":"骞胯タ鐜嬪淇濆尰鑽俊鎭挩璇㈡湁闄愬叕鍙�",
+								"sell_province":"骞胯タ澹棌鑷不鍖�",
+								"sell_city":"鍗楀畞甯�",
+								"sell_county":"姹熷崡鍖�",
+								"buy_customer_code":"D00000098",
+								"buy_customer_name":"骞垮窞绂忔簮鍖荤枟绉戞妧鏈夐檺鍏徃",
+								"buy_customer_name_old":"骞垮窞绂忔簮鍖荤枟绉戞妧鏈夐檺鍏徃",
+								"buy_province":"骞夸笢鐪�",
+								"buy_city":"骞垮窞甯�",
+								"buy_county":"鑽旀咕鍖�",
+								"product_code":"00258",
+								"product_name":"鎰熷啋鐏甸绮�",
+								"unit":"鐩�",
+								"price":"13.98",
+								"qty":"100",
+								"amt":"1398",
+								"batch_number":"1001",
+							},
+							
+						],
+					},
+					created() {
+						this.newdate_month = dateFormat(new Date(), "yyyy骞碝M鏈�")
+						this.newdate_day = dateFormat(new Date(), "yyyy骞碝M鏈坉d鏃�")
+					},
+					
+					mounted() {
+						var me = this;
+						if (window.top.tab.selected.option.page_id) {
+							// this.page_id = window.top.tab.selected.option.page_id;
+							getPageByPageId(window.top.tab.selected.option.page_id, function(result){
+								me.cbuttons_r = result.buttons_r;
+								me.ctabs_r = result.tabs_r;
+								
+								me.ctabs_r = me.d_tabs
+								
+								var tabsarr = [];
+								me.tabs_d.map(e=>{
+									if(me.ctabs_r[e.code]){
+										tabsarr.push(e)
+									}
+								})
+								me.tabs = tabsarr;
+								
+								if(me.tabs.length>0){
+									me.activeTabName = me.tabs[0].code;
+								}
+								console.log(me.cbuttons_r)
+								
+								//鍒濆鍖朤abs
+								me.initTabsPage(function() {
+									//鑾峰彇鏁版嵁
+									me.initData();
+								});
+								
+								me.$nextTick(() => { // 浠ユ湇鍔$殑鏂瑰紡璋冪敤鐨� Loading 闇�瑕佸紓姝ュ叧闂�
+									hideLoading();
+								});
+							})
+						}
+						
+						
+						// this.activeTabName = "input";
+						// //鑾峰彇鏁版嵁
+						// this.initTabsPage(function() {
+						// 	me.initData();
+						// });
+						
+						// this.$nextTick(() => { // 浠ユ湇鍔$殑鏂瑰紡璋冪敤鐨� Loading 闇�瑕佸紓姝ュ叧闂�
+						// 	hideLoading();
+						// });
+					},
+					
+					methods:{
+						onhandleClick() {
+							this.initData();
+						},
+						
+						initData() {
+							var me = this;
+							this.doQueryByTab(function(result, callback) {//鏌ヨ鍚庣殑鍥炶皟锛岀敤浜庤幏鍙栧瓧娈电殑
+								if (result.meta && result.meta[me.selectTabObj.dataname] && result.meta[me.selectTabObj.dataname].fields) {
+									var metas = clone(result.meta[me.selectTabObj.dataname].fields);
+									var filterFields_ = [];
+									var tableFields_ = [];
+									
+									metas.map(f=>{
+										f.isshow = "T";
+										
+										if (f.isfilter) {
+											filterFields_.push(clone(f));
+										}
+										else {
+											var filter_f = clone(f);
+											filter_f.isshow = "F";
+											filterFields_.push(filter_f);
+										}
+										
+										tableFields_.push(clone(f));
+									})
+									if (!me.selectTabObj.filterFields || (me.selectTabObj.filterFields && me.selectTabObj.filterFields.length == 0)) {
+										me.selectTabObj.filterFields = clone(me.default_filterFields[me.selectTabObj.code]);
+										me.selectTabObj.tableFields = clone(me.default_tableFields);
+										
+										me.selectTabObj.filterObj = clone(me.default_filterObj[me.selectTabObj.code])
+										
+										me.selectTabObj.tableData = clone(me.default_tableData);
+										
+										// me.selectTabObj.filterFields = clone(filterFields_);
+										// me.selectTabObj.tableFields = clone(tableFields_);
+										
+										//瀛楁鏁扮粍杞瓧娈祇bj
+										me.fieldsToFieldsObj();
+										
+										//璁剧疆瀛楁浜嬩欢
+										me.tableFieldClick();
+									}
+								}
+								
+								if (callback) {
+									callback();
+								}
+							});
+						},
+						
+						tableFieldClick() {
+							var me = this;
+							var tablefieldClick = {};
+							//琛ㄦ牸瀛楁浜嬩欢璁剧疆
+							tablefieldClick.input = {
+								code: {//瀛楁浜嬩欢璁剧疆
+									val: {//鏈夊�兼椂鐨勭偣鍑讳簨浠�
+										notclick_val: "PS-001",//涓嶅彲鐐瑰嚮鐨勫��,1銆佹槸鏁扮粍["11","22"]锛�2銆佷互鈥�;鈥濆垎闅旂殑瀛楃涓�"111;222"
+										notclick_bindfield: [],//褰撹瀛楁鍊肩瓑浜庢寚瀹氬瓧娈靛�兼椂涓嶅彲鐐瑰嚮["filterfield": "111"]
+										onclick: function(obj) {//鏁版嵁鍊肩偣鍑讳簨浠�
+											Root.message({
+												type: 'success',
+												message: obj.val + '鐐瑰嚮浜嬩欢'
+											}); 
+											//鎵撳紑
+											me.opentest(obj)
+										},
+									},
+								},
+							};
+							tablefieldClick.all = {
+								status: {//瀛楁浜嬩欢璁剧疆
+									val: {//鏈夊�兼椂鐨勭偣鍑讳簨浠�
+										notclick_val: "PS-001",//涓嶅彲鐐瑰嚮鐨勫��,1銆佹槸鏁扮粍["11","22"]锛�2銆佷互鈥�;鈥濆垎闅旂殑瀛楃涓�"111;222"
+										notclick_bindfield: [],//褰撹瀛楁鍊肩瓑浜庢寚瀹氬瓧娈靛�兼椂涓嶅彲鐐瑰嚮["filterfield": "111"]
+										onclick: function(obj) {//鏁版嵁鍊肩偣鍑讳簨浠�
+											Root.message({
+												type: 'success',
+												message: obj.val + '鐐瑰嚮浜嬩欢'
+											}); 
+											//鎵撳紑
+											me.opentest(obj)
+										},
+									},
+								},
+							};
+							
+							this.selectTabObj.tablefieldClick = tablefieldClick[this.activeTabName];
+						},
+						
+						opentest(obj) {
+							var me = this;
+							Root.message({
+								type: 'success',
+								message: '鍚庣紑鐐瑰嚮浜嬩欢'
+							});
+							
+							var config = {
+								totab: true, //true: 浠ab瀵艰埅鐨勬柟寮忔墦寮�
+								width: "900px",
+								height: "900px",
+								icon: "icon-product",
+								text: "琛ㄥ崟鏍蜂緥椤甸潰",
+								id: "test_page" + obj.row.id,//totab: true鏃堕渶璁剧疆锛岀敤浜庡垽鏂槸鍚﹀凡鎵撳紑姝ら〉闈�
+								url: "module/system/page/sample/sample_form.html",
+								data: obj.row,
+								delta: {},
+								sceneCode: "browse",//"refuseedit",//"approval", //"add"//"browse",
+								callback: function(obj, callback) {
+									me.onQuery();
+									if (callback) {
+										callback();
+									}
+								}
+							};
+							me.doPopupByPublic(config);
+						},
+						
+						rowClick(obj){
+							var me = this;
+							me.selectTabObj.selectedrow = obj.row;
+						},
+						
+						onAddSS() {
+							var me = this;
+							Root.message({
+								type: 'success',
+								message: '鐢宠瘔浜嬩欢'
+							});
+						}
+					}
+				});
+			};
+			
+			loadJsCss(function () {
+				initVue();
+			});
+		</script>
+		<style>
+			/* 鍦╲ue.js涓� v-cloak 杩欎釜鎸囦护鏄槻姝㈤〉闈㈠姞杞芥椂鍑虹幇 vuejs 鐨勫彉閲忓悕鑰岃璁$殑 */
+			[v-cloak] {
+				display: none !important;
+			}
+			.el-tabs__nav-scroll {
+			    overflow: hidden;
+			    position: relative;
+			    padding-left: 20px;
+			}
+		</style>
+		
+	</head>
+	
+	<body style="margin: 0px;">
+		<div v-cloak id="vbody">
+			<div id="page_root">
+				<div class="topbar">
+					<span style="float: left;">{{title}}</span>
+					
+					<div style="float: right; margin-right: 18px;">
+						<el-button-group v-if="selectTabObj && selectTabObj.code == 'monthflow' && selectTabObj.filterObj.dition_type == '1'" style="margin-left: 3px;">
+							<el-button :disabled="!(selectTabObj.selectedrow && selectTabObj.selectedrow.biz_date)" type="primary" @click="onAddSS":icon="buttonsconfig.add.icon">鐢宠瘔</el-button>
+						</el-button-group>
+						<el-button-group style="margin-left: 3px;">
+							<el-button type="primary" @click="":icon="buttonsconfig.import.icon">{{buttonsconfig.import.name}}</el-button>
+							<el-button type="primary" @click="":icon="buttonsconfig.export.icon">{{buttonsconfig.export.name}}</el-button>
+						</el-button-group>
+					</div>
+					
+					<div style="float: left; margin-left: 20%;">
+						<span>鎶ュ憡鏃ユ湡锛�</span>
+						<span v-if="selectTabObj && selectTabObj.code == 'monthflow'">{{newdate_month}}</span>
+						<span v-if="selectTabObj && selectTabObj.code == 'dayflow'">{{newdate_day}}</span>
+						<el-radio-group style="margin-left: 10px;" v-if="selectTabObj && selectTabObj.filterObj && selectTabObj.code=='monthflow'" v-model="selectTabObj.filterObj.dition_type" size="mini" fill="#4cb108">
+						    <el-radio-button label="1">鍒濈増</el-radio-button>
+						    <el-radio-button label="2">缁堢増</el-radio-button>
+						</el-radio-group>
+					</div>
+					
+				</div>
+				<div>
+					<el-tabs v-model="activeTabName" @tab-click="handleClick">
+						<el-tab-pane v-for="(tab, k) in tabs" :label="tab.name" :name="tab.code" :key="k"></el-tab-pane>
+					</el-tabs>
+				</div>
+			
+				<div class="topbar-line">
+					<div class="query-bar">
+						<h-form-filter v-if="selectTabObj.filterFields" ref="form1" 
+							:form-attr="filterAttr" 
+							:table-fields="selectTabObj.filterFields" 
+							:form-data="selectTabObj.filterObj" 
+							:table-field-click="selectTabObj.filterfieldClick"
+							:isdraggableorder="false"
+							
+							v-on:on-query="onQuery"
+							v-on:on-init-query="onInitFilter"
+							v-on:on-edit-query="onEditFilter"
+							v-on:order-fields="orderFilterFields"
+							>
+						</h-form-filter>
+					</div>
+				</div>
+			
+				<div class="h_dialog__body">
+					<h-table
+						v-if="isRefresh && selectTabObj.tableFields"
+						ref="table1"
+						:table-fields="selectTabObj.tableFields" 
+						:table-data="default_tableData" 
+						:is-edit-table-data="selectTabObj.isEditTableData"
+						:pagesize="selectTabObj.pagesize"
+						:pagenum="selectTabObj.pagenum"
+						:total="selectTabObj.total"
+						:table-height="selectTabObj.tableHeight"
+						:table-field-click="selectTabObj.tablefieldClick"
+						:is-show-index="selectTabObj.isShowIndex"
+						:tableloading="tableloading"
+						:isdraggableorder="false"
+						:is-highlight-row="true"
+						
+						v-on:get-data="getData"
+						v-on:row-click="rowClick"
+					>
+					</h-table>
+				</div>
+			</div>
+		</div>
+		
+		<div id="page_loading" style="position: absolute; top:0px; width: 100vw; height: 50vh;">
+			<div class="spinner">
+			  <div class="cube1"></div>
+			  <div class="cube2"></div>
+			</div>
+		</div>
+		
+	</body>
+</html>
diff --git a/module/flow/page/flowSales.html b/module/flow/page/flowSales.html
new file mode 100644
index 0000000..8d2d537
--- /dev/null
+++ b/module/flow/page/flowSales.html
@@ -0,0 +1,634 @@
+<!doctype html>
+<html>
+	<head>
+		<meta charset="utf-8"><meta http-equiv="Expires" content="0"><meta http-equiv="Pragma" content="no-cache"><meta http-equiv="Cache-control" content="no-cache"><meta http-equiv="Cache" content="no-cache">
+		<title>閿�鍞祦鍚�</title>
+		
+		<script type="text/javascript">
+			function loadJsCss(callback) {
+				var jscss_urls = [];
+				window.top.initJsCss(document, jscss_urls, callback);
+			};
+			
+			function initVue() {
+				new TabTableVue({
+					el: "#vbody",
+					data: {
+						title: "閿�鍞祦鍚�",
+						//Tab椤硅缃�
+						tabs_d: [
+							{code: "monthflow", name: "鏈堟祦鍚�", dataname: "sys_data_property", filterTxt: "", orderby: ""},
+							{code: "dayflow", name: "鏃ユ祦鍚�", dataname: "sys_data_property", filterTxt: "", orderby: ""},
+						],
+						
+						d_tabs: {
+							monthflow: true,
+							dayflow: true,
+						},
+						filterTxt: "1<>1",
+						tabs: [],
+						tabsobj: {},
+						newdate_month: "",
+						newdate_day: "",
+						default_filterFields: {
+							monthflow: [
+								{isshow: "T", field: "year", name: "骞翠唤", type: "year", filterfield: "id", filteroperator: "="},
+								{isshow: "T", field: "month", name: "鏈堜唤", type: "month", filterfield: "id", filteroperator: "="},
+								{isshow: "T", field: "sell_customer_code",name: "鍗栨柟缂栫爜", filterfield: "", filteroperator: "like"},
+								{isshow: "T", field: "sell_customer_name",name: "鍗栨柟鍚嶇О", filterfield: "", filteroperator: "like"},
+								{isshow: "T", field: "buy_customer_code",name: "涔版柟缂栫爜", filterfield: "", filteroperator: "like"},
+								{isshow: "T", field: "buy_customer_name",name: "涔版柟鍚嶇О", filterfield: "", filteroperator: "like"},
+								{isshow: "T", field: "product_code",name: "浜у搧缂栫爜", filterfield: "", filteroperator: "like"},
+								{isshow: "T", field: "product_name",name: "浜у搧鍚嶇О", filterfield: "", filteroperator: "like"},
+								{isshow: "F", field: "dition_type",name: "", filterfield: "", filteroperator: "=", 
+								type: "radio", options: [
+									{code: "1", value: "鍒濈増"},
+									{code: "2", value: "缁堢増"},
+								]},
+							],
+							
+							dayflow: [
+								{isshow: "T", field: "year", name: "骞翠唤", type: "year", filterfield: "id", filteroperator: "="},
+								{isshow: "T", field: "month", name: "鏈堜唤", type: "month", filterfield: "id", filteroperator: "="},
+								{isshow: "T", field: "sell_customer_code",name: "鍗栨柟缂栫爜", filterfield: "", filteroperator: "like"},
+								{isshow: "T", field: "sell_customer_name",name: "鍗栨柟鍚嶇О", filterfield: "", filteroperator: "like"},
+								{isshow: "T", field: "buy_customer_code",name: "涔版柟缂栫爜", filterfield: "", filteroperator: "like"},
+								{isshow: "T", field: "buy_customer_name",name: "涔版柟鍚嶇О", filterfield: "", filteroperator: "like"},
+								{isshow: "T", field: "product_code",name: "浜у搧缂栫爜", filterfield: "", filteroperator: "like"},
+								{isshow: "T", field: "product_name",name: "浜у搧鍚嶇О", filterfield: "", filteroperator: "like"},
+							]
+						},
+						 
+						default_filterObj: {
+							monthflow: {
+								year: new Date().getFullYear().toString(),
+								month: dateFormat(new Date(), "yyyy-MM"),
+								//month: new Date().getFullYear() + "-" + new Date().getMonth()+1,
+								dition_type: "1"
+							},
+							dayflow: {
+								year: new Date().getFullYear().toString(),
+								// month: new Date().getMonth()+1,
+								month: dateFormat(new Date(), "yyyy-MM"),
+							},
+						},
+						
+						default_tableFields: [
+							{isshow: "T", field: "year", name: "骞翠唤", align: "center",width: "80"},
+							{isshow: "T", field: "month", name: "鏈堜唤", align: "center",width: "80"},
+							{isshow: "T", field: "biz_date",name: "娴佸悜鏃ユ湡",width: "120", formatter: "formatter_date"},
+							{isshow: "T", field: "sell_customer_code",name: "鍗栨柟缂栫爜",width: "100",align: "center"},
+							{isshow: "T", field: "sell_customer_name",name: "鍗栨柟鍚嶇О",align: "left", width: "200", isminwidth: true},
+							{isshow: "T", field: "sell_customer_name_old",name: "鍗栨柟鍘熷鍚嶇О",align: "left", width: "200", isminwidth: true},
+							{isshow: "T", field: "sell_province",name: "鍗栨柟鐪佷唤",width: "120"},
+							{isshow: "T", field: "sell_city",name: "鍗栨柟鍩庡競",width: "120"},
+							{isshow: "T", field: "sell_county",name: "鍗栨柟鍖哄幙",width: "120"},
+							{isshow: "T", field: "buy_customer_code",name: "涔版柟缂栫爜",width: "100",align: "center"},
+							{isshow: "T", field: "buy_customer_name",name: "涔版柟鍚嶇О",align: "left", width: "200", isminwidth: true},
+							{isshow: "T", field: "buy_customer_name_old",name: "涔版柟鍘熷鍚嶇О",align: "left", width: "200", isminwidth: true},
+							{isshow: "T", field: "buy_province",name: "涔版柟鐪佷唤",width: "120"},
+							{isshow: "T", field: "buy_city",name: "涔版柟鍩庡競",width: "120"},
+							{isshow: "T", field: "buy_county",name: "涔版柟鍖哄幙",width: "120"},
+							{isshow: "T", field: "product_code", name: "浜у搧缂栫爜", align: "center", width: "100"},
+							{isshow: "T", field: "product_name", name: "浜у搧鍚嶇О", align: "left", width: "180"},
+							{isshow: "T", field: "unit", name: "鍗曚綅", align: "left", width: "80", align: "center"},
+							{isshow: "T", field: "price", name: "鍗曚环", align: "right", width: "100",formatter: "formatter_money"},
+							{isshow: "T", field: "qty", name: "鏁伴噺", align: "right", width: "100"},
+							{isshow: "T", field: "amt", name: "閿�鍞噾棰�", align: "right", width: "120",formatter: "formatter_money"},
+							{isshow: "T", field: "batch_number", name: "鎵瑰彿", align: "center", width: "100"},
+						],
+						default_tableData: [
+							{
+								"year":"2023",
+								"month":"3",
+								"biz_date":"2023-01-10",
+								"sell_customer_code":"D00000030",
+								"sell_customer_name":"姹熻タ瀹忎匠椤哄尰鐤楀櫒姊版湁闄愬叕鍙�",
+								"sell_customer_name_old":"姹熻タ瀹忎匠椤哄尰鐤楀櫒姊版湁闄愬叕鍙�",
+								"sell_province":"姹熻タ鐪�",
+								"sell_city":"钀嶄埂甯�",
+								"sell_county":"瀹夋簮鍖�",
+								"buy_customer_code":"D00001165",
+								"buy_customer_name":"骞胯タ鐜嬪淇濆尰鑽俊鎭挩璇㈡湁闄愬叕鍙�",
+								"buy_customer_name_old":"骞胯タ鐜嬪淇濆尰鑽俊鎭挩璇㈡湁闄愬叕鍙�",
+								"buy_province":"骞胯タ澹棌鑷不鍖�",
+								"buy_city":"鍗楀畞甯�",
+								"buy_county":"姹熷崡鍖�",
+								"product_code":"00258",
+								"product_name":"甯冩礇鑺紦閲婅兌鍥�",
+								"unit":"鐩�",
+								"price":"13.98",
+								"qty":"100",
+								"amt":"1398",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"3",
+								"biz_date":"2022-01-15",
+								"sell_customer_code":"D00001038",
+								"sell_customer_name":"闀挎矙瑾夌編鍖荤枟鍣ㄦ璐告槗鏈夐檺鍏徃",
+								"sell_customer_name_old":"闀挎矙瑾夌編鍖荤枟鍣ㄦ璐告槗鏈夐檺鍏徃",
+								"sell_province":"婀栧崡鐪�",
+								"sell_city":"闀挎矙甯�",
+								"sell_county":"寮�绂忓尯",
+								"buy_customer_code":"D00000119",
+								"buy_customer_name":"鍚夊畨甯傚悏宸炲尯鍙岄┈鍟嗚锤鏈夐檺鍏徃",
+								"buy_customer_name_old":"鍚夊畨甯傚悏宸炲尯鍙岄┈鍟嗚锤鏈夐檺鍏徃",
+								"buy_province":"姹熻タ鐪�",
+								"buy_city":"鍚夊畨甯�",
+								"buy_county":"鍚夊窞鍖�",
+								"product_code":"00296",
+								"product_name":"甯冩礇鑺紦閲婅兌鍥�",
+								"unit":"鐩�",
+								"price":"9.98",
+								"qty":"100",
+								"amt":"998",
+								"batch_number":"1009",
+							},
+							{
+								"year":"2023",
+								"month":"3",
+								"biz_date":"2023-01-19",
+								"sell_customer_code":"D00000036",
+								"sell_customer_name":"骞垮窞寰锋眹鍚屽垱鍖荤枟鍣ㄦ鏈夐檺鍏徃",
+								"sell_customer_name_old":"骞垮窞寰锋眹鍚屽垱鍖荤枟鍣ㄦ鏈夐檺鍏徃",
+								"sell_province":"骞夸笢鐪�",
+								"sell_city":"骞垮窞甯�",
+								"sell_county":"鑽旀咕鍖�",
+								"buy_customer_code":"D00000055",
+								"buy_customer_name":"骞垮窞鍋ヨ寳鍖荤枟鍣ㄦ鏈夐檺鍏徃",
+								"buy_customer_name_old":"骞垮窞鍋ヨ寳鍖荤枟鍣ㄦ鏈夐檺鍏徃",
+								"buy_province":"骞夸笢鐪�",
+								"buy_city":"骞垮窞甯�",
+								"buy_county":"鑽旀咕鍖�",
+								"product_code":"00358",
+								"product_name":"甯冩礇鑺紦閲婅兌鍥�",
+								"unit":"鐩�",
+								"price":"15.98",
+								"qty":"100",
+								"amt":"1598",
+								"batch_number":"3001",
+							},
+							{
+								"year":"2023",
+								"month":"3",
+								"biz_date":"2023-02-09",
+								"sell_customer_code":"D00001158",
+								"sell_customer_name":"涓婃捣閫氭嘲鎱峰尰鐤楃鎶�鏈夐檺鍏徃",
+								"sell_customer_name_old":"涓婃捣閫氭嘲鎱峰尰鐤楃鎶�鏈夐檺鍏徃",
+								"sell_province":"涓婃捣甯�",
+								"sell_city":"涓婃捣甯�",
+								"sell_county":"闈掓郸鍖�",
+								"buy_customer_code":"D00000054",
+								"buy_customer_name":"骞垮窞鐟炴櫀鍖荤枟绉戞妧鏈夐檺鍏徃",
+								"buy_customer_name_old":"骞垮窞鐟炴櫀鍖荤枟绉戞妧鏈夐檺鍏徃",
+								"buy_province":"骞夸笢鐪�",
+								"buy_city":"骞垮窞甯�",
+								"buy_county":"鑽旀咕鍖�",
+								"product_code":"00278",
+								"product_name":"甯冩礇鑺紦閲婅兌鍥�",
+								"unit":"鐩�",
+								"price":"23.98",
+								"qty":"100",
+								"amt":"2398",
+								"batch_number":"1101",
+							},
+							{
+								"year":"2023",
+								"month":"3",
+								"biz_date":"2023-02-17",
+								"sell_customer_code":"D00000098",
+								"sell_customer_name":"骞垮窞绂忔簮鍖荤枟绉戞妧鏈夐檺鍏徃",
+								"sell_customer_name_old":"骞垮窞绂忔簮鍖荤枟绉戞妧鏈夐檺鍏徃",
+								"sell_province":"骞夸笢鐪�",
+								"sell_city":"骞垮窞甯�",
+								"sell_county":"鑽旀咕鍖�",
+								"buy_customer_code":"D00000039",
+								"buy_customer_name":"骞垮窞娉板皵搴疯锤鏄撴湁闄愬叕鍙�",
+								"buy_customer_name_old":"骞垮窞娉板皵搴疯锤鏄撴湁闄愬叕鍙�",
+								"buy_province":"骞夸笢鐪�",
+								"buy_city":"骞垮窞甯�",
+								"buy_county":"鑽旀咕鍖�",
+								"product_code":"01258",
+								"product_name":"甯冩礇鑺紦閲婅兌鍥�",
+								"unit":"鐩�",
+								"price":"20.98",
+								"qty":"100",
+								"amt":"2098",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"3",
+								"biz_date":"2023-02-27",
+								"sell_customer_code":"D00001165",
+								"sell_customer_name":"骞胯タ鐜嬪淇濆尰鑽俊鎭挩璇㈡湁闄愬叕鍙�",
+								"sell_customer_name_old":"骞胯タ鐜嬪淇濆尰鑽俊鎭挩璇㈡湁闄愬叕鍙�",
+								"sell_province":"骞胯タ澹棌鑷不鍖�",
+								"sell_city":"鍗楀畞甯�",
+								"sell_county":"姹熷崡鍖�",
+								"buy_customer_code":"D00000098",
+								"buy_customer_name":"骞垮窞绂忔簮鍖荤枟绉戞妧鏈夐檺鍏徃",
+								"buy_customer_name_old":"骞垮窞绂忔簮鍖荤枟绉戞妧鏈夐檺鍏徃",
+								"buy_province":"骞夸笢鐪�",
+								"buy_city":"骞垮窞甯�",
+								"buy_county":"鑽旀咕鍖�",
+								"product_code":"00258",
+								"product_name":"甯冩礇鑺紦閲婅兌鍥�",
+								"unit":"鐩�",
+								"price":"13.98",
+								"qty":"100",
+								"amt":"1398",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"3",
+								"biz_date":"2023-03-10",
+								"sell_customer_code":"D00000119",
+								"sell_customer_name":"鍚夊畨甯傚悏宸炲尯鍙岄┈鍟嗚锤鏈夐檺鍏徃",
+								"sell_customer_name_old":"鍚夊畨甯傚悏宸炲尯鍙岄┈鍟嗚锤鏈夐檺鍏徃",
+								"sell_province":"姹熻タ鐪�",
+								"sell_city":"鍚夊畨甯�",
+								"sell_county":"鍚夊窞鍖�",
+								"buy_customer_code":"D00001158",
+								"buy_customer_name":"涓婃捣閫氭嘲鎱峰尰鐤楃鎶�鏈夐檺鍏徃",
+								"buy_customer_name_old":"涓婃捣閫氭嘲鎱峰尰鐤楃鎶�鏈夐檺鍏徃",
+								"buy_province":"涓婃捣甯�",
+								"buy_city":"涓婃捣甯�",
+								"buy_county":"闈掓郸鍖�",
+								"product_code":"00258",
+								"product_name":"鏉胯摑鏍归绮�",
+								"unit":"鐩�",
+								"price":"13.98",
+								"qty":"100",
+								"amt":"1398",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"3",
+								"biz_date":"2023-03-11",
+								"sell_customer_code":"D00000055",
+								"sell_customer_name":"骞垮窞鍋ヨ寳鍖荤枟鍣ㄦ鏈夐檺鍏徃",
+								"sell_customer_name_old":"骞垮窞鍋ヨ寳鍖荤枟鍣ㄦ鏈夐檺鍏徃",
+								"sell_province":"骞夸笢鐪�",
+								"sell_city":"骞垮窞甯�",
+								"sell_county":"鑽旀咕鍖�",
+								"buy_customer_code":"D00000036",
+								"buy_customer_name":"骞垮窞寰锋眹鍚屽垱鍖荤枟鍣ㄦ鏈夐檺鍏徃",
+								"buy_customer_name_old":"骞垮窞寰锋眹鍚屽垱鍖荤枟鍣ㄦ鏈夐檺鍏徃",
+								"buy_province":"骞夸笢鐪�",
+								"buy_city":"骞垮窞甯�",
+								"buy_county":"鑽旀咕鍖�",
+								"product_code":"00258",
+								"product_name":"鏉胯摑鏍归绮�",
+								"unit":"鐩�",
+								"price":"13.98",
+								"qty":"100",
+								"amt":"1398",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"3",
+								"biz_date":"2022-03-10",
+								"sell_customer_code":"D00000054",
+								"sell_customer_name":"骞垮窞鐟炴櫀鍖荤枟绉戞妧鏈夐檺鍏徃",
+								"sell_customer_name_old":"骞垮窞鐟炴櫀鍖荤枟绉戞妧鏈夐檺鍏徃",
+								"sell_province":"骞夸笢鐪�",
+								"sell_city":"骞垮窞甯�",
+								"sell_county":"鑽旀咕鍖�",
+								"buy_customer_code":"D00001038",
+								"buy_customer_name":"闀挎矙瑾夌編鍖荤枟鍣ㄦ璐告槗鏈夐檺鍏徃",
+								"buy_customer_name_old":"闀挎矙瑾夌編鍖荤枟鍣ㄦ璐告槗鏈夐檺鍏徃",
+								"buy_province":"婀栧崡鐪�",
+								"buy":"闀挎矙甯�",
+								"buy_county":"寮�绂忓尯",
+								"product_code":"00258",
+								"product_name":"鏉胯摑鏍归绮�",
+								"unit":"鐩�",
+								"price":"13.98",
+								"qty":"100",
+								"amt":"1398",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"3",
+								"biz_date":"2022-03-10",
+								"sell_customer_code":"D00000039",
+								"sell_customer_name":"骞垮窞娉板皵搴疯锤鏄撴湁闄愬叕鍙�",
+								"sell_customer_name_old":"骞垮窞娉板皵搴疯锤鏄撴湁闄愬叕鍙�",
+								"sell_province":"骞夸笢鐪�",
+								"sell_city":"骞垮窞甯�",
+								"sell_county":"鑽旀咕鍖�",
+								"buy_customer_code":"D00000030",
+								"buy_customer_name":"姹熻タ瀹忎匠椤哄尰鐤楀櫒姊版湁闄愬叕鍙�",
+								"buy_customer_name_old":"姹熻タ瀹忎匠椤哄尰鐤楀櫒姊版湁闄愬叕鍙�",
+								"buy_province":"姹熻タ鐪�",
+								"buy_city":"钀嶄埂甯�",
+								"buy_county":"瀹夋簮鍖�",
+								"product_code":"00258",
+								"product_name":"鏉胯摑鏍归绮�",
+								"unit":"鐩�",
+								"price":"13.98",
+								"qty":"100",
+								"amt":"1398",
+								"batch_number":"1001",
+							},
+						],
+					},
+					created() {
+						this.newdate_month = dateFormat(new Date(), "yyyy骞碝M鏈�")
+						this.newdate_day = dateFormat(new Date(), "yyyy骞碝M鏈坉d鏃�")
+					},
+					
+					mounted() {
+						var me = this;
+						if (window.top.tab.selected.option.page_id) {
+							// this.page_id = window.top.tab.selected.option.page_id;
+							getPageByPageId(window.top.tab.selected.option.page_id, function(result){
+								me.cbuttons_r = result.buttons_r;
+								me.ctabs_r = result.tabs_r;
+								
+								me.ctabs_r = me.d_tabs
+								
+								var tabsarr = [];
+								me.tabs_d.map(e=>{
+									if(me.ctabs_r[e.code]){
+										tabsarr.push(e)
+									}
+								})
+								me.tabs = tabsarr;
+								
+								if(me.tabs.length>0){
+									me.activeTabName = me.tabs[0].code;
+								}
+								console.log(me.cbuttons_r)
+								
+								//鍒濆鍖朤abs
+								me.initTabsPage(function() {
+									//鑾峰彇鏁版嵁
+									me.initData();
+								});
+								
+								me.$nextTick(() => { // 浠ユ湇鍔$殑鏂瑰紡璋冪敤鐨� Loading 闇�瑕佸紓姝ュ叧闂�
+									hideLoading();
+								});
+							})
+						}
+						
+						
+						// this.activeTabName = "input";
+						// //鑾峰彇鏁版嵁
+						// this.initTabsPage(function() {
+						// 	me.initData();
+						// });
+						
+						// this.$nextTick(() => { // 浠ユ湇鍔$殑鏂瑰紡璋冪敤鐨� Loading 闇�瑕佸紓姝ュ叧闂�
+						// 	hideLoading();
+						// });
+					},
+					
+					methods:{
+						onhandleClick() {
+							this.initData();
+						},
+						
+						initData() {
+							var me = this;
+							this.doQueryByTab(function(result, callback) {//鏌ヨ鍚庣殑鍥炶皟锛岀敤浜庤幏鍙栧瓧娈电殑
+								if (result.meta && result.meta[me.selectTabObj.dataname] && result.meta[me.selectTabObj.dataname].fields) {
+									var metas = clone(result.meta[me.selectTabObj.dataname].fields);
+									var filterFields_ = [];
+									var tableFields_ = [];
+									
+									metas.map(f=>{
+										f.isshow = "T";
+										
+										if (f.isfilter) {
+											filterFields_.push(clone(f));
+										}
+										else {
+											var filter_f = clone(f);
+											filter_f.isshow = "F";
+											filterFields_.push(filter_f);
+										}
+										
+										tableFields_.push(clone(f));
+									})
+									if (!me.selectTabObj.filterFields || (me.selectTabObj.filterFields && me.selectTabObj.filterFields.length == 0)) {
+										me.selectTabObj.filterFields = clone(me.default_filterFields[me.selectTabObj.code]);
+										me.selectTabObj.tableFields = clone(me.default_tableFields);
+										
+										me.selectTabObj.filterObj = clone(me.default_filterObj[me.selectTabObj.code])
+										
+										me.selectTabObj.tableData = clone(me.default_tableData);
+										// me.selectTabObj.filterFields = clone(filterFields_);
+										// me.selectTabObj.tableFields = clone(tableFields_);
+										
+										//瀛楁鏁扮粍杞瓧娈祇bj
+										me.fieldsToFieldsObj();
+										
+										//璁剧疆瀛楁浜嬩欢
+										me.tableFieldClick();
+									}
+								}
+								
+								if (callback) {
+									callback();
+								}
+							});
+						},
+						
+						tableFieldClick() {
+							var me = this;
+							var tablefieldClick = {};
+							//琛ㄦ牸瀛楁浜嬩欢璁剧疆
+							tablefieldClick.input = {
+								code: {//瀛楁浜嬩欢璁剧疆
+									val: {//鏈夊�兼椂鐨勭偣鍑讳簨浠�
+										notclick_val: "PS-001",//涓嶅彲鐐瑰嚮鐨勫��,1銆佹槸鏁扮粍["11","22"]锛�2銆佷互鈥�;鈥濆垎闅旂殑瀛楃涓�"111;222"
+										notclick_bindfield: [],//褰撹瀛楁鍊肩瓑浜庢寚瀹氬瓧娈靛�兼椂涓嶅彲鐐瑰嚮["filterfield": "111"]
+										onclick: function(obj) {//鏁版嵁鍊肩偣鍑讳簨浠�
+											Root.message({
+												type: 'success',
+												message: obj.val + '鐐瑰嚮浜嬩欢'
+											}); 
+											//鎵撳紑
+											me.opentest(obj)
+										},
+									},
+								},
+							};
+							tablefieldClick.all = {
+								status: {//瀛楁浜嬩欢璁剧疆
+									val: {//鏈夊�兼椂鐨勭偣鍑讳簨浠�
+										notclick_val: "PS-001",//涓嶅彲鐐瑰嚮鐨勫��,1銆佹槸鏁扮粍["11","22"]锛�2銆佷互鈥�;鈥濆垎闅旂殑瀛楃涓�"111;222"
+										notclick_bindfield: [],//褰撹瀛楁鍊肩瓑浜庢寚瀹氬瓧娈靛�兼椂涓嶅彲鐐瑰嚮["filterfield": "111"]
+										onclick: function(obj) {//鏁版嵁鍊肩偣鍑讳簨浠�
+											Root.message({
+												type: 'success',
+												message: obj.val + '鐐瑰嚮浜嬩欢'
+											}); 
+											//鎵撳紑
+											me.opentest(obj)
+										},
+									},
+								},
+							};
+							
+							this.selectTabObj.tablefieldClick = tablefieldClick[this.activeTabName];
+						},
+						
+						opentest(obj) {
+							var me = this;
+							Root.message({
+								type: 'success',
+								message: '鍚庣紑鐐瑰嚮浜嬩欢'
+							});
+							
+							var config = {
+								totab: true, //true: 浠ab瀵艰埅鐨勬柟寮忔墦寮�
+								width: "900px",
+								height: "900px",
+								icon: "icon-product",
+								text: "琛ㄥ崟鏍蜂緥椤甸潰",
+								id: "test_page" + obj.row.id,//totab: true鏃堕渶璁剧疆锛岀敤浜庡垽鏂槸鍚﹀凡鎵撳紑姝ら〉闈�
+								url: "module/system/page/sample/sample_form.html",
+								data: obj.row,
+								delta: {},
+								sceneCode: "browse",//"refuseedit",//"approval", //"add"//"browse",
+								callback: function(obj, callback) {
+									me.onQuery();
+									if (callback) {
+										callback();
+									}
+								}
+							};
+							me.doPopupByPublic(config);
+						},
+						
+						rowClick(obj){
+							var me = this;
+							me.selectTabObj.selectedrow = obj.row;
+						},
+						
+						onAddSS() {
+							var me = this;
+							Root.message({
+								type: 'success',
+								message: '鐢宠瘔浜嬩欢'
+							});
+						}
+						
+						
+					}
+				});
+			};
+			
+			loadJsCss(function () {
+				initVue();
+			});
+		</script>
+		<style>
+			/* 鍦╲ue.js涓� v-cloak 杩欎釜鎸囦护鏄槻姝㈤〉闈㈠姞杞芥椂鍑虹幇 vuejs 鐨勫彉閲忓悕鑰岃璁$殑 */
+			[v-cloak] {
+				display: none !important;
+			}
+			.el-tabs__nav-scroll {
+			    overflow: hidden;
+			    position: relative;
+			    padding-left: 20px;
+			}
+		</style>
+		
+	</head>
+	
+	<body style="margin: 0px;">
+		<div v-cloak id="vbody">
+			<div id="page_root">
+				<div class="topbar">
+					<span style="float: left;">{{title}}</span>
+					
+					<div style="float: right; margin-right: 18px;">
+						<el-button-group v-if="selectTabObj && selectTabObj.code == 'monthflow' && selectTabObj.filterObj.dition_type == '1'" style="margin-left: 3px;">
+							<el-button :disabled="!(selectTabObj.selectedrow && selectTabObj.selectedrow.biz_date)" type="primary" @click="onAddSS":icon="buttonsconfig.add.icon">鐢宠瘔</el-button>
+						</el-button-group>
+						
+						<el-button-group style="margin-left: 3px;">
+							<el-button type="primary" @click="":icon="buttonsconfig.import.icon">{{buttonsconfig.import.name}}</el-button>
+							<el-button type="primary" @click="":icon="buttonsconfig.export.icon">{{buttonsconfig.export.name}}</el-button>
+						</el-button-group>
+					</div>
+					
+					<div style="float: left; margin-left: 20%;">
+						<span>鎶ュ憡鏃ユ湡锛�</span>
+						<span v-if="selectTabObj && selectTabObj.code == 'monthflow'">{{newdate_month}}</span>
+						<span v-if="selectTabObj && selectTabObj.code == 'dayflow'">{{newdate_day}}</span>
+						<el-radio-group style="margin-left: 10px;" v-if="selectTabObj && selectTabObj.filterObj && selectTabObj.code=='monthflow'" v-model="selectTabObj.filterObj.dition_type" size="mini" fill="#4cb108">
+						    <el-radio-button label="1">鍒濈増</el-radio-button>
+						    <el-radio-button label="2">缁堢増</el-radio-button>
+						</el-radio-group>
+					</div>
+				</div>
+				<div>
+					<el-tabs v-model="activeTabName" @tab-click="handleClick">
+						<el-tab-pane v-for="(tab, k) in tabs" :label="tab.name" :name="tab.code" :key="k"></el-tab-pane>
+					</el-tabs>
+				</div>
+			
+				<div class="topbar-line">
+					<div class="query-bar">
+						<h-form-filter v-if="selectTabObj.filterFields" ref="form1" 
+							:form-attr="filterAttr" 
+							:table-fields="selectTabObj.filterFields" 
+							:form-data="selectTabObj.filterObj" 
+							:table-field-click="selectTabObj.filterfieldClick"
+							:isdraggableorder="false"
+							
+							v-on:on-query="onQuery"
+							v-on:on-init-query="onInitFilter"
+							v-on:on-edit-query="onEditFilter"
+							v-on:order-fields="orderFilterFields"
+							>
+						</h-form-filter>
+					</div>
+				</div>
+			
+				<div class="h_dialog__body">
+					<h-table
+						v-if="isRefresh && selectTabObj.tableFields"
+						ref="table1"
+						:table-fields="selectTabObj.tableFields" 
+						:table-data="default_tableData" 
+						:is-edit-table-data="selectTabObj.isEditTableData"
+						:pagesize="selectTabObj.pagesize"
+						:pagenum="selectTabObj.pagenum"
+						:total="selectTabObj.total"
+						:table-height="selectTabObj.tableHeight"
+						:table-field-click="selectTabObj.tablefieldClick"
+						:is-show-index="selectTabObj.isShowIndex"
+						:tableloading="tableloading"
+						:isdraggableorder="false"
+						:is-highlight-row="true"
+						
+						v-on:get-data="getData"
+						v-on:row-click="rowClick"
+					>
+					</h-table>
+				</div>
+			</div>
+		</div>
+		
+		<div id="page_loading" style="position: absolute; top:0px; width: 100vw; height: 50vh;">
+			<div class="spinner">
+			  <div class="cube1"></div>
+			  <div class="cube2"></div>
+			</div>
+		</div>
+		
+	</body>
+</html>
diff --git a/module/flow/page/flowStock.html b/module/flow/page/flowStock.html
new file mode 100644
index 0000000..6b18606
--- /dev/null
+++ b/module/flow/page/flowStock.html
@@ -0,0 +1,528 @@
+<!doctype html>
+<html>
+	<head>
+		<meta charset="utf-8"><meta http-equiv="Expires" content="0"><meta http-equiv="Pragma" content="no-cache"><meta http-equiv="Cache-control" content="no-cache"><meta http-equiv="Cache" content="no-cache">
+		<title>搴撳瓨娴佸悜</title>
+		
+		<script type="text/javascript">
+			function loadJsCss(callback) {
+				var jscss_urls = [];
+				window.top.initJsCss(document, jscss_urls, callback);
+			};
+			
+			function initVue() {
+				new TabTableVue({
+					el: "#vbody",
+					data: {
+						title: "搴撳瓨娴佸悜",
+						//Tab椤硅缃�
+						tabs_d: [
+							{code: "monthflow", name: "鏈堟祦鍚�", dataname: "sys_data_property", filterTxt: "", orderby: ""},
+							{code: "dayflow", name: "鏃ユ祦鍚�", dataname: "sys_data_property", filterTxt: "", orderby: ""},
+						],
+						
+						d_tabs: {
+							monthflow: true,
+							dayflow: true,
+						},
+						filterTxt: "1<>1",
+						tabs: [],
+						tabsobj: {},
+						newdate: "",
+						default_filterFields: {
+							monthflow: [
+								{isshow: "T", field: "year", name: "骞翠唤", type: "year", filterfield: "id", filteroperator: "="},
+								{isshow: "T", field: "month", name: "鏈堜唤", type: "month", filterfield: "id", filteroperator: "="},
+								{isshow: "T",field: "customer_code",name: "瀹㈡埛缂栫爜",filterfield: "",filteroperator: "like"},
+								{isshow: "T",field: "customer_name_old",name: "瀹㈡埛鍘熷鍚嶇О",filterfield: "",filteroperator: "like"},
+								{isshow: "T",field: "product_code",name: "浜у搧缂栫爜",filterfield: "",filteroperator: "like"},
+								{isshow: "T",field: "product_name",name: "浜у搧鍘熷鍚嶇О",filterfield: "",filteroperator: "like"},
+								{isshow: "F", field: "dition_type",name: "", filterfield: "", filteroperator: "=", 
+								type: "radio", options: [
+									{code: "1", value: "鍒濈増"},
+									{code: "2", value: "缁堢増"},
+								]},
+							],
+							
+							dayflow: [
+								{isshow: "T", field: "year", name: "骞翠唤", type: "year", filterfield: "id", filteroperator: "="},
+								{isshow: "T", field: "month", name: "鏈堜唤", type: "month", filterfield: "id", filteroperator: "="},
+								{isshow: "T",field: "customer_code",name: "瀹㈡埛缂栫爜",filterfield: "",filteroperator: "like"},
+								{isshow: "T",field: "customer_name_old",name: "瀹㈡埛鍘熷鍚嶇О",filterfield: "",filteroperator: "like"},
+								{isshow: "T",field: "product_code",name: "浜у搧缂栫爜",filterfield: "",filteroperator: "like"},
+								{isshow: "T",field: "product_name",name: "浜у搧鍘熷鍚嶇О",filterfield: "",filteroperator: "like"},
+							]
+						},
+						
+						default_filterObj: {
+							monthflow: {
+								year: new Date().getFullYear().toString(),
+								month: dateFormat(new Date(), "yyyy-MM"),
+								//month: new Date().getFullYear() + "-" + new Date().getMonth()+1,
+								dition_type: "1"
+							},
+							dayflow: {
+								year: new Date().getFullYear().toString(),
+								// month: new Date().getMonth()+1,
+								month: dateFormat(new Date(), "yyyy-MM"),
+							},
+						},
+						
+						default_tableFields: [
+							{isshow: "T", field: "year", name: "骞翠唤", align: "center",width: "80"},
+							{isshow: "T", field: "month", name: "鏈堜唤", align: "center",width: "80"},
+							{isshow: "T",field: "customer_code",name: "瀹㈡埛缂栫爜",width: "100",align: "center"},
+							{isshow: "T",field: "customer_name_old",name: "瀹㈡埛鍘熷鍚嶇О",align: "left", width: "200", isminwidth: true},
+							{isshow: "T",field: "province",name: "瀹㈡埛鐪佷唤",width: "120"},
+							{isshow: "T",field: "city",name: "瀹㈡埛鍩庡競",width: "120"},
+							{isshow: "T",field: "county",name: "瀹㈡埛鍖哄幙",width: "120"},
+							{isshow: "T",field: "product_code", name: "浜у搧缂栫爜", align: "center", width: "100"},
+							{isshow: "T", field: "product_name", name: "浜у搧鍘熷鍚嶇О", align: "left", width: "180"},
+							{isshow: "T", field: "unit", name: "鏍囧噯鍗曚綅", width: "80", align: "center"},
+							{isshow: "T", field: "unit_old", name: "鍘熷鍗曚綅", width: "80", align: "center"},
+							{isshow: "T", field: "qty", name: "鏁伴噺", align: "right", width: "100"},
+							{isshow: "T", field: "batch_number", name: "鎵瑰彿", align: "center", width: "100"},
+						],
+						default_tableData: [
+							{
+								"year":"2023",
+								"month":"3",
+								"customer_code":"D00000030",
+								"customer_name_old":"姹熻タ瀹忎匠椤哄尰鐤楀櫒姊版湁闄愬叕鍙�",
+								"province":"姹熻タ鐪�",
+								"city":"钀嶄埂甯�",
+								"county":"瀹夋簮鍖�",
+								"product_code":"00258",
+								"product_name":"鏉胯摑鏍归绮�",
+								"unit":"鐩�",
+								"unit_old":"鐩�",
+								"qty":"80",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"3",
+								"customer_code":"D00000030",
+								"customer_name_old":"姹熻タ瀹忎匠椤哄尰鐤楀櫒姊版湁闄愬叕鍙�",
+								"province":"姹熻タ鐪�",
+								"city":"钀嶄埂甯�",
+								"county":"瀹夋簮鍖�",
+								"product_code":"00258",
+								"product_name":"鏉胯摑鏍归绮�",
+								"unit":"鐩�",
+								"unit_old":"鐩�",
+								"qty":"60",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"3",
+								"customer_code":"D00000030",
+								"customer_name_old":"姹熻タ瀹忎匠椤哄尰鐤楀櫒姊版湁闄愬叕鍙�",
+								"province":"姹熻タ鐪�",
+								"city":"钀嶄埂甯�",
+								"county":"瀹夋簮鍖�",
+								"product_code":"00258",
+								"product_name":"鏉胯摑鏍归绮�",
+								"unit":"鐩�",
+								"unit_old":"鐩�",
+								"qty":"30",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"3",
+								"customer_code":"D00000030",
+								"customer_name_old":"姹熻タ瀹忎匠椤哄尰鐤楀櫒姊版湁闄愬叕鍙�",
+								"province":"姹熻タ鐪�",
+								"city":"钀嶄埂甯�",
+								"county":"瀹夋簮鍖�",
+								"product_code":"00258",
+								"product_name":"鏉胯摑鏍归绮�",
+								"unit":"鐩�",
+								"unit_old":"鐩�",
+								"qty":"30",
+								"batch_number":"1001",
+							},
+							
+							{
+								"year":"2023",
+								"month":"2",
+								"customer_code":"D00000119",
+								"customer_name_old":"鍚夊畨甯傚悏宸炲尯鍙岄┈鍟嗚锤鏈夐檺鍏徃",
+								"province":"姹熻タ鐪�",
+								"city":"鍚夊畨甯�",
+								"county":"鍚夊窞鍖�",
+								"product_code":"00258",
+								"product_name":"鏉胯摑鏍归绮�",
+								"unit":"鐩�",
+								"unit_old":"鐩�",
+								"qty":"60",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"2",
+								"customer_code":"D00000119",
+								"customer_name_old":"鍚夊畨甯傚悏宸炲尯鍙岄┈鍟嗚锤鏈夐檺鍏徃",
+								"province":"姹熻タ鐪�",
+								"city":"鍚夊畨甯�",
+								"county":"鍚夊窞鍖�",
+								"product_code":"00258",
+								"product_name":"甯冩礇鑺紦閲婅兌鍥�",
+								"unit":"鐩�",
+								"unit_old":"鐩�",
+								"qty":"55",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"2",
+								"customer_code":"D00000119",
+								"customer_name_old":"鍚夊畨甯傚悏宸炲尯鍙岄┈鍟嗚锤鏈夐檺鍏徃",
+								"province":"姹熻タ鐪�",
+								"city":"鍚夊畨甯�",
+								"county":"鍚夊窞鍖�",
+								"product_code":"00258",
+								"product_name":"甯冩礇鑺紦閲婅兌鍥�",
+								"unit":"鐩�",
+								"unit_old":"鐩�",
+								"qty":"85",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"2",
+								"customer_code":"D00000119",
+								"customer_name_old":"鍚夊畨甯傚悏宸炲尯鍙岄┈鍟嗚锤鏈夐檺鍏徃",
+								"province":"姹熻タ鐪�",
+								"city":"鍚夊畨甯�",
+								"county":"鍚夊窞鍖�",
+								"product_code":"00258",
+								"product_name":"甯冩礇鑺紦閲婅兌鍥�",
+								"unit":"鐩�",
+								"unit_old":"鐩�",
+								"qty":"69",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"2",
+								"customer_code":"D00000119",
+								"customer_name_old":"鍚夊畨甯傚悏宸炲尯鍙岄┈鍟嗚锤鏈夐檺鍏徃",
+								"province":"姹熻タ鐪�",
+								"city":"鍚夊畨甯�",
+								"county":"鍚夊窞鍖�",
+								"product_code":"00258",
+								"product_name":"甯冩礇鑺紦閲婅兌鍥�",
+								"unit":"鐩�",
+								"unit_old":"鐩�",
+								"qty":"12",
+								"batch_number":"1001",
+							},
+							{
+								"year":"2023",
+								"month":"2",
+								"customer_code":"D00000119",
+								"customer_name_old":"鍚夊畨甯傚悏宸炲尯鍙岄┈鍟嗚锤鏈夐檺鍏徃",
+								"province":"姹熻タ鐪�",
+								"city":"鍚夊畨甯�",
+								"county":"鍚夊窞鍖�",
+								"product_code":"00258",
+								"product_name":"甯冩礇鑺紦閲婅兌鍥�",
+								"unit":"鐩�",
+								"unit_old":"鐩�",
+								"qty":"965",
+								"batch_number":"1001",
+							},
+						],
+					},
+					created() {
+						this.newdate_month = dateFormat(new Date(), "yyyy骞碝M鏈�")
+						this.newdate_day = dateFormat(new Date(), "yyyy骞碝M鏈坉d鏃�")
+					},
+					
+					mounted() {
+						var me = this;
+						if (window.top.tab.selected.option.page_id) {
+							// this.page_id = window.top.tab.selected.option.page_id;
+							getPageByPageId(window.top.tab.selected.option.page_id, function(result){
+								me.cbuttons_r = result.buttons_r;
+								me.ctabs_r = result.tabs_r;
+								
+								me.ctabs_r = me.d_tabs
+								
+								var tabsarr = [];
+								me.tabs_d.map(e=>{
+									if(me.ctabs_r[e.code]){
+										tabsarr.push(e)
+									}
+								})
+								me.tabs = tabsarr;
+								
+								if(me.tabs.length>0){
+									me.activeTabName = me.tabs[0].code;
+								}
+								console.log(me.cbuttons_r)
+								
+								//鍒濆鍖朤abs
+								me.initTabsPage(function() {
+									//鑾峰彇鏁版嵁
+									me.initData();
+								});
+								
+								me.$nextTick(() => { // 浠ユ湇鍔$殑鏂瑰紡璋冪敤鐨� Loading 闇�瑕佸紓姝ュ叧闂�
+									hideLoading();
+								});
+							})
+						}
+						
+						
+						// this.activeTabName = "input";
+						// //鑾峰彇鏁版嵁
+						// this.initTabsPage(function() {
+						// 	me.initData();
+						// });
+						
+						// this.$nextTick(() => { // 浠ユ湇鍔$殑鏂瑰紡璋冪敤鐨� Loading 闇�瑕佸紓姝ュ叧闂�
+						// 	hideLoading();
+						// });
+					},
+					
+					methods:{
+						onhandleClick() {
+							this.initData();
+						},
+						
+						initData() {
+							var me = this;
+							this.doQueryByTab(function(result, callback) {//鏌ヨ鍚庣殑鍥炶皟锛岀敤浜庤幏鍙栧瓧娈电殑
+								if (result.meta && result.meta[me.selectTabObj.dataname] && result.meta[me.selectTabObj.dataname].fields) {
+									var metas = clone(result.meta[me.selectTabObj.dataname].fields);
+									var filterFields_ = [];
+									var tableFields_ = [];
+									
+									metas.map(f=>{
+										f.isshow = "T";
+										
+										if (f.isfilter) {
+											filterFields_.push(clone(f));
+										}
+										else {
+											var filter_f = clone(f);
+											filter_f.isshow = "F";
+											filterFields_.push(filter_f);
+										}
+										
+										tableFields_.push(clone(f));
+									})
+									if (!me.selectTabObj.filterFields || (me.selectTabObj.filterFields && me.selectTabObj.filterFields.length == 0)) {
+										me.selectTabObj.filterFields = clone(me.default_filterFields[me.selectTabObj.code]);
+										me.selectTabObj.tableFields = clone(me.default_tableFields);
+										
+										me.selectTabObj.filterObj = clone(me.default_filterObj[me.selectTabObj.code])
+										
+										me.selectTabObj.tableData = clone(me.default_tableData);
+										
+										// me.selectTabObj.filterFields = clone(filterFields_);
+										// me.selectTabObj.tableFields = clone(tableFields_);
+										
+										//瀛楁鏁扮粍杞瓧娈祇bj
+										me.fieldsToFieldsObj();
+										
+										//璁剧疆瀛楁浜嬩欢
+										me.tableFieldClick();
+									}
+								}
+								
+								if (callback) {
+									callback();
+								}
+							});
+						},
+						
+						tableFieldClick() {
+							var me = this;
+							var tablefieldClick = {};
+							//琛ㄦ牸瀛楁浜嬩欢璁剧疆
+							tablefieldClick.input = {
+								code: {//瀛楁浜嬩欢璁剧疆
+									val: {//鏈夊�兼椂鐨勭偣鍑讳簨浠�
+										notclick_val: "PS-001",//涓嶅彲鐐瑰嚮鐨勫��,1銆佹槸鏁扮粍["11","22"]锛�2銆佷互鈥�;鈥濆垎闅旂殑瀛楃涓�"111;222"
+										notclick_bindfield: [],//褰撹瀛楁鍊肩瓑浜庢寚瀹氬瓧娈靛�兼椂涓嶅彲鐐瑰嚮["filterfield": "111"]
+										onclick: function(obj) {//鏁版嵁鍊肩偣鍑讳簨浠�
+											Root.message({
+												type: 'success',
+												message: obj.val + '鐐瑰嚮浜嬩欢'
+											}); 
+											//鎵撳紑
+											me.opentest(obj)
+										},
+									},
+								},
+							};
+							tablefieldClick.all = {
+								status: {//瀛楁浜嬩欢璁剧疆
+									val: {//鏈夊�兼椂鐨勭偣鍑讳簨浠�
+										notclick_val: "PS-001",//涓嶅彲鐐瑰嚮鐨勫��,1銆佹槸鏁扮粍["11","22"]锛�2銆佷互鈥�;鈥濆垎闅旂殑瀛楃涓�"111;222"
+										notclick_bindfield: [],//褰撹瀛楁鍊肩瓑浜庢寚瀹氬瓧娈靛�兼椂涓嶅彲鐐瑰嚮["filterfield": "111"]
+										onclick: function(obj) {//鏁版嵁鍊肩偣鍑讳簨浠�
+											Root.message({
+												type: 'success',
+												message: obj.val + '鐐瑰嚮浜嬩欢'
+											}); 
+											//鎵撳紑
+											me.opentest(obj)
+										},
+									},
+								},
+							};
+							
+							this.selectTabObj.tablefieldClick = tablefieldClick[this.activeTabName];
+						},
+						
+						opentest(obj) {
+							var me = this;
+							Root.message({
+								type: 'success',
+								message: '鍚庣紑鐐瑰嚮浜嬩欢'
+							});
+							
+							var config = {
+								totab: true, //true: 浠ab瀵艰埅鐨勬柟寮忔墦寮�
+								width: "900px",
+								height: "900px",
+								icon: "icon-product",
+								text: "琛ㄥ崟鏍蜂緥椤甸潰",
+								id: "test_page" + obj.row.id,//totab: true鏃堕渶璁剧疆锛岀敤浜庡垽鏂槸鍚﹀凡鎵撳紑姝ら〉闈�
+								url: "module/system/page/sample/sample_form.html",
+								data: obj.row,
+								delta: {},
+								sceneCode: "browse",//"refuseedit",//"approval", //"add"//"browse",
+								callback: function(obj, callback) {
+									me.onQuery();
+									if (callback) {
+										callback();
+									}
+								}
+							};
+							me.doPopupByPublic(config);
+						},
+						rowClick(obj){
+							var me = this;
+							me.selectTabObj.selectedrow = obj.row;
+						},
+						
+						onAddSS() {
+							var me = this;
+							Root.message({
+								type: 'success',
+								message: '鐢宠瘔浜嬩欢'
+							});
+						}
+						
+					}
+				});
+			};
+			
+			loadJsCss(function () {
+				initVue();
+			});
+		</script>
+		<style>
+			/* 鍦╲ue.js涓� v-cloak 杩欎釜鎸囦护鏄槻姝㈤〉闈㈠姞杞芥椂鍑虹幇 vuejs 鐨勫彉閲忓悕鑰岃璁$殑 */
+			[v-cloak] {
+				display: none !important;
+			}
+			.el-tabs__nav-scroll {
+			    overflow: hidden;
+			    position: relative;
+			    padding-left: 20px;
+			}
+		</style>
+		
+	</head>
+	
+	<body style="margin: 0px;">
+		<div v-cloak id="vbody">
+			<div id="page_root">
+				<div class="topbar">
+					<span style="float: left;">{{title}}</span>
+					
+					<div style="float: right; margin-right: 18px;">
+						<el-button-group v-if="selectTabObj && selectTabObj.code == 'monthflow' && selectTabObj.filterObj.dition_type == '1'" style="margin-left: 3px;">
+							<el-button :disabled="!(selectTabObj.selectedrow && selectTabObj.selectedrow.biz_date)" type="primary" @click="onAddSS":icon="buttonsconfig.add.icon">鐢宠瘔</el-button>
+						</el-button-group>
+						<el-button-group style="margin-left: 3px;">
+							<el-button type="primary" @click="":icon="buttonsconfig.import.icon">{{buttonsconfig.import.name}}</el-button>
+							<el-button type="primary" @click="":icon="buttonsconfig.export.icon">{{buttonsconfig.export.name}}</el-button>
+						</el-button-group>
+					</div>
+					<div style="float: left; margin-left: 20%;">
+						<span>鎶ュ憡鏃ユ湡锛�</span>
+						<span v-if="selectTabObj && selectTabObj.code == 'monthflow'">{{newdate_month}}</span>
+						<span v-if="selectTabObj && selectTabObj.code == 'dayflow'">{{newdate_day}}</span>
+						<el-radio-group style="margin-left: 10px;" v-if="selectTabObj && selectTabObj.filterObj && selectTabObj.code=='monthflow'" v-model="selectTabObj.filterObj.dition_type" size="mini" fill="#4cb108">
+						    <el-radio-button label="1">鍒濈増</el-radio-button>
+						    <el-radio-button label="2">缁堢増</el-radio-button>
+						</el-radio-group>
+					</div>
+				</div>
+				<div>
+					<el-tabs v-model="activeTabName" @tab-click="handleClick">
+						<el-tab-pane v-for="(tab, k) in tabs" :label="tab.name" :name="tab.code" :key="k"></el-tab-pane>
+					</el-tabs>
+				</div>
+			
+				<div class="topbar-line">
+					<div class="query-bar">
+						<h-form-filter v-if="selectTabObj.filterFields" ref="form1" 
+							:form-attr="filterAttr" 
+							:table-fields="selectTabObj.filterFields" 
+							:form-data="selectTabObj.filterObj" 
+							:table-field-click="selectTabObj.filterfieldClick"
+							:isdraggableorder="false"
+							
+							v-on:on-query="onQuery"
+							v-on:on-init-query="onInitFilter"
+							v-on:on-edit-query="onEditFilter"
+							v-on:order-fields="orderFilterFields"
+							>
+						</h-form-filter>
+					</div>
+				</div>
+			
+				<div class="h_dialog__body">
+					<h-table
+						v-if="isRefresh && selectTabObj.tableFields"
+						ref="table1"
+						:table-fields="selectTabObj.tableFields" 
+						:table-data="default_tableData" 
+						:is-edit-table-data="selectTabObj.isEditTableData"
+						:pagesize="selectTabObj.pagesize"
+						:pagenum="selectTabObj.pagenum"
+						:total="selectTabObj.total"
+						:table-height="selectTabObj.tableHeight"
+						:table-field-click="selectTabObj.tablefieldClick"
+						:is-show-index="selectTabObj.isShowIndex"
+						:tableloading="tableloading"
+						:isdraggableorder="false"
+						:is-highlight-row="true"
+						
+						v-on:get-data="getData"
+						v-on:row-click="rowClick"
+					>
+					</h-table>
+				</div>
+			</div>
+		</div>
+		
+		<div id="page_loading" style="position: absolute; top:0px; width: 100vw; height: 50vh;">
+			<div class="spinner">
+			  <div class="cube1"></div>
+			  <div class="cube2"></div>
+			</div>
+		</div>
+		
+	</body>
+</html>
diff --git a/module/flow/page/flow_inventory_list.html b/module/flow/page/flow_inventory_list.html
index 92d4946..a132704 100644
--- a/module/flow/page/flow_inventory_list.html
+++ b/module/flow/page/flow_inventory_list.html
@@ -15,7 +15,7 @@
 				pageVue = new TabTableVue({
 					el: "#vbody",
 					data: {
-						title: "閿�鍞祦鍚�",
+						title: "搴撳瓨娴佸悜",
 						//Tab椤硅缃�
 						tabs_d: [
 							{code: "month", name: "鏈堟祦鍚�", dataname: "flow_daily_sell", filterTxt: "", orderby: ""},
diff --git a/module/flow/page/flow_purchase_list.html b/module/flow/page/flow_purchase_list.html
index acb6fe5..5d5e5ce 100644
--- a/module/flow/page/flow_purchase_list.html
+++ b/module/flow/page/flow_purchase_list.html
@@ -15,7 +15,7 @@
 				pageVue = new TabTableVue({
 					el: "#vbody",
 					data: {
-						title: "閿�鍞祦鍚�",
+						title: "閲囪喘娴佸悜",
 						//Tab椤硅缃�
 						tabs_d: [
 							{code: "month", name: "鏈堟祦鍚�", dataname: "flow_daily_sell", filterTxt: "", orderby: ""},
diff --git a/module/md/page/customer/page/channel_relationship.html b/module/md/page/customer/page/channel_relationship.html
index e51535f..7b69e03 100644
--- a/module/md/page/customer/page/channel_relationship.html
+++ b/module/md/page/customer/page/channel_relationship.html
@@ -34,7 +34,7 @@
 						
 						tabs: [],
 						tabsobj: {},
-
+						isShowTab: false,
 						dataRequest: [
 							
 						],
@@ -323,12 +323,12 @@
 					<span :class="page_title == 'right' ? 'h_page_title_right' : 'h_page_title_left'"><span class="h_page_title_txt">{{title}}</span></span>			
 					<div :class="page_title == 'right' ? 'h_page_button_left' : 'h_page_button_right'">
 						<el-button-group style="margin-left: 3px;">
-							<el-button v-if="cbuttons_r.refresh" type="primary" @click="onRefreshChannelStructure" icon="el-icon-refresh-right">閲嶆柊鐢熸垚</el-button>
+							<!-- <el-button v-if="cbuttons_r.refresh" type="primary" @click="onRefreshChannelStructure" icon="el-icon-refresh-right">閲嶆柊鐢熸垚</el-button> -->
 							<el-button type="primary" @click="onDownload" :icon="buttonsconfig.export.icon">{{buttonsconfig.export.name}}</el-button>
 						</el-button-group>
 					</div>
 				</div>
-				<div>
+				<div v-show="isShowTab">
 					<el-tabs v-model="activeTabName" @tab-click="handleClick">
 						<el-tab-pane v-for="(tab, k) in tabs" :label="tab.name" :name="tab.code" :key="k"></el-tab-pane>
 					</el-tabs>
diff --git a/module/md/page/customer/page/customer_basic.html b/module/md/page/customer/page/customer_basic.html
index 2c272fc..1f7b2c8 100644
--- a/module/md/page/customer/page/customer_basic.html
+++ b/module/md/page/customer/page/customer_basic.html
@@ -87,7 +87,8 @@
 						
 						formFields: [],
 						formFields_criteria: [],
-						
+						fileobj: {},
+						ocrobj: {},
 						formData: {},
 						formData_criteria: {},
 						formData1:[],
@@ -556,39 +557,170 @@
 								}
 							});
 						},
-						uploadFileFun_file(one,fileList,type) {
-							var me = this; 
-							me.imgLoading = true
-							me.imgurl =URL.createObjectURL(one.raw) //淇濇寔鏂囦欢鍦ㄦ湰绐楀彛锛屽惁鍒欎細鍔犺浇澶辫触
-							// me.imgurl = one.url
-							// console.log(one+fileList+type)
-					
+						uploadFileFun_file(one, fileList, type) {
+						    let me = this;
+						    let formData = new FormData()
+						    formData.append("category" , "org");
+						    formData.append("oneFile" , one.raw);
+						    
+						    formData.append("id", me.formData.id);
+						    formData.append("dataName", "md_org_register");
+						    formData.append("field_fileName", "file_name_certificate_original");
+						    formData.append("field_fileId", "file_certificate_original");
+						    
+						    me.imgLoading = true;
+						    uploadFileOCR("bizLicense", me, formData, function(result_){
+						        var form_data_ = {};
+						        
+						        if (result_.data && result_.data.data &&  result_.data.data.upload && result_.data.data.ocr && result_.data.data.ocr.operator) {
+						            var file_ = result_.data.data.upload;
+						            var ocr_ = result_.data.data.ocr;
+						            
+						            if (typeof(ocr_.content)=="string") {
+						                ocr_.content = JSON.parse(ocr_.content);
+						            }
+						            
+						            for (var k in ocr_.content) {
+						                // var v_ = decodeURI(ocr_[k]);
+						                var v_ = ocr_.content[k];
+						                if ( "string" == typeof v_) {
+						                    //鍘婚櫎涓ょ鐨勭┖鏍�
+						                    v_ = v_.replace(/(^\s*)|(\s*$)/g, "");
+						                    //鍘婚櫎涓棿鐨勫洖杞︽崲琛�
+						                    v_ = v_.replace(/[\r\n]/g,"");
+						                    //鍘婚櫎涓棿鎵�鏈�"
+						                    v_ = v_.replace(/\"/g,"");
+						                }
+						                form_data_[k] = v_;
+						            }
+						            
+						            me.fileobj = file_;
+						            me.ocrobj = form_data_;
+						            console.log("璇嗗埆淇℃伅",form_data_);
+						            me.imgurl = config.url_root + "root/file/getFile?category=org&token=" + Root.getToken() + "&id=" + file_.indexid;
+						        }
+						        else {
+						            me.$message({
+						                type:"warning",
+						                message:"璇嗗埆澶辫触"
+						            })
+						        }
+						        
+						        if (me.ocrobj.validToDate) {
+						            var txt = me.ocrobj.validToDate;
+						            me.ocrobj.validToDate = me.newOcrDate(txt);
+						        }
+						        
+						        if (me.ocrobj.validFromDate) {
+						            var txt = me.ocrobj.validFromDate;
+						            me.ocrobj.validFromDate = me.newOcrDate(txt);
+						        }
+						        
+						        var from_ = clone(me.formData);
+						        console.log(form_data_);
+						        // from_.register_address = form_data_.Address || null;
+						        // from_.certificate_no = me.ocrobj.RegNum || null; // 钀ヤ笟鎵х収-璇佺収缂栧彿
+						        // from_.name = form_data_.Name;
+						        // from_.certificate_date_from = form_data_.SetDate;
+						        // from_.certificate_date_to = form_data_.Period;
+						        // from_.certificate_legal_representative = form_data_.Person;
+						        // from_.certificate_scope = form_data_.Business;
+						
+						        from_.register_address = form_data_.businessAddress || null;
+						        from_.license_business_no = me.ocrobj.creditCode || null; // 钀ヤ笟鎵х収-璇佺収缂栧彿
+						        from_.license_business_name = form_data_.companyName;
+						        from_.license_business_date_from = form_data_.validFromDate;
+						        from_.license_business_date_to = form_data_.validToDate;
+						        from_.certificate_legal_representative = form_data_.legalPerson;
+						        from_.certificate_scope = form_data_.businessScope;
+						        
+						        me.formData = from_;
+						        
+						        me.imgLoading = false;
+						        
+						    }, function() {
+						        me.$message({
+						            type:"warning",
+						            message:"璇嗗埆澶辫触"
+						        })
+						        me.imgLoading = false;
+						    });
 						},
+						
+						newOcrDate(txt) {
+						    var txtList = txt.split("鑷�");
+						    if(txtList[0] == "骞存湀鏃�"){
+						        txt = "2099-12-31";
+						    }
+						    else {
+						        if (txtList.length > 1) {
+						            if(txtList[1].indexOf("闀挎湡") != -1 || txtList[1].indexOf("姘镐箙") != -1 || txtList[1].indexOf("涓嶇害瀹氭湡闄�") != -1){//涓嶇害瀹氭湡闄�
+						                txt = "2099-12-31";
+						            }
+						            else {
+						                txt = txtList[1];
+						                
+						                txt = txt.replace("骞�", "-");
+						                txt = txt.replace("鏈�", "-");
+						                txt = txt.replace("鏃�", "");
+						                var datas_ = txt.split("-");
+						                var txt_ = "";
+						                datas_.map(d=>{
+						                    d = d * 1;
+						                    if (txt_ == "") {
+						                        txt_ = d;
+						                    }
+						                    else {
+						                        txt_ += "-" + d;
+						                    }
+						                })
+						                txt = txt_.toString();
+						                if(txt && txt.search && txt.search(/^[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}$/) == -1) {
+						                    txt = ""
+						                }
+						                //licenceObj_[k] = txt;
+						            }
+						        }
+						        else if (txtList.length == 1) {
+						            txt = txtList[0];
+						            if(txt.indexOf("闀挎湡") != -1 || txt.indexOf("姘镐箙") != -1 || txt.indexOf("涓嶇害瀹氭湡闄�") != -1){
+						                txt = "2099-12-31";
+						            }
+						            if (txt.indexOf("骞�") != -1) {
+						                var Date = txt.replace("骞�", "-").replace("鏈�", "-").replace("鏃�", "");
+						                txt = Date;
+						            } else if (txt.length == 8) {
+						                var Date = txt.slice(0, 4) + "-" + txt.slice(4, 6) + "-" + txt.slice(6, 8);
+						                txt = Date;
+						            } else {
+						                txt = "";
+						            }
+						
+						            if(txt && txt.search && txt.search(/^[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}$/) == -1) {
+						                txt = ""
+						            }
+						        }
+						    }
+						    return txt;
+						},
+						
 						showThumbnail(file, type, num) {
-							var me = this;
-                            
-                            if(num == "2"){
-                                return me.fileUrl;
-                            }
-                            if(type == "pic") {
-                                return file.url;
-                            }
-							console.log(file)
-                            // var me = this;
-                            
-                            // if(num == "2"){
-                            //     return me.fileUrl;
-                            // }
-                            // if(type == "pic") {
-							// 	me.imgurl = file.url
-                            //     return file.url;
-                            // }
-                            
-                        },
+						    var me = this;
+						    
+						    if(num == "2"){
+						        return me.fileUrl;
+						    }
+						    if(type == "pic") {
+						        return file.url;
+						    }
+						},
+						
 						delyyzz() {//鍒犻櫎钀ヤ笟鎵х収
 							var me = this;
-                            me.imgurl = "";
-							me.formData1 = []
+							me.imgurl = "";
+							if (me.fileobj.indexid) {
+								me.fileobj.indexid = ""
+							}
 						},
 						
 						//鎻愪氦
@@ -907,29 +1039,33 @@
 					</div>	
 					<div :style="{height: dheight + 'px', 'overflow-y': 'auto'}">
 					<!-- <div style="position: absolute; top:40px; bottom: 50px; left: 0px; right: 0px;  overflow-y: auto;"> -->
-						<div class="el-dialog__body" style="width: 20%; float: left;">
-							<el-image 
-								v-if="imgurl.length>0" 
-								:style="{width: '100%', 'max-height': dheight + 'px'}" 
-								:src="imgurl"
-								:preview-src-list="[imgurl]">
-							</el-image>
-							<el-upload
-								v-else-if="!imgurl"
-								class="ocr_img"
-								action="#" style="margin-top: 15px;margin-bottom: 15px;" accept="image/jpeg,image/gif,image/png"
-								ref="reportUpload1" list-type="picture-card" :file-list="formData1"
-								:on-change="(file, fileList) => {uploadFileFun_file(file, fileList, '1')}" :auto-upload="false">
-								<!-- <i slot="default" class="el-icon-plus"></i> -->
-								<span style="font-size: 14px; color: #909399;">钀ヤ笟鎵х収涓婁紶</span>
-								<div slot="file" slot-scope="{file}">
-									<img class="el-upload-list__item-thumbnail" :src="showThumbnail(file, 'pic', '1')" alt="">
-								</div>
-							</el-upload>
-							<el-button v-if="imgurl" size="small" type="danger" @click="delyyzz">鍒犻櫎钀ヤ笟鎵х収</el-button>
+						<div v-loading.fullscreen.lock="imgLoading" element-loading-text="OCR璇嗗埆涓�" style="width: 30%; float: left; overflow: hidden;">
+						    <el-image 
+						        v-if="imgurl && !imgLoading"
+						        :style="{width: '100%', 'max-height': dheight - 50 + 'px'}"
+						        :src="imgurl" 
+						        :preview-src-list="[imgurl]">
+						    </el-image>
+						      
+						    <div v-else-if="!imgLoading && (isedit || isrefuseedit)" class="ocr_img">
+						        <el-upload action="#" style="margin-top: 15px;margin-bottom: 15px;"
+						        accept="image/jpeg,image/gif,image/png"
+								ref="reportUpload1"
+						        list-type="picture-card" 
+						        :file-list="formData1.mdm_img"
+						        :on-change="(file, fileList) => {uploadFileFun_file(file, fileList, '1')}"
+						        :auto-upload="false">
+						            <!-- <i slot="default" class="el-icon-plus"></i> -->
+						            <span style="font-size: 14px; color: #909399;">钀ヤ笟鎵х収涓婁紶</span>
+						            <div slot="file" slot-scope="{file}">
+						                <img class="el-upload-list__item-thumbnail" :src="showThumbnail(file, 'pic', '1')" alt="">
+						            </div>
+						        </el-upload>
+						    </div>
+						    <el-button v-if="imgurl && (isedit || isrefuseedit)" size="small" type="danger" @click="delyyzz">鍒犻櫎钀ヤ笟鎵х収</el-button>
 						</div>
 
-						<div class="el-dialog__body" style="width: 79%; float: right;">
+						<div class="el-dialog__body" style="width: 69%; float: right;">
 							<h-form
 								ref="form1"
 								:form-attr="formAttr"
diff --git a/module/md/page/customer/page/customer_list_agreement_edit.html b/module/md/page/customer/page/customer_list_agreement_edit.html
index 0435348..f78b671 100644
--- a/module/md/page/customer/page/customer_list_agreement_edit.html
+++ b/module/md/page/customer/page/customer_list_agreement_edit.html
@@ -511,7 +511,9 @@
 											me.tab3tableFields.push(clone(f));
 										}
 										
-										tableFields_.push(clone(f));
+										if (f.isshow == "T") {
+											tableFields_.push(clone(f));
+										}
 										
 									})
 									tab.tableFields = clone(tableFields_);
@@ -1783,8 +1785,12 @@
 											f.isshow = "T";
 										}
 									}
+									
+									if (f.isshow == "T") {
+										tableFields_.push(clone(f));
+									}
 								})
-								tableFields_ = clone(this.tab3tableFields);
+								// tableFields_ = clone(this.tab3tableFields);
 							}
 							var TabObjMap_ = clone(this.TabObjMap["tab3"]);
 							TabObjMap_.tableFields = tableFields_
diff --git a/module/md/page/customer/page/customer_list_authorization.html b/module/md/page/customer/page/customer_list_authorization.html
index 9ab94e0..d5ab6e1 100644
--- a/module/md/page/customer/page/customer_list_authorization.html
+++ b/module/md/page/customer/page/customer_list_authorization.html
@@ -18,11 +18,11 @@
 						title: "鎺堟潈绠$悊",
 						//Tab椤硅缃�
 						tabs_d: [
-							{code: "agmAll", name: "鍚堝悓鍖婚櫌姹囨��", dataname: "md_org_account_hospital", filterTxt: "agreement_id is not null and (md_org_account_hospital.state_code='Open' or md_org_account_hospital.state_code='Closed')", orderby: "md_org_account_hospital.date_to"},
+							{code: "agmAll", name: "鍗忚鍖婚櫌", dataname: "md_org_account_hospital", filterTxt: "agreement_id is not null and (md_org_account_hospital.state_code='Open' or md_org_account_hospital.state_code='Closed')", orderby: "md_org_account_hospital.date_to"},
 							// {code: "Input", name: "鎺堟潈鐢宠", dataname: "md_org_account_hospital_apply", filterTxt: "(state_code='Input' or state_code='OpeningApproval')", orderby: "md_org_account_hospital_apply.date_to"},
 							// {code: "Open", name: "鐢熸晥", dataname: "md_org_account_hospital", filterTxt: "apply_id is not null and md_org_account_hospital.state_code='Open'", orderby: "md_org_account_hospital.date_to"},
 							// {code: "Close", name: "缁堟", dataname: "md_org_account_hospital", filterTxt: "apply_id is not null and md_org_account_hospital.state_code='Closed'", orderby: "md_org_account_hospital.date_to"},
-							{code: "All", name: "闈炲崗璁尰闄㈠妗�", dataname: "md_org_account_hospital", filterTxt: "apply_id is not null and (md_org_account_hospital.state_code='Open' or md_org_account_hospital.state_code='Closed')", orderby: "md_org_account_hospital.date_to"},
+							{code: "All", name: "闈炲崗璁尰闄�", dataname: "md_org_account_hospital", filterTxt: "apply_id is not null and (md_org_account_hospital.state_code='Open' or md_org_account_hospital.state_code='Closed')", orderby: "md_org_account_hospital.date_to"},
 						],
 						d_tabs: {
 							Input: true,
diff --git a/module/md/page/customer/page/evaluation_management.html b/module/md/page/customer/page/evaluation_management.html
index 8e083f9..f218514 100644
--- a/module/md/page/customer/page/evaluation_management.html
+++ b/module/md/page/customer/page/evaluation_management.html
@@ -2,7 +2,7 @@
 <html>
 	<head>
 		<meta charset="utf-8"><meta http-equiv="Expires" content="0"><meta http-equiv="Pragma" content="no-cache"><meta http-equiv="Cache-control" content="no-cache"><meta http-equiv="Cache" content="no-cache">
-		<title>缁忛攢鍟嗘寚鏍�</title>
+		<title>鎺ㄥ箍鍟嗚瘎浼�</title>
 		
 		<script type="text/javascript">
 			var pageVue = null;
@@ -80,6 +80,8 @@
 							// },
 						],
 						dataRequestObj: {},
+						
+						isShowTab: false,
 					},
 					created() {},
 					
@@ -317,7 +319,7 @@
 						</el-button-group>
 					</div>
 				</div>
-				<div>
+				<div v-show="isShowTab">
 					<el-tabs v-model="activeTabName" @tab-click="handleClick">
 						<el-tab-pane v-for="(tab, k) in tabs" :label="tab.name" :name="tab.code" :key="k"></el-tab-pane>
 					</el-tabs>
diff --git a/module/md/page/terminal/page/hospital_list.html b/module/md/page/terminal/page/hospital_list.html
index c611ae3..b4981b4 100644
--- a/module/md/page/terminal/page/hospital_list.html
+++ b/module/md/page/terminal/page/hospital_list.html
@@ -2,7 +2,7 @@
 <html>
 	<head>
 		<meta charset="utf-8"><meta http-equiv="Expires" content="0"><meta http-equiv="Pragma" content="no-cache"><meta http-equiv="Cache-control" content="no-cache"><meta http-equiv="Cache" content="no-cache">
-		<title>鍖婚櫌绠$悊</title>
+		<title>杈栧尯缁堢</title>
 		
 		<script type="text/javascript">
 			var pageVue = null;
@@ -15,10 +15,11 @@
 				pageVue = new TabTableVue({
 					el: "#vbody",
 					data: {
-						title: "鍖婚櫌绠$悊",
+						title: "杈栧尯缁堢",
 						//Tab椤硅缃�
 						tabs_d: [
-							{code: "hospital", name: "杈栧尯鍖婚櫌", dataname: "md_position_hospital", filterTxt: "", orderby: "md_position_hospital.update_time desc"},
+							{code: "hospital", name: "杈栧尯缁堢", dataname: "md_position_hospital", filterTxt: "", orderby: "md_position_hospital.update_time desc"},
+							{code: "linkpharmacy", name: "鍏宠仈鑽簵", dataname: "md_position_hospital_pharmacy", filterTxt: "", orderby: "md_position_hospital_pharmacy.update_time desc"},
 							// {code: "hospital", name: "杈栧尯鍖婚櫌鐢宠", dataname: "md_position_hospital", filterTxt: " (md_position_hospital.state_code='Input' or md_position_hospital.state_code='OpeningApproval')", orderby: "update_time desc"},
 							// {code: "infoAll", name: "杈栧尯鍖婚櫌", dataname: "md_position_hospital", filterTxt: "md_position_hospital.state_code='Open'", orderby: "update_time desc"},
 						],
@@ -232,6 +233,34 @@
 									},
 								}
 							};
+							var tablefieldClick_linkpharmacy = {
+								state_name: {//鐘舵��
+									val: {//鏈夊�兼椂鐨勭偣鍑讳簨浠�
+										notclick_val: ["鑽夌","鑽夌"],
+										notclick_bindfield: [],
+										onclick: function(obj) {
+											var config = {
+												totab: false,
+												width: "1100px",
+												height: "520px",
+												icon: "icon-product",
+												text: "娴佺▼姝ラ",
+												id: "popup_workflow_step_user" + obj.row.id,
+												url: "module/tool/page/popup_workflow_step_user.html?v=2023020703",
+												data: obj.row,
+												delta: {},
+												sceneCode: "browse",
+												callback: function(obj, callback) {
+													if (callback) {
+														callback();
+													}
+												}
+											};
+											me.doPopupByPublic(config);
+										},
+									},	
+								},
+							};
 							//杈栧尯鍙樻洿
 							var tablefieldClick_info = {
 								//waiting
@@ -369,6 +398,10 @@
 							if (this.selectTabObj.code == "hospital") {
 								this.selectTabObj.tablefieldClick = tablefieldClick_hospital;
 							}
+							// 鍏宠仈鑽簵
+							else if (this.selectTabObj.code == "linkpharmacy") {
+								this.selectTabObj.tablefieldClick = tablefieldClick_linkpharmacy;
+							}
 							//杈栧尯鏂板/鍙樻洿-杈栧尯瀹℃壒涓�佸叏閮ㄨ緰鍖虹敵璇穞ab
 							else if (this.selectTabObj.code == "infoUnderApproval" || this.selectTabObj.code == "infoAll") {
 								this.selectTabObj.tablefieldClick = tablefieldClick_info;
@@ -441,7 +474,86 @@
 									}
 								}
 							];
-							
+							tablebuttonClick.linkpharmacy = [
+								{
+									// name: "鏂板", // type: "primary", // icon: "el-icon-edit",
+									isbuttonshow: me.cbuttons_r.add ? me.cbuttons_r.add : false,
+									code: "add", isselected: false, classname: "",
+									onclick: function(obj) {
+										// obj.selectedList
+										me.openLinkpharmacy('add', obj.selectedList[0]);
+									}
+								},
+								{
+									// name: "鎻愪氦", // type: "primary", // icon: "el-icon-edit",
+									isbuttonshow: me.cbuttons_r.submit ? me.cbuttons_r.submit : false,	type: "success",
+									code: "submit", isselected: true, classname: "",
+									disabled: function(selectRowList) {
+										var bo_ = true;
+										if (selectRowList[0] && selectRowList[0].state_code == "Input") {
+											bo_ = false;
+										}
+										return bo_
+									},
+									onclick: function(obj) {
+										
+										// obj.selectedList
+										// me.closeData('browse', obj.selectedList[0]);
+										// me.commitData(obj.selectedList[0]);
+										me.openLinkpharmacy('edit', obj.selectedList[0]);
+									}
+								},
+								{
+									// name: "璇︽儏", // type: "primary", // icon: "el-icon-edit",
+									isbuttonshow: me.cbuttons_r.formdetail ? me.cbuttons_r.formdetail : false,	
+									code: "formdetail", isselected: true, classname: "",
+									disabled: function(selectRowList) {
+										var bo_ = true;
+										if (selectRowList[0]) {
+											bo_ = false;
+										}
+										return bo_
+									},
+									onclick: function(obj) {
+										// obj.selectedList
+										me.openLinkpharmacy('browse', obj.selectedList[0]);
+									}
+								},
+								{
+									// name: "缂栬緫", // type: "primary", // icon: "el-icon-edit",
+									isbuttonshow: me.cbuttons_r.edit ? me.cbuttons_r.edit : false,
+									code: "edit", isselected: true, classname: "",
+									disabled: function(selectRowList) {
+										var bo_ = true;
+										if (selectRowList[0] && selectRowList[0].state_code == "Input") {
+											bo_ = false;
+										}
+										return bo_
+									},
+									onclick: function(obj) {
+										// obj.selectedList
+										me.openLinkpharmacy('edit', obj.selectedList[0]);
+									}
+								},
+								{
+									// name: "鍒犻櫎", // type: "primary", // icon: "el-icon-edit",
+									isbuttonshow: me.cbuttons_r.delete ? me.cbuttons_r.delete : false,	type: "danger",
+									code: "delete", isselected: true, classname: "",
+									disabled: function(selectRowList) {
+										var bo_ = true;
+										if (selectRowList[0] && selectRowList[0].state_code == "Input") {
+											bo_ = false;
+										}
+										return bo_
+									},
+									onclick: function(obj) {
+										me.delData()
+										// obj.selectedList
+										// me.closeData('browse', obj.selectedList[0]);
+										// me.closeData();
+									}
+								},
+							];
 							tablebuttonClick.infoUnderApproval = [
 								{
 									isbuttonshow:  me.cbuttons_r.formdetail ? me.cbuttons_r.formdetail : false,type:"primary",
@@ -538,6 +650,41 @@
 									message: '宸插彇娑�'
 								});          
 							});
+						},
+						
+						openLinkpharmacy(sceneCode, obj) {
+							let me = this;
+							var row = {}
+							if (sceneCode == "edit" || sceneCode == "browse" || sceneCode == "change") {
+								row = me.selectTabObj.selectedrow;
+								if(!row){
+									Root.message({
+										type: 'warning',
+										message: '璇烽�夋嫨涓�鏉℃暟鎹�'
+									});
+									return;
+								}
+							}
+							
+							var config = {
+								totab: false, //true: 浠ab瀵艰埅鐨勬柟寮忔墦寮�
+								width: "900px",
+								height: "320px",
+								icon: "icon-product",
+								text: "鍏宠仈闄㈠搴�" + (row.pharmacy_name ? ("-" + row.pharmacy_name ) : ""),
+								id: "linkpharmacy_info" + row.id + sceneCode,//totab: true鏃堕渶璁剧疆锛岀敤浜庡垽鏂槸鍚﹀凡鎵撳紑姝ら〉闈�
+								url: "module/md/page/terminal/page/linkpharmacy_info.html",
+								data: row,
+								delta: {},
+								sceneCode: sceneCode,//"refuseedit",//"approval", //"add"//"browse",
+								callback: function(obj, callback) {
+									me.onQuery();
+									if (callback) {
+										callback();
+									}
+								}
+							};
+							me.doPopupByPublic(config);
 						},
 						
 						openPolicy(sceneCode, row) {
@@ -1019,7 +1166,7 @@
 					<span>{{title}}</span>
 
 					<div style="float: right;">
-						<el-button-group style="margin-left: 3px">
+						<el-button-group v-if="selectTabObj && selectTabObj.code == 'hospital'" style="margin-left: 3px">
 							<el-button v-show="cbuttons_r.linkpharmacy" @click="onShowLinkPharmacy">鍏宠仈闄㈠搴�</el-button>
 							<el-button v-show="cbuttons_r.downloadTemplate" @click="DownloadTemplate">妯℃澘涓嬭浇</el-button>
 							<el-tooltip class="item" effect="dark" :content="buttonsconfig.clearandappend.tooltip" placement="top-start">
diff --git a/module/report/page/channelCustomerLayoutStructure.html b/module/report/page/channelCustomerLayoutStructure.html
new file mode 100644
index 0000000..9c424a6
--- /dev/null
+++ b/module/report/page/channelCustomerLayoutStructure.html
@@ -0,0 +1,1145 @@
+<!DOCTYPE html>
+<html>
+	<head> 
+		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+		<title>娓犻亾瀹㈡埛甯冨眬缁撴瀯</title>
+	</head>
+
+	<body>
+		<style type="text/css">
+			h5,ul,h1 {
+				margin: 0;
+				padding: 0;
+			}
+			li {
+				list-style: none;
+			}
+		</style>
+		<div v-cloak id="hbody" class="h_body" style="margin: 0;padding: 0;">
+			<div ref="ref_header" class="v_header">
+			</div>
+			<div ref="ref_main" class="v_main" style="padding: 0px 36px;">
+				<!-- <h1 style="font-weight: 600;color: #3A63A6;">娓犻亾瀹㈡埛甯冨眬缁撴瀯</h1> -->
+				<div style="display: flex;justify-content: flex-start;width: 100%;height: 100%;">
+					<div style="width: 50%;height: 100%;">
+						<h3 style="font-weight: 600;color: #3A63A6;text-align: center;">娓犻亾瀹㈡埛甯冨眬缁撴瀯</h3>
+						<div style="width: 100%;height: 10px;background-color: #3A63A6;"></div>
+						<div style="width: 100%;height: 50%;display: flex;justify-content: flex-start;">
+							<div style="width: 49%;height: 100%;">
+								<div id = "clientAmount" style = "width:100%; height:100%;" ></div>
+							</div>
+							<div style="width: 1%;background-color: #3A63A6;height: 100%;margin-top: 15px;"></div>
+							<div style="width: 49%;height: 100%;">
+								<div id = "ytd" style = "width: 100%; height: 100%;" ></div>
+							</div>
+						</div>
+						<div style="width: 100%;height: 40%;display: flex;justify-content: flex-start;">
+							<div style="width: 49%;height: 100%;">
+								<div id = "time" style = "width: 100%; height: 100%;" ></div>
+							</div>
+							<div style="width: 49%;height: 100%;">
+								<div id = "product" style = "width: 100%; height: 100%;" ></div>
+							</div>
+						</div>
+					</div>
+					<div style="width: 6%;height: 100%;"></div>
+					<div style="width: 50%;height: 100%;">
+						<h3 style="font-weight: 600;color: #3A63A6;text-align: center;">娓犻亾瀹㈡埛灞炴��</h3>
+						<div style="width: 100%;height: 10px;background-color: #3A63A6;"></div>
+						<div style="width: 100%;height: 50%;display: flex;justify-content: flex-start;">
+							<div style="width: 98%;height: 100%;overflow: hidden!important;">
+								<div id = "propertyCa" style = "width: 100%; height: 100%;" ></div>
+							</div>
+							<!-- <div style="width: 1%;background-color: #3A63A6;height: 100%;margin-top: 15px;"></div>
+							<div style="width: 49%;height: 100%;">
+								<div id = "propertyYtd" style = "width: 100%; height: 100%;" ></div>
+							</div> -->
+						</div>
+						<div style="width: 100%;height: 40%;display: flex;justify-content: flex-start;">
+							<div style="width: 49%;height: 100%;">
+								<div id = "propertyType" style = "width: 100%; height: 100%;" ></div>
+							</div>
+							<div style="width: 49%;height: 100%;">
+								<div id = "propertyProduct" style = "width: 100%; height: 100%;" ></div>
+							</div>
+						</div>
+					</div>
+				</div>
+				<div style="width: 100%;height: 30px;"></div>
+			</div>
+		</div>
+		
+		<script type="text/javascript">
+			function loadJsCss(callback) {
+				var jscss_urls = [
+					{id: "js6", type: "js", url: "root/js/echarts.js"},
+				];
+				window.top.initJsCss(document, jscss_urls, callback);
+			}
+		
+			function initVue() {
+				new BasicsVue({
+					el: "#hbody",
+					data: {
+						radio1: '鎬婚噺',
+						radio2: '浜у搧',
+						cardtablist: [
+							// {id: "6-5-2-2-1", type: "cardtab", name: "鏂板鍗忎細鏅哄簱", icon:"", img: "../../img/page/associationLibraryList.png", enname:"", url: "../../page/flow_manage/addAssociationLibraryList.html", parentid: "1", opentype: "add"},
+							// {id: "2-1-2", type: "cardtab", name: "涓ぎ涓撳搴�", icon:"", img: "../../img/page/icon_open@2x.png", enname:"", url: "../../page/flow_manage/centralfileList.html", parentid: "2", opentype: "add"},
+						],
+						page_url: "",
+						rowkey: "id",
+						dataname: "",
+						module_title: "",
+						tableHeight: 500,
+						filterAttr: {
+							columnnumber: 4,
+							labelwidth: "100px",
+							labelposition: "left",//"left",//"right",
+							size: "medium",
+							borderleft: "0px solid #c6c6c600",
+							bordertop: "8px solid #c6c6c600",
+							borderright: "0px solid #c6c6c600",
+							borderbottom: "0px solid #c6c6c600",
+							border: "3px solid #c6c6c600"
+						},
+						formButton: {
+							query: true,
+							empty: true,
+							add: false,
+							import: false,
+							export: false
+						},
+						filterObj: {},
+						filterFieldsObj: {},
+						filterFields: [
+							{isshow: "T",fieldname: "province", field: "province", name: "鐪佷唤", type: "select"},
+							{isshow: "T", fieldname: "city",field: "city",name: "鍩庡競", type: "select"},
+							// {isshow: "T", field: "field1", name: "瀹㈡埛缂栧彿", type: "select"},
+							// {isshow: "T", field: "name", fieldname: "name", name: "瀹㈡埛鍚嶇О", fieldtype: "like", type: "select"},
+							// {isshow: "T", field: "creator_name", fieldname: "creator_name", name: "瀹㈡埛灞炴��", fieldtype: "like"},
+							// {isshow: "T", field: "createtime", name: "鏄惁鍚敤",fieldtype: "inScopeInclude"},
+						],
+						
+						//Tab椤�
+						activeName: "code1",
+						wrapStyle: "",
+						viewStyle: "",
+						
+						tabList: [
+							{code: "code1", name: "鍒楄〃"},
+						],
+						tabsObj: {
+							code1: true,
+						},
+						
+						isRefresh: true,
+						pagesize: 10,
+						pagenum: 0,
+						total: 0,
+						orderby:"createtime desc",
+					},
+					created() {
+						var me = this;
+						this.popupParames = clone(Root.popupParames);
+						
+					},
+				
+					mounted() {
+						var me = this;
+						// this.initData();
+						this.$nextTick(function() {
+							let w_ = this.$refs.ref_header.offsetWidth;
+							let h_ = this.$refs.ref_header.offsetHeight;
+							//let h_ = 0;
+							let clientHeight = document.documentElement.clientHeight;
+							var m_h = clientHeight - h_ - 10;
+							this.tableHeight = clientHeight - h_ - 252;
+							
+							this.wrapStyle = "overflow-y: auto; width: 100%; height: " + (m_h - 50) + "px";
+							this.viewStyle = "max-height: " + (m_h - 50) + "px";
+							this.$refs.ref_main.style.height = m_h + "px";
+							//this.$refs.ref_v_body.style.height = m_h + "px";
+						})
+						setTimeout(function(){
+							me.clientAmount();
+							me.ytd();
+							me.time();
+							me.product();
+							me.propertyCa();
+							// me.propertyYtd();
+							me.propertyType();
+							me.propertyProduct();
+						},500);
+						
+					},
+					methods: {
+						//娓犻亾瀹㈡埛甯冨眬缁撴瀯鈥斺�旀寜瀹㈡埛鏁�
+						clientAmount(){
+							var caDom = document.getElementById('clientAmount');
+							var caChart = echarts.init(caDom);
+										
+							var caOption = {
+								color:['Salmon','LightSalmon','Orange','Gold','LimeGreen'],
+								title:{
+									text:'鎸夊鎴锋暟',
+									left:'center'
+								},
+								tooltip: {
+									trigger: 'item'
+								},
+								legend: {
+									top:'bottom',
+									left: 'center',
+									// right: 'right',
+								},
+								series: [
+									{
+									name: '鎸夊鎴锋暟',
+									type: 'pie',
+									radius: ['40%', '70%'],
+									center: ['45%', '50%'],
+									avoidLabelOverlap: false,
+									itemStyle: {
+										borderRadius: 10,
+										borderColor: '#fff',
+										borderWidth: 2,
+									},
+									label: {
+										show: true,
+										position: 'inner',
+										formatter:'{d}%'
+									},
+									emphasis: {
+										label: {
+										show: true,
+										fontSize: '40',
+										fontWeight: 'bold'
+										}
+									},
+									labelLine: {
+										show: true
+									},
+									data: [
+										{ value: 1048, name: '涓�绾у晢' },
+										{ value: 735, name: '浜岀骇鍟�' },
+										{ value: 580, name: 'DTP鑽埧' },
+										{ value: 484, name: '闄㈣竟搴�' },
+										{ value: 300, name: '鍖婚櫌鑷垂鑽埧' }
+									]
+									}
+								]
+							};
+							caChart.setOption(caOption);
+						},
+						
+						//娓犻亾瀹㈡埛甯冨眬鈥斺�旀寜YTD绾攢浠介
+						ytd(){
+							var ytdDom = document.getElementById('ytd');
+							var ytdChart = echarts.init(ytdDom);
+							
+							var ytdOption = {
+							  color:['CornflowerBlue','Orange','Gold','LimeGreen','LightBlue'],
+							  title:{
+							      text:'鎸塝TD绾攢浠介',
+							      left:'center'
+							  },
+							  tooltip: {
+							      trigger: 'item'
+							  },
+							  legend: {
+							      top:'bottom',
+							      left: 'center',
+							      // orient:'vertical'
+							  },
+							  series: [
+							      {
+							      name: '鎸塝TD绾攢浠介',
+							      type: 'pie',
+							      radius: ['40%', '70%'],
+							      center: ['55%', '50%'],
+							      avoidLabelOverlap: false,
+							      itemStyle: {
+							          borderRadius: 10,
+							          borderColor: '#fff',
+							          borderWidth: 2
+							      },
+							      label: {
+							          show: true,
+							          position: 'inner',
+							          formatter:'{d}%'
+							      },
+							      emphasis: {
+							          label: {
+							          show: true,
+							          fontSize: '40',
+							          fontWeight: 'bold'
+							          }
+							      },
+							      labelLine: {
+							          show: true
+							      },
+							      data: [
+							          { value: 10418, name: '鍖荤枟鏈烘瀯' },
+							          { value: 5180, name: 'DTP鑽埧' },
+							          { value: 4814, name: '闄㈣竟搴�' },
+							          { value: 1300, name: '鍖婚櫌鑷垂鑽埧' },
+							          { value: 7135, name: '鍏朵粬' },
+							      ]
+							      }
+							  ]
+							};
+							ytdChart.setOption(ytdOption);
+							
+						},
+						
+						//娓犻亾瀹㈡埛甯冨眬缁撴瀯鈥斺��2.1bar&time
+						time(){
+							var timeDom = document.getElementById('time');
+							var timeChart = echarts.init(timeDom);
+							
+							var timeOption = {
+							  color:['CornflowerBlue','Orange','Gold','LimeGreen','LightBlue'],
+							  tooltip: {
+							      trigger: 'axis',
+							      show: true,
+							      axisPointer: {
+							      // axis: 'y',
+							      // Use axis to trigger tooltip
+							      type: 'shadow' ,// 'shadow' as default; can also be 'line' or 'shadow'
+							      // label: {
+							      //   show: true,
+							      //   formatter:function(params){
+							      //     return params.value + '%';
+							      //   }
+							      // },
+							      },
+							  },
+							  legend: {
+							      show:false
+							  },
+							  grid: {
+							      left: '3%',
+							      right: '4%',
+							      bottom: '3%',
+							      containLabel: true
+							  }, 
+							  xAxis: {
+							      type: 'category',
+							      data: ['2021.05', '2021.06','2021.07', '2021.08', '2021.09', '2021.10', '2021.11', '2021.12', '2022.01', '2022.02', '2022.03', '2022.04', '2022.05']
+							  },
+							  yAxis: {
+							      type: 'value',
+							      axisLabel: {
+							      formatter: '{value}%'
+							      }
+							  },
+							  series: [
+							      {
+							      name: '鍏珛涓夌敳',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: false,
+							          formatter:function(params){
+							          return params.value;
+							          }
+							      },
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value + '%';
+							          }
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [31, 16, 40, 15, 42, 14, 10, 20, 30 , 40 , 25, 10,25]
+							      },
+							      {
+							      name: '鍏珛涓変箼',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: false,
+							          formatter:function(params){
+							          return params.value;
+							          }
+							      },
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value + '%';
+							          }
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [12, 12, 11, 14, 9, 13, 11, 15, 10, 5, 15, 15, 20]
+							      },
+							      {
+							      name: '鍏珛浜岀敳',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: false,
+							          formatter:function(params){
+							          return params.value;
+							          }
+							      },
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value + '%';
+							          }
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [22, 18, 19, 23, 29, 13, 20, 10, 15, 10 , 10, 15, 20]
+							      },
+							      {
+							      name: '鍏朵粬鏈烘瀯',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: false,        
+							          formatter:function(params){
+							          return params.value;
+							          }
+							      },
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value + '%';
+							          }
+							      },
+							      emphasis: {
+							          focus: 'series',
+							      },
+							      data: [15, 22, 21, 14, 10, 30, 39, 30, 25, 20, 15, 25, 15]
+							      },
+							      {
+							      name: '绉佺珛鍖婚櫌',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: false,
+							          formatter:function(params){
+							          return params.value;
+							          }
+							      },
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value + '%';
+							          }
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [20, 32, 9, 34, 10, 30, 20, 25,20, 25, 35, 35, 20]
+							      }
+							  ]
+							};
+							timeChart.setOption(timeOption);
+						},
+						
+						//娓犻亾瀹㈡埛甯冨眬-2.2bar
+						product(){
+							var productDom = document.getElementById('product');
+							var productChart = echarts.init(productDom);
+							
+							var productOption = {
+							  color:['CornflowerBlue','Orange','Gold','LimeGreen','LightBlue'],
+							  tooltip: {
+							      trigger: 'axis',
+							      show: true,
+							      axisPointer: {
+							      // axis: 'y',
+							      // Use axis to trigger tooltip
+							      type: 'shadow' ,// 'shadow' as default; can also be 'line' or 'shadow'
+							      // label: {
+							      //   show: true,
+							      //   formatter:function(params){
+							      //     return params.value + '%';
+							      //   }
+							      // },
+							      },
+							  },
+							  legend: {
+							      show:false
+							  },
+							  grid: {
+							      left: '3%',
+							      right: '4%',
+							      bottom: '3%',
+							      containLabel: true
+							  }, 
+							  xAxis: {
+							      type: 'category',
+							      data: ['浜у搧A', '浜у搧B','浜у搧C', '浜у搧D']
+							  },
+							  yAxis: {
+							      type: 'value',
+							      axisLabel: {
+							          formatter: '{value}%'
+							      }
+							  },
+							  series: [
+							      {
+							      name: '鍏珛涓夌敳',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: true,
+							          formatter:function(params){
+							          return params.value+'%';
+							          }
+							      },
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value + '%';
+							          }
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [31, 16, 40, 15]
+							      },
+							      {
+							      name: '鍏珛涓変箼',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: true,
+							          formatter:function(params){
+							          return params.value+'%';
+							          }
+							      },
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value + '%';
+							          }
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [12, 12, 11, 14]
+							      },
+							      {
+							      name: '鍏珛浜岀敳',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: true,
+							          formatter:function(params){
+							          return params.value+'%';
+							          }
+							      },
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value + '%';
+							          }
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [22, 18, 19, 23]
+							      },
+							      {
+							      name: '鍏朵粬鏈烘瀯',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: true,        
+							          formatter:function(params){
+							          return params.value+'%';
+							          }
+							      },
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value + '%';
+							          }
+							      },
+							      emphasis: {
+							          focus: 'series',
+							      },
+							      data: [15, 22, 21, 14]
+							      },
+							      {
+							      name: '绉佺珛鍖婚櫌',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: true,
+							          formatter:function(params){
+							          return params.value+'%';
+							          }
+							      },
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value + '%';
+							          }
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [20, 32, 9, 34]
+							      }
+							  ]
+							};
+							productChart.setOption(productOption);
+						},
+						
+						//娓犻亾瀹㈡埛灞炴�р�斺��1
+						propertyCa(){
+							var pCaDom = document.getElementById('propertyCa');
+							var pCaChart = echarts.init(pCaDom);
+							
+							var pCaOption = {
+							  color:['Teal','MediumSeaGreen','LightGreen','DarkSeaGreen'],
+							  dataset: [
+							      {
+							      source: [
+							          ['customer', 'amount', 'type'],
+							          ['涓夊ぇ闆嗗洟', 1048, '鎸夊鎴锋暟'],
+							          ['鍥芥湁榫欏ご', 735, '鎸夊鎴锋暟'],
+							          ['姘戣惀涓婂競', 580, '鎸夊鎴锋暟'],
+							          ['鍏朵粬', 484, '鎸夊鎴锋暟'],
+							          ['涓夊ぇ闆嗗洟', 148, '鎸塝TD绾攢浠介'],
+							          ['鍥芥湁榫欏ご', 735, '鎸塝TD绾攢浠介'],
+							          ['姘戣惀涓婂競', 580, '鎸塝TD绾攢浠介'],
+							          ['鍏朵粬', 484, '鎸塝TD绾攢浠介']
+							      ]
+							      },
+							      {
+							      transform: {
+							          type: 'filter',
+							          config: { dimension: 'type', value: '鎸夊鎴锋暟' }
+							      }
+							      },
+							      {
+							      transform: {
+							          type: 'filter',
+							          config: { dimension: 'type', value: '鎸塝TD绾攢浠介' }
+							      }
+							      }
+							  ],
+							  title: [
+							      {
+							      text: '鎸夊鎴锋暟',
+							      left: '14%',
+							      // top: '10%'
+							      },
+							      {
+							      text: '鎸塝TD绾攢浠介',
+							      left: '50%',
+							      // top: '10%'
+							      }
+							  ],
+							  tooltip: {
+							      trigger: 'item'
+							  },
+							  legend: {
+							      top: 'bottom',
+							      left: '10%',
+							      orient: 'horizontal',
+							  },
+							  series: [
+							      {
+							      name: '鎸夊鎴锋暟',
+							      type: 'pie',
+							      radius: ['30%', '47%'],
+							      center: ['25%', '50%'],
+							      avoidLabelOverlap: false,
+							      itemStyle: {
+							          borderRadius: 10,
+							          borderColor: '#fff',
+							          borderWidth: 2
+							      },
+							      label: {
+							          show: true,
+							          position: 'inner',
+							          formatter: '{d}%'
+							      },
+							      emphasis: {
+							          label: {
+							          show: true,
+							          fontSize: '40',
+							          fontWeight: 'bold'
+							          }
+							      },
+							      labelLine: {
+							          show: true
+							      },
+							      datasetIndex: 1
+							      },
+							      {
+							      name: '鎸塝TD绾攢浠介',
+							      type: 'pie',
+								  radius: ['30%', '47%'],
+							      center: ['75%', '50%'],
+							      avoidLabelOverlap: false,
+							      itemStyle: {
+							          borderRadius: 10,
+							          borderColor: '#fff',
+							          borderWidth: 2
+							      },
+							      label: {
+							          show: true,
+							          position: 'inner',
+							          formatter: '{d}%'
+							      },
+							      emphasis: {
+							          label: {
+							          show: true,
+							          fontSize: '40',
+							          fontWeight: 'bold'
+							          }
+							      },
+							      labelLine: {
+							          show: true
+							      },
+							      datasetIndex: 2
+							      }
+							  ]
+							};
+							pCaChart.setOption(pCaOption);
+							
+						},
+						
+						//娓犻亾瀹㈡埛灞炴�р�斺��2.1
+						propertyType(){
+							var pTDom = document.getElementById('propertyType');
+							var pTChart = echarts.init(pTDom);
+							
+							var pTOption = {
+							  color:['Teal','MediumSeaGreen','LightGreen','DarkSeaGreen'],
+							  tooltip: {
+							      trigger: 'axis',
+							      axisPointer: {
+							      // Use axis to trigger tooltip
+							      type: 'shadow' // 'shadow' as default; can also be 'line' or 'shadow'
+							      }
+							  },
+							  legend: {
+							      show:false
+							  },
+							  grid: {
+							      left: '3%',
+							      right: '4%',
+							      bottom: '3%',
+							      containLabel: true
+							  },
+							  xAxis: {
+							      type: 'value'
+							  },
+							  yAxis: {
+							      type: 'category',
+							      data: ['鍖婚櫌鑷垂鑽埧', '闄㈣竟搴�', 'DTP鑽埧', '浜岀骇缁忛攢鍟�', '涓�绾х粡閿�鍟�']
+							  },
+							  series: [
+							      {
+							      name: '涓夊ぇ闆嗗洟',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: true
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [255, 302, 301, 390, 450]
+							      },
+							      {
+							      name: '鍥芥湁榫欏ご',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: true
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [98, 132, 101, 165, 190]
+							      },
+							      {
+							      name: '姘戣惀涓婂競',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: true
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [156, 182, 191, 234, 350]
+							      },
+							      {
+							      name: '鍏朵粬',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: true
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [177, 212, 201, 174, 290]
+							      },
+							  ]
+							};
+							pTChart.setOption(pTOption);
+						},
+						
+						//娓犻亾瀹㈡埛灞炴�р�斺��2.2
+						propertyProduct(){
+							var pPDom = document.getElementById('propertyProduct');
+							var pPChart = echarts.init(pPDom);
+							
+							var pPOption = {
+							  color:['Teal','MediumSeaGreen','LightGreen','DarkSeaGreen'],
+							  tooltip: {
+							      trigger: 'axis',
+							      axisPointer: {
+							      // Use axis to trigger tooltip
+							      type: 'shadow' // 'shadow' as default; can also be 'line' or 'shadow'
+							      }
+							  },
+							  legend: {
+							      show:false
+							  },
+							  grid: {
+							      left: '3%',
+							      right: '4%',
+							      bottom: '3%',
+							      containLabel: true
+							  },
+							  xAxis: {
+							      type: 'value'
+							  },
+							  yAxis: {
+							      type: 'category',
+							      data: ['浜у搧A', '浜у搧B', '浜у搧C']
+							  },
+							  series: [
+							      {
+							      name: '涓夊ぇ闆嗗洟',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: true
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [32, 32, 31]
+							      },
+							      {
+							      name: '鍥芥湁榫欏ご',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: true
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [20, 32, 11]
+							      },
+							      {
+							      name: '姘戣惀涓婂競',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: true
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [22, 18, 19]
+							      },
+							      {
+							      name: '鍏朵粬',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: true
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [15, 22, 21]
+							      },
+							  ]
+							};
+							pPChart.setOption(pPOption);
+						},
+						
+						initData() {
+							var me = this;
+							let param_ = {
+								isClientMode: false,
+								dataname: this.dataname,
+								page: {
+									pageno: this.pagenum,
+									pagesize: this.pagesize
+								},
+							}
+							Server.call("root/data/getEntitySet", param_, function(result) {
+								me.total = 0;
+								me.tableData = [];
+								if (result && result.data) {
+									me.total = result.data.page.recordcount;
+									var data_ = result.data.entityset;
+									// console.log(data_)
+									me.tableData = data_;
+								}
+							});
+						},
+						showFilterPopup() {
+							
+						},
+						onInitFilter() {
+							this.filterObj = {}
+							this.onQuery();
+						},
+						onEditFilter() {
+							
+						},
+						getData(page) {
+							this.pagesize = page.pagesize;
+							this.pagenum = page.pagenum;
+							this.doQuery();
+						},
+						handleClick(tab) {
+							this.AnchorLinkTo(tab.name);
+						},
+						formSelectChange(obj) {
+							var me = this;
+							var fieldObj = obj.fieldobj;
+							var filterFieldsData = clone(me.filterFields);
+							
+							if (fieldObj.field == "province") {
+								var filterObj_ = clone(me.filterObj);
+								filterObj_.city = null;
+								me.filterObj = filterObj_;
+								let param_ = {
+									isClientMode: false,
+									dataname: "md_province",
+									filter: [
+										{field: "name", value:obj.data.province}
+									]
+								}
+								Server.call("root/data/getEntitySet", param_, function(result) {
+									if (result && result.data) {
+										let param_ = {
+											isClientMode: false,
+											dataname: "md_vip_area",
+											filter:[
+												{"field": "province_id", "value":result.data.entityset[0].id}
+											]
+										}
+										Server.call("root/data/getEntitySet", param_, function(result) {
+											if (result && result.data) {
+												var options_ = result.data.entityset;
+												for(var i=0; i<options_.length;i++) {
+													options_[i].label = options_[i].name;
+													options_[i].value = options_[i].name;
+													
+												}
+												filterFieldsData.map(e=>{
+													if(e.field == "city") {
+														e.options = options_;
+													}
+												})
+											}
+											me.filterFields = filterFieldsData;
+										});
+									}
+								});
+							}
+						},
+						
+						//鍔ㄦ�佸姞杞戒笅鎷夐」
+						cellVisibleChange(obj, row) {
+							let me = this;
+							var filterFieldsData = clone(me.filterFields);
+							if (obj.field == "province") {
+								var filterFieldsData = clone(me.filterFields);
+								let param_ = {
+									isClientMode: false,
+									dataname: "md_province",
+								}
+								Server.call("root/data/getEntitySet", param_, function(result) {
+									if (result && result.data) {
+										var options_ = result.data.entityset;
+										for(var i=0; i<options_.length;i++) {
+											options_[i].label = options_[i].name;
+											options_[i].value = options_[i].name;
+										}
+										filterFieldsData.map(e=>{
+											if(e.field == "province") {
+												e.options = options_;
+											}
+										})
+									}
+									me.filterFields = filterFieldsData;
+								});
+							}
+						},
+						
+						onFormButtonByCode(code) {
+							if (code == "add") {//娣诲姞
+								// let me = this;
+								// var config = {
+								// 	totab: true,
+								// 	title: "瀹㈡埛涓绘暟鎹柊澧�",
+								// 	url: "../home/masterDataAdd.html",
+								// 	data: {},
+								// 	delta: {},
+								// 	opentype: "add",
+								// 	sceneCode: "add",
+								// 	width: 780,
+								// 	height: 420,
+								// 	callback: function(obj, callback) {
+								// 		me.onQuery();
+								// 		if (callback) {
+								// 			callback();
+								// 		}
+								// 	}
+								// };
+								// Root.showPopup(config);
+								// this.tabCardClick(config);
+							}
+							else if (code == "import") {//瀵煎叆
+								
+							}
+							else if (code == "export") {//瀵煎嚭
+								
+							}
+						},
+						cellClick(obj) {//鍗曞厓鏍肩偣鍑�
+							var field = obj.column.property;
+							var row = obj.row;
+							var tableField = obj.tableField;
+							// if(tableField.field == "field2") {
+							// 	var to_page = {
+							// 		totab: true,
+							// 		title: "瀹㈡埛鏄庣粏(涓绘暟鎹�)",
+							// 		url: "../home/masterDataCustomerDetails.html",
+							// 		data: {},
+							// 		delta: {},
+							// 		opentype: "add",
+							// 		sceneCode: "add",
+							// 		width: 1100,
+							// 		height: 550,
+							// 		callback: function(obj, callback) {
+							// 			me.onQuery();
+							// 			if (callback) {
+							// 				callback();
+							// 			}
+							// 		}
+							// 	};
+							// 	Root.showPopup(to_page);
+							// }
+						},
+						queryData(row) {
+							let me = this;
+							
+							// var config = {
+							// 	width: 1000,
+							// 	height: 550,
+							// 	title: "鏌ョ湅鍗忎細鏅哄簱妗f",
+							// 	url: "../flow_manage/addAssociationLibraryList.html",
+							// 	totab: true,
+							// 	sceneCode: "query",
+							// 	opentype: "add",
+							// 	data: row,
+							// 	delta: {},
+							// 	callback: function(obj, callback) {
+							// 		if (callback) {
+							// 			callback();
+							// 		}
+							// 	}
+							// };
+							// // this.doPopup(config);
+							// this.tabCardClick(config);
+						},
+						cellButtonClick(obj) {
+							var type_ = obj.column.property;
+							var row = obj.row;
+							var field = "name";
+							var tips = "";
+							
+							if(type_ == "delete"){
+								this.delData(row,field,tips);
+							} else if (type_ == "update"){
+								this.editData(obj);
+							} else if (type_ == "query"){
+								this.queryData(row);
+							}
+						},
+						//淇敼鏁版嵁浜嬩欢
+						onEditData(config, scope) {
+							var me = this;
+							var row = scope.row;
+							// var config = {
+							// 	width: 1000,
+							// 	height: 550,
+							// 	title: "缂栬緫瀹㈡埛涓绘暟鎹�",
+							// 	url: "../home/masterDataAdd.html",
+							// 	totab: true,
+							// 	sceneCode: "edit",
+							// 	opentype: "add",
+							// 	data: row,
+							// 	delta: {},
+							// 	callback: function(obj, callback) {
+							// 		me.initData();
+							// 		if (callback) {
+							// 			callback();
+							// 		}
+							// 	}
+							// };
+							// this.doPopup(config);
+						},
+						
+						
+						
+						//婊氬姩浜嬩欢
+						myFunction(e) {
+							var isToBottom_ = this.isToBottom(e);
+							if (isToBottom_) {
+								this.org_footer = true;
+							}
+							else {
+								this.org_footer = false;
+							}
+						},
+						
+						isToBottom(e) {
+							var bo_ = false;
+							if(e.srcElement.scrollTop + e.srcElement.offsetHeight >= e.srcElement.scrollHeight){
+						銆�銆�銆�銆�//宸茬粡鍒版渶搴曢儴浜�
+								bo_ = true;
+						銆�銆�}
+							return bo_;
+						},
+						
+					}
+				});
+			}
+		
+			loadJsCss(function() {
+				initVue();
+			});
+		</script>
+
+		<style>
+			[v-cloak] {
+				display: none !important;
+			}
+			
+			.v_header .v_header_query{
+			    padding: 0px 36px;
+			    box-sizing: border-box;
+			}
+		</style>
+	</body>
+</html>
diff --git a/module/report/page/channelInventoryComposition.html b/module/report/page/channelInventoryComposition.html
new file mode 100644
index 0000000..a2f60bd
--- /dev/null
+++ b/module/report/page/channelInventoryComposition.html
@@ -0,0 +1,848 @@
+<!DOCTYPE html>
+<html>
+	<head> 
+		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+		<title>娓犻亾搴撳瓨涓庣粓绔瀯鎴�</title>
+	</head>
+
+	<body>
+		<style type="text/css">
+			h5,ul,h1 {
+				margin: 0;
+				padding: 0;
+			}
+			li {
+				list-style: none;
+			}
+		</style>
+		<div v-cloak id="hbody" class="h_body" style="margin: 0;padding: 0;">
+			<div ref="ref_header" class="v_header">
+			</div>
+			<div ref="ref_main" class="v_main" style="padding: 0px 36px;">
+				<div style="display: flex;justify-content: flex-start;width: 100%;height: 90%;">
+					<div style="width: 50%;height: 100%;">
+						<h3 style="font-weight: 600;color: #3A63A6;text-align: center;">娓犻亾搴撳瓨鏋勬垚</h3>
+						<div style="width: 100%;height: 10px;background-color: #3A63A6;"></div>
+						<div style="width: 100%;height: 50%;display: flex;justify-content: flex-start;">
+							<div style="width: 30%;height: 100%;">
+								<div id = "propertion" style = "width:100%; height: 100%;" ></div>
+							</div>
+							<div style="width: 70%;height: 100%;">
+								<div id = "channel" style = "width:100%; height: 100%;" ></div>
+							</div>
+						</div>
+					</div>
+					<div style="width: 6%;height: 100%;"></div>
+					<div style="width: 50%;height: 100%;">
+						<h3 style="font-weight: 600;color: #3A63A6;text-align: center;">娓犻亾瀹㈡埛灞炴��</h3>
+						<div style="width: 100%;height: 10px;background-color: #3A63A6;"></div>
+						<div style="width: 100%;height: 50%;display: flex;justify-content: flex-start;">
+							<div style="width: 100%;height: 100%;">
+								<div id = "sale" style = "width:100%; height: 100%;" ></div>
+							</div>
+							<!-- <div style="width: 39%;height: 100%;">
+								<div id = "propertion" style = "width:100%; height: 100%;" ></div>
+							</div> -->
+						</div>
+					</div>
+				</div>
+				<div style="width: 100%;height:50%;margin-top: -280px;">
+					<div id = "province" style = "width:100%; height: 100%;"></div>
+				</div>
+				<div style="width: 100%;height: 30px;"></div>
+			</div>
+			
+			
+		</div>
+		
+		<script type="text/javascript">
+			function loadJsCss(callback) {
+				var jscss_urls = [
+					{id: "js6", type: "js", url: "root/js/echarts.js"},
+				];
+				window.top.initJsCss(document, jscss_urls, callback);
+			}
+		
+			function initVue() {
+				new BasicsVue({
+					el: "#hbody",
+					data: {
+						radio1: '鎬婚噺',
+						radio2: '浜у搧',
+						cardtablist: [
+							// {id: "6-5-2-2-1", type: "cardtab", name: "鏂板鍗忎細鏅哄簱", icon:"", img: "../../img/page/associationLibraryList.png", enname:"", url: "../../page/flow_manage/addAssociationLibraryList.html", parentid: "1", opentype: "add"},
+							// {id: "2-1-2", type: "cardtab", name: "涓ぎ涓撳搴�", icon:"", img: "../../img/page/icon_open@2x.png", enname:"", url: "../../page/flow_manage/centralfileList.html", parentid: "2", opentype: "add"},
+						],
+						page_url: "",
+						rowkey: "id",
+						dataname: "",
+						module_title: "",
+						tableHeight: 500,
+						filterAttr: {
+							columnnumber: 4,
+							labelwidth: "100px",
+							labelposition: "left",//"left",//"right",
+							size: "medium",
+							borderleft: "0px solid #c6c6c600",
+							bordertop: "8px solid #c6c6c600",
+							borderright: "0px solid #c6c6c600",
+							borderbottom: "0px solid #c6c6c600",
+							border: "3px solid #c6c6c600"
+						},
+						formButton: {
+							query: true,
+							empty: true,
+							add: false,
+							import: false,
+							export: false
+						},
+						filterObj: {},
+						filterFieldsObj: {},
+						filterFields: [
+							{isshow: "T",fieldname: "province", field: "province", name: "鐪佷唤", type: "select"},
+							{isshow: "T", fieldname: "city",field: "city",name: "鍩庡競", type: "select"},
+							// {isshow: "T", field: "field1", name: "瀹㈡埛缂栧彿", type: "select"},
+							// {isshow: "T", field: "name", fieldname: "name", name: "瀹㈡埛鍚嶇О", fieldtype: "like", type: "select"},
+							// {isshow: "T", field: "creator_name", fieldname: "creator_name", name: "瀹㈡埛灞炴��", fieldtype: "like"},
+							// {isshow: "T", field: "createtime", name: "鏄惁鍚敤",fieldtype: "inScopeInclude"},
+						],
+						
+						//Tab椤�
+						activeName: "code1",
+						wrapStyle: "",
+						viewStyle: "",
+						
+						tabList: [
+							{code: "code1", name: "鍒楄〃"},
+						],
+						tabsObj: {
+							code1: true,
+						},
+						
+						isRefresh: true,
+						pagesize: 10,
+						pagenum: 0,
+						total: 0,
+						orderby:"createtime desc",
+					},
+					created() {
+						var me = this;
+						this.popupParames = clone(Root.popupParames);
+						
+					},
+				
+					mounted() {
+						var me = this;
+						// this.initData();
+						this.$nextTick(function() {
+							let w_ = this.$refs.ref_header.offsetWidth;
+							let h_ = this.$refs.ref_header.offsetHeight;
+							//let h_ = 0;
+							let clientHeight = document.documentElement.clientHeight;
+							var m_h = clientHeight - h_ - 10;
+							this.tableHeight = clientHeight - h_ - 252;
+							
+							this.wrapStyle = "overflow-y: auto; width: 100%; height: " + (m_h - 50) + "px";
+							this.viewStyle = "max-height: " + (m_h - 50) + "px";
+							this.$refs.ref_main.style.height = m_h + "px";
+							//this.$refs.ref_v_body.style.height = m_h + "px";
+						})
+						setTimeout(function(){
+							me.channel();
+							me.sale();
+							me.propertion();
+							me.province();
+						},500);
+						
+					},
+					methods: {
+						//鎶樻煴
+						province(){
+							var provinceDom = document.getElementById('province');
+						  var provinceChart = echarts.init(provinceDom);
+				
+						  var provinceOption = {
+							color:['Teal','DarkOrange'],
+							tooltip: {
+								trigger: 'axis',
+								// axisPointer: {
+								//     type: 'cross',
+								//     crossStyle: {
+								//         color: '#999'
+								//     }
+								// }
+							},
+							legend: {
+								data: ['娓犻亾搴撳瓨閲戦', '搴撳瓨澶╂暟'],
+								bottom:'bottom'
+							},
+							xAxis: [
+								{
+								type: 'category',
+								data: ['姹熻嫃', '骞夸笢', '娴欐睙', '灞变笢', '娌冲崡', '涓婃捣', '瀹夊窘', '婀栧崡', '鍥涘窛', '姹熻タ', '绂忓缓', '娌冲寳', '鍖椾含', '婀栧寳', '灞辫タ', '骞胯タ', '閲嶅簡', '闄曡タ', '澶╂触', '杈藉畞', '鏂扮枂', '鍚夋灄', '鐢樿們', '榛戦緳姹�', '浜戝崡', '鍐呰挋鍙�', '璐靛窞', '娴峰崡', '闈掓捣', '瀹佸'],
+								axisPointer: {
+									type: 'shadow'
+								},
+								axisLabel:{
+									interval : '0'
+								}
+								}
+							],
+							yAxis: [
+								{
+								type: 'value',
+								min:0,
+								max:300,
+								axisLabel: {
+									formatter: '{value} '
+								},
+								show:false
+								},
+								{
+								type: 'value',
+								min:0,
+								max:200,
+								axisLabel: {
+									formatter: '{value} '
+								},
+								show:false
+								}
+							],
+							series: [
+								{
+								name: '娓犻亾搴撳瓨閲戦',
+								type: 'bar',
+								tooltip: {
+									// valueFormatter: function (value) {
+									//   return value;
+									// }
+								},
+								data: [
+									23, 29, 30, 23, 25, 36, 35, 12, 36, 20, 34, 33,22,25,13,15,23,25,34,25,32,34,26,23,34,24,13,16,21,23
+								]
+								},
+								{
+								name: '搴撳瓨澶╂暟',
+								type: 'line',
+								yAxisIndex: 1,
+								tooltip: {
+									// valueFormatter: function (value) {
+									//   return value;
+									// }
+								},
+								label:{
+									show:true
+								},
+								data: [43, 42, 40, 36, 26, 41, 48, 42, 23, 51, 51, 31,38,40,41,36,39,35,26,76,45,39,35,34,51,44,33,42,44,36,]
+								}
+							]
+						  };
+						  provinceChart.setOption(provinceOption);
+						},
+						
+						//娓犻亾搴撳瓨鏋勬垚鈥斺��1
+						propertion(){
+							var propertionDom = document.getElementById('propertion');
+						  var propertionChart = echarts.init(propertionDom);
+				
+						  var propertionOption = {
+							tooltip: {
+								trigger: 'axis',
+								position: ['50%', '50%'],
+								axisPointer: {
+								// Use axis to trigger tooltip
+								type: 'shadow' // 'shadow' as default; can also be 'line' or 'shadow'
+								}
+							},
+							
+							grid: {
+								left: '3%',
+								right: '4%',
+								bottom: '3%',
+								containLabel: true,
+								width: '125px',
+								height: '200',
+							},
+							yAxis: {
+								type: 'value',
+								axisLabel: {
+								formatter: '{value}%'
+								},
+								show:false
+							},
+							xAxis: {
+								type: 'category',
+								data: ['Total'],
+								show:false
+							},
+							series: [
+								{
+								name: '涓�绾х粡閿�鍟�',
+								type: 'bar',
+								stack: 'total',
+								label: {
+									show: false,
+									formatter:function(params){
+									return params.value + '%';
+									}
+								},
+								tooltip: {
+									valueFormatter: function (value) {
+										return value + '%';
+									}
+								},
+								emphasis: {
+									focus: 'series'
+								},
+								data: [79.1]
+								},
+								{
+								name: '浜岀骇缁忛攢鍟�',
+								type: 'bar',
+								stack: 'total',
+								label: {
+									show: false,
+									formatter:function(params){
+									return params.value + '%';
+									}
+								},
+								tooltip: {
+									valueFormatter: function (value) {
+										return value + '%';
+									}
+								},
+								emphasis: {
+									focus: 'series'
+								},
+								data: [5.1]
+								},
+								{
+								name: 'DTP鑽埧',
+								type: 'bar',
+								stack: 'total',
+								label: {
+									show: false,
+									formatter:function(params){
+									return params.value + '%';
+									}
+								},
+								tooltip: {
+									valueFormatter: function (value) {
+										return value + '%';
+									}
+								},
+								emphasis: {
+									focus: 'series'
+								},
+								data: [10]
+								},
+								{
+								name: '闄㈣竟搴�',
+								type: 'bar',
+								stack: 'total',
+								label: {
+									show: false,
+									formatter:function(params){
+									return params.value + '%';
+									}
+								},
+								tooltip: {
+									valueFormatter: function (value) {
+										return value + '%';
+									}
+								},
+								emphasis: {
+									focus: 'series'
+								},
+								data: [2.9]
+								},
+									{
+								name: '鍏朵粬闈炴笭閬撳鎴�',
+								type: 'bar',
+								stack: 'total',
+								label: {
+									show: false,
+									formatter:function(params){
+									return params.value + '%';
+									}
+								},
+								tooltip: {
+									valueFormatter: function (value) {
+										return value + '%';
+									}
+								},
+								emphasis: {
+									focus: 'series'
+								},
+								data: [2.8]
+								},
+							]
+						  };
+						  propertionChart.setOption(propertionOption);
+						},
+						
+						//娓犻亾瀹㈡埛灞炴��
+						sale(){
+							var saleDom = document.getElementById('sale');
+						  var saleChart = echarts.init(saleDom);
+				
+						  var saleOption = {
+							color:['Teal','MediumSeaGreen','LightGreen','DarkSeaGreen','Orange','Khaki'],
+							title: {
+								text: '甯傚満绾攢鐨勭粓绔鎴锋瀯鎴�',
+								left: 'center'
+							},
+							tooltip: {
+								trigger: 'item'
+							},
+							legend: {
+								left: '150',
+								orient:'',
+								top:'middle'
+							},
+							series: [
+								{
+								name: '甯傚満绾攢鐨勭粓绔鎴锋瀯鎴�',
+								// valueType:'percent',
+								type: 'pie',
+								radius: '50%',
+								center: ['70%','50%'],
+								data: [
+									{ value: 1048, name: '鍖婚櫌' },
+									{ value: 735, name: '鍖婚櫌澶勬柟' },
+									{ value: 580, name: '鑽簵-鍖婚櫌鑷垂鑽埧' },
+									{ value: 484, name: '鑽簵-闄㈣竟搴�' },
+									{ value: 300, name: '鑽簵-鍏朵粬鑽簵' },
+									{ value: 200, name: '鍏朵粬缁忛攢鍟�' }
+								],
+								label: {
+									show: true,
+									position: 'inner',
+									formatter:'{d}%'
+								},
+								// tooltip: {
+								//     valueFormatter:'{d}%'
+								// },
+								emphasis: {
+									itemStyle: {
+									shadowBlur: 10,
+									shadowOffsetX: 0,
+									shadowColor: 'rgba(0, 0, 0, 0.5)'
+									}
+								}
+								}
+							]
+						  };
+						  saleChart.setOption(saleOption);
+				
+					},
+					
+					//娓犻亾搴撳瓨鏋勬垚鈥斺��2
+					channel(){
+						var clDom = document.getElementById('channel');
+						  var clChart = echarts.init(clDom);
+				
+						  var clOption = {
+							tooltip: {
+								trigger: 'axis',
+								axisPointer: {
+									axis:'y', 
+									// Use axis to trigger tooltip
+									type: 'shadow' // 'shadow' as default; can also be 'line' or 'shadow'
+								}
+							},
+							legend: {
+								left:'center',
+							},
+							grid: {
+								left: '3%',
+								right: '4%',
+								bottom: '3%',
+								containLabel: true
+							},
+							xAxis: {
+								type: 'value',
+								axisLabel: {
+									formatter: '{value}%'
+								}
+							},
+							yAxis: {
+								type: 'category',
+								data: ['浜у搧A', '浜у搧B', '浜у搧C', '浜у搧D']
+							},
+							series: [
+								{
+								name: '涓�绾х粡閿�鍟�',
+								type: 'bar',
+								stack: 'total',
+								label: {
+									show: true,
+									formatter:function(params){
+										return params.value + '%';
+									}
+								},
+								tooltip: {
+									valueFormatter: function (value) {
+										return value + '%';
+									}
+								},
+								emphasis: {
+									focus: 'series'
+								},
+								data: [50, 45, 56, 59]
+								},
+								{
+								name: '浜岀骇缁忛攢鍟�',
+								type: 'bar',
+								stack: 'total',
+								label: {
+									show: true,
+									formatter:function(params){
+										return params.value + '%';
+									}
+								},
+								tooltip: {
+									valueFormatter: function (value) {
+										return value + '%';
+									}
+								},
+								emphasis: {
+									focus: 'series'
+								},
+								data: [19, 8, 11, 13]
+								},
+								{
+								name: 'DTP鑽埧',
+								type: 'bar',
+								stack: 'total',
+								label: {
+									show: true,
+									formatter:function(params){
+									return params.value + '%';
+									}
+								},
+								tooltip: {
+									valueFormatter: function (value) {
+										return value + '%';
+									}
+								},
+								emphasis: {
+									focus: 'series'
+								},
+								data: [15, 18, 15, 11]
+								},
+								{
+								name: '闄㈣竟搴�',
+								type: 'bar',
+								stack: 'total',
+								label: {
+									show: true,
+									formatter:function(params){
+									return params.value + '%';
+									}
+								},
+								tooltip: {
+									valueFormatter: function (value) {
+										return value + '%';
+									}
+								},
+								emphasis: {
+									focus: 'series'
+								},
+								data: [6, 18, 8, 7]
+								},
+								{
+								name: '鍏朵粬闈炴笭閬撳鎴�',
+								type: 'bar',
+								stack: 'total',
+								label: {
+									show: true,
+									formatter:function(params){
+									return params.value + '%';
+									}
+								},
+								tooltip: {
+									valueFormatter: function (value) {
+										return value + '%';
+									}
+								},
+								emphasis: {
+									focus: 'series'
+								},
+								data: [10, 11, 10, 10]
+								},
+							]
+						  };
+						  clChart.setOption(clOption);
+						},
+						initData() {
+							var me = this;
+							let param_ = {
+								isClientMode: false,
+								dataname: this.dataname,
+								page: {
+									pageno: this.pagenum,
+									pagesize: this.pagesize
+								},
+							}
+							Server.call("root/data/getEntitySet", param_, function(result) {
+								me.total = 0;
+								me.tableData = [];
+								if (result && result.data) {
+									me.total = result.data.page.recordcount;
+									var data_ = result.data.entityset;
+									// console.log(data_)
+									me.tableData = data_;
+								}
+							});
+						},
+						showFilterPopup() {
+							
+						},
+						onInitFilter() {
+							this.filterObj = {}
+							this.onQuery();
+						},
+						onEditFilter() {
+							
+						},
+						getData(page) {
+							this.pagesize = page.pagesize;
+							this.pagenum = page.pagenum;
+							this.doQuery();
+						},
+						handleClick(tab) {
+							this.AnchorLinkTo(tab.name);
+						},
+						formSelectChange(obj) {
+							var me = this;
+							var fieldObj = obj.fieldobj;
+							var filterFieldsData = clone(me.filterFields);
+							
+							if (fieldObj.field == "province") {
+								var filterObj_ = clone(me.filterObj);
+								filterObj_.city = null;
+								me.filterObj = filterObj_;
+								let param_ = {
+									isClientMode: false,
+									dataname: "md_province",
+									filter: [
+										{field: "name", value:obj.data.province}
+									]
+								}
+								Server.call("root/data/getEntitySet", param_, function(result) {
+									if (result && result.data) {
+										let param_ = {
+											isClientMode: false,
+											dataname: "md_vip_area",
+											filter:[
+												{"field": "province_id", "value":result.data.entityset[0].id}
+											]
+										}
+										Server.call("root/data/getEntitySet", param_, function(result) {
+											if (result && result.data) {
+												var options_ = result.data.entityset;
+												for(var i=0; i<options_.length;i++) {
+													options_[i].label = options_[i].name;
+													options_[i].value = options_[i].name;
+													
+												}
+												filterFieldsData.map(e=>{
+													if(e.field == "city") {
+														e.options = options_;
+													}
+												})
+											}
+											me.filterFields = filterFieldsData;
+										});
+									}
+								});
+							}
+						},
+						
+						//鍔ㄦ�佸姞杞戒笅鎷夐」
+						cellVisibleChange(obj, row) {
+							let me = this;
+							var filterFieldsData = clone(me.filterFields);
+							if (obj.field == "province") {
+								var filterFieldsData = clone(me.filterFields);
+								let param_ = {
+									isClientMode: false,
+									dataname: "md_province",
+								}
+								Server.call("root/data/getEntitySet", param_, function(result) {
+									if (result && result.data) {
+										var options_ = result.data.entityset;
+										for(var i=0; i<options_.length;i++) {
+											options_[i].label = options_[i].name;
+											options_[i].value = options_[i].name;
+										}
+										filterFieldsData.map(e=>{
+											if(e.field == "province") {
+												e.options = options_;
+											}
+										})
+									}
+									me.filterFields = filterFieldsData;
+								});
+							}
+						},
+						
+						onFormButtonByCode(code) {
+							if (code == "add") {//娣诲姞
+								// let me = this;
+								// var config = {
+								// 	totab: true,
+								// 	title: "瀹㈡埛涓绘暟鎹柊澧�",
+								// 	url: "../home/masterDataAdd.html",
+								// 	data: {},
+								// 	delta: {},
+								// 	opentype: "add",
+								// 	sceneCode: "add",
+								// 	width: 780,
+								// 	height: 420,
+								// 	callback: function(obj, callback) {
+								// 		me.onQuery();
+								// 		if (callback) {
+								// 			callback();
+								// 		}
+								// 	}
+								// };
+								// Root.showPopup(config);
+								// this.tabCardClick(config);
+							}
+							else if (code == "import") {//瀵煎叆
+								
+							}
+							else if (code == "export") {//瀵煎嚭
+								
+							}
+						},
+						cellClick(obj) {//鍗曞厓鏍肩偣鍑�
+							var field = obj.column.property;
+							var row = obj.row;
+							var tableField = obj.tableField;
+							// if(tableField.field == "field2") {
+							// 	var to_page = {
+							// 		totab: true,
+							// 		title: "瀹㈡埛鏄庣粏(涓绘暟鎹�)",
+							// 		url: "../home/masterDataCustomerDetails.html",
+							// 		data: {},
+							// 		delta: {},
+							// 		opentype: "add",
+							// 		sceneCode: "add",
+							// 		width: 1100,
+							// 		height: 550,
+							// 		callback: function(obj, callback) {
+							// 			me.onQuery();
+							// 			if (callback) {
+							// 				callback();
+							// 			}
+							// 		}
+							// 	};
+							// 	Root.showPopup(to_page);
+							// }
+						},
+						queryData(row) {
+							let me = this;
+							
+							// var config = {
+							// 	width: 1000,
+							// 	height: 550,
+							// 	title: "鏌ョ湅鍗忎細鏅哄簱妗f",
+							// 	url: "../flow_manage/addAssociationLibraryList.html",
+							// 	totab: true,
+							// 	sceneCode: "query",
+							// 	opentype: "add",
+							// 	data: row,
+							// 	delta: {},
+							// 	callback: function(obj, callback) {
+							// 		if (callback) {
+							// 			callback();
+							// 		}
+							// 	}
+							// };
+							// // this.doPopup(config);
+							// this.tabCardClick(config);
+						},
+						cellButtonClick(obj) {
+							var type_ = obj.column.property;
+							var row = obj.row;
+							var field = "name";
+							var tips = "";
+							
+							if(type_ == "delete"){
+								this.delData(row,field,tips);
+							} else if (type_ == "update"){
+								this.editData(obj);
+							} else if (type_ == "query"){
+								this.queryData(row);
+							}
+						},
+						//淇敼鏁版嵁浜嬩欢
+						onEditData(config, scope) {
+							var me = this;
+							var row = scope.row;
+							// var config = {
+							// 	width: 1000,
+							// 	height: 550,
+							// 	title: "缂栬緫瀹㈡埛涓绘暟鎹�",
+							// 	url: "../home/masterDataAdd.html",
+							// 	totab: true,
+							// 	sceneCode: "edit",
+							// 	opentype: "add",
+							// 	data: row,
+							// 	delta: {},
+							// 	callback: function(obj, callback) {
+							// 		me.initData();
+							// 		if (callback) {
+							// 			callback();
+							// 		}
+							// 	}
+							// };
+							// this.doPopup(config);
+						},
+						
+						
+						
+						//婊氬姩浜嬩欢
+						myFunction(e) {
+							var isToBottom_ = this.isToBottom(e);
+							if (isToBottom_) {
+								this.org_footer = true;
+							}
+							else {
+								this.org_footer = false;
+							}
+						},
+						
+						isToBottom(e) {
+							var bo_ = false;
+							if(e.srcElement.scrollTop + e.srcElement.offsetHeight >= e.srcElement.scrollHeight){
+						銆�銆�銆�銆�//宸茬粡鍒版渶搴曢儴浜�
+								bo_ = true;
+						銆�銆�}
+							return bo_;
+						},
+						
+					}
+				});
+			}
+		
+			loadJsCss(function() {
+				initVue();
+			});
+		</script>
+		
+		<style>
+			[v-cloak] {
+				display: none !important;
+			}
+			
+			.v_header .v_header_query{
+			    padding: 0px 36px;
+			    box-sizing: border-box;
+			}
+		</style>
+	</body>
+</html>
diff --git a/module/report/page/netProgress.html b/module/report/page/netProgress.html
new file mode 100644
index 0000000..b4ce640
--- /dev/null
+++ b/module/report/page/netProgress.html
@@ -0,0 +1,1294 @@
+<!DOCTYPE html>
+<html>
+	<head> 
+		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+		<title>鐪佺骇鎸傜綉杩涘睍</title>
+	</head>
+
+	<body>
+		<style type="text/css">
+			h1 {
+				margin: 0;
+				padding: 0;
+			}
+			li {
+				list-style: none;
+			}
+		</style>
+		<div v-cloak id="hbody" class="h_body" style="margin: 0;padding: 0;">
+			<div ref="ref_header" class="v_header">
+			</div>
+			<div ref="ref_main" class="v_main" style="padding: 0px 36px;">
+				<h1 style="font-weight: 600;color: #3A63A6;text-align: center;">鐪佺骇鎸傜綉杩涘睍</h1>
+				<div style="display: flex;justify-content: center;margin-top: 15px;">
+					<el-radio-group v-model="radio1" size="large" @change="change">
+					    <el-radio-button label="浜у搧1"></el-radio-button>
+					    <el-radio-button label="浜у搧2"></el-radio-button>
+					    <el-radio-button label="浜у搧3"></el-radio-button>
+					    <el-radio-button label="浜у搧4"></el-radio-button>
+					</el-radio-group>
+				</div>
+				<div class="block" style="margin-top: 15px;margin-left: 20px;">
+				   <span class="demonstration">鍒囨崲骞翠唤</span>
+				   <el-date-picker
+					 v-model="value3"
+					 type="year"
+					 @change="changeyear"
+					 placeholder="閫夋嫨骞�">
+				   </el-date-picker>
+				</div>
+				<div v-show="radio1 == '浜у搧1'" style="width: 100%;height: 100%;display: flex;justify-content: center;margin-top: 20px;">
+					<div ref="csyb" style="width: 80%;height:80%;overflow: hidden;">
+						<div id = "spread1" style="width: 100%;height: 100%;"></div>
+					</div>
+				</div>
+				 <div v-show="radio1 == '浜у搧2'" style="width: 100%;height: 100%;display: flex;justify-content: center;margin-top: 20px;">
+					<div style="width: 80%;height: 80%;overflow: hidden;">
+						<div id = "spread2" :style="{width: ewidth, height: eheight}"></div>
+					</div>
+				</div>
+				
+				<div v-show="radio1 == '浜у搧3'" style="width: 100%;height: 100%;display: flex;justify-content: center;margin-top: 20px;">
+					<div style="width: 80%;height: 80%;overflow: hidden;">
+						<div id = "spread3" :style="{width: ewidth, height: eheight}"></div>
+					</div>
+				</div>
+				<div v-show="radio1 == '浜у搧4'" style="width: 100%;height: 100%;display: flex;justify-content: center;margin-top: 20px;">
+					<div style="width: 80%;height: 80%;overflow: hidden;">
+						<div id = "spread4" :style="{width: ewidth, height: eheight}"></div>
+					</div>
+				</div>
+			</div>
+		</div>
+		
+		<script type="text/javascript">
+			function loadJsCss(callback) {
+				var jscss_urls = [
+					{id: "js6", type: "js", url: "root/js/echarts.js"},
+					{id: "js6", type: "js", url: "root/js/China.js"},
+				];
+				window.top.initJsCss(document, jscss_urls, callback);
+			}
+		
+			function initVue() {
+				new BasicsVue({
+					el: "#hbody",
+					data: {
+						value3:"2022",
+						radio1: '浜у搧1',
+						cardtablist: [
+							// {id: "6-5-2-2-1", type: "cardtab", name: "鏂板鍗忎細鏅哄簱", icon:"", img: "../../img/page/associationLibraryList.png", enname:"", url: "../../page/flow_manage/addAssociationLibraryList.html", parentid: "1", opentype: "add"},
+							// {id: "2-1-2", type: "cardtab", name: "涓ぎ涓撳搴�", icon:"", img: "../../img/page/icon_open@2x.png", enname:"", url: "../../page/flow_manage/centralfileList.html", parentid: "2", opentype: "add"},
+						],
+						page_url: "",
+						rowkey: "id",
+						dataname: "",
+						module_title: "",
+						tableHeight: 500,
+						filterAttr: {
+							columnnumber: 4,
+							labelwidth: "100px",
+							labelposition: "left",//"left",//"right",
+							size: "medium",
+							borderleft: "0px solid #c6c6c600",
+							bordertop: "8px solid #c6c6c600",
+							borderright: "0px solid #c6c6c600",
+							borderbottom: "0px solid #c6c6c600",
+							border: "3px solid #c6c6c600"
+						},
+						formButton: {
+							query: true,
+							empty: true,
+							add: false,
+							import: false,
+							export: false
+						},
+						filterObj: {},
+						filterFieldsObj: {},
+						filterFields: [
+							{isshow: "T",fieldname: "province", field: "province", name: "鐪佷唤", type: "select"},
+							{isshow: "T", fieldname: "city",field: "city",name: "鍩庡競", type: "select"},
+							// {isshow: "T", field: "field1", name: "瀹㈡埛缂栧彿", type: "select"},
+							// {isshow: "T", field: "name", fieldname: "name", name: "瀹㈡埛鍚嶇О", fieldtype: "like", type: "select"},
+							// {isshow: "T", field: "creator_name", fieldname: "creator_name", name: "瀹㈡埛灞炴��", fieldtype: "like"},
+							// {isshow: "T", field: "createtime", name: "鏄惁鍚敤",fieldtype: "inScopeInclude"},
+						],
+						
+						//Tab椤�
+						activeName: "code1",
+						wrapStyle: "",
+						viewStyle: "",
+						
+						tabList: [
+							{code: "code1", name: "鍒楄〃"},
+						],
+						tabsObj: {
+							code1: true,
+						},
+						
+						isRefresh: true,
+						pagesize: 10,
+						pagenum: 0,
+						total: 0,
+						orderby:"createtime desc",
+						ewidth:"",
+						eheight:"",
+						year:"2022",
+						dataarr:[
+							{ name: '鍖椾含', value: '宸叉寕缃�' },
+							{ name: '澶╂触', value: '宸叉寕缃�' },
+							{ name: '涓婃捣', value: '宸叉寕缃�' },
+							{ name: '閲嶅簡', value: '宸叉寕缃�' },
+							{ name: '瑗胯棌', value: '宸叉寕缃�' },
+							{ name: '瀹佸', value: '宸叉寕缃�' },
+							{ name: '鏂扮枂', value: '杩涜涓�' },
+							{ name: '棣欐腐', value: '杩涜涓�' },
+							{ name: '婢抽棬', value: '寮冭惤鏍�' },
+							{ name: '娌冲寳', value: '杩涜涓�' },
+							{ name: '灞辫タ', value: '杩涜涓�' },
+							{ name: '杈藉畞', value: '杩涜涓�' },
+							{ name: '鍚夋灄', value: '杩涜涓�' },
+							{ name: '榛戦緳姹�', value: '寰呯敵鎶�' },
+							{ name: '姹熻嫃', value: '寰呯敵鎶�' },
+							{ name: '娴欐睙', value: '寰呯敵鎶�' },
+							{ name: '瀹夊窘', value: '寰呯敵鎶�' },
+							{ name: '绂忓缓', value: '寰呯敵鎶�' },
+							{ name: '姹熻タ', value: '寰呯敵鎶�' },
+							{ name: '灞变笢', value: '寰呯敵鎶�' },
+							{ name: '娌冲崡', value: '寰呯敵鎶�' },
+							{ name: '婀栧寳', value: '寰呯敵鎶�'},
+							{ name: '婀栧崡', value: '寰呯敵鎶�' },
+							{ name: '骞夸笢', value: '寰呯敵鎶�' },
+							{ name: '娴峰崡', value: '寰呯敵鎶�' },
+							{ name: '鍥涘窛', value: '寮冭惤鏍�' },
+							{ name: '璐靛窞', value: '寮冭惤鏍�' },
+							{ name: '浜戝崡', value: '寮冭惤鏍�' },
+							{ name: '闄曡タ', value: '寮冭惤鏍�' },
+							{ name: '鐢樿們', value: '寮冭惤鏍�' },
+							{ name: '闈掓捣', value: '寮冭惤鏍�' },
+							{ name: '鍐呰挋鍙�', value: '宸叉寕缃�' },
+							{ name: '骞胯タ', value: '寰呯敵鎶�' },
+							],
+						dataarrt:[
+							{ name: '鍖椾含', value: '宸叉寕缃�' },
+							{ name: '澶╂触', value: '宸叉寕缃�' },
+							{ name: '涓婃捣', value: '寮冭惤鏍�' },
+							{ name: '閲嶅簡', value: '宸叉寕缃�' },
+							{ name: '瑗胯棌', value: '寮冭惤鏍�' },
+							{ name: '瀹佸', value: '宸叉寕缃�' },
+							{ name: '鏂扮枂', value: '杩涜涓�' },
+							{ name: '棣欐腐', value: '杩涜涓�' },
+							{ name: '婢抽棬', value: '寮冭惤鏍�' },
+							{ name: '娌冲寳', value: '杩涜涓�' },
+							{ name: '灞辫タ', value: '寮冭惤鏍�' },
+							{ name: '杈藉畞', value: '杩涜涓�' },
+							{ name: '鍚夋灄', value: '杩涜涓�' },
+							{ name: '榛戦緳姹�', value: '寰呯敵鎶�' },
+							{ name: '姹熻嫃', value: '宸叉寕缃�' },
+							{ name: '娴欐睙', value: '寰呯敵鎶�' },
+							{ name: '瀹夊窘', value: '寰呯敵鎶�' },
+							{ name: '绂忓缓', value: '宸叉寕缃�' },
+							{ name: '姹熻タ', value: '宸叉寕缃�' },
+							{ name: '灞变笢', value: '寰呯敵鎶�' },
+							{ name: '娌冲崡', value: '寰呯敵鎶�' },
+							{ name: '婀栧寳', value: '寰呯敵鎶�'},
+							{ name: '婀栧崡', value: '宸叉寕缃�' },
+							{ name: '骞夸笢', value: '寰呯敵鎶�' },
+							{ name: '娴峰崡', value: '寰呯敵鎶�' },
+							{ name: '鍥涘窛', value: '寮冭惤鏍�' },
+							{ name: '璐靛窞', value: '杩涜涓�' },
+							{ name: '浜戝崡', value: '寮冭惤鏍�' },
+							{ name: '闄曡タ', value: '杩涜涓�' },
+							{ name: '鐢樿們', value: '寮冭惤鏍�' },
+							{ name: '闈掓捣', value: '寮冭惤鏍�' },
+							{ name: '鍐呰挋鍙�', value: '宸叉寕缃�' },
+							{ name: '骞胯タ', value: '寰呯敵鎶�' },
+							],
+						dataarre:[
+							{ name: '鍖椾含', value: '宸叉寕缃�' },
+							{ name: '澶╂触', value: '宸叉寕缃�' },
+							{ name: '涓婃捣', value: '宸叉寕缃�' },
+							{ name: '閲嶅簡', value: '寰呯敵鎶�' },
+							{ name: '瑗胯棌', value: '寰呯敵鎶�' },
+							{ name: '瀹佸', value: '宸叉寕缃�' },
+							{ name: '鏂扮枂', value: '寰呯敵鎶�' },
+							{ name: '棣欐腐', value: '杩涜涓�' },
+							{ name: '婢抽棬', value: '寰呯敵鎶�' },
+							{ name: '娌冲寳', value: '杩涜涓�' },
+							{ name: '灞辫タ', value: '寰呯敵鎶�' },
+							{ name: '杈藉畞', value: '杩涜涓�' },
+							{ name: '鍚夋灄', value: '杩涜涓�' },
+							{ name: '榛戦緳姹�', value: '寰呯敵鎶�' },
+							{ name: '姹熻嫃', value: '杩涜涓�' },
+							{ name: '娴欐睙', value: '杩涜涓�' },
+							{ name: '瀹夊窘', value: '寰呯敵鎶�' },
+							{ name: '绂忓缓', value: '杩涜涓�' },
+							{ name: '姹熻タ', value: '寰呯敵鎶�' },
+							{ name: '灞变笢', value: '寰呯敵鎶�' },
+							{ name: '娌冲崡', value: '寰呯敵鎶�' },
+							{ name: '婀栧寳', value: '宸叉寕缃�'},
+							{ name: '婀栧崡', value: '寰呯敵鎶�' },
+							{ name: '骞夸笢', value: '寰呯敵鎶�' },
+							{ name: '娴峰崡', value: '寰呯敵鎶�' },
+							{ name: '鍥涘窛', value: '宸叉寕缃�' },
+							{ name: '璐靛窞', value: '宸叉寕缃�' },
+							{ name: '浜戝崡', value: '宸叉寕缃�' },
+							{ name: '闄曡タ', value: '寮冭惤鏍�' },
+							{ name: '鐢樿們', value: '宸叉寕缃�' },
+							{ name: '闈掓捣', value: '寮冭惤鏍�' },
+							{ name: '鍐呰挋鍙�', value: '宸叉寕缃�' },
+							{ name: '骞胯タ', value: '寰呯敵鎶�' },
+							],
+						dataarrf:[
+							{ name: '鍖椾含', value: '宸叉寕缃�' },
+							{ name: '澶╂触', value: '宸叉寕缃�' },
+							{ name: '涓婃捣', value: '杩涜涓�' },
+							{ name: '閲嶅簡', value: '杩涜涓�' },
+							{ name: '瑗胯棌', value: '宸叉寕缃�' },
+							{ name: '瀹佸', value: '宸叉寕缃�' },
+							{ name: '鏂扮枂', value: '杩涜涓�' },
+							{ name: '棣欐腐', value: '杩涜涓�' },
+							{ name: '婢抽棬', value: '寮冭惤鏍�' },
+							{ name: '娌冲寳', value: '杩涜涓�' },
+							{ name: '灞辫タ', value: '杩涜涓�' },
+							{ name: '杈藉畞', value: '杩涜涓�' },
+							{ name: '鍚夋灄', value: '杩涜涓�' },
+							{ name: '榛戦緳姹�', value: '寰呯敵鎶�' },
+							{ name: '姹熻嫃', value: '杩涜涓�' },
+							{ name: '娴欐睙', value: '宸叉寕缃�' },
+							{ name: '瀹夊窘', value: '杩涜涓�' },
+							{ name: '绂忓缓', value: '寰呯敵鎶�' },
+							{ name: '姹熻タ', value: '宸叉寕缃�' },
+							{ name: '灞变笢', value: '杩涜涓�' },
+							{ name: '娌冲崡', value: '寰呯敵鎶�' },
+							{ name: '婀栧寳', value: '宸叉寕缃�'},
+							{ name: '婀栧崡', value: '寰呯敵鎶�' },
+							{ name: '骞夸笢', value: '寰呯敵鎶�' },
+							{ name: '娴峰崡', value: '寰呯敵鎶�' },
+							{ name: '鍥涘窛', value: '宸叉寕缃�' },
+							{ name: '璐靛窞', value: '寰呯敵鎶�' },
+							{ name: '浜戝崡', value: '寰呯敵鎶�' },
+							{ name: '闄曡タ', value: '寰呯敵鎶�' },
+							{ name: '鐢樿們', value: '寮冭惤鏍�' },
+							{ name: '闈掓捣', value: '寮冭惤鏍�' },
+							{ name: '鍐呰挋鍙�', value: '宸叉寕缃�' },
+							{ name: '骞胯タ', value: '寰呯敵鎶�' },
+							],
+						dataarr1:[
+							{ name: '鍖椾含', value: '宸叉寕缃�' },
+							{ name: '澶╂触', value: '杩涜涓�' },
+							{ name: '涓婃捣', value: '杩涜涓�' },
+							{ name: '閲嶅簡', value: '宸叉寕缃�' },
+							{ name: '瑗胯棌', value: '宸叉寕缃�' },
+							{ name: '瀹佸', value: '宸叉寕缃�' },
+							{ name: '鏂扮枂', value: '杩涜涓�' },
+							{ name: '棣欐腐', value: '杩涜涓�' },
+							{ name: '婢抽棬', value: '寮冭惤鏍�' },
+							{ name: '娌冲寳', value: '杩涜涓�' },
+							{ name: '灞辫タ', value: '杩涜涓�' },
+							{ name: '杈藉畞', value: '杩涜涓�' },
+							{ name: '鍚夋灄', value: '杩涜涓�' },
+							{ name: '榛戦緳姹�', value: '寰呯敵鎶�' },
+							{ name: '姹熻嫃', value: '寰呯敵鎶�' },
+							{ name: '娴欐睙', value: '寮冭惤鏍�' },
+							{ name: '瀹夊窘', value: '寮冭惤鏍�' },
+							{ name: '绂忓缓', value: '寮冭惤鏍�' },
+							{ name: '姹熻タ', value: '寰呯敵鎶�' },
+							{ name: '灞变笢', value: '寰呯敵鎶�' },
+							{ name: '娌冲崡', value: '寰呯敵鎶�' },
+							{ name: '婀栧寳', value: '寰呯敵鎶�'},
+							{ name: '婀栧崡', value: '寰呯敵鎶�' },
+							{ name: '骞夸笢', value: '寰呯敵鎶�' },
+							{ name: '娴峰崡', value: '寰呯敵鎶�' },
+							{ name: '鍥涘窛', value: '寮冭惤鏍�' },
+							{ name: '璐靛窞', value: '寮冭惤鏍�' },
+							{ name: '浜戝崡', value: '寰呯敵鎶�' },
+							{ name: '闄曡タ', value: '寰呯敵鎶�' },
+							{ name: '鐢樿們', value: '寰呯敵鎶�' },
+							{ name: '闈掓捣', value: '寮冭惤鏍�' },
+							{ name: '鍐呰挋鍙�', value: '宸叉寕缃�' },
+							{ name: '骞胯タ', value: '寰呯敵鎶�' },
+							],
+						dataarr2:[
+							{ name: '鍖椾含', value: '宸叉寕缃�' },
+							{ name: '澶╂触', value: '宸叉寕缃�' },
+							{ name: '涓婃捣', value: '宸叉寕缃�' },
+							{ name: '閲嶅簡', value: '宸叉寕缃�' },
+							{ name: '瑗胯棌', value: '宸叉寕缃�' },
+							{ name: '瀹佸', value: '杩涜涓�' },
+							{ name: '鏂扮枂', value: '杩涜涓�' },
+							{ name: '棣欐腐', value: '寮冭惤鏍�' },
+							{ name: '婢抽棬', value: '寮冭惤鏍�' },
+							{ name: '娌冲寳', value: '杩涜涓�' },
+							{ name: '灞辫タ', value: '杩涜涓�' },
+							{ name: '杈藉畞', value: '杩涜涓�' },
+							{ name: '鍚夋灄', value: '杩涜涓�' },
+							{ name: '榛戦緳姹�', value: '寰呯敵鎶�' },
+							{ name: '姹熻嫃', value: '寰呯敵鎶�' },
+							{ name: '娴欐睙', value: '宸叉寕缃�' },
+							{ name: '瀹夊窘', value: '寮冭惤鏍�' },
+							{ name: '绂忓缓', value: '寰呯敵鎶�' },
+							{ name: '姹熻タ', value: '寰呯敵鎶�' },
+							{ name: '灞变笢', value: '宸叉寕缃�' },
+							{ name: '娌冲崡', value: '寰呯敵鎶�' },
+							{ name: '婀栧寳', value: '寮冭惤鏍�'},
+							{ name: '婀栧崡', value: '寰呯敵鎶�' },
+							{ name: '骞夸笢', value: '宸叉寕缃�' },
+							{ name: '娴峰崡', value: '寰呯敵鎶�' },
+							{ name: '鍥涘窛', value: '寮冭惤鏍�' },
+							{ name: '璐靛窞', value: '寮冭惤鏍�' },
+							{ name: '浜戝崡', value: '寮冭惤鏍�' },
+							{ name: '闄曡タ', value: '杩涜涓�' },
+							{ name: '鐢樿們', value: '寮冭惤鏍�' },
+							{ name: '闈掓捣', value: '杩涜涓�' },
+							{ name: '鍐呰挋鍙�', value: '宸叉寕缃�' },
+							{ name: '骞胯タ', value: '寰呯敵鎶�' },
+							],
+						dataarr3:[
+							{ name: '鍖椾含', value: '宸叉寕缃�' },
+							{ name: '澶╂触', value: '宸叉寕缃�' },
+							{ name: '涓婃捣', value: '杩涜涓�' },
+							{ name: '閲嶅簡', value: '宸叉寕缃�' },
+							{ name: '瑗胯棌', value: '宸叉寕缃�' },
+							{ name: '瀹佸', value: '宸叉寕缃�' },
+							{ name: '鏂扮枂', value: '宸叉寕缃�' },
+							{ name: '棣欐腐', value: '杩涜涓�' },
+							{ name: '婢抽棬', value: '寮冭惤鏍�' },
+							{ name: '娌冲寳', value: '杩涜涓�' },
+							{ name: '灞辫タ', value: '寰呯敵鎶�' },
+							{ name: '杈藉畞', value: '杩涜涓�' },
+							{ name: '鍚夋灄', value: '寮冭惤鏍�' },
+							{ name: '榛戦緳姹�', value: '寰呯敵鎶�' },
+							{ name: '姹熻嫃', value: '杩涜涓�' },
+							{ name: '娴欐睙', value: '寰呯敵鎶�' },
+							{ name: '瀹夊窘', value: '杩涜涓�' },
+							{ name: '绂忓缓', value: '杩涜涓�' },
+							{ name: '姹熻タ', value: '寰呯敵鎶�' },
+							{ name: '灞变笢', value: '杩涜涓�' },
+							{ name: '娌冲崡', value: '寰呯敵鎶�' },
+							{ name: '婀栧寳', value: '寰呯敵鎶�'},
+							{ name: '婀栧崡', value: '寰呯敵鎶�' },
+							{ name: '骞夸笢', value: '寰呯敵鎶�' },
+							{ name: '娴峰崡', value: '杩涜涓�' },
+							{ name: '鍥涘窛', value: '寮冭惤鏍�' },
+							{ name: '璐靛窞', value: '寮冭惤鏍�' },
+							{ name: '浜戝崡', value: '寰呯敵鎶�' },
+							{ name: '闄曡タ', value: '寰呯敵鎶�' },
+							{ name: '鐢樿們', value: '寮冭惤鏍�' },
+							{ name: '闈掓捣', value: '寮冭惤鏍�' },
+							{ name: '鍐呰挋鍙�', value: '宸叉寕缃�' },
+							{ name: '骞胯タ', value: '寰呯敵鎶�' },
+							],
+						dataarr4:[
+							{ name: '鍖椾含', value: '寮冭惤鏍�' },
+							{ name: '澶╂触', value: '宸叉寕缃�' },
+							{ name: '涓婃捣', value: '寮冭惤鏍�' },
+							{ name: '閲嶅簡', value: '宸叉寕缃�' },
+							{ name: '瑗胯棌', value: '宸叉寕缃�' },
+							{ name: '瀹佸', value: '宸叉寕缃�' },
+							{ name: '鏂扮枂', value: '寮冭惤鏍�' },
+							{ name: '棣欐腐', value: '杩涜涓�' },
+							{ name: '婢抽棬', value: '寮冭惤鏍�' },
+							{ name: '娌冲寳', value: '杩涜涓�' },
+							{ name: '灞辫タ', value: '杩涜涓�' },
+							{ name: '杈藉畞', value: '寮冭惤鏍�' },
+							{ name: '鍚夋灄', value: '杩涜涓�' },
+							{ name: '榛戦緳姹�', value: '寰呯敵鎶�' },
+							{ name: '姹熻嫃', value: '寰呯敵鎶�' },
+							{ name: '娴欐睙', value: '宸叉寕缃�' },
+							{ name: '瀹夊窘', value: '寰呯敵鎶�' },
+							{ name: '绂忓缓', value: '寰呯敵鎶�' },
+							{ name: '姹熻タ', value: '宸叉寕缃�' },
+							{ name: '灞变笢', value: '寰呯敵鎶�' },
+							{ name: '娌冲崡', value: '宸叉寕缃�' },
+							{ name: '婀栧寳', value: '寰呯敵鎶�'},
+							{ name: '婀栧崡', value: '宸叉寕缃�' },
+							{ name: '骞夸笢', value: '寰呯敵鎶�' },
+							{ name: '娴峰崡', value: '寰呯敵鎶�' },
+							{ name: '鍥涘窛', value: '寮冭惤鏍�' },
+							{ name: '璐靛窞', value: '寮冭惤鏍�' },
+							{ name: '浜戝崡', value: '宸叉寕缃�' },
+							{ name: '闄曡タ', value: '寮冭惤鏍�' },
+							{ name: '鐢樿們', value: '宸叉寕缃�' },
+							{ name: '闈掓捣', value: '寮冭惤鏍�' },
+							{ name: '鍐呰挋鍙�', value: '宸叉寕缃�' },
+							{ name: '骞胯タ', value: '寰呯敵鎶�' },
+							],
+						dataarr5:[
+							{ name: '鍖椾含', value: '宸叉寕缃�' },
+							{ name: '澶╂触', value: '宸叉寕缃�' },
+							{ name: '涓婃捣', value: '寰呯敵鎶�' },
+							{ name: '閲嶅簡', value: '宸叉寕缃�' },
+							{ name: '瑗胯棌', value: '寰呯敵鎶�' },
+							{ name: '瀹佸', value: '宸叉寕缃�' },
+							{ name: '鏂扮枂', value: '宸叉寕缃�' },
+							{ name: '棣欐腐', value: '宸叉寕缃�' },
+							{ name: '婢抽棬', value: '寮冭惤鏍�' },
+							{ name: '娌冲寳', value: '宸叉寕缃�' },
+							{ name: '灞辫タ', value: '杩涜涓�' },
+							{ name: '杈藉畞', value: '宸叉寕缃�' },
+							{ name: '鍚夋灄', value: '宸叉寕缃�' },
+							{ name: '榛戦緳姹�', value: '寰呯敵鎶�' },
+							{ name: '姹熻嫃', value: '寰呯敵鎶�' },
+							{ name: '娴欐睙', value: '寰呯敵鎶�' },
+							{ name: '瀹夊窘', value: '寰呯敵鎶�' },
+							{ name: '绂忓缓', value: '寰呯敵鎶�' },
+							{ name: '姹熻タ', value: '寰呯敵鎶�' },
+							{ name: '灞变笢', value: '寰呯敵鎶�' },
+							{ name: '娌冲崡', value: '杩涜涓�' },
+							{ name: '婀栧寳', value: '寰呯敵鎶�'},
+							{ name: '婀栧崡', value: '杩涜涓�' },
+							{ name: '骞夸笢', value: '寰呯敵鎶�' },
+							{ name: '娴峰崡', value: '寰呯敵鎶�' },
+							{ name: '鍥涘窛', value: '寮冭惤鏍�' },
+							{ name: '璐靛窞', value: '杩涜涓�' },
+							{ name: '浜戝崡', value: '寮冭惤鏍�' },
+							{ name: '闄曡タ', value: '寮冭惤鏍�' },
+							{ name: '鐢樿們', value: '杩涜涓�' },
+							{ name: '闈掓捣', value: '寮冭惤鏍�' },
+							{ name: '鍐呰挋鍙�', value: '宸叉寕缃�'},
+							{ name: '骞胯タ', value: '寰呯敵鎶�' },
+							],
+					},
+					created() {
+						var me = this;
+						this.popupParames = clone(Root.popupParames);
+						
+					},
+				
+					mounted() {
+						var me = this;
+						// this.initData();
+						this.$nextTick(function() {
+							let w_ = this.$refs.ref_header.offsetWidth;
+							let h_ = this.$refs.ref_header.offsetHeight;
+							//let h_ = 0;
+							let clientHeight = document.documentElement.clientHeight;
+							var m_h = clientHeight - h_ - 10;
+							this.tableHeight = clientHeight - h_ - 252;
+							
+							this.wrapStyle = "overflow-y: auto; width: 100%; height: " + (m_h - 50) + "px";
+							this.viewStyle = "max-height: " + (m_h - 50) + "px";
+							this.$refs.ref_main.style.height = m_h + "px";
+							me.ewidth = this.$refs.csyb.clientWidth + "px";
+							me.eheight = this.$refs.csyb.clientHeight + "px";
+							//this.$refs.ref_v_body.style.height = m_h + "px";
+						})
+						setTimeout(function(){
+							me.spread1();
+						},200);
+						setTimeout(function(){
+							me.spread2();
+							me.spread3();
+							me.spread4();
+						},500);
+					},
+					methods: {
+						GMTToStr(time){
+						    let date = new Date(time)
+						    let Str=date.getFullYear()
+						    return Str
+						},
+						changeyear(){
+							var me = this;
+							var year = me.value3;
+							year = this.GMTToStr(year)
+							if(year == "2022"){
+								me.dataarr = me.dataarr;
+								me.dataarrt = me.dataarrt;
+								me.dataarre = me.dataarre;
+								me.dataarrf = me.dataarrf;
+							}else if(year == "2021"){
+								me.dataarr = me.dataarr1;
+								me.dataarrt = me.dataarr1;
+								me.dataarre = me.dataarr1;
+								me.dataarrf = me.dataarr1;
+							}else if(year == "2020"){
+								me.dataarr = me.dataarr2;
+								me.dataarrt = me.dataarr2;
+								me.dataarre = me.dataarr2;
+								me.dataarrf = me.dataarr2;
+							}else if(year == "2019" || year == "2018" || year == "2017"){
+								me.dataarr = me.dataarr3;
+								me.dataarrt = me.dataarr3;
+								me.dataarre = me.dataarr3;
+								me.dataarrf = me.dataarr3;
+							}else if(year == "2016" || year == "2015" || year == "2014"){
+								me.dataarr = me.dataarr4;
+								me.dataarrt = me.dataarr4;
+								me.dataarre = me.dataarr4;
+								me.dataarrf = me.dataarr4;
+							}else if(year == "2013" || year == "2012" || year == "2011"){
+								me.dataarr = me.dataarr5;
+								me.dataarrt = me.dataarr5;
+								me.dataarre = me.dataarr5;
+								me.dataarrf = me.dataarr5;
+							}else if(year == "2010" || year == "2009" || year == "2008"){
+								me.dataarr = me.dataarr2;
+								me.dataarrt = me.dataarr2;
+								me.dataarre = me.dataarr2;
+								me.dataarrf = me.dataarr2;
+							}
+							this.spread1();
+							this.spread2();
+							this.spread3();
+							this.spread4();
+						},
+						change() {
+							// console.log('123')
+						},
+						spread1(){
+							var spreadDom1 = document.getElementById('spread1');
+							var spreadChart1 = echarts.init(spreadDom1);
+							var me = this;
+							const data = me.dataarr;
+							
+							//鍙栧悇鐪佷唤鐨勪腑蹇冨潗鏍囧瓨鍒癵eoCoordMap涓�
+							let geoCoordMap = {};
+							const getGeo = function(areaName){
+								for (let i = 0; i < areaName.features.length; i++) {
+									geoCoordMap[areaName.features[i].properties.name] = areaName.features[i].properties.center;
+								}
+								return geoCoordMap;
+							}
+							getGeo(China);
+							
+							const convertData = function (data) {
+							    var res = [];
+							    for (var i = 0; i < data.length; i++) {
+							        var geoCoord = geoCoordMap[data[i].name];
+							        if (geoCoord) {
+							        res.push({
+							            name: data[i].name,
+							            value: geoCoord.concat(data[i].value)
+							        });
+							        }
+							        // console.log(res)
+							    }
+							    return res;
+							};
+							var spreadOption1 = {
+							    // 鑳屾櫙棰滆壊
+							    backgroundColor: "",
+							    // 鎻愮ず娴獥鏍峰紡
+							    tooltip: {
+							        show: true,
+							        formatter:function(params){
+							            // console.log(params)
+							            return params.name+'  :  '+params.data.value[2]
+							        },
+							        trigger: "item",
+							        alwaysShowContent: false,
+							        backgroundColor: "#0C121C",
+							        borderColor: "rgba(0, 0, 0, 0.16);",
+							        hideDelay: 100,
+							        triggerOn: "mousemove",
+							        enterable: true,
+							        textStyle: {
+							            color: "#DADADA",
+							            fontSize: "12",
+							            width: 20,
+							            height: 30,
+							            overflow: "break",
+							        },
+							        showDelay: 100,
+							    },
+							    visualMap: {
+							        label:{
+							            // show:false
+							        },
+							        show:true,
+							        type:'piecewise',
+							        // dimension:2,
+							        categories:['宸叉寕缃�','杩涜涓�','寰呯敵鎶�','寮冭惤鏍�'],
+							        inRange: {
+							            color: ['ForestGreen', 'Gold', 'LightSalmon','Red']
+							        }
+							    },
+							    series:[
+							        {
+							            name:'鐪佺骇鎸傜綉杩涘睍',
+							            type:'map',
+							            mapType:'china',
+							            geoIndex:0,
+							            data:convertData(data),
+							        }
+							    ],
+							    geo: {
+							        map: "china",
+							        // left:"40px",
+							        // right:"40px",
+							        top:'30%',
+							        zoom:1.6,
+							        label: {
+							            // 閫氬父鐘舵�佷笅鐨勬牱寮�
+							            normal: {
+							                show: true,
+							                textStyle: {
+							                    color: "white",
+							                    fontWeight:'bold',
+							                    fontSize:10                        
+							                },
+							            },
+							            // 榧犳爣鏀句笂鍘荤殑鏍峰紡
+							            emphasis: {
+							                // show:false,
+							                textStyle: {
+							                    color: "#fff",
+							                },
+							            },
+							        },
+							        // 鍦板浘鍖哄煙鐨勬牱寮忚缃�
+							        itemStyle: {
+							            normal: {
+							                borderColor: "rgba(32,178,170, 0.5)",
+							                borderWidth: 1,
+							                areaColor: '#f0e68c',
+							            },
+							            // 榧犳爣鏀句笂鍘婚珮浜殑鏍峰紡
+							            emphasis: {
+							                areaColor: "MediumAquamarine",
+							                borderWidth: 0,
+							            }
+							        },
+							    },
+							};
+							
+							// 鍦板浘娉ㄥ唽锛岀涓�涓弬鏁扮殑鍚嶅瓧蹇呴』鍜宱ption.geo.map涓�鑷�
+							echarts.registerMap("china",China)
+							spreadChart1.setOption(spreadOption1);
+						},
+						spread2(){
+							var spreadDom2 = document.getElementById('spread2');
+							var spreadChart2 = echarts.init(spreadDom2);
+							var me = this;
+							const data = me.dataarrt;
+							
+							//鍙栧悇鐪佷唤鐨勪腑蹇冨潗鏍囧瓨鍒癵eoCoordMap涓�
+							let geoCoordMap = {};
+							const getGeo = function(areaName){
+								for (let i = 0; i < areaName.features.length; i++) {
+									geoCoordMap[areaName.features[i].properties.name] = areaName.features[i].properties.center;
+								}
+								return geoCoordMap;
+							}
+							getGeo(China);
+							
+							const convertData = function (data) {
+							    var res = [];
+							    for (var i = 0; i < data.length; i++) {
+							        var geoCoord = geoCoordMap[data[i].name];
+							        if (geoCoord) {
+							        res.push({
+							            name: data[i].name,
+							            value: geoCoord.concat(data[i].value)
+							        });
+							        }
+							        // console.log(res)
+							    }
+							    return res;
+							};
+							var spreadOption2 = {
+							    // 鑳屾櫙棰滆壊
+							    backgroundColor: "",
+							    // 鎻愮ず娴獥鏍峰紡
+							    tooltip: {
+							        show: true,
+							        formatter:function(params){
+							            // console.log(params)
+							            return params.name+'  :  '+params.data.value[2]
+							        },
+							        trigger: "item",
+							        alwaysShowContent: false,
+							        backgroundColor: "#0C121C",
+							        borderColor: "rgba(0, 0, 0, 0.16);",
+							        hideDelay: 100,
+							        triggerOn: "mousemove",
+							        enterable: true,
+							        textStyle: {
+							            color: "#DADADA",
+							            fontSize: "12",
+							            width: 20,
+							            height: 30,
+							            overflow: "break",
+							        },
+							        showDelay: 100,
+							    },
+							    visualMap: {
+							        label:{
+							            // show:false
+							        },
+							        show:true,
+							        type:'piecewise',
+							        // dimension:2,
+							        categories:['宸叉寕缃�','杩涜涓�','寰呯敵鎶�','寮冭惤鏍�'],
+							        inRange: {
+							            color: ['ForestGreen', 'Gold', 'LightSalmon','Red']
+							        }
+							    },
+							    series:[
+							        {
+							            name:'鐪佺骇鎸傜綉杩涘睍',
+							            type:'map',
+							            mapType:'china',
+							            geoIndex:0,
+							            data:convertData(data),
+							        }
+							    ],
+							    geo: {
+							        map: "china",
+							        // left:"40px",
+							        // right:"40px",
+							        top:'30%',
+							        zoom:1.6,
+							        label: {
+							            // 閫氬父鐘舵�佷笅鐨勬牱寮�
+							            normal: {
+							                show: true,
+							                textStyle: {
+							                    color: "white",
+							                    fontWeight:'bold',
+							                    fontSize:10                        
+							                },
+							            },
+							            // 榧犳爣鏀句笂鍘荤殑鏍峰紡
+							            emphasis: {
+							                // show:false,
+							                textStyle: {
+							                    color: "#fff",
+							                },
+							            },
+							        },
+							        // 鍦板浘鍖哄煙鐨勬牱寮忚缃�
+							        itemStyle: {
+							            normal: {
+							                borderColor: "rgba(32,178,170, 0.5)",
+							                borderWidth: 1,
+							                areaColor: '#f0e68c',
+							            },
+							            // 榧犳爣鏀句笂鍘婚珮浜殑鏍峰紡
+							            emphasis: {
+							                areaColor: "MediumAquamarine",
+							                borderWidth: 0,
+							            }
+							        },
+							    },
+							};
+							
+							// 鍦板浘娉ㄥ唽锛岀涓�涓弬鏁扮殑鍚嶅瓧蹇呴』鍜宱ption.geo.map涓�鑷�
+							echarts.registerMap("china",China)
+							spreadChart2.setOption(spreadOption2);
+						},
+						spread3(){
+							var spreadDom3 = document.getElementById('spread3');
+							var spreadChart3 = echarts.init(spreadDom3);
+							var me = this;
+							const data = me.dataarre;
+							
+							//鍙栧悇鐪佷唤鐨勪腑蹇冨潗鏍囧瓨鍒癵eoCoordMap涓�
+							let geoCoordMap = {};
+							const getGeo = function(areaName){
+								for (let i = 0; i < areaName.features.length; i++) {
+									geoCoordMap[areaName.features[i].properties.name] = areaName.features[i].properties.center;
+								}
+								return geoCoordMap;
+							}
+							getGeo(China);
+							
+							const convertData = function (data) {
+							    var res = [];
+							    for (var i = 0; i < data.length; i++) {
+							        var geoCoord = geoCoordMap[data[i].name];
+							        if (geoCoord) {
+							        res.push({
+							            name: data[i].name,
+							            value: geoCoord.concat(data[i].value)
+							        });
+							        }
+							        // console.log(res)
+							    }
+							    return res;
+							};
+							var spreadOption3 = {
+							    // 鑳屾櫙棰滆壊
+							    backgroundColor: "",
+							    // 鎻愮ず娴獥鏍峰紡
+							    tooltip: {
+							        show: true,
+							        formatter:function(params){
+							            // console.log(params)
+							            return params.name+'  :  '+params.data.value[2]
+							        },
+							        trigger: "item",
+							        alwaysShowContent: false,
+							        backgroundColor: "#0C121C",
+							        borderColor: "rgba(0, 0, 0, 0.16);",
+							        hideDelay: 100,
+							        triggerOn: "mousemove",
+							        enterable: true,
+							        textStyle: {
+							            color: "#DADADA",
+							            fontSize: "12",
+							            width: 20,
+							            height: 30,
+							            overflow: "break",
+							        },
+							        showDelay: 100,
+							    },
+							    visualMap: {
+							        label:{
+							            // show:false
+							        },
+							        show:true,
+							        type:'piecewise',
+							        // dimension:2,
+							        categories:['宸叉寕缃�','杩涜涓�','寰呯敵鎶�','寮冭惤鏍�'],
+							        inRange: {
+							            color: ['ForestGreen', 'Gold', 'LightSalmon','Red']
+							        }
+							    },
+							    series:[
+							        {
+							            name:'鐪佺骇鎸傜綉杩涘睍',
+							            type:'map',
+							            mapType:'china',
+							            geoIndex:0,
+							            data:convertData(data),
+							        }
+							    ],
+							    geo: {
+							        map: "china",
+							        // left:"40px",
+							        // right:"40px",
+							        top:'30%',
+							        zoom:1.6,
+							        label: {
+							            // 閫氬父鐘舵�佷笅鐨勬牱寮�
+							            normal: {
+							                show: true,
+							                textStyle: {
+							                    color: "white",
+							                    fontWeight:'bold',
+							                    fontSize:10                        
+							                },
+							            },
+							            // 榧犳爣鏀句笂鍘荤殑鏍峰紡
+							            emphasis: {
+							                // show:false,
+							                textStyle: {
+							                    color: "#fff",
+							                },
+							            },
+							        },
+							        // 鍦板浘鍖哄煙鐨勬牱寮忚缃�
+							        itemStyle: {
+							            normal: {
+							                borderColor: "rgba(32,178,170, 0.5)",
+							                borderWidth: 1,
+							                areaColor: '#f0e68c',
+							            },
+							            // 榧犳爣鏀句笂鍘婚珮浜殑鏍峰紡
+							            emphasis: {
+							                areaColor: "MediumAquamarine",
+							                borderWidth: 0,
+							            }
+							        },
+							    },
+							};
+							
+							// 鍦板浘娉ㄥ唽锛岀涓�涓弬鏁扮殑鍚嶅瓧蹇呴』鍜宱ption.geo.map涓�鑷�
+							echarts.registerMap("china",China)
+							spreadChart3.setOption(spreadOption3);
+						},
+						spread4(){
+							var spreadDom4 = document.getElementById('spread4');
+							var spreadChart4 = echarts.init(spreadDom4);
+							var me = this;
+							const data = me.dataarrf;
+							
+							//鍙栧悇鐪佷唤鐨勪腑蹇冨潗鏍囧瓨鍒癵eoCoordMap涓�
+							let geoCoordMap = {};
+							const getGeo = function(areaName){
+								for (let i = 0; i < areaName.features.length; i++) {
+									geoCoordMap[areaName.features[i].properties.name] = areaName.features[i].properties.center;
+								}
+								return geoCoordMap;
+							}
+							getGeo(China);
+							
+							const convertData = function (data) {
+							    var res = [];
+							    for (var i = 0; i < data.length; i++) {
+							        var geoCoord = geoCoordMap[data[i].name];
+							        if (geoCoord) {
+							        res.push({
+							            name: data[i].name,
+							            value: geoCoord.concat(data[i].value)
+							        });
+							        }
+							        // console.log(res)
+							    }
+							    return res;
+							};
+							var spreadOption4 = {
+							    // 鑳屾櫙棰滆壊
+							    backgroundColor: "",
+							    // 鎻愮ず娴獥鏍峰紡
+							    tooltip: {
+							        show: true,
+							        formatter:function(params){
+							            // console.log(params)
+							            return params.name+'  :  '+params.data.value[2]
+							        },
+							        trigger: "item",
+							        alwaysShowContent: false,
+							        backgroundColor: "#0C121C",
+							        borderColor: "rgba(0, 0, 0, 0.16);",
+							        hideDelay: 100,
+							        triggerOn: "mousemove",
+							        enterable: true,
+							        textStyle: {
+							            color: "#DADADA",
+							            fontSize: "12",
+							            width: 20,
+							            height: 30,
+							            overflow: "break",
+							        },
+							        showDelay: 100,
+							    },
+							    visualMap: {
+							        label:{
+							            // show:false
+							        },
+							        show:true,
+							        type:'piecewise',
+							        // dimension:2,
+							        categories:['宸叉寕缃�','杩涜涓�','寰呯敵鎶�','寮冭惤鏍�'],
+							        inRange: {
+							            color: ['ForestGreen', 'Gold', 'LightSalmon','Red']
+							        }
+							    },
+							    series:[
+							        {
+							            name:'鐪佺骇鎸傜綉杩涘睍',
+							            type:'map',
+							            mapType:'china',
+							            geoIndex:0,
+							            data:convertData(data),
+							        }
+							    ],
+							    geo: {
+							        map: "china",
+							        // left:"40px",
+							        // right:"40px",
+							        top:'30%',
+							        zoom:1.6,
+							        label: {
+							            // 閫氬父鐘舵�佷笅鐨勬牱寮�
+							            normal: {
+							                show: true,
+							                textStyle: {
+							                    color: "white",
+							                    fontWeight:'bold',
+							                    fontSize:10                        
+							                },
+							            },
+							            // 榧犳爣鏀句笂鍘荤殑鏍峰紡
+							            emphasis: {
+							                // show:false,
+							                textStyle: {
+							                    color: "#fff",
+							                },
+							            },
+							        },
+							        // 鍦板浘鍖哄煙鐨勬牱寮忚缃�
+							        itemStyle: {
+							            normal: {
+							                borderColor: "rgba(32,178,170, 0.5)",
+							                borderWidth: 1,
+							                areaColor: '#f0e68c',
+							            },
+							            // 榧犳爣鏀句笂鍘婚珮浜殑鏍峰紡
+							            emphasis: {
+							                areaColor: "MediumAquamarine",
+							                borderWidth: 0,
+							            }
+							        },
+							    },
+							};
+							
+							// 鍦板浘娉ㄥ唽锛岀涓�涓弬鏁扮殑鍚嶅瓧蹇呴』鍜宱ption.geo.map涓�鑷�
+							echarts.registerMap("china",China)
+							spreadChart4.setOption(spreadOption4);
+						},
+						initData() {
+							var me = this;
+							let param_ = {
+								isClientMode: false,
+								dataname: this.dataname,
+								page: {
+									pageno: this.pagenum,
+									pagesize: this.pagesize
+								},
+							}
+							Server.call("root/data/getEntitySet", param_, function(result) {
+								me.total = 0;
+								me.tableData = [];
+								if (result && result.data) {
+									me.total = result.data.page.recordcount;
+									var data_ = result.data.entityset;
+									// console.log(data_)
+									me.tableData = data_;
+								}
+							});
+						},
+						showFilterPopup() {
+							
+						},
+						onInitFilter() {
+							this.filterObj = {}
+							this.onQuery();
+						},
+						onEditFilter() {
+							
+						},
+						getData(page) {
+							this.pagesize = page.pagesize;
+							this.pagenum = page.pagenum;
+							this.doQuery();
+						},
+						handleClick(tab) {
+							this.AnchorLinkTo(tab.name);
+						},
+						formSelectChange(obj) {
+							var me = this;
+							var fieldObj = obj.fieldobj;
+							var filterFieldsData = clone(me.filterFields);
+							
+							if (fieldObj.field == "province") {
+								var filterObj_ = clone(me.filterObj);
+								filterObj_.city = null;
+								me.filterObj = filterObj_;
+								let param_ = {
+									isClientMode: false,
+									dataname: "md_province",
+									filter: [
+										{field: "name", value:obj.data.province}
+									]
+								}
+								Server.call("root/data/getEntitySet", param_, function(result) {
+									if (result && result.data) {
+										let param_ = {
+											isClientMode: false,
+											dataname: "md_vip_area",
+											filter:[
+												{"field": "province_id", "value":result.data.entityset[0].id}
+											]
+										}
+										Server.call("root/data/getEntitySet", param_, function(result) {
+											if (result && result.data) {
+												var options_ = result.data.entityset;
+												for(var i=0; i<options_.length;i++) {
+													options_[i].label = options_[i].name;
+													options_[i].value = options_[i].name;
+													
+												}
+												filterFieldsData.map(e=>{
+													if(e.field == "city") {
+														e.options = options_;
+													}
+												})
+											}
+											me.filterFields = filterFieldsData;
+										});
+									}
+								});
+							}
+						},
+						
+						//鍔ㄦ�佸姞杞戒笅鎷夐」
+						cellVisibleChange(obj, row) {
+							let me = this;
+							var filterFieldsData = clone(me.filterFields);
+							if (obj.field == "province") {
+								var filterFieldsData = clone(me.filterFields);
+								let param_ = {
+									isClientMode: false,
+									dataname: "md_province",
+								}
+								Server.call("root/data/getEntitySet", param_, function(result) {
+									if (result && result.data) {
+										var options_ = result.data.entityset;
+										for(var i=0; i<options_.length;i++) {
+											options_[i].label = options_[i].name;
+											options_[i].value = options_[i].name;
+										}
+										filterFieldsData.map(e=>{
+											if(e.field == "province") {
+												e.options = options_;
+											}
+										})
+									}
+									me.filterFields = filterFieldsData;
+								});
+							}
+						},
+						
+						onFormButtonByCode(code) {
+							if (code == "add") {//娣诲姞
+								// let me = this;
+								// var config = {
+								// 	totab: true,
+								// 	title: "瀹㈡埛涓绘暟鎹柊澧�",
+								// 	url: "../home/masterDataAdd.html",
+								// 	data: {},
+								// 	delta: {},
+								// 	opentype: "add",
+								// 	sceneCode: "add",
+								// 	width: 780,
+								// 	height: 420,
+								// 	callback: function(obj, callback) {
+								// 		me.onQuery();
+								// 		if (callback) {
+								// 			callback();
+								// 		}
+								// 	}
+								// };
+								// Root.showPopup(config);
+								// this.tabCardClick(config);
+							}
+							else if (code == "import") {//瀵煎叆
+								
+							}
+							else if (code == "export") {//瀵煎嚭
+								
+							}
+						},
+						cellClick(obj) {//鍗曞厓鏍肩偣鍑�
+							var field = obj.column.property;
+							var row = obj.row;
+							var tableField = obj.tableField;
+							// if(tableField.field == "field2") {
+							// 	var to_page = {
+							// 		totab: true,
+							// 		title: "瀹㈡埛鏄庣粏(涓绘暟鎹�)",
+							// 		url: "../home/masterDataCustomerDetails.html",
+							// 		data: {},
+							// 		delta: {},
+							// 		opentype: "add",
+							// 		sceneCode: "add",
+							// 		width: 1100,
+							// 		height: 550,
+							// 		callback: function(obj, callback) {
+							// 			me.onQuery();
+							// 			if (callback) {
+							// 				callback();
+							// 			}
+							// 		}
+							// 	};
+							// 	Root.showPopup(to_page);
+							// }
+						},
+						queryData(row) {
+							let me = this;
+							
+							// var config = {
+							// 	width: 1000,
+							// 	height: 550,
+							// 	title: "鏌ョ湅鍗忎細鏅哄簱妗f",
+							// 	url: "../flow_manage/addAssociationLibraryList.html",
+							// 	totab: true,
+							// 	sceneCode: "query",
+							// 	opentype: "add",
+							// 	data: row,
+							// 	delta: {},
+							// 	callback: function(obj, callback) {
+							// 		if (callback) {
+							// 			callback();
+							// 		}
+							// 	}
+							// };
+							// // this.doPopup(config);
+							// this.tabCardClick(config);
+						},
+						cellButtonClick(obj) {
+							var type_ = obj.column.property;
+							var row = obj.row;
+							var field = "name";
+							var tips = "";
+							
+							if(type_ == "delete"){
+								this.delData(row,field,tips);
+							} else if (type_ == "update"){
+								this.editData(obj);
+							} else if (type_ == "query"){
+								this.queryData(row);
+							}
+						},
+						//淇敼鏁版嵁浜嬩欢
+						onEditData(config, scope) {
+							var me = this;
+							var row = scope.row;
+							// var config = {
+							// 	width: 1000,
+							// 	height: 550,
+							// 	title: "缂栬緫瀹㈡埛涓绘暟鎹�",
+							// 	url: "../home/masterDataAdd.html",
+							// 	totab: true,
+							// 	sceneCode: "edit",
+							// 	opentype: "add",
+							// 	data: row,
+							// 	delta: {},
+							// 	callback: function(obj, callback) {
+							// 		me.initData();
+							// 		if (callback) {
+							// 			callback();
+							// 		}
+							// 	}
+							// };
+							// this.doPopup(config);
+						},
+						
+						
+						
+						//婊氬姩浜嬩欢
+						myFunction(e) {
+							var isToBottom_ = this.isToBottom(e);
+							if (isToBottom_) {
+								this.org_footer = true;
+							}
+							else {
+								this.org_footer = false;
+							}
+						},
+						
+						isToBottom(e) {
+							var bo_ = false;
+							if(e.srcElement.scrollTop + e.srcElement.offsetHeight >= e.srcElement.scrollHeight){
+						銆�銆�銆�銆�//宸茬粡鍒版渶搴曢儴浜�
+								bo_ = true;
+						銆�銆�}
+							return bo_;
+						},
+						
+					}
+				});
+			}
+		
+			loadJsCss(function() {
+				initVue();
+			});
+		</script>
+		
+		<style>
+			[v-cloak] {
+				display: none !important;
+			}
+			
+			.v_header .v_header_query{
+			    padding: 0px 36px;
+			    box-sizing: border-box;
+			}
+		</style>
+	</body>
+</html>
diff --git a/module/report/page/overallChannelSalesProgress.html b/module/report/page/overallChannelSalesProgress.html
new file mode 100644
index 0000000..01a9527
--- /dev/null
+++ b/module/report/page/overallChannelSalesProgress.html
@@ -0,0 +1,2025 @@
+<!DOCTYPE html>
+<html>
+	<head> 
+		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+		<title>娓犻亾鏁翠綋閿�鍞繘灞�</title>
+	</head>
+
+	<body>
+		<style type="text/css">
+			h5,ul,h1 {
+				margin: 0;
+				padding: 0;
+			}
+			li {
+				list-style: none;
+			}
+		</style>
+		<div v-cloak id="hbody" class="h_body" style="margin: 0;padding: 0;">
+			<div ref="ref_header" class="v_header">
+			</div>
+			<div ref="ref_main" class="v_main" style="padding: 0px 36px;">
+				<div style="width: 100%;height: 150vh;">
+					<h1 style="font-weight: 600;color: #3A63A6;text-align: center;margin-bottom: 20px;">娓犻亾鏁翠綋閿�鍞繘灞�</h1>
+					<div class="block" style="margin-top: 15px;margin-left: 20px;">
+					   <span class="demonstration">鍒囨崲鏈堜唤</span>
+					   <el-date-picker
+					     v-model="value2"
+					     type="month"
+						 @change="changemon"
+					     placeholder="閫夋嫨鏈�">
+					   </el-date-picker>
+					</div>
+					<div style="width: 75%;height: 150vh;float: left;">
+						<div style="width: 100%;height: 40%;float: left;display: flex;justify-content: center;align-items: center;">
+							<div id = "invoicing" style = "width: 100%; height: 100%;" ></div>
+						</div>
+						<div style="width: 100%;height: 60%;float: left;">
+							<div style="width: 100%;height: 50%;display: flex;justify-content: center;align-items: center;">
+								<div style="width: 45%;height: 100%;display: flex;justify-content: center;align-items: center;">
+									<div id = "sale1" style = "width: 100%; height: 100%;" ></div>
+								</div>
+								<div style="width: 45%;height: 100%;display: flex;justify-content: center;align-items: center;">
+									<div id = "sale2" style = "width: 100%; height: 100%;" ></div>
+								</div>
+							</div>
+							<div style="width: 100%;height: 50%;display: flex;justify-content: center;align-items: center;">
+								<div style="width: 45%;height: 100%;">
+									<div id = "sale3" style = "width: 100%; height: 100%;" ></div>
+								</div>
+								<div style="width: 45%;height: 100%;display: flex;justify-content: center;align-items: center;">
+									<div id = "sale4" style = "width: 100%; height: 100%;" ></div>
+								</div>
+							</div>
+						</div>
+					</div>
+					<div style="width: 25%;height: 150vh;float: left;display: flex;flex-direction: column;justify-content: flex-start;">
+						<div style="width: 100%;height: 33.33%;float: left;display: flex;justify-content: center;align-items: center;">
+							<div id = "pie1" style = "width: 100%; height: 100%;" ></div>
+						</div>
+						<div style="width: 100%;height: 33.33%;float: left;display: flex;justify-content: center;align-items: center;">
+							<div id = "pie2" style = "width: 100%; height: 100%;" ></div>
+						</div>
+						<div style="width: 100%;height: 33.33%;float: left;display: flex;justify-content: center;align-items: center;">
+							<div id = "pie3" style = "width: 100%; height: 100%;" ></div>
+						</div>
+					</div>
+				</div>
+				<div style="width: 100%;height: 75vh;margin-top: 60px;">
+					<div id = "sales" style="width: 100%; height: 100%"></div>
+				</div>
+				<div style="width: 100%;height: 30px;"></div>
+			</div>
+			
+		</div>
+		
+		<script type="text/javascript">
+			function loadJsCss(callback) {
+				var jscss_urls = [
+					{id: "js6", type: "js", url: "root/js/echarts.js"},
+					{id: "js7", type: "js", url: "root/js/China.js"},
+					{id: "js8", type: "js", url: "root/js/Province.js"},
+				];
+				window.top.initJsCss(document, jscss_urls, callback);
+			}
+		
+			function initVue() {
+				new BasicsVue({
+					el: "#hbody",
+					data: {
+						value2:"2022-06",
+						radio1: '鎬婚噺',
+						radio2: '浜у搧',
+						cardtablist: [
+							// {id: "6-5-2-2-1", type: "cardtab", name: "鏂板鍗忎細鏅哄簱", icon:"", img: "../../img/page/associationLibraryList.png", enname:"", url: "../../page/flow_manage/addAssociationLibraryList.html", parentid: "1", opentype: "add"},
+							// {id: "2-1-2", type: "cardtab", name: "涓ぎ涓撳搴�", icon:"", img: "../../img/page/icon_open@2x.png", enname:"", url: "../../page/flow_manage/centralfileList.html", parentid: "2", opentype: "add"},
+						],
+						page_url: "",
+						rowkey: "id",
+						dataname: "",
+						module_title: "",
+						tableHeight: 500,
+						filterAttr: {
+							columnnumber: 4,
+							labelwidth: "100px",
+							labelposition: "left",//"left",//"right",
+							size: "medium",
+							borderleft: "0px solid #c6c6c600",
+							bordertop: "8px solid #c6c6c600",
+							borderright: "0px solid #c6c6c600",
+							borderbottom: "0px solid #c6c6c600",
+							border: "3px solid #c6c6c600"
+						},
+						formButton: {
+							query: true,
+							empty: true,
+							add: false,
+							import: false,
+							export: false
+						},
+						filterObj: {},
+						filterFieldsObj: {},
+						filterFields: [
+							{isshow: "T",fieldname: "province", field: "province", name: "鐪佷唤", type: "select"},
+							{isshow: "T", fieldname: "city",field: "city",name: "鍩庡競", type: "select"},
+							// {isshow: "T", field: "field1", name: "瀹㈡埛缂栧彿", type: "select"},
+							// {isshow: "T", field: "name", fieldname: "name", name: "瀹㈡埛鍚嶇О", fieldtype: "like", type: "select"},
+							// {isshow: "T", field: "creator_name", fieldname: "creator_name", name: "瀹㈡埛灞炴��", fieldtype: "like"},
+							// {isshow: "T", field: "createtime", name: "鏄惁鍚敤",fieldtype: "inScopeInclude"},
+						],
+						//Tab椤�
+						activeName: "code1",
+						wrapStyle: "",
+						viewStyle: "",
+						
+						tabList: [
+							{code: "code1", name: "鍒楄〃"},
+						],
+						tabsObj: {
+							code1: true,
+						},
+						
+						isRefresh: true,
+						pagesize: 10,
+						pagenum: 0,
+						total: 0,
+						orderby:"createtime desc",
+						year:"",
+						month:"",
+						datearr:['2021-06', '2021-07', '2021-08', '2021-09', '2021-10', '2021-11', '2021-12', '2022-01', '2022-02', '2022-03', '2022-04', '2022-05', '2022-06'],
+					},
+					created() {
+						var me = this;
+						this.popupParames = clone(Root.popupParames);
+					},
+				
+					mounted() {
+						var me = this;
+						// this.initData();
+						this.$nextTick(function() {
+							let w_ = this.$refs.ref_header.offsetWidth;
+							let h_ = this.$refs.ref_header.offsetHeight;
+							//let h_ = 0;
+							let clientHeight = document.documentElement.clientHeight;
+							var m_h = clientHeight - h_ - 10;
+							this.tableHeight = clientHeight - h_ - 252;
+							
+							this.wrapStyle = "overflow-y: auto; width: 100%; height: " + (m_h - 50) + "px";
+							this.viewStyle = "max-height: " + (m_h - 50) + "px";
+							this.$refs.ref_main.style.height = m_h + "px";
+							//this.$refs.ref_v_body.style.height = m_h + "px";
+							me.invoicing();
+							me.pie1();
+							me.sale1();
+							me.sale2();
+							me.pie2();
+							me.sale3();
+							me.sale4();
+							me.pie3();
+							me.sales();
+						})
+					},
+					methods: {
+						GMTToStr(time){
+						    let date = new Date(time)
+						    let Str=date.getFullYear() + '-' +
+						    (date.getMonth() + 1) + '-' +
+						    date.getDate()
+						    return Str
+						},
+						changemon(){
+							var me = this;
+							me.value2 = this.GMTToStr(me.value2)
+							var year = me.value2.split('-')[0];
+							var month = me.value2.split('-')[1];
+							var mon = this.getNearMonth(year,month);
+							// mon = mon.reverse();
+							// console.log(mon)
+						},
+						getNearMonth(year,month) {
+							var me = this;
+							var dataArr = [];
+							// var data = new Date();
+							// var year = data.getFullYear();
+							year = parseInt(year);
+							month = parseInt(month);
+							// console.log(month,year)
+							month = month + 1;//鑾峰彇鍒板綋鍓嶆湀浠�,璁剧疆鏈堜唤
+							for (var i = 0; i < 13; i++) {
+							    month = month - 1;//姣忔寰幆涓�娆� 鏈堜唤鍊煎噺1
+							    var m = month;
+							    m = m < 10 ? "0" + m : m;
+							    dataArr.push(year + "-" + (m))
+								if(m == 1){
+									year--;
+									month = 13
+								}
+							}
+							dataArr = dataArr.reverse();
+							me.datearr = dataArr;
+							// console.log(me.datearr);
+							me.invoicing();
+							me.sale1();
+							me.sale2();
+							me.sale3();
+							me.sale4();
+						},
+						
+						//鍦板浘
+						sales(){
+							 var salesDom = document.getElementById('sales');
+							        var salesChart = echarts.init(salesDom);
+							
+							        //鍦板浘鏄剧ずname涓庡湴鍥炬敞鍐宯ame鐨勬槧灏�
+							        const dict = {
+							            "鍖椾含":'Beijing',
+							            "澶╂触":'Tianjin',
+							            "涓婃捣":'Shanghai',
+							            "閲嶅簡":'Chongqing',
+							            "瑗胯棌":'Xizang',
+							            "瀹佸":'Ningxia',
+							            "鏂扮枂":'Xinjiang',
+							            "棣欐腐":'Xianggang',
+							            // "婢抽棬":'Aomen',
+							            "娌冲寳":'Hebei',
+							            "灞辫タ":'Shanxi1',
+							            "杈藉畞":'Liaoning',
+							            "鍚夋灄":'Jilin',
+							            "榛戦緳姹�":'Heilongjiang',
+							            "姹熻嫃":'Jiangsu',
+							            "娴欐睙":'Zhejiang',
+							            "瀹夊窘":'Anhui',
+							            "绂忓缓":'Fujian',
+							            "姹熻タ":'Jiangxi',
+							            "灞变笢":'Shandong',
+							            "娌冲崡":'Henan',
+							            "婀栧寳":'Hubei',
+							            "婀栧崡":'Hunan',
+							            "骞夸笢":'Guangdong',
+							            "娴峰崡":'Hainan',
+							            "鍥涘窛":'Sichuan',
+							            "璐靛窞":'Guizhou',
+							            "浜戝崡":'Yunnan',
+							            "闄曡タ":'Shanxi3',
+							            "鐢樿們":'Gansu',
+							            "闈掓捣":'Qinghai',
+							            "鍐呰挋鍙�":'Neimenggu',
+							            "骞胯タ":'Guangxi',
+							
+							        }
+							
+							        //鍦板浘娉ㄥ唽name涓巎s涓彉閲忕殑鏄犲皠
+							        const mapData ={
+							            'Beijing':Beijing,
+							            'Tianjin':Tianjin,
+							            'Shanghai':Shanghai,
+							            'Chongqing':Chongqing,
+							            'Xizang':Xizang,
+							            'Ningxia':Ningxia,
+							            'Xinjiang':Xinjiang,
+							            'Xianggang':Xianggang,
+							            // 'Aomen':Aomen,
+							            'Hebei':Hebei,
+							            'Shanxi1':Shanxi1,
+							            'Liaoning':Liaoning,
+							            'Jilin':Jilin,
+							            'Heilongjiang':Heilongjiang,
+							            'Jiangsu':Jiangsu,
+							            'Zhejiang':Zhejiang,
+							            'Anhui':Anhui,
+							            'Fujian':Fujian,
+							            'Jiangxi':Jiangxi,
+							            'Shandong':Shandong,
+							            'Henan':Henan,
+							            'Hubei':Hubei,
+							            'Hunan':Hunan,
+							            'Guangdong':Guangdong,
+							            'Hainan':Hainan,
+							            'Sichuan':Sichuan,
+							            'Guizhou':Guizhou,
+							            'Yunnan':Yunnan,
+							            'Shanxi3':Shanxi3,
+							            'Gansu':Gansu,
+							            'Qinghai':Qinghai,
+							            'Neimenggu':Neimenggu,
+							            'Guangxi':Guangxi,
+							        }
+							
+							        //鐪佷唤涓巘op鍚嶅瓧瀵瑰簲
+							        const mapTop ={
+							            'Beijing':"鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�",
+							            'Tianjin':"鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�",
+							            'Shanghai':"鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�",
+							            'Chongqing':"鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�",
+							            'Xizang':"鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�",
+							            'Ningxia':"瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�",
+							            'Xinjiang':"鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃",
+							            'Xianggang':"鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃",
+							            'Hebei':"鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃",
+							            'Shanxi1':"闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�",
+							            'Liaoning':"鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃",
+							            'Jilin':"鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃",
+							            'Heilongjiang':"鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�",
+							            'Jiangsu':"瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃",
+							            'Zhejiang':"鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃",
+							            'Anhui':"鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃",
+							            'Fujian':"鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃",
+							            'Jiangxi':"鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃",
+							            'Shandong':"鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃",
+							            'Henan':"鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃",
+							            'Hubei':"鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�",
+							            'Hunan':"鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�",
+							            'Guangdong':"鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃",
+							            'Hainan':"瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�",
+							            'Sichuan':"鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃",
+							            'Guizhou':"鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�",
+							            'Yunnan':"鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃",
+							            'Shanxi3':"闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃",
+							            'Gansu':"鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃",
+							            'Qinghai':"鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃",
+							            'Neimenggu':"鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃",
+							            'Guangxi':"鍥界憺澶ц嵂鎴挎湁闄愬叕鍙�,闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃,鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙�,鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃,鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃,鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃,鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃,鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙�,鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃",
+							        }
+							
+									//鐪佷唤涓嶵op閿�閲忔暟鎹搴�
+							        const salesData = {
+							            'Beijing':"1983,1794,1619,880,766,554,542,432,321,210",
+							            'Tianjin':"1868,979,828,757,636,525,444,333,222,111",
+							            'Shanghai':"1045,987,876,765,654,543,432,321,213,112",
+							            'Chongqing':"1432,1324,1234,1134,997,885,775,634,515,413",
+							            'Xizang':"1672,1423,1328,1288,1067,982,678,536,409,123",
+							            'Ningxia':"1272,1123,1028,988,867,782,678,536,409,223",
+							            'Xinjiang':"672,423,328,288,167,152,137,136,99,63",
+							            'Xianggang':"972,823,728,688,567,482,378,236,109,23",
+							            'Hebei':"1072,923,828,788,667,582,478,336,209,123",
+							            'Shanxi1':"1672,914,813,712,610,598,467,353,240,112",
+							            'Liaoning':"1234,987,876,765,654,543,432,321,210,109",
+							            'Jilin':"1098,901,890,789,678,567,456,345,234,123",
+							            'Heilongjiang':"1010,909,808,707,606,505,44,303,202,101",
+							            'Jiangsu':"1111,902,803,704,605,506,407,308,209,110",
+							            'Zhejiang':"1111,902,803,704,605,506,407,308,209,110",
+							            'Anhui':"1010,909,808,707,606,505,44,303,202,101",
+							            'Fujian':"1098,901,890,789,678,567,456,345,234,123",
+							            'Jiangxi':"1234,987,876,765,654,543,432,321,210,109",
+							            'Shandong':"1672,914,813,712,610,598,467,353,240,112",
+							            'Henan':"1072,923,828,788,667,582,478,336,209,123",
+							            'Hubei':"972,823,728,688,567,482,378,236,109,23",
+							            'Hunan':"672,423,328,288,167,152,137,136,99,63",
+							            'Guangdong':"1272,1123,1028,988,867,782,678,536,409,223",
+							            'Hainan':"1672,1423,1328,1288,1067,982,678,536,409,123",
+							            'Sichuan':"1432,1324,1234,1134,997,885,775,634,515,413",
+							            'Guizhou':"1045,987,876,765,654,543,432,321,213,112",
+							            'Yunnan':"1868,979,828,757,636,525,444,333,222,111",
+							            'Shanxi3':"1983,1794,1619,880,766,554,542,432,321,210",
+							            'Gansu':"1234,987,876,765,654,543,432,321,210,109",
+							            'Qinghai':"1072,923,828,788,667,582,478,336,209,123",
+							            'Neimenggu':"672,423,328,288,167,152,137,136,99,63",
+							            'Guangxi':"972,823,728,688,567,482,378,236,109,23",
+							        }
+							
+							        //Top鍚嶇О鎹㈣鏄剧ず锛宮apTop瀵硅薄涓�煎瓧绗︿覆涓殑閫楀彿鍧囨浛鎹负鎹㈣绗�
+							        for (let city of Object.keys(mapTop)) {
+							            mapTop[city] = mapTop[city].replace(/,/g,'\n\n')
+							        }
+							
+							        for (let city of Object.keys(salesData)) {
+							            salesData[city] = salesData[city].replace(/,/g,'\n\n')
+							        }
+							
+							        //鏍规嵁鍦ㄤ竴绾у湴鍥句笂鐐瑰嚮鐨勫尯鍩焠ame锛岃繑鍥炲搴旂殑娉ㄥ唽鍦板浘name锛宩s鍙橀噺锛孴op鍚嶇О锛孴op閿�閲忔暟鎹�
+							        const getMap = function (mapName){
+							            var cityName = dict[mapName]
+							            if(cityName){
+							                return [cityName, mapData[cityName], mapTop[cityName],salesData[cityName]]
+							            }
+							            // return ['china',China]
+							        }
+							
+							        //鍚勭渷浠介攢閲忔暟鎹�
+							        const data = [
+							        { name: '鍖椾含', value: 3456 },
+							        { name: '澶╂触', value: 2342 },
+							        { name: '涓婃捣', value: 3423 },
+							        { name: '閲嶅簡', value: 1233 },
+							        { name: '瑗胯棌', value: 999},
+							        { name: '瀹佸', value: 888},
+							        { name: '鏂扮枂', value: 567 },
+							        { name: '棣欐腐', value: 345 },
+							        // { name: '婢抽棬', value: 456 },
+							        { name: '娌冲寳', value: 1234 },
+							        { name: '灞辫タ', value: 1355 },
+							        { name: '杈藉畞', value: 2678 },
+							        { name: '鍚夋灄', value: 3523 },
+							        { name: '榛戦緳姹�', value: 2654 },
+							        { name: '姹熻嫃', value: 5463 },
+							        { name: '娴欐睙', value: 7533 },
+							        { name: '瀹夊窘', value: 2342 },
+							        { name: '绂忓缓', value: 3421 },
+							        { name: '姹熻タ', value: 1323 },
+							        { name: '灞变笢', value: 4221 },
+							        { name: '娌冲崡', value: 4324 },
+							        { name: '婀栧寳', value: 3452},
+							        { name: '婀栧崡', value: 2789 },
+							        { name: '骞夸笢', value: 1789 },
+							        { name: '娴峰崡', value: 1252 },
+							        { name: '鍥涘窛', value: 2131 },
+							        { name: '璐靛窞', value: 1765 },
+							        { name: '浜戝崡', value: 1654 },
+							        { name: '闄曡タ', value: 2000 },
+							        { name: '鐢樿們', value: 1298 },
+							        { name: '闈掓捣', value: 1231 },
+							        { name: '鍐呰挋鍙�', value: 899 },
+							        { name: '骞胯タ', value: 1089 },
+							        ];
+							
+							        //鍚勫尯閿�閲忔暟鎹�
+							        const dataDetail = [
+							        { name: '涓滃煄鍖�', value: 123, province:'鍖椾含' },
+							        { name: '瑗垮煄鍖�', value: 456, province:'鍖椾含' },
+							        { name: '鏈濋槼鍖�', value: 543, province:'鍖椾含' },
+							        { name: '涓板彴鍖�', value: 654, province:'鍖椾含' },
+							        { name: '鐭虫櫙灞卞尯', value: 332, province:'鍖椾含' },
+							        { name: '娴锋穩鍖�', value: 265, province:'鍖椾含' },
+							        { name: '闂ㄥご娌熷尯', value: 876, province:'鍖椾含' },
+							        { name: '鎴垮北鍖�', value: 421, province:'鍖椾含' },
+							        { name: '閫氬窞鍖�', value: 234, province:'鍖椾含' },
+							        { name: '椤轰箟鍖�', value: 113, province:'鍖椾含' },
+							        { name: '鏄屽钩鍖�', value: 123, province:'鍖椾含' },
+							        { name: '澶у叴鍖�', value: 123, province:'鍖椾含' },
+							        { name: '鎬�鏌斿尯', value: 342, province:'鍖椾含' },
+							        { name: '骞宠胺鍖�', value: 213, province:'鍖椾含' },
+							        { name: '瀵嗕簯鍖�', value: 132, province:'鍖椾含' },
+							        { name: '寤跺簡鍖�', value: 231, province:'鍖椾含' },
+							        { name: '鍜屽钩鍖�', value: 213, province:'澶╂触' },
+							        { name: '娌充笢鍖�', value: 222, province:'澶╂触' },
+							        { name: '娌宠タ鍖�', value: 155, province:'澶╂触' },
+							        { name: '鍗楀紑鍖�', value: 321, province:'澶╂触' },
+							        { name: '娌冲寳鍖�', value: 123, province:'澶╂触' },
+							        { name: '绾㈡ˉ鍖�', value: 232, province:'澶╂触' },
+							        { name: '涓滀附鍖�', value: 221, province:'澶╂触' },
+							        { name: '瑗块潚鍖�', value: 123, province:'澶╂触' },
+							        { name: '娲ュ崡鍖�', value: 344, province:'澶╂触' },
+							        { name: '鍖楄景鍖�', value:124, province:'澶╂触' },
+							        { name: '姝︽竻鍖�', value:453, province:'澶╂触' },
+							        { name: '瀹濆澔鍖�', value: 123, province:'澶╂触' },
+							        { name: '婊ㄦ捣鏂板尯', value: 98, province:'澶╂触' },
+							        { name: '瀹佹渤鍖�', value: 121, province:'澶╂触' },
+							        { name: '闈欐捣鍖�', value: 212, province:'澶╂触' },
+							        { name: '钃熷窞鍖�', value: 121, province:'澶╂触' },
+							        { name: '榛勬郸鍖�', value: 122, province:'涓婃捣' },
+							        { name: '寰愭眹鍖�', value: 122, province:'涓婃捣' },
+							        { name: '闀垮畞鍖�', value: 22, province:'涓婃捣' },
+							        { name: '闈欏畨鍖�', value: 33, province:'涓婃捣' },
+							        { name: '鏅檧鍖�', value: 44, province:'涓婃捣' },
+							        { name: '铏瑰彛鍖�', value: 55, province:'涓婃捣' },
+							        { name: '鏉ㄦ郸鍖�', value: 66, province:'涓婃捣' },
+							        { name: '闂佃鍖�', value: 77, province:'涓婃捣' },
+							        { name: '瀹濆北鍖�', value: 88, province:'涓婃捣' },
+							        { name: '鍢夊畾鍖�', value: 99, province:'涓婃捣' },
+							        { name: '娴︿笢鏂板尯', value: 632, province:'涓婃捣' },
+							        { name: '閲戝北鍖�', value: 222, province:'涓婃捣' },
+							        { name: '鏉炬睙鍖�', value: 122, province:'涓婃捣' },
+							        { name: '闈掓郸鍖�', value: 121, province:'涓婃捣' },
+							        { name: '濂夎搐鍖�', value: 211, province:'涓婃捣' },
+							        { name: '宕囨槑鍖�', value: 212, province:'涓婃捣' },
+							        { name: '涓囧窞鍖�', value: 12, province:'閲嶅簡' },
+							        { name: '娑櫟鍖�', value: 13, province:'閲嶅簡' },
+							        { name: '娓濅腑鍖�', value: 14, province:'閲嶅簡' },
+							        { name: '姹熷寳鍖�', value: 15, province:'閲嶅簡' },
+							        { name: '娌欏潽鍧濆尯', value: 16, province:'閲嶅簡' },
+							        { name: '涔濋緳鍧″尯', value: 17, province:'閲嶅簡' },
+							        { name: '鍗楀哺鍖�', value: 18, province:'閲嶅簡' },
+							        { name: '鍖楃鍖�', value: 19, province:'閲嶅簡' },
+							        { name: '缍︽睙鍖�', value: 20, province:'閲嶅簡' },
+							        { name: '澶ц冻鍖�', value: 21, province:'閲嶅簡' },
+							        { name: '娓濆寳鍖�', value: 22, province:'閲嶅簡' },
+							        { name: '闀垮鍖�', value: 23, province:'閲嶅簡' },
+							        { name: '姹熸触鍖�', value: 24, province:'閲嶅簡' },
+							        { name: '鍚堝窛鍖�', value: 25, province:'閲嶅簡' },
+							        { name: '姘稿窛鍖�', value: 26, province:'閲嶅簡' },
+							        { name: '鍗楀窛鍖�', value: 27, province:'閲嶅簡' },
+							        { name: '鐠у北鍖�', value: 28, province:'閲嶅簡' },
+							        { name: '閾滄鍖�', value: 29, province:'閲嶅簡' },
+							        { name: '娼煎崡鍖�', value: 30, province:'閲嶅簡' },
+							        { name: '鑽f槍鍖�', value: 31, province:'閲嶅簡' },
+							        { name: '寮�宸炲尯', value: 32, province:'閲嶅簡' },
+							        { name: '姊佸钩鍖�', value: 23, province:'閲嶅簡' },
+							        { name: '姝﹂殕鍖�', value: 43, province:'閲嶅簡' },
+							        { name: '鍩庡彛鍘�', value: 32, province:'閲嶅簡' },
+							        { name: '涓伴兘鍘�', value: 33, province:'閲嶅簡' },
+							        { name: '鍨睙鍘�', value: 34, province:'閲嶅簡' },
+							        { name: '蹇犲幙', value: 25, province:'閲嶅簡' },
+							        { name: '浜戦槼鍘�', value: 21, province:'閲嶅簡' },
+							        { name: '濂夎妭鍘�', value: 22, province:'閲嶅簡' },
+							        { name: '宸北鍘�', value: 33, province:'閲嶅簡' },
+							        { name: '宸邯鍘�', value: 44, province:'閲嶅簡' },
+							        { name: '鐭虫煴鍦熷鏃忚嚜娌诲幙', value: 12, province:'閲嶅簡' },
+							        { name: '绉�灞卞湡瀹舵棌鑻楁棌鑷不鍘�', value: 13, province:'閲嶅簡' },
+							        { name: '閰夐槼鍦熷鏃忚嫍鏃忚嚜娌诲幙', value: 13, province:'閲嶅簡' },
+							        { name: '褰按鑻楁棌鍦熷鏃忚嚜娌诲幙', value: 15, province:'閲嶅簡' },
+							        { name: '鎷夎惃甯�', value: 123, province:'瑗胯棌' },
+							        { name: '鏃ュ杸鍒欏競', value: 213, province:'瑗胯棌' },
+							        { name: '鏄岄兘甯�', value:123, province:'瑗胯棌' },
+							        { name: '鏋楄姖甯�', value: 122, province:'瑗胯棌' },
+							        { name: '灞卞崡甯�', value: 212, province:'瑗胯棌' },
+							        { name: '閭f洸甯�', value: 112, province:'瑗胯棌' },
+							        { name: '闃块噷灞卞湴鍖�', value: 114, province:'瑗胯棌' },
+							        { name: '閾跺窛甯�', value:213, province:'瀹佸' },
+							        { name: '鐭冲槾灞卞競', value: 78, province:'瀹佸' },
+							        { name: '鍚村繝甯�', value: 76, province:'瀹佸' },
+							        { name: '鍥哄師甯�', value: 66, province:'瀹佸' },
+							        { name: '涓崼甯�', value: 44, province:'瀹佸' },
+							        { name: '涔岄瞾鏈ㄩ綈甯�', value: 12, province:'鏂扮枂' },
+							        { name: '鍏嬫媺鐜涗緷甯�', value: 21, province:'鏂扮枂' },
+							        { name: '鍚愰瞾鐣競', value: 22, province:'鏂扮枂' },
+							        { name: '鍝堝瘑甯�', value: 44, province:'鏂扮枂' },
+							        { name: '鏄屽悏鍥炴棌鑷不宸�', value: 34, province:'鏂扮枂' },
+							        { name: '鍗氬皵濉旀媺钂欏彜鑷不宸�', value:24 , province:'鏂扮枂' },
+							        { name: '闃垮厠鑻忓湴鍖�', value: 21, province:'鏂扮枂' },
+							        { name: '鍏嬪瓬鍕掕嫃鏌皵鍏嬪瓬鑷不宸�', value: 12, province:'鏂扮枂' },
+							        { name: '鍠�浠�鍦板尯', value: 33, province:'鏂扮枂' },
+							        { name: '鍜岀敯鍦板尯', value: 13, province:'鏂扮枂' },
+							        { name: '浼婄妬鍝堣惃鍏嬭嚜娌诲窞', value: 23, province:'鏂扮枂' },
+							        { name: '濉斿煄鍦板尯', value: 65, province:'鏂扮枂' },
+							        { name: '闃垮嫆娉板湴鍖�', value: 99, province:'鏂扮枂' },
+							        { name: '鐭虫渤瀛愬競', value: 88, province:'鏂扮枂' },
+							        { name: '闃挎媺灏斿競', value: 77, province:'鏂扮枂' },
+							        { name: '鍥炬湪鑸掑厠甯�', value: 55, province:'鏂扮枂' },
+							        { name: '浜斿娓犲競', value: 66, province:'鏂扮枂' },
+							        { name: '鍖楀悲甯�', value: 44, province:'鏂扮枂' },
+							        { name: '閾侀棬鍏冲競', value: 33, province:'鏂扮枂' },
+							        { name: '鍙屾渤甯�', value: 11, province:'鏂扮枂' },
+							        { name: '鍙厠杈炬媺甯�', value: 22, province:'鏂扮枂' },
+							        { name: '鏄嗙帀甯�', value: 12, province:'鏂扮枂' },
+							        { name: '鑳℃潹娌冲競', value: 21, province:'鏂扮枂' },
+							        { name: '涓タ鍖�', value: 11, province:'棣欐腐' },
+							        { name: '婀句粩鍖�', value: 12, province:'棣欐腐' },
+							        { name: '涓滃尯', value: 13, province:'棣欐腐' },
+							        { name: '鍗楀尯', value: 14, province:'棣欐腐' },
+							        { name: '娌瑰皷鏃哄尯', value: 15, province:'棣欐腐' },
+							        { name: '娣辨按鍩楀尯', value: 16, province:'棣欐腐' },
+							        { name: '涔濋緳鍩庡尯', value: 17, province:'棣欐腐' },
+							        { name: '榛勫ぇ浠欏尯', value: 18, province:'棣欐腐' },
+							        { name: '瑙傚鍖�', value: 19, province:'棣欐腐' },
+							        { name: '鑽冩咕鍖�', value: 21, province:'棣欐腐' },
+							        { name: '灞棬鍖�', value: 22, province:'棣欐腐' },
+							        { name: '鍏冩湕鍖�', value: 23, province:'棣欐腐' },
+							        { name: '鍖楀尯', value: 24, province:'棣欐腐' },
+							        { name: '澶у煍鍖�', value: 25, province:'棣欐腐' },
+							        { name: '瑗胯础鍖�', value: 26, province:'棣欐腐' },
+							        { name: '娌欑敯鍖�', value: 27, province:'棣欐腐' },
+							        { name: '钁甸潚鍖�', value: 28, province:'棣欐腐' },
+							        { name: '绂诲矝鍖�', value: 29, province:'棣欐腐' },
+							        { name: '鐭冲搴勫競', value: 22, province:'娌冲寳' },
+							        { name: '鍞愬北甯�', value: 32, province:'娌冲寳' },
+							        { name: '绉︾殗宀涘競', value: 24, province:'娌冲寳' },
+							        { name: '閭兏甯�', value: 12, province:'娌冲寳' },
+							        { name: '閭㈠彴甯�', value: 21, province:'娌冲寳' },
+							        { name: '淇濆畾甯�', value: 21, province:'娌冲寳' },
+							        { name: '寮犲鍙e競', value: 34, province:'娌冲寳' },
+							        { name: '鎵垮痉甯�', value: 12, province:'娌冲寳' },
+							        { name: '娌у窞甯�', value: 22, province:'娌冲寳' },
+							        { name: '寤婂潑甯�', value: 12, province:'娌冲寳' },
+							        { name: '琛℃按甯�', value: 23, province:'娌冲寳' },
+							        { name: '澶師甯�', value: 21, province:'灞辫タ' },
+							        { name: '澶у悓甯�', value: 43, province:'灞辫タ' },
+							        { name: '闃虫硥甯�', value: 12, province:'灞辫タ' },
+							        { name: '闀挎不甯�', value: 23, province:'灞辫タ' },
+							        { name: '鏅嬪煄甯�', value: 33, province:'灞辫タ' },
+							        { name: '鏈斿窞甯�', value: 22, province:'灞辫タ' },
+							        { name: '鏅嬩腑甯�', value: 21, province:'灞辫タ' },
+							        { name: '杩愬煄甯�', value: 12, province:'灞辫タ' },
+							        { name: '蹇诲窞甯�', value: 22, province:'灞辫タ' },
+							        { name: '涓存本甯�', value: 11, province:'灞辫タ' },
+							        { name: '鍚曟甯�', value: 22, province:'灞辫タ' },
+							        { name: '娌堥槼甯�', value: 123, province:'杈藉畞' },
+							        { name: '澶ц繛甯�', value: 12, province:'杈藉畞' },
+							        { name: '闉嶅北甯�', value: 13, province:'杈藉畞' },
+							        { name: '鎶氶『甯�', value: 23, province:'杈藉畞' },
+							        { name: '鏈邯甯�', value: 43, province:'杈藉畞' },
+							        { name: '涓逛笢甯�', value: 53, province:'杈藉畞' },
+							        { name: '閿﹀窞甯�', value: 246, province:'杈藉畞' },
+							        { name: '钀ュ彛甯�', value: 64, province:'杈藉畞' },
+							        { name: '闃滄柊甯�', value: 34, province:'杈藉畞' },
+							        { name: '杈介槼甯�', value: 245, province:'杈藉畞' },
+							        { name: '鐩橀敠甯�', value: 54, province:'杈藉畞' },
+							        { name: '閾佸箔甯�', value: 45, province:'杈藉畞' },
+							        { name: '鏈濋槼甯�', value: 45, province:'杈藉畞' },
+							        { name: '钁姦宀涘競', value: 32, province:'杈藉畞' },
+							        { name: '闀挎槬甯�', value: 31, province:'鍚夋灄' },
+							        { name: '鍚夋灄甯�', value: 21, province:'鍚夋灄' },
+							        { name: '鍥涘钩甯�', value: 22, province:'鍚夋灄' },
+							        { name: '杈芥簮甯�', value: 42, province:'鍚夋灄' },
+							        { name: '閫氬寲甯�', value: 42, province:'鍚夋灄' },
+							        { name: '鐧藉北甯�', value: 32, province:'鍚夋灄' },
+							        { name: '鏉惧師甯�', value: 41, province:'鍚夋灄' },
+							        { name: '鐧藉煄甯�', value: 53, province:'鍚夋灄' },
+							        { name: '寤惰竟鏈濋矞鏃忚嚜娌诲窞', value: 43, province:'鍚夋灄' },
+							        { name: '鍝堝皵婊ㄥ競', value: 23, province:'榛戦緳姹�' },
+							        { name: '榻愰綈鍝堝皵甯�', value: 21, province:'榛戦緳姹�' },
+							        { name: '楦¤タ甯�', value: 23, province:'榛戦緳姹�' },
+							        { name: '楣ゅ矖甯�', value: 32, province:'榛戦緳姹�' },
+							        { name: '鍙岄腑灞卞競', value: 12, province:'榛戦緳姹�' },
+							        { name: '澶у簡甯�', value: 42, province:'榛戦緳姹�' },
+							        { name: '浼婃槬甯�', value: 22, province:'榛戦緳姹�' },
+							        { name: '浣虫湪鏂競', value: 34, province:'榛戦緳姹�' },
+							        { name: '涓冨彴娌冲競', value: 22, province:'榛戦緳姹�' },
+							        { name: '鐗′腹姹熷競', value: 44, province:'榛戦緳姹�' },
+							        { name: '榛戞渤甯�', value: 12, province:'榛戦緳姹�' },
+							        { name: '缁ュ寲甯�', value: 32, province:'榛戦緳姹�' },
+							        { name: '澶у叴瀹夊箔甯�', value: 24, province:'榛戦緳姹�' },
+							        { name: '鍗椾含甯�', value: 23, province:'姹熻嫃' },
+							        { name: '鏃犻敗甯�', value: 12, province:'姹熻嫃' },
+							        { name: '寰愬窞甯�', value: 34, province:'姹熻嫃' },
+							        { name: '甯稿窞甯�', value: 324, province:'姹熻嫃' },
+							        { name: '鑻忓窞甯�', value: 123, province:'姹熻嫃' },
+							        { name: '鍗楅�氬競', value: 23, province:'姹熻嫃' },
+							        { name: '杩炰簯娓競', value: 31, province:'姹熻嫃' },
+							        { name: '娣畨甯�', value: 312, province:'姹熻嫃' },
+							        { name: '鐩愬煄甯�', value: 213, province:'姹熻嫃' },
+							        { name: '鎵窞甯�', value: 23, province:'姹熻嫃' },
+							        { name: '闀囨睙甯�', value: 34, province:'姹熻嫃' },
+							        { name: '娉板窞甯�', value: 21, province:'姹熻嫃' },
+							        { name: '瀹胯縼甯�', value: 34, province:'姹熻嫃' },
+							        { name: '鏉窞甯�', value: 56, province:'娴欐睙' },
+							        { name: '瀹佹尝甯�', value: 24, province:'娴欐睙' },
+							        { name: '娓╁窞甯�', value: 53, province:'娴欐睙' },
+							        { name: '鍢夊叴甯�', value: 54, province:'娴欐睙' },
+							        { name: '婀栧窞甯�', value: 67, province:'娴欐睙' },
+							        { name: '缁嶅叴甯�', value: 234, province:'娴欐睙' },
+							        { name: '閲戝崕甯�', value: 53, province:'娴欐睙' },
+							        { name: '琛㈠窞甯�', value: 546, province:'娴欐睙' },
+							        { name: '鑸熷北甯�', value: 223, province:'娴欐睙' },
+							        { name: '鍙板窞甯�', value: 123, province:'娴欐睙' },
+							        { name: '涓芥按甯�', value: 34, province:'娴欐睙' },
+							        { name: '鍚堣偉甯�', value: 43, province:'瀹夊窘' },
+							        { name: '鑺滄箹甯�', value: 34, province:'瀹夊窘' },
+							        { name: '铓屽煚甯�', value: 45, province:'瀹夊窘' },
+							        { name: '娣崡甯�', value: 54, province:'瀹夊窘' },
+							        { name: '椹瀺灞卞競', value: 334, province:'瀹夊窘' },
+							        { name: '娣寳甯�', value: 45, province:'瀹夊窘' },
+							        { name: '閾滈櫟甯�', value: 56, province:'瀹夊窘' },
+							        { name: '瀹夊簡甯�', value: 67, province:'瀹夊窘' },
+							        { name: '榛勫北甯�', value: 76, province:'瀹夊窘' },
+							        { name: '婊佸窞甯�', value: 67, province:'瀹夊窘' },
+							        { name: '闃滈槼甯�', value: 44, province:'瀹夊窘' },
+							        { name: '瀹垮窞甯�', value: 56, province:'瀹夊窘' },
+							        { name: '鍏畨甯�', value: 34, province:'瀹夊窘' },
+							        { name: '姣窞甯�', value: 76, province:'瀹夊窘' },
+							        { name: '姹犲窞甯�', value: 78, province:'瀹夊窘' },
+							        { name: '瀹e煄甯�', value: 78, province:'瀹夊窘' },
+							        { name: '绂忓窞甯�', value: 34, province:'绂忓缓' },
+							        { name: '鍘﹂棬甯�', value: 23, province:'绂忓缓' },
+							        { name: '鑾嗙敯甯�', value: 445, province:'绂忓缓' },
+							        { name: '涓夋槑甯�', value: 23, province:'绂忓缓' },
+							        { name: '娉夊窞甯�', value: 23, province:'绂忓缓' },
+							        { name: '婕冲窞甯�', value: 12, province:'绂忓缓' },
+							        { name: '鍗楀钩甯�', value: 45, province:'绂忓缓' },
+							        { name: '榫欏博甯�', value: 56, province:'绂忓缓' },
+							        { name: '瀹佸痉甯�', value: 75, province:'绂忓缓' },
+							        { name: '鍗楁槍甯�', value: 23, province:'姹熻タ' },
+							        { name: '鏅痉闀囧競', value: 323, province:'姹熻タ' },
+							        { name: '钀嶄埂甯�', value: 34, province:'姹熻タ' },
+							        { name: '涔濇睙甯�', value: 45, province:'姹熻タ' },
+							        { name: '鏂颁綑甯�', value: 45, province:'姹熻タ' },
+							        { name: '楣版江甯�', value: 56, province:'姹熻タ' },
+							        { name: '璧e窞甯�', value: 56, province:'姹熻タ' },
+							        { name: '鍚夊畨甯�', value: 76, province:'姹熻タ' },
+							        { name: '瀹滄槬甯�', value: 56, province:'姹熻タ' },
+							        { name: '鎶氬窞甯�', value: 67, province:'姹熻タ' },
+							        { name: '涓婇ザ甯�', value: 67, province:'姹熻タ' },
+							        { name: '娴庡崡甯�', value: 43, province:'灞变笢' },
+							        { name: '闈掑矝甯�', value: 243, province:'灞变笢' },
+							        { name: '娣勫崥甯�', value: 324, province:'灞变笢' },
+							        { name: '鏋e簞甯�', value: 454, province:'灞变笢' },
+							        { name: '涓滆惀甯�', value: 45, province:'灞变笢' },
+							        { name: '鐑熷彴甯�', value: 45, province:'灞变笢' },
+							        { name: '娼嶅潑甯�', value: 2, province:'灞变笢' },
+							        { name: '娴庡畞甯�', value: 23, province:'灞变笢' },
+							        { name: '娉板畨甯�', value: 12, province:'灞变笢' },
+							        { name: '濞佹捣甯�', value: 4, province:'灞变笢' },
+							        { name: '鏃ョ収甯�', value: 454, province:'灞变笢' },
+							        { name: '涓存矀甯�', value: 56, province:'灞变笢' },
+							        { name: '寰峰窞甯�', value: 23, province:'灞变笢' },
+							        { name: '鑱婂煄甯�', value: 12, province:'灞变笢' },
+							        { name: '婊ㄥ窞甯�', value: 12, province:'灞变笢' },
+							        { name: '鑿忔辰甯�', value: 12, province:'灞变笢' },
+							        { name: '閮戝窞甯�', value: 34, province:'娌冲崡' },
+							        { name: '寮�灏佸競', value: 34, province:'娌冲崡' },
+							        { name: '娲涢槼甯�', value: 354, province:'娌冲崡' },
+							        { name: '骞抽《灞卞競', value: 465, province:'娌冲崡' },
+							        { name: '瀹夐槼甯�', value: 122, province:'娌冲崡' },
+							        { name: '楣ゅ甯�', value: 12, province:'娌冲崡' },
+							        { name: '鏂颁埂甯�', value: 12, province:'娌冲崡' },
+							        { name: '鐒︿綔甯�', value: 23, province:'娌冲崡' },
+							        { name: '婵槼甯�', value: 24, province:'娌冲崡' },
+							        { name: '璁告槍甯�', value: 45, province:'娌冲崡' },
+							        { name: '婕渤甯�', value: 45, province:'娌冲崡' },
+							        { name: '涓夐棬宄″競', value: 56, province:'娌冲崡' },
+							        { name: '鍗楅槼甯�', value: 645, province:'娌冲崡' },
+							        { name: '淇¢槼甯�', value: 65, province:'娌冲崡' },
+							        { name: '鍛ㄥ彛甯�', value: 565, province:'娌冲崡' },
+							        { name: '椹婚┈搴楀競', value: 56, province:'娌冲崡' },
+							        { name: '娴庢簮甯�', value: 34, province:'娌冲崡' },
+							        { name: '姝︽眽甯�', value: 76, province:'婀栧寳' },
+							        { name: '榛勭煶甯�', value: 8, province:'婀栧寳' },
+							        { name: '鍗佸牥甯�', value: 34, province:'婀栧寳' },
+							        { name: '瀹滄槍甯�', value: 45, province:'婀栧寳' },
+							        { name: '瑗勯槼甯�', value: 23, province:'婀栧寳' },
+							        { name: '閯傚窞甯�', value: 45, province:'婀栧寳' },
+							        { name: '鑽嗛棬甯�', value: 45, province:'婀栧寳' },
+							        { name: '榛勫唸甯�', value: 45, province:'婀栧寳' },
+							        { name: '鍜稿畞甯�', value: 76, province:'婀栧寳' },
+							        { name: '闅忓窞甯�', value: 645, province:'婀栧寳' },
+							        { name: '鎭╂柦鍦熷鏃忚嫍鏃忚嚜娌诲窞', value: 67, province:'婀栧寳' },
+							        { name: '浠欐甯�', value: 56, province:'婀栧寳' },
+							        { name: '娼滄睙甯�', value: 546, province:'婀栧寳' },
+							        { name: '澶╅棬甯�', value: 456, province:'婀栧寳' },
+							        { name: '绁炲啘鏋舵灄鍖�', value: 6, province:'婀栧寳' },
+							        { name: '闀挎矙甯�', value: 34, province:'婀栧崡' },
+							        { name: '鏍床甯�', value: 35, province:'婀栧崡' },
+							        { name: '婀樻江甯�', value: 657, province:'婀栧崡' },
+							        { name: '琛¢槼甯�', value: 45, province:'婀栧崡' },
+							        { name: '閭甸槼甯�', value: 34, province:'婀栧崡' },
+							        { name: '宀抽槼甯�', value: 234, province:'婀栧崡' },
+							        { name: '甯稿痉甯�', value: 6, province:'婀栧崡' },
+							        { name: '寮犲鐣屽競', value: 56, province:'婀栧崡' },
+							        { name: '鐩婇槼甯�', value: 76, province:'婀栧崡' },
+							        { name: '閮村窞甯�', value: 23, province:'婀栧崡' },
+							        { name: '姘稿窞甯�', value: 463, province:'婀栧崡' },
+							        { name: '鎬�鍖栧競', value: 56, province:'婀栧崡' },
+							        { name: '濞勫簳甯�', value: 46, province:'婀栧崡' },
+							        { name: '婀樿タ鍦熷鏃忚嫍鏃忚嚜娌诲窞', value: 34, province:'婀栧崡' },
+							        { name: '骞垮窞甯�', value: 54, province:'骞夸笢' },
+							        { name: '闊跺叧甯�', value: 34, province:'骞夸笢' },
+							        { name: '娣卞湷甯�', value: 234, province:'骞夸笢' },
+							        { name: '鐝犳捣甯�', value: 65, province:'骞夸笢' },
+							        { name: '姹曞ご甯�', value: 67, province:'骞夸笢' },
+							        { name: '浣涘北甯�', value: 98, province:'骞夸笢' },
+							        { name: '姹熼棬甯�', value: 45, province:'骞夸笢' },
+							        { name: '婀涙睙甯�', value: 34, province:'骞夸笢' },
+							        { name: '鑼傚悕甯�', value: 54, province:'骞夸笢' },
+							        { name: '鑲囧簡甯�', value: 67, province:'骞夸笢' },
+							        { name: '鎯犲窞甯�', value: 78, province:'骞夸笢' },
+							        { name: '姊呭窞甯�', value: 23, province:'骞夸笢' },
+							        { name: '姹曞熬甯�', value: 43, province:'骞夸笢' },
+							        { name: '娌虫簮甯�', value: 56, province:'骞夸笢' },
+							        { name: '闃虫睙甯�', value: 23, province:'骞夸笢' },
+							        { name: '娓呰繙甯�', value: 34, province:'骞夸笢' },
+							        { name: '涓滆帪甯�', value: 54, province:'骞夸笢' },
+							        { name: '涓北甯�', value: 4, province:'骞夸笢' },
+							        { name: '娼窞甯�', value: 3, province:'骞夸笢' },
+							        { name: '鎻槼甯�', value: 56, province:'骞夸笢' },
+							        { name: '浜戞诞甯�', value: 47, province:'骞夸笢' },
+							        { name: '娴峰彛甯�', value: 45, province:'娴峰崡' },
+							        { name: '鎴愰兘甯�', value: 234, province:'鍥涘窛' },
+							        { name: '鑷础甯�', value: 63, province:'鍥涘窛' },
+							        { name: '鏀�鏋濊姳甯�', value: 24, province:'鍥涘窛' },
+							        { name: '娉稿窞甯�', value: 234, province:'鍥涘窛' },
+							        { name: '寰烽槼甯�', value: 245, province:'鍥涘窛' },
+							        { name: '缁甸槼甯�', value: 452, province:'鍥涘窛' },
+							        { name: '骞垮厓甯�', value: 43, province:'鍥涘窛' },
+							        { name: '閬傚畞甯�', value: 34, province:'鍥涘窛' },
+							        { name: '鍐呮睙甯�', value: 342, province:'鍥涘窛' },
+							        { name: '涔愬北甯�', value: 24, province:'鍥涘窛' },
+							        { name: '鍗楀厖甯�', value: 43, province:'鍥涘窛' },
+							        { name: '鐪夊北甯�', value: 34, province:'鍥涘窛' },
+							        { name: '瀹滃甯�', value: 123, province:'鍥涘窛' },
+							        { name: '骞垮畨甯�', value: 12, province:'鍥涘窛' },
+							        { name: '杈惧窞甯�', value: 21, province:'鍥涘窛' },
+							        { name: '闆呭畨甯�', value: 34, province:'鍥涘窛' },
+							        { name: '宸翠腑甯�', value: 56, province:'鍥涘窛' },
+							        { name: '璧勯槼甯�', value: 78, province:'鍥涘窛' },
+							        { name: '闃垮潩钘忔棌缇屾棌鑷不宸�', value: 536, province:'鍥涘窛' },
+							        { name: '鐢樺瓬钘忔棌鑷不宸�', value: 44, province:'鍥涘窛' },
+							        { name: '鍑夊北褰濇棌鑷不宸�', value: 34, province:'鍥涘窛' },
+							        { name: '璐甸槼甯�', value: 23, province:'璐靛窞' },
+							        { name: '鍏洏姘村競', value: 34, province:'璐靛窞' },
+							        { name: '閬典箟甯�', value: 45, province:'璐靛窞' },
+							        { name: '瀹夐『甯�', value: 56, province:'璐靛窞' },
+							        { name: '姣曡妭甯�', value: 6, province:'璐靛窞' },
+							        { name: '閾滀粊甯�', value: 45, province:'璐靛窞' },
+							        { name: '榛旇タ鍗楀竷渚濇棌鑻楁棌鑷不宸�', value: 36, province:'璐靛窞' },
+							        { name: '榛斾笢鍗楄嫍鏃忎緱鏃忚嚜娌诲窞', value: 35, province:'璐靛窞' },
+							        { name: '瑗垮畨甯�', value: 36, province:'闄曡タ' },
+							        { name: '閾滃窛甯�', value: 234, province:'闄曡タ' },
+							        { name: '瀹濋浮甯�', value: 56, province:'闄曡タ' },
+							        { name: '閾滃窛甯�', value: 346, province:'闄曡タ' },
+							        { name: '瀹濋浮甯�', value: 354, province:'闄曡タ' },
+							        { name: '鍜搁槼甯�', value: 45, province:'闄曡タ' },
+							        { name: '娓崡甯�', value: 45, province:'闄曡タ' },
+							        { name: '寤跺畨甯�', value: 5, province:'闄曡タ' },
+							        { name: '姹変腑甯�', value: 54, province:'闄曡タ' },
+							        { name: '姒嗘灄甯�', value: 342, province:'闄曡タ' },
+							        { name: '瀹夊悍甯�', value: 6, province:'闄曡タ' },
+							        { name: '鍟嗘礇甯�', value: 6, province:'闄曡タ' },
+							        { name: '鍏板窞甯�', value: 6, province:'鐢樿們' },
+							        { name: '鍢夊唱鍏冲競', value: 5, province:'鐢樿們' },
+							        { name: '閲戞槍甯�', value: 431, province:'鐢樿們' },
+							        { name: '鐧介摱甯�', value: 243, province:'鐢樿們' },
+							        { name: '澶╂按甯�', value: 423, province:'鐢樿們' },
+							        { name: '姝﹀▉甯�', value: 123, province:'鐢樿們' },
+							        { name: '寮犳帠甯�', value: 43, province:'鐢樿們' },
+							        { name: '骞冲噳甯�', value: 32, province:'鐢樿們' },
+							        { name: '閰掓硥甯�', value: 32, province:'鐢樿們' },
+							        { name: '搴嗛槼甯�', value: 54, province:'鐢樿們' },
+							        { name: '瀹氳タ甯�', value: 64, province:'鐢樿們' },
+							        { name: '闄囧崡甯�', value: 34, province:'鐢樿們' },
+							        { name: '涓村鍥炴棌鑷不宸�', value: 34, province:'鐢樿們' },
+							        { name: '鐢樺崡钘忔棌鑷不宸�', value: 23, province:'鐢樿們' },
+							        { name: '瑗垮畞甯�', value: 43, province:'闈掓捣' },
+							        { name: '娴蜂笢甯�', value: 54, province:'闈掓捣' },
+							        { name: '娴峰寳钘忔棌鑷不宸�', value: 34, province:'闈掓捣' },
+							        { name: '榛勫崡钘忔棌鑷不宸�', value: 23, province:'闈掓捣' },
+							        { name: '娴峰崡钘忔棌鑷不宸�', value: 54, province:'闈掓捣' },
+							        { name: '鏋滄礇钘忔棌鑷不宸�', value: 54, province:'闈掓捣' },
+							        { name: '鐜夋爲钘忔棌鑷不宸�', value: 67, province:'闈掓捣' },
+							        { name: '娴疯タ钂欏彜鏃忚棌鏃忚嚜娌诲窞', value: 54, province:'闈掓捣' },
+							        { name: '鍛煎拰娴╃壒甯�', value: 34, province:'鍐呰挋鍙�' },
+							        { name: '鍖呭ご甯�', value: 56, province:'鍐呰挋鍙�' },
+							        { name: '璧ゅ嘲甯�', value: 78, province:'鍐呰挋鍙�' },
+							        { name: '閫氳窘甯�', value: 78, province:'鍐呰挋鍙�' },
+							        { name: '閯傚皵澶氭柉甯�', value: 46, province:'鍐呰挋鍙�' },
+							        { name: '鍛间鸡璐濆皵甯�', value:67 , province:'鍐呰挋鍙�' },
+							        { name: '宸村溅娣栧皵甯�', value: 35, province:'鍐呰挋鍙�' },
+							        { name: '涔屽叞瀵熷竷甯�', value: 35, province:'鍐呰挋鍙�' },
+							        { name: '鍏村畨鐩�', value: 4, province:'鍐呰挋鍙�' },
+							        { name: '閿℃灄閮嫆鐩�', value: 4, province:'鍐呰挋鍙�' },
+							        { name: '闃挎媺鍠勭洘', value: 56, province:'鍐呰挋鍙�' },
+							        { name: '鏄嗘槑甯�', value: 56, province:'浜戝崡' },
+							        { name: '鏇查潠甯�', value: 56, province:'浜戝崡' },
+							        { name: '鐜夋邯甯�', value: 43, province:'浜戝崡' },
+							        { name: '淇濆北甯�', value: 67, province:'浜戝崡' },
+							        { name: '鏄�氬競', value: 78, province:'浜戝崡' },
+							        { name: '涓芥睙甯�', value: 34, province:'浜戝崡' },
+							        { name: '鏅幢甯�', value: 8, province:'浜戝崡' },
+							        { name: '涓存钵甯�', value: 89, province:'浜戝崡' },
+							        { name: '妤氶泟褰濇棌鑷不宸�', value: 34, province:'浜戝崡' },
+							        { name: '绾㈡渤鍝堝凹鏃忓綕鏃忚嚜娌诲窞', value: 34, province:'浜戝崡' },
+							        { name: '鏂囧北澹棌鑻楁棌鑷不宸�', value: 23, province:'浜戝崡' },
+							        { name: '瑗垮弻鐗堢撼鍌f棌鑷不宸�', value: 23, province:'浜戝崡' },
+							        { name: '澶х悊鐧芥棌鑷不宸�', value: 5, province:'浜戝崡' },
+							        { name: '寰峰畯鍌f棌鏅鑷不宸�', value: 34, province:'浜戝崡' },
+							        { name: '鎬掓睙鍌堝兂鏃忚嚜娌诲窞', value: 34, province:'浜戝崡' },
+							        { name: '杩簡钘忔棌鑷不宸�', value: 23, province:'浜戝崡' },
+							        { name: '鍗楀畞甯�', value: 23, province:'骞胯タ' },
+							        { name: '鏌冲窞甯�', value: 23, province:'骞胯タ' },
+							        { name: '妗傛灄甯�', value: 54, province:'骞胯タ' },
+							        { name: '姊у窞甯�', value: 54, province:'骞胯タ' },
+							        { name: '鍖楁捣甯�', value: 6, province:'骞胯タ' },
+							        { name: '闃插煄娓競', value: 57, province:'骞胯タ' },
+							        { name: '閽﹀窞甯�', value: 46, province:'骞胯タ' },
+							        { name: '璐垫腐甯�', value: 243, province:'骞胯タ' },
+							        { name: '鐜夋灄甯�', value: 24, province:'骞胯タ' },
+							        { name: '鐧捐壊甯�', value: 67, province:'骞胯タ' },
+							        { name: '璐哄窞甯�', value: 34, province:'骞胯タ' },
+							        { name: '娌虫睜甯�', value: 67, province:'骞胯タ' },
+							        { name: '鏉ュ甯�', value: 4, province:'骞胯タ' },
+							        { name: '宕囧乏甯�', value: 34, province:'骞胯タ' },
+							        ];
+									
+									//鍙栧悇鍖哄煙鐨勪腑蹇冨潗鏍囧瓨鍒癵eoCoorMap涓�
+									let geoCoordMap = {};
+									const getGeo = function (areaName) {
+										for (let i = 0; i < areaName.features.length; i++) {
+											geoCoordMap[areaName.features[i].properties.name] = areaName.features[i].properties.center;
+										}
+										return geoCoordMap;
+									};
+									
+									getGeo(China);
+									for (let city of Object.keys(mapData)) {
+										getGeo(mapData[city]);
+									}
+							
+							        //鍏ㄥ浗閿�閲忔暟鎹浆鎹㈡柟娉�
+							        const convertData = function (data) {
+							            var res = [];
+							            for (var i = 0; i < data.length; i++) {
+							                var geoCoord = geoCoordMap[data[i].name];
+							                if (geoCoord) {
+							                    res.push({
+							                        name: data[i].name,
+							                        value: geoCoord.concat(data[i].value)
+							                    });
+							                }
+							                // console.log(data)
+							                // console.log(res)
+							            }
+							            return res;
+							        };
+							
+							        //鍚勫尯閿�閲忔暟鎹浆鎹㈡柟娉�
+							        const convertDetail = function (data, provinceName) {
+							            var res = [];
+							            for (var i = 0; i < data.length; i++) {
+							                if(provinceName == data[i].province){
+							                    var geoCoord = geoCoordMap[data[i].name];
+							                    if (geoCoord) {
+							                        res.push({
+							                            name: data[i].name,
+							                            value: geoCoord.concat(data[i].value)
+							                        });
+							                    }
+							                }
+							                // console.log(data)
+							                // console.log(res)
+							            }
+							            return res;
+							        };
+							
+							        //鍒濆option锛屽嵆China option
+							        var salesOption = {
+							            // 鑳屾櫙棰滆壊
+							            backgroundColor: "",
+							            graphic:[
+							                {
+							                    type:'text',
+							                    left:'65%',
+							                    top:'15%',
+							                    style:{
+							                        text:'鍏ㄥ浗閿�閲廡op10:',
+							                        font: 'bolder 16px "Microsoft YaHei", sans-serif',
+							                        // 瀛椾綋棰滆壊
+							                        fill: "black"
+							                    }
+							                },
+							                {
+							                    // 姘村嵃绫诲瀷
+							                    type: 'text',
+							                    // 鐩稿浜庡鍣ㄧ殑浣嶇疆
+							                    left:'65%',
+							                    top: '23%',
+							                    // 鏍峰紡璁剧疆
+							                    style: {
+							                        // 鏂囨湰鍐呭
+							                        text: "鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃\n\n鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃\n\n鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃\n\n鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃\n\n鍥界憺澶ц嵂鎴挎湁闄愬叕鍙竆n\n瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙竆n\n鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙竆n\n鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃\n\n鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙竆n\n闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃",
+							                        // 瀛椾綋绮楃粏銆佸ぇ灏忋�佸瓧浣�
+							                        font: 'bolder 16px "Microsoft YaHei", sans-serif',
+							                        // 瀛椾綋棰滆壊
+							                        fill: "#99CCFF"
+							                    }
+							                },
+							                {
+							                    type: 'text',
+							                    left:'85%',
+							                    top:'23%',
+							                    style:{
+							                        text:'28000\n\n26000\n\n23456\n\n21000\n\n19999\n\n16000\n\n15432\n\n14321\n\n13000\n\n12345',
+							                        font: 'bolder 16px "Microsoft YaHei", sans-serif',
+							                        fill:'Crimson'
+							                    }
+							                },
+							                {
+							                    type:'text',
+							                    left:'2%',
+							                    bottom:'7%',
+							                    style:{
+							                        text:'',
+							                        font: 'bolder 16px "Microsoft YaHei", sans-serif',
+							                        // 瀛椾綋棰滆壊
+							                        fill: "#777777"
+							                    }
+							                },
+							            ],
+							
+							            // 鎻愮ず娴獥鏍峰紡
+							            tooltip: {
+							                show: true,
+							                formatter:function(params){
+							                    console.log(params)
+							                    return params.name+'  :  '+params.data.value[2]
+							                },
+							                trigger: "item",
+							                alwaysShowContent: false,
+							                backgroundColor: "#0C121C",
+							                borderColor: "rgba(0, 0, 0, 0.16);",
+							                hideDelay: 100,
+							                triggerOn: "mousemove",
+							                enterable: true,
+							                textStyle: {
+							                    color: "#DADADA",
+							                    fontSize: "12",
+							                    width: 20,
+							                    height: 30,
+							                    overflow: "break",
+							                },
+							                showDelay: 100,
+							            }, 
+							
+							            series: [
+							                {
+							                    name: '閿�閲�',
+							                    type: "scatter",
+							                    symbol: "pin",
+							                    legendHoverLink: true,
+							                    symbolSize: [45, 45],
+							                    coordinateSystem: 'geo',
+							                    data: convertData(data),
+							                    encode: {
+							                        value: 2
+							                    },
+							                    label: {
+							                        show: true,
+							                        formatter(params) {
+							                            return params.data.value[2];
+							                        },
+							                        color: "white",
+							                        fontWeight:'bold',
+							                    },
+							                    itemStyle: {
+							                        normal: {
+							                            color: "rgba(255,0,0,.6)",
+							                            shadowBlur: 2,
+							                            shadowColor: "D8BC37",
+							                        },
+							                    },
+							                        showEffectOn: "render",
+							                        rippleEffect: {
+							                            brushType: "stroke",
+							                        },
+							                        hoverAnimation: true,
+							                        zlevel: 1,
+							                        emphasis: {
+							                            label: {
+							                            show: true
+							                            }
+							                        }
+							                    },        
+							            ],
+							
+							            geo: {
+							                map: "china",
+							                left:"15%",
+							                // right:"40px",
+							                top:'30%',
+							                zoom:1.6,
+							                // roam:true,
+							                label: {
+							                    // 閫氬父鐘舵�佷笅鐨勬牱寮�
+							                    normal: {
+							                        show: true,
+							                        textStyle: {
+							                            color: "white",
+							                            fontWeight:'bold',
+							                            fontSize:10                        
+							                        },
+							                    },
+							                    // 榧犳爣鏀句笂鍘荤殑鏍峰紡
+							                    emphasis: {
+							                        // show:false,
+							                        textStyle: {
+							                            color: "#fff",
+							                        },
+							                    },
+							                },
+							                // 鍦板浘鍖哄煙鐨勬牱寮忚缃�
+							                itemStyle: {
+							                    normal: {//姝e父鐘舵��
+							                        borderColor: "darkorange",//鍖哄煙杈圭晫棰滆壊
+							                        borderWidth: 1,
+							                        areaColor: '#99CCFF',//鍖哄煙棰滆壊
+							                    },
+							                    // 榧犳爣鏀句笂鍘婚珮浜殑鏍峰紡
+							                    emphasis: {
+							                        areaColor: "MediumAquamarine",//楂樹寒鐘舵�佸尯鍩熼鑹�
+							                        borderWidth: 0,
+							                    }
+							                },
+							            },
+							        };
+							        // 鍦板浘娉ㄥ唽锛岀涓�涓弬鏁扮殑鍚嶅瓧蹇呴』鍜宱ption.geo.map涓�鑷�
+							        echarts.registerMap("china",China)
+							        salesChart.setOption(salesOption);
+							
+							        //鑳芥垚鍔熶竴娆�
+							        // const save = JSON.parse(JSON.stringify(salesOption.series));
+							        //鎶ラ敊
+							        // const save = $.extend(true, [], salesOption.series);
+							        //鑳芥垚鍔熶竴娆�
+							        // const save = [...salesOption.series]
+							
+							
+							        //浜岀骇鍦板浘鐘舵�佷笅锛岀偣鍑荤┖鐧藉杩斿洖涓�绾у湴鍥撅紝搴旀仮澶嶆暟鎹樉绀�
+							        salesChart.getZr().on('click',(event)=>{
+							            if(!event.target){
+							                salesOption.geo.map = 'china'
+							                salesOption.geo.zoom = 1.6
+							                salesOption.geo.top = "30%"
+							                salesOption.geo.left="15%"
+							                // salesOption.series=save
+							                salesOption.graphic[0].style.text= "鍏ㄥ浗閿�閲廡op10:"
+							                salesOption.graphic[1].style.text= "鍗庢鼎鍖昏嵂鍟嗕笟闆嗗洟鏈夐檺鍏徃\n\n鐧炬嘲鐢熺墿鑽笟鏈夐檺鍏徃\n\n鍗庡畯鍖昏嵂杩為攣鏈夐檺鍏徃\n\n鎭掓嘲鍖昏嵂杩為攣鏈夐檺鍏徃\n\n鍥界憺澶ц嵂鎴挎湁闄愬叕鍙竆n\n瀛樹粊鍫傚尰鑽繛閿佹湁闄愯矗浠诲叕鍙竆n\n鍗庝笢澶ц嵂鎴胯繛閿佹湁闄愬叕鍙竆n\n鑻辩壒鐢靛瓙鍟嗗姟鏈夐檺鍏徃\n\n鐖卞�嶇敓澶ц嵂鎴胯繛閿佹湁闄愬叕鍙竆n\n闅嗚��鍖昏嵂杩為攣鏈夐檺鍏徃"
+							                salesOption.graphic[2].style.text= "28000\n\n26000\n\n23456\n\n21000\n\n19999\n\n16000\n\n15432\n\n14321\n\n13000\n\n12345"
+							                salesOption.graphic[3].style.text= ""
+							                echarts.registerMap('china', China)
+							                salesChart.setOption(salesOption)
+							            }
+							        })
+							
+							
+							        salesChart.getZr().on('mousemove',(event) =>{
+							            if(!event.target){
+							                console.log('uh')
+							            }
+							            else{
+							                console.log('hello')
+							            }
+							        })
+							
+							        
+							        //涓�绾у湴鍥剧姸鎬佷笅锛岀偣鍑荤渷浠藉尯鍩燂紝杩涘叆浜岀骇鍦板浘锛屽簲娓呯┖鏁版嵁鏄剧ず
+							        salesChart.on('click',({name})=>{         
+							            // var newOption = salesChart.getOption(salesOption);
+							            // salesChart.clear();
+							            // newOption.series.splice(0);
+							
+							            var newOption ={
+							                ...salesOption,
+							                series: [
+							                    {
+							                        name: '閿�閲�',
+							                        type: "scatter",
+							                        symbol: "pin",
+							                        legendHoverLink: true,
+							                        symbolSize: [45, 45],
+							                        coordinateSystem: 'geo',
+							                        data: convertDetail(dataDetail,name),
+							                        encode: {
+							                            value: 2
+							                        },
+							                        label: {
+							                            show: true,
+							                            formatter(params) {
+							                                return params.data.value[2];
+							                            },
+							                            color: "white",
+							                            fontWeight:'bold',
+							                        },
+							                        itemStyle: {
+							                            normal: {
+							                                color: "rgba(255, 165, 0,1)",
+							                                shadowBlur: 2,
+							                                shadowColor: "D8BC37",
+							                            },
+							                        },
+							                            showEffectOn: "render",
+							                            rippleEffect: {
+							                                brushType: "stroke",
+							                            },
+							                            hoverAnimation: true,
+							                            zlevel: 1,
+							                            emphasis: {
+							                                label: {
+							                                show: true
+							                                }
+							                            }
+							                        },        
+							                ],
+							            }
+							
+							            var [mapName,mapJs,mapShow,dataShow]=getMap(name);
+							            newOption.geo.map = mapName
+							            newOption.geo.zoom = 0.8
+							            newOption.geo.top = "10%"
+							            newOption.geo.left = "10%"
+							            newOption.graphic[0].style.text= name + "閿�閲廡op10:"
+							            newOption.graphic[1].style.text= mapShow
+							            newOption.graphic[2].style.text= dataShow
+							            newOption.graphic[3].style.text= '鐐瑰嚮绌虹櫧澶勮繑鍥炲叏鍥藉湴鍥�'
+							            echarts.registerMap(mapName, mapJs) 
+							          
+							            salesChart.setOption(newOption, true)
+							            
+							
+							            // var [mapName,mapJs,mapShow]=getMap(name);
+							            // salesOption.geo.map = mapName
+							            // salesOption.geo.zoom = 0.8
+							            // salesOption.geo.top = "20%"
+							            // salesOption.geo.left = "20%"
+							            // salesOption.graphic.style.text= "Top10 :"+ " " + mapShow
+							            // salesOption.series.splice(0)
+							            // echarts.registerMap(mapName, mapJs) 
+							          
+							            // salesChart.setOption(salesOption,true)
+							        })
+						},
+						
+						//浜у搧A
+						sale1(){
+							var sale1Dom = document.getElementById('sale1');
+							var sale1Chart = echarts.init(sale1Dom);
+							var me = this;
+							var sale1Option = {
+							  title:{
+							      text:"浜у搧A",    
+							      left : 'center',
+							  },
+							  xAxis: [
+							      {
+							      type: 'category',
+								  data: me.datearr,
+							      axisPointer: {
+							          type: 'shadow'
+							      }
+							      }
+							  ],
+							  yAxis: [
+							      {
+							      type: 'value',
+							      interval: 50,
+							      show:false
+							      },
+							      {
+							      type: 'value',
+							      name: '澧為暱鐜�',
+							      min: -1000,
+							      max: 38,
+							      interval: 5,
+							      axisLabel: {
+							          formatter: '{value} %'
+							      },
+							      show:false
+							      }
+							  ],
+							  series: [
+							      {
+							      type: 'bar',
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value;
+							          }
+							      },
+							      label:{
+							          show:true
+							      },
+							      data: [
+							          62597, 76731, 86663, 87943, 106989, 77349, 97822, 98787, 113409, 71545, 98501, 85470,95450
+							      ]
+							      },
+							      {
+							      name: '澧為暱鐜�',
+							      type: 'line',
+							      yAxisIndex: 1,
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value + ' %';
+							          }
+							      },
+							      label:{
+							          show:true,
+							          formatter:function(params){
+							          return params.value+'%';
+							          }
+							      },
+							      data: [3, 23, 13, 1, 22, -28, 26, 1, 15, -37, 38, -13, 12]
+							      }
+							  ]
+							};
+							sale1Chart.setOption(sale1Option);
+						},
+						
+						//浜у搧B
+						sale2(){
+							var sale2Dom = document.getElementById('sale2');
+							var sale2Chart = echarts.init(sale2Dom);
+							var me = this;
+							var sale2Option = {
+							  title:{
+							      text:"浜у搧B",    
+							      left : 'center',
+							  },
+							  xAxis: [
+							      {
+							      type: 'category',
+								  data: me.datearr,
+							      axisPointer: {
+							          type: 'shadow'
+							      }
+							      }
+							  ],
+							  yAxis: [
+							      {
+							      type: 'value',
+							      interval: 50,
+							      show:false
+							      },
+							      {
+							      type: 'value',
+							      name: '澧為暱鐜�',
+							      min: -1000,
+							      max: 100,
+							      interval: 5,
+							      axisLabel: {
+							          formatter: '{value} %'
+							      },
+							      show:false
+							      }
+							  ],
+							  series: [
+							      {
+							      type: 'bar',
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value;
+							          }
+							      },
+							      label:{
+							          show:true
+							      },
+							      data: [
+							          20, 30, 40, 50,443, 989, 2481, 4019, 5367, 3536, 7023, 8044, 9130
+							      ]
+							      },
+							      {
+							      name: '澧為暱鐜�',
+							      type: 'line',
+							      yAxisIndex: 1,
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value + ' %';
+							          }
+							      },
+							      label:{
+							          show:true,
+							          formatter:function(params){
+							          return params.value+'%';
+							          }
+							      },
+							      data: [0, 0, 0, 0, 0, 0, 62, 62, 34, -34, 99, 15, 14]
+							      }
+							  ]
+							};
+							sale2Chart.setOption(sale2Option);
+						},
+						
+						//浜у搧C
+						sale3(){
+							var sale3Dom = document.getElementById('sale3');
+							var sale3Chart = echarts.init(sale3Dom);
+							var me = this;
+							var sale3Option = {
+							  title:{
+							      text:'浜у搧C',    
+							      left : 'center',
+							  },
+							  xAxis: [
+							      {
+							      type: 'category',
+								  data: me.datearr,
+							      axisPointer: {
+							          type: 'shadow'
+							      }
+							      }
+							  ],
+							  yAxis: [
+							      {
+							      type: 'value',
+							      interval: 50,
+							      show:false
+							      },
+							      {
+							      type: 'value',
+							      name: '澧為暱鐜�',
+							      min: -1000,
+							      max: 200,
+							      interval: 5,
+							      axisLabel: {
+							          formatter: '{value} %'
+							      },
+							      show:false
+							      }
+							  ],
+							  series: [
+							      {
+							      type: 'bar',
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value;
+							          }
+							      },
+							      label:{
+							          show:true
+							      },
+							      data: [0, 0, 0, 0, 2974, 4297, 7137, 19367, 34183, 29336, 47642, 54915, 57600]
+							      },
+							      {
+							      name: '澧為暱鐜�',
+							      type: 'line',
+							      yAxisIndex: 1,
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value + ' %';
+							          }
+							      },
+							      label:{
+							          show:true,
+							          formatter:function(params){
+							          return params.value+'%';
+							          }
+							      },
+							      data: [0, 0, 0, 0, 47.5, 44, 66, 171, 77, -134, 62, 15, 5]
+							      }
+							  ]
+							};
+							sale3Chart.setOption(sale3Option);
+						},
+						
+						//浜у搧D
+						sale4(){
+							var me = this;
+							var sale4Dom = document.getElementById('sale4');
+							var sale4Chart = echarts.init(sale4Dom);
+							
+							var sale4Option = {
+							  title:{
+							      text:"浜у搧D",    
+							      left : 'center',
+							  },
+							  xAxis: [
+							      {
+							      type: 'category',
+								  data: me.datearr,
+							      axisPointer: {
+							          type: 'shadow'
+							      }
+							      }
+							  ],
+							  yAxis: [
+							      {
+							      type: 'value',
+							      interval: 50,
+							      show:false
+							      },
+							      {
+							      type: 'value',
+							      name: '澧為暱鐜�',
+							      min: -1000,
+							      max: 200,
+							      interval: 5,
+							      axisLabel: {
+							          formatter: '{value} %'
+							      },
+							      show:false
+							      }
+							  ],
+							  series: [
+							      {
+							      type: 'bar',
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value;
+							          }
+							      },
+							      label:{
+							          show:true
+							      },
+							      data: [0, 0, 0, 0, 0, 0, 0, 0, 03, 036, 329, 915, 1860]
+							      },
+							      {
+							      name: '澧為暱鐜�',
+							      type: 'line',
+							      yAxisIndex: 1,
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value + ' %';
+							          }
+							      },
+							      label:{
+							          show:true,
+							          formatter:function(params){
+							          return params.value+'%';
+							          }
+							      },
+							      data: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 143.7, 108.3]
+							      }
+							  ]
+							};
+							sale4Chart.setOption(sale4Option);
+						},
+						
+						//pie1
+						pie1(){
+							var pie1Dom = document.getElementById('pie1');
+							var pie1Chart = echarts.init(pie1Dom);
+							
+							var pie1Option = {
+							  title: {
+							              text: '鎸塡n鍑篭n鍘俓n閿�\n鍞�',
+							              top:'middle',
+							              orient:'vertical'
+							          },
+							  tooltip: {
+							      trigger: 'item'
+							  },
+							 legend: {
+							             // left: 'left',
+										 // type:'scroll',
+							             top:'70',
+							         },
+							  series: [
+							      {
+							      name: '鎸夊嚭鍘傞攢鍞�',
+							      type: 'pie',
+							      radius: '50%',
+							      data: [
+							          { value: 148, name: '浜у搧A' },
+							          { value: 75, name: '浜у搧B' },
+							          { value: 58, name: '浜у搧C' },
+							          { value: 44, name: '浜у搧D' }
+							      ],
+							      label:{
+							          show:true,
+							          position:'inner',
+							          formatter:'{d}%'
+							      },
+							      emphasis: {
+							          itemStyle: {
+							          shadowBlur: 10,
+							          shadowOffsetX: 0,
+							          shadowColor: 'rgba(0, 0, 0, 0.5)'
+							          }
+							      }
+							      }
+							  ]
+							};
+							pie1Chart.setOption(pie1Option);
+						},
+						
+						//pie2
+						pie2(){
+							var pie2Dom = document.getElementById('pie2');
+							var pie2Chart = echarts.init(pie2Dom);
+							
+							var pie2Option = {
+							  title: {
+								  text: '鎸塡n甯俓n鍦篭n绾痋n閿�',
+								  top:'middle',
+								  orient:'vertical'
+							  },
+							  tooltip: {
+							      trigger: 'item'
+							  },
+							  legend: {
+							              // left: 'center',
+							              top:'70',
+										  // top:'bottom',
+							          },
+							  series: [
+							      {
+							      name: '鎸夊競鍦虹函閿�',
+							      type: 'pie',
+							      radius: '50%',
+							      data: [
+							          { value: 1048, name: '浜у搧A' },
+							          { value: 735, name: '浜у搧B' },
+							          { value: 580, name: '浜у搧C' },
+							          { value: 484, name: '浜у搧D' }
+							      ],
+							      label:{
+							          show:true,
+							          position:'inner',
+							          formatter:'{d}%'
+							      },
+							      emphasis: {
+							          itemStyle: {
+							          shadowBlur: 10,
+							          shadowOffsetX: 0,
+							          shadowColor: 'rgba(0, 0, 0, 0.5)'
+							          }
+							      }
+							      }
+							  ]
+							};
+							pie2Chart.setOption(pie2Option);
+						},
+						
+						//pie3
+						pie3(){
+							var pie3Dom = document.getElementById('pie3');
+							var pie3Chart = echarts.init(pie3Dom);
+							
+							var pie3Option = {
+							  title: {
+								  text: '鎸塡n娓燶n閬揬n搴揬n瀛�',
+								  top:'middle',
+								  orient:'vertical'
+							  },
+							  tooltip: {
+							      trigger: 'item'
+							  },
+							  legend: {
+							              left: 'left',
+							              top:'70'
+							          },
+							  series: [
+							      {
+							      name: '鎸夋笭閬撳簱瀛�',
+							      type: 'pie',
+							      radius: '50%',
+							      data: [
+							          { value: 248, name: '浜у搧A' },
+							          { value: 75, name: '浜у搧B' },
+							          { value: 58, name: '浜у搧C' },
+							          { value: 144, name: '浜у搧D' }
+							      ],
+							      label:{
+							          show:true,
+							          position:'inner',
+							          formatter:'{d}%'
+							      },
+							      emphasis: {
+							          itemStyle: {
+							          shadowBlur: 10,
+							          shadowOffsetX: 0,
+							          shadowColor: 'rgba(0, 0, 0, 0.5)'
+							          }
+							      }
+							      }
+							  ]
+							};
+							pie3Chart.setOption(pie3Option);
+						},
+						
+						//鎶樻煴
+						invoicing(){
+							var me = this;
+							var inDom = document.getElementById('invoicing');
+							var inChart = echarts.init(inDom);
+							
+							var inOption = {
+							  tooltip: {
+							      trigger: 'axis',
+							      axisPointer: {
+							      type: 'cross',
+							      crossStyle: {
+							          color: '#999'
+							      }
+							      }
+							  },
+							  toolbox: {
+							      feature: {
+							      dataView: { show: false, readOnly: false },
+							      magicType: { show: true, type: ['line', 'bar'] },
+							      restore: { show: true },
+							      saveAsImage: { show: true }
+							      }
+							  },
+							  legend: {},
+							  xAxis: [
+							      {
+							      type: 'category',
+							      data: me.datearr,
+							      axisPointer: {
+							          type: 'shadow'
+							      }
+							      }
+							  ],
+							  yAxis: [
+							      {
+							      type: 'value',
+							      name: 'Million',
+							      },
+							      {
+							      type: 'value',
+							      show:false,
+							      min:0,
+							      max:62
+							      }
+							  ],
+							  series: [
+							      {
+							      name: '鍑哄巶閿�鍞�',
+							      type: 'bar',
+							      tooltip: {
+							      valueFormatter: function (value) {
+							          return value;
+							          }
+							      },
+							      label:{
+							          show:true
+							      },
+							      data: [
+							          185, 147, 161, 203, 284, 271, 204, 313, 350, 237, 281, 297,165
+							      ]
+							      },
+							      {
+							      name: '绾攢閿�鍞�',
+							      type: 'bar',
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value;
+							          }
+							      },
+							      label:{
+							          show:true
+							      },
+							      data: [
+							          137, 168, 190, 194, 288, 175, 224, 239, 286, 188, 267, 247,273
+							      ]
+							      },
+							          {
+							      name: '娓犻亾搴撳瓨',
+							      type: 'bar',
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value;
+							          }
+							      },
+							      label:{
+							          show:true
+							      },
+							      data: [
+							          292, 271, 243, 252, 298, 393, 372, 449, 513, 562, 575, 625, 516
+							      ]
+							      },
+							          {
+							      name: '搴撳瓨澶╂暟',
+							      type: 'line',
+							      yAxisIndex: 1,
+							      tooltip: {
+							          valueFormatter: function (value) {
+							          return value;
+							          }
+							      },
+							      label:{
+							          show:true
+							      },
+							      data: [49, 40, 31, 29, 31, 53, 43, 42, 44, 50, 56, 62, 50]
+							      },
+							  ]
+							};
+							inChart.setOption(inOption);
+						},
+						
+						initData() {
+							var me = this;
+							let param_ = {
+								isClientMode: false,
+								dataname: this.dataname,
+								page: {
+									pageno: this.pagenum,
+									pagesize: this.pagesize
+								},
+							}
+							Server.call("root/data/getEntitySet", param_, function(result) {
+								me.total = 0;
+								me.tableData = [];
+								if (result && result.data) {
+									me.total = result.data.page.recordcount;
+									var data_ = result.data.entityset;
+									// console.log(data_)
+									me.tableData = data_;
+								}
+							});
+						},
+						showFilterPopup() {
+							
+						},
+						onInitFilter() {
+							this.filterObj = {}
+							this.onQuery();
+						},
+						onEditFilter() {
+							
+						},
+						getData(page) {
+							this.pagesize = page.pagesize;
+							this.pagenum = page.pagenum;
+							this.doQuery();
+						},
+						handleClick(tab) {
+							this.AnchorLinkTo(tab.name);
+						},
+						formSelectChange(obj) {
+							var me = this;
+							var fieldObj = obj.fieldobj;
+							var filterFieldsData = clone(me.filterFields);
+							
+							if (fieldObj.field == "province") {
+								var filterObj_ = clone(me.filterObj);
+								filterObj_.city = null;
+								me.filterObj = filterObj_;
+								let param_ = {
+									isClientMode: false,
+									dataname: "md_province",
+									filter: [
+										{field: "name", value:obj.data.province}
+									]
+								}
+								Server.call("root/data/getEntitySet", param_, function(result) {
+									if (result && result.data) {
+										let param_ = {
+											isClientMode: false,
+											dataname: "md_vip_area",
+											filter:[
+												{"field": "province_id", "value":result.data.entityset[0].id}
+											]
+										}
+										Server.call("root/data/getEntitySet", param_, function(result) {
+											if (result && result.data) {
+												var options_ = result.data.entityset;
+												for(var i=0; i<options_.length;i++) {
+													options_[i].label = options_[i].name;
+													options_[i].value = options_[i].name;
+													
+												}
+												filterFieldsData.map(e=>{
+													if(e.field == "city") {
+														e.options = options_;
+													}
+												})
+											}
+											me.filterFields = filterFieldsData;
+										});
+									}
+								});
+							}
+						},
+						
+						//鍔ㄦ�佸姞杞戒笅鎷夐」
+						cellVisibleChange(obj, row) {
+							let me = this;
+							var filterFieldsData = clone(me.filterFields);
+							if (obj.field == "province") {
+								var filterFieldsData = clone(me.filterFields);
+								let param_ = {
+									isClientMode: false,
+									dataname: "md_province",
+								}
+								Server.call("root/data/getEntitySet", param_, function(result) {
+									if (result && result.data) {
+										var options_ = result.data.entityset;
+										for(var i=0; i<options_.length;i++) {
+											options_[i].label = options_[i].name;
+											options_[i].value = options_[i].name;
+										}
+										filterFieldsData.map(e=>{
+											if(e.field == "province") {
+												e.options = options_;
+											}
+										})
+									}
+									me.filterFields = filterFieldsData;
+								});
+							}
+						},
+						
+						onFormButtonByCode(code) {
+							if (code == "add") {//娣诲姞
+								// let me = this;
+								// var config = {
+								// 	totab: true,
+								// 	title: "瀹㈡埛涓绘暟鎹柊澧�",
+								// 	url: "../home/masterDataAdd.html",
+								// 	data: {},
+								// 	delta: {},
+								// 	opentype: "add",
+								// 	sceneCode: "add",
+								// 	width: 780,
+								// 	height: 420,
+								// 	callback: function(obj, callback) {
+								// 		me.onQuery();
+								// 		if (callback) {
+								// 			callback();
+								// 		}
+								// 	}
+								// };
+								// Root.showPopup(config);
+								// this.tabCardClick(config);
+							}
+							else if (code == "import") {//瀵煎叆
+								
+							}
+							else if (code == "export") {//瀵煎嚭
+								
+							}
+						},
+						cellClick(obj) {//鍗曞厓鏍肩偣鍑�
+							var field = obj.column.property;
+							var row = obj.row;
+							var tableField = obj.tableField;
+							// if(tableField.field == "field2") {
+							// 	var to_page = {
+							// 		totab: true,
+							// 		title: "瀹㈡埛鏄庣粏(涓绘暟鎹�)",
+							// 		url: "../home/masterDataCustomerDetails.html",
+							// 		data: {},
+							// 		delta: {},
+							// 		opentype: "add",
+							// 		sceneCode: "add",
+							// 		width: 1100,
+							// 		height: 550,
+							// 		callback: function(obj, callback) {
+							// 			me.onQuery();
+							// 			if (callback) {
+							// 				callback();
+							// 			}
+							// 		}
+							// 	};
+							// 	Root.showPopup(to_page);
+							// }
+						},
+						queryData(row) {
+							let me = this;
+							
+							// var config = {
+							// 	width: 1000,
+							// 	height: 550,
+							// 	title: "鏌ョ湅鍗忎細鏅哄簱妗f",
+							// 	url: "../flow_manage/addAssociationLibraryList.html",
+							// 	totab: true,
+							// 	sceneCode: "query",
+							// 	opentype: "add",
+							// 	data: row,
+							// 	delta: {},
+							// 	callback: function(obj, callback) {
+							// 		if (callback) {
+							// 			callback();
+							// 		}
+							// 	}
+							// };
+							// // this.doPopup(config);
+							// this.tabCardClick(config);
+						},
+						cellButtonClick(obj) {
+							var type_ = obj.column.property;
+							var row = obj.row;
+							var field = "name";
+							var tips = "";
+							
+							if(type_ == "delete"){
+								this.delData(row,field,tips);
+							} else if (type_ == "update"){
+								this.editData(obj);
+							} else if (type_ == "query"){
+								this.queryData(row);
+							}
+						},
+						//淇敼鏁版嵁浜嬩欢
+						onEditData(config, scope) {
+							var me = this;
+							var row = scope.row;
+							// var config = {
+							// 	width: 1000,
+							// 	height: 550,
+							// 	title: "缂栬緫瀹㈡埛涓绘暟鎹�",
+							// 	url: "../home/masterDataAdd.html",
+							// 	totab: true,
+							// 	sceneCode: "edit",
+							// 	opentype: "add",
+							// 	data: row,
+							// 	delta: {},
+							// 	callback: function(obj, callback) {
+							// 		me.initData();
+							// 		if (callback) {
+							// 			callback();
+							// 		}
+							// 	}
+							// };
+							// this.doPopup(config);
+						},
+						
+						
+						
+						//婊氬姩浜嬩欢
+						myFunction(e) {
+							var isToBottom_ = this.isToBottom(e);
+							if (isToBottom_) {
+								this.org_footer = true;
+							}
+							else {
+								this.org_footer = false;
+							}
+						},
+						
+						isToBottom(e) {
+							var bo_ = false;
+							if(e.srcElement.scrollTop + e.srcElement.offsetHeight >= e.srcElement.scrollHeight){
+						銆�銆�銆�銆�//宸茬粡鍒版渶搴曢儴浜�
+								bo_ = true;
+						銆�銆�}
+							return bo_;
+						},
+						
+					}
+				});
+			}
+		
+			loadJsCss(function() {
+				initVue();
+			});
+		</script>
+
+		<style>
+			[v-cloak] {
+				display: none !important;
+			}
+			
+			.v_header .v_header_query{
+			    padding: 0px 36px;
+			    box-sizing: border-box;
+			}
+		</style>
+	</body>
+</html>
diff --git a/module/report/page/report_list.html b/module/report/page/report_list.html
index 76f086a..1346615 100644
--- a/module/report/page/report_list.html
+++ b/module/report/page/report_list.html
@@ -5,7 +5,6 @@
 		<title>鎶ヨ〃绠$悊</title>
 		
 		<script type="text/javascript">
-			var pageVue = null;
 			function loadJsCss(callback) {
 				var jscss_urls = [
 					{id: "css_m1", type: "css", url: "root/css/tree.css"},
@@ -17,28 +16,28 @@
 				new TreeVue({
 					el: "#vbody",
 					data: {
-						dataname: "md_product_category",
-						title: "鎶ヨ〃绠$悊",
+						dataname: "sys_report_echarts",
+						title: "鍒嗘瀽鎶ヨ〃",
 						tree_title: "鎶ヨ〃鍒嗙被",
 						treeTxtFormatter: "{name}",
 						isTreeReadonly: false,
 						selectnodedata: {},
 						dataRequest: [
-							{
-								 name: "sys_report",
-								 //url: "root/front/getOneDictionary",
-								 //paramsobj: { code: "OrgType", },
-								 //filter: " type='agreement'",
-								 isnotoption: true, //true:涓嶆槸閫夐」
-							},
-							{
-								 name: "jimu_report",
-								 //url: "root/front/getOneDictionary",
-								 //paramsobj: { code: "OrgType", },
-								 isnotoption: true, //true:涓嶆槸閫夐」
-								 filter: "type in ('datainfo', 'chartinfo', 'printinfo')",//:"id",//鏄笅鎷夐�夐」鏃惰缃�
-								 orderby: "update_time desc"
-							},
+							// {
+							// 	 name: "sys_report_echarts",
+							// 	 //url: "root/front/getOneDictionary",
+							// 	 //paramsobj: { code: "OrgType", },
+							// 	 //filter: " type='agreement'",
+							// 	 isnotoption: true, //true:涓嶆槸閫夐」
+							// },
+							// {
+							// 	 name: "jimu_report",
+							// 	 //url: "root/front/getOneDictionary",
+							// 	 //paramsobj: { code: "OrgType", },
+							// 	 isnotoption: true, //true:涓嶆槸閫夐」
+							// 	 filter: "type in ('datainfo', 'chartinfo', 'printinfo')",//:"id",//鏄笅鎷夐�夐」鏃惰缃�
+							// 	 orderby: "update_time desc"
+							// },
 						],
 						dataRequestObj: {},
 						report_url: "",
@@ -76,22 +75,22 @@
 								me.dataRequestObj = data;
 								//棰勫姞杞芥暟鎹悗缁欏摢浜涘瓧娈佃缃畂ptions鎴杅ormatterjson
 								
-								me.dataRequestObj.sys_report.map(r=>{
+								me.dataRequestObj.sys_report_echarts.map(r=>{
 									r.disabled = true;
 									r.parent_id = "z1";
 								})
-								me.dataRequestObj.jimu_report.map(r=>{
-									r.parent_id = "z2";
-								})
+								// me.dataRequestObj.jimu_report.map(r=>{
+								// 	r.parent_id = "z2";
+								// })
 								
 								var treeData_ = [
 									{id: "z1", name: "缁煎悎鎶ヨ〃", disabled: true, children: []},
-									{id: "z2", name: "鑷畾涔夋姤琛�", edit_disabled: true, children: []},
+									// {id: "z2", name: "鑷畾涔夋姤琛�", edit_disabled: true, children: []},
 								]
 								
-								me.selectnodedata = me.dataRequestObj.sys_report[0];
-								treeData_[0].children = me.dataRequestObj.sys_report;
-								treeData_[1].children = me.dataRequestObj.jimu_report;
+								me.selectnodedata = me.dataRequestObj.sys_report_echarts[0];
+								treeData_[0].children = me.dataRequestObj.sys_report_echarts;
+								// treeData_[1].children = me.dataRequestObj.jimu_report;
 								me.treeData = treeData_;
 								me.initData();
 							});
@@ -105,138 +104,58 @@
 					},
 					
 					methods:{
-						onQuery() {
-							var me = this;
-							let param_ = {
-								dataname: "jimu_report",
-								filter: "type in ('datainfo', 'chartinfo', 'printinfo')",
-								orderby: "update_time desc"
-							}
-							Server.call("root/data/getEntitySet", param_, function(result) {
-								console.log(result.data.entityset)
-								if (result && result.data.entityset && result.data.entityset.length) {
-									result.data.entityset.map(r=>{
-										r.parent_id = "z2";
-									})
-									
-									var treeData_ = clone(me.treeData);
-									treeData_[1].children = result.data.entityset;
-									me.treeData = treeData_;
-									me.initData();
-								}
-							});
-						},
-						
 						initData() {
 							var me = this;
-							// this.onQuery(function(result, callback) {//鏌ヨ鍚庣殑鍥炶皟锛岀敤浜庤幏鍙栧瓧娈电殑
-							// 	me.treeData = me.initTreeData;
-							// 	if (callback) {
-							// 		callback();
-							// 	}
+							this.onQuery(function(result, callback) {//鏌ヨ鍚庣殑鍥炶皟锛岀敤浜庤幏鍙栧瓧娈电殑
+								var treeData_ = []
+								var buobj_ = {};
+								var initTreeData = clone(me.initTreeData);
+								initTreeData.map(r=>{
+									r.disabled = true;
+									r.parent_id = "z1";
+								})
+								var data_p_ = {id: "z1", name: "缁煎悎鎶ヨ〃", disabled: true, children: []}
+								initTreeData.unshift(data_p_)
+								me.initTreeData = clone(initTreeData)
 								
-							// 	me.getTableMeta();
-							// });
-							this.tableDataAfter();
-							this.defaultexpandedkeys = [this.selectnodedata.id];
-							this.currentnodekey = this.selectnodedata.id;
-							var data = this.selectnodedata;
-							if (data.url) {
-								url_ = data.url;
-								this.report_url = window.top.config.url_page + url_;
-							}
-							else if (data.id) {// design
-								url_ = "root/report/showReport?token=" + Root.getToken() + "&type=design&id=" + data.id
-								this.report_url = window.top.config.url_root + url_;
-							}
-						},
-						
-						onAddNode(obj) {
-							var data = obj.data, node = obj.node;
-							this.addData()
-						},
-						
-						onEditNode(obj) {
-							var me = this;
-							// Root.showPopup({
-							// 	url: "module/md/page/product/page/product_type_edit.html",
-							// 	width: 800,
-							// 	height: 230,
-							// 	data: data,
-							// 	sceneCode: "edit",
-							// 	callback: function(options_obj, callback) {
-							// 		me.type_treedata = options_obj.options
-							// 		if (callback) {
-							// 			callback();
-							// 		}
-							// 	}
-							// });
-							
-							var data = obj.data, node = obj.node, el = obj.el;
-							var val = data.name;
-							var url_ = "";
-							if (data.url) {
-								url_ = data.url;
-								this.report_url = window.top.config.url_page + url_;
-							}
-							else if (data.id) {// design
-								url_ = "root/report/showReport?token=" + Root.getToken() + "&type=design&id=" + data.id
-								this.report_url = window.top.config.url_root + url_;
-							}
-							
-						},
-						
-						onDelNode(obj) {
-							var data = obj.data, node = obj.node;
-							let me = this;
-							Root.confirm('纭畾鍒犻櫎-' + data.name + '-鍚楋紵', '鍒犻櫎鎻愮ず', {
-							  confirmButtonText: '鍒犻櫎',
-							  cancelButtonText: '鍙栨秷',
-							  type: 'warning'
-							}).then(() => {
-								me.dodeldata(data, node, "agm_category");
-							}).catch(() => {
-								Root.message({
-									type: 'info',
-									message: '宸插彇娑堝垹闄�'
-								});
+								let initTreeData_ = ArrayToTree(clone(me.initTreeData), "name", "parent_id", null, null, null, null);
+								me.treeData = initTreeData_;
+								
+								if (callback) {
+									callback();
+								}
+								if(me.treeData[0]) {
+									const leafNode = me.findLeafNode(me.treeData[0]);
+									let objInit = {
+										data: leafNode,
+										node: {},
+										el: {},
+									};
+									me.currentnodekey = leafNode.id;
+									me.onNodeClick(objInit);
+								}
 							});
 						},
 						
-						dodeldata(row, node, tablename) {
-							if (row.id) {
-								let param = {
-									
-									dataname: tablename,
-									id: row.id
+						findLeafNode(node) {
+							if (!node.children || node.children.length === 0) {
+								return node;
+							}
+							for (let i = 0; i < node.children.length; i++) {
+								const child = node.children[i];
+								const leafNode = this.findLeafNode(child);
+								if (leafNode) {
+									return leafNode;
 								}
-								
-								Server.call("root/data/deleteEntity", param, function(result) {
-									console.log(result);
-									if (result && result.data) {
-										const parent = node.parent;
-										const children = parent.data.children || parent.data;
-										const index = children.findIndex(d => d.id === row.id);
-										children.splice(index, 1);
-										
-										Root.message({
-											type: 'success',
-											message: '鍒犻櫎鎴愬姛!'
-										});
-									}
-								});
 							}
-						},
-						
-						node_isShow(data, isShow) {
-							if (this.$refs[data.id]) {
-								this.$refs[data.id].style.display = isShow ? '' : 'none';
-							}
+							return null;
 						},
 						
 						onNodeClick(obj) {
+							console.log(obj);
 							var data = obj.data, node = obj.node, el = obj.el;
-							var val = data.name;
+							var filter_node_val = "";
+							this.selectedrow = data;
 							var url_ = "";
 							if (data.url) {
 								url_ = data.url;
@@ -246,110 +165,6 @@
 								url_ = "root/report/showReport?token=" + Root.getToken() + "&type=view&id=" + data.id
 								this.report_url = window.top.config.url_root + url_;
 							}
-							// this.getDataByNode();
-						},
-						
-						// onNodeClick(data, node, el) {
-						// 	var val = data.name;
-						// 	if (data.children && data.children.length) {
-						// 		val = "";
-						// 		data.children.map(r=>{
-						// 			if (val == "") {
-						// 				val = r.name;
-						// 			}
-						// 			else {
-						// 				val += "','" + r.name;
-						// 			}
-						// 		})
-						// 	}
-							
-						// 	// this.filterObjBydefault.category_name = val
-						// 	this.selectedrow = data;
-						// 	this.pagenum_p = 1;
-						// 	this.getDataByNode();
-						// },
-						
-						
-						getTableMeta() {
-							var me = this;
-							var param_ = {
-								dataname: this.dataname_p,
-								attachMeta: true,
-							}
-							
-							Server.call("root/data/getEntitySet", param_, function(result) {
-								if (result.meta && result.meta[me.dataname_p] && result.meta[me.dataname_p].fields) {
-									var metas = clone(result.meta[me.dataname_p].fields);
-									var filterFields_ = [];
-									var tableFields_ = [];
-									
-									metas.map(f=>{
-										f.isshow = "T";
-										tableFields_.push(clone(f));
-									})
-									if (!me.tableFields_p || (me.tableFields_p && me.tableFields_p.length == 0)) {
-										me.tableFields_p = clone(tableFields_);
-									}
-								}
-								
-								me.tableDataAfter_p();
-							})
-						},
-						
-						tableDataAfter_p() {
-							var me = this;
-							if (this.tableFields_p.length > 0){
-								this.isRefresh_p = false;
-								this.$nextTick(function(){
-									this.isRefresh_p = true;
-									this.$nextTick(function(){
-										var el_list = [];
-										me.tableHeight_p = me.treeHeight;
-									})
-								})
-							}
-						},
-						
-						onQueryAfter() {
-							this.pagenum_p = 1;
-							this.tableData_p = [];
-							this.total_p = 0;
-						},
-						
-						getData_p(page) {
-							this.pagesize_p = page.pagesize;
-							this.pagenum_p = page.pagenum;
-							
-							this.getDataByNode();
-						},
-						
-						addData() {
-							let me = this;
-							var config = {
-								totab: false, //true: 浠ab瀵艰埅鐨勬柟寮忔墦寮�
-								width: "98vw",
-								height: "600px",
-								icon: "icon-product",
-								text: "鎶ヨ〃璁捐",
-								id: "page_form_add",//totab: true鏃堕渶璁剧疆锛岀敤浜庡垽鏂槸鍚﹀凡鎵撳紑姝ら〉闈�
-								url: "module/report/page/report_add.html",
-								data: {},
-								delta: {},
-								sceneCode: "add",//"refuseedit",//"approval", //"add"//"browse",
-								closecallback: function(obj, callback) {
-									me.onQuery();
-									if (callback) {
-										callback();
-									}
-								},
-								callback: function(obj, callback) {
-									me.onQuery();
-									if (callback) {
-										callback();
-									}
-								}
-							};
-							me.doPopupByPublic(config);
 						},
 						
 					}
@@ -382,18 +197,10 @@
 			<div id="page_root">
 				<div class="topbar">
 					<span>{{title}}</span>
-					
-					<!-- 宸ュ叿鏍� -->
-					<div style="float: right; margin-right: 18px">
-						<el-button  @click="addData">鍒涘缓鑷畾涔夋姤琛�</el-button><!-- v-show="cbuttons_r.Add"  -->
-					</div>
 				</div>
 				
 				<div class="h_dialog__body">
-					<div :style="{position: 'absolute', left: '10px', width: '300px', height: treeHeight + 'px', border: '1px solid #ccc'}">
-						<!-- <div style="height: 32px;line-height: 32px;border-bottom: 1px solid #ccc ;">
-							<span style="font-size: 14px;margin-left: 20px;">{{tree_title}}</span>
-						</div> -->
+					<div :style="{position: 'absolute', left: '10px', width: '205px', height: treeHeight + 'px', border: '1px solid #ccc'}">
 						<div :style="{padding: '10px 0', height: treeHeight - 30 + 'px', overflow: 'auto'}">
 							<h-tree ref="tree"
 							v-if="isRefresh"
@@ -403,75 +210,17 @@
 							:edit-tree-button="editTreeButton"
 							:default-expanded-keys="defaultexpandedkeys"
 							:currentnodekey="currentnodekey"
-							:default-expand-all="false"
-							
 							
 							@node-click="onNodeClick"
-							@add-node="onAddNode"
-							@edit-node="onEditNode"
-							@del-node="onDelNode"
 							>
 							</h-tree>
-							
-							<!-- <el-tree ref="hierTree" class="filter-tree" node-key="id" :indent="24" 
-							 default-expand-all
-							 highlight-current 
-							 :data="treeData" 
-							 show-checkbox
-							 :expand-on-click-node="true" 
-							 @node-click="onNodeClick"
-							 >
-								<span class="custom-tree-node z_menu_tree" slot-scope="{ node, data, itm }"
-								 @mouseenter="node_isShow(data, true)"
-								 @mouseleave="node_isShow(data, false)"
-								>
-									<span>
-										<div class="nodeLabel nodeLabel_l" style="height: 32px; line-height: 32px;">
-										</div>
-										<div class="nodeLabel z_left_menu_tree_txt">
-											<i v-if="!node.isLeaf" :class="!node.expanded ? 'el-icon-plus':'el-icon-minus'" style="font-size: 10px; margin-right: 10px; border: 1px solid #a7a9a9; color: #a7a9a9;"></i>
-										</div>
-										<div class="nodeLabel z_left_menu_tree_txt">
-											<span>{{ data.name }}</span>
-											<el-badge :ref="'dadgeid_' + data.id" v-show="data.isBadge ? true : false" is-dot class="item">
-											</el-badge>
-										</div>
-									</span>
-									<span>
-										<div :ref="data.id" v-show="false" class="nodeLabel" style="width: 128px;max-width: 128px;">
-											<el-button v-if="!data.parent_id" type="text" 
-											@click.stop="addNode(data,node)" class="z_node_button" icon="el-icon-circle-plus-outline">
-											</el-button>
-											<el-button type="text" 
-											@click.stop="editNode(data,node)" class="z_node_button" icon="el-icon-edit">
-											</el-button>
-											<el-button v-if="!(data.children && data.children.length)" type="text" 
-											@click.stop="delNode(data,node)" class="z_node_button" icon="el-icon-delete">
-											</el-button>
-										</div>
-										
-										<div class="nodeLabel" style="margin-right: 30px;">
-											<span v-if="!node.isLeaf">{{data.children.length}}</span>
-										</div>
-									</span>
-								</span>
-							</el-tree> -->
 						</div>
 					</div>
-					<div :style="{position: 'absolute', left: '320px', right: '10px', height: treeHeight + 'px', border: '1px solid #ccc'}">
+					<div :style="{position: 'absolute', left: '220px', right: '10px', height: treeHeight + 'px', border: '1px solid #ccc'}">
 						<div>
-							<!-- <div style="height: 32px; border-bottom: 1px solid #aaa;">
-								<div class="table_title" style="float: left;">
-									<span>鎶ヨ〃棰勮</span>
-								</div>
-							</div> -->
 							<div  v-if="report_url" :style="{height: treeHeight + 'px'}" align="center">
-								<!-- <div v-if="report_url" class="tools-news" ref="msgtop" align="center"> -->
-									<iframe style="width: 100%; height: 100%;" frameborder="0" :src="report_url"></iframe>
-								<!-- </div> -->
+								<iframe style="width: 100%; height: 100%;" frameborder="0" :src="report_url"></iframe>
 							</div>
-							<div></div>
-							
 						</div>
 					</div>
 					
diff --git a/module/report/page/report_list_detail.html b/module/report/page/report_list_detail.html
index ca4ebfb..5ec3638 100644
--- a/module/report/page/report_list_detail.html
+++ b/module/report/page/report_list_detail.html
@@ -2,7 +2,7 @@
 <html>
 	<head>
 		<meta charset="utf-8"><meta http-equiv="Expires" content="0"><meta http-equiv="Pragma" content="no-cache"><meta http-equiv="Cache-control" content="no-cache"><meta http-equiv="Cache" content="no-cache">
-		<title>鎶ヨ〃涓績</title>
+		<title>鏄庣粏鎶ヨ〃</title>
 		
 		<script type="text/javascript">
 			var pageVue = null;
@@ -16,8 +16,8 @@
 					el: "#vbody",
 					data: {
 						dataname: "sys_page_report", // "md_prod_category",
-						title: "鎶ヨ〃涓績",
-						tree_title: "鎶ヨ〃鑿滃崟",
+						title: "鏄庣粏鎶ヨ〃",
+						tree_title: "鏄庣粏鎶ヨ〃",
 						treeTxtFormatter: "{title}",
 						isTreeReadonly: true,
 						
diff --git a/module/report/page/salesPerformance.html b/module/report/page/salesPerformance.html
new file mode 100644
index 0000000..cfa9cc8
--- /dev/null
+++ b/module/report/page/salesPerformance.html
@@ -0,0 +1,492 @@
+<!DOCTYPE html>
+<html>
+	<head> 
+		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+		<title>鏈珵鍝佸垎鐪侀攢鍞〃鐜�</title>
+	</head>
+
+	<body>
+		<style type="text/css">
+			h5,ul,h1 {
+				margin: 0;
+				padding: 0;
+			}
+			li {
+				list-style: none;
+			}
+		</style>
+		<div v-cloak id="hbody" class="h_body" style="margin: 0;padding: 0;">
+			<div ref="ref_header" class="v_header">
+			</div>
+			<div ref="ref_main" class="v_main" style="padding: 0px 36px;">
+				<h1 style="font-weight: 600;color: #3A63A6;text-align: center;">鏈珵鍝佸垎鐪侀攢鍞〃鐜�</h1>
+				<div style="width: 100%;height: 100%;display: flex;justify-content: center;">
+					<div id = "competitor" style="width: 90%;height: 90%;"></div>
+				</div>
+			</div>
+		</div>
+		
+		<script type="text/javascript">
+			function loadJsCss(callback) {
+				var jscss_urls = [
+					{id: "js6", type: "js", url: "root/js/echarts.js"},
+				];
+				window.top.initJsCss(document, jscss_urls, callback);
+			}
+		
+			function initVue() {
+				new BasicsVue({
+					el: "#hbody",
+					data: {
+						cardtablist: [
+							// {id: "6-5-2-2-1", type: "cardtab", name: "鏂板鍗忎細鏅哄簱", icon:"", img: "../../img/page/associationLibraryList.png", enname:"", url: "../../page/flow_manage/addAssociationLibraryList.html", parentid: "1", opentype: "add"},
+							// {id: "2-1-2", type: "cardtab", name: "涓ぎ涓撳搴�", icon:"", img: "../../img/page/icon_open@2x.png", enname:"", url: "../../page/flow_manage/centralfileList.html", parentid: "2", opentype: "add"},
+						],
+						page_url: "",
+						rowkey: "id",
+						dataname: "",
+						module_title: "",
+						tableHeight: 500,
+						filterAttr: {
+							columnnumber: 4,
+							labelwidth: "100px",
+							labelposition: "left",//"left",//"right",
+							size: "medium",
+							borderleft: "0px solid #c6c6c600",
+							bordertop: "8px solid #c6c6c600",
+							borderright: "0px solid #c6c6c600",
+							borderbottom: "0px solid #c6c6c600",
+							border: "3px solid #c6c6c600"
+						},
+						formButton: {
+							query: true,
+							empty: true,
+							add: false,
+							import: false,
+							export: false
+						},
+						filterObj: {},
+						filterFieldsObj: {},
+						filterFields: [
+							{isshow: "T",fieldname: "province", field: "province", name: "鐪佷唤", type: "select"},
+							{isshow: "T", fieldname: "city",field: "city",name: "鍩庡競", type: "select"},
+							// {isshow: "T", field: "field1", name: "瀹㈡埛缂栧彿", type: "select"},
+							// {isshow: "T", field: "name", fieldname: "name", name: "瀹㈡埛鍚嶇О", fieldtype: "like", type: "select"},
+							// {isshow: "T", field: "creator_name", fieldname: "creator_name", name: "瀹㈡埛灞炴��", fieldtype: "like"},
+							// {isshow: "T", field: "createtime", name: "鏄惁鍚敤",fieldtype: "inScopeInclude"},
+						],
+						
+						//Tab椤�
+						activeName: "code1",
+						wrapStyle: "",
+						viewStyle: "",
+						
+						tabList: [
+							{code: "code1", name: "鍒楄〃"},
+						],
+						tabsObj: {
+							code1: true,
+						},
+						
+						isRefresh: true,
+						pagesize: 10,
+						pagenum: 0,
+						total: 0,
+						orderby:"createtime desc",
+					},
+					created() {
+						var me = this;
+						this.popupParames = clone(Root.popupParames);
+						
+					},
+				
+					mounted() {
+						var me = this;
+						// this.initData();
+						this.$nextTick(function() {
+							let w_ = this.$refs.ref_header.offsetWidth;
+							let h_ = this.$refs.ref_header.offsetHeight;
+							//let h_ = 0;
+							let clientHeight = document.documentElement.clientHeight;
+							var m_h = clientHeight - h_ - 10;
+							this.tableHeight = clientHeight - h_ - 252;
+							
+							this.wrapStyle = "overflow-y: auto; width: 100%; height: " + (m_h - 50) + "px";
+							this.viewStyle = "max-height: " + (m_h - 50) + "px";
+							this.$refs.ref_main.style.height = m_h + "px";
+							//this.$refs.ref_v_body.style.height = m_h + "px";
+						})
+						setTimeout(function(){
+							me.competitor();
+						},500);
+						
+					},
+					methods: {
+						competitor(){
+							var cpDom = document.getElementById('competitor');
+							var cpChart = echarts.init(cpDom);
+							
+							var cpOption = {
+							  tooltip: {
+							      trigger: 'axis',
+							      axisPointer: {
+							      // Use axis to trigger tooltip
+							      type: 'shadow' // 'shadow' as default; can also be 'line' or 'shadow'
+							      }
+							  },
+							  legend: {
+								  top:'20',
+							  },
+							  grid: {
+							      left: '3%',
+							      right: '4%',
+							      bottom: '3%',
+							      containLabel: true
+							  },
+							  xAxis: {
+							      type: 'value'
+							  },
+							  yAxis: {
+							      type: 'category',
+							      axisLabel:{
+							      interval:'0'
+							      },
+							      data: ['姹熻嫃', '骞夸笢', '娴欐睙', '灞变笢', '娌冲崡', '涓婃捣', '瀹夊窘', '婀栧崡', '鍥涘窛', '姹熻タ', '绂忓缓', '娌冲寳', '鍖椾含', '婀栧寳', '灞辫タ', '骞胯タ', '閲嶅簡', '闄曡タ', '澶╂触', '杈藉畞', '鏂扮枂', '鍚夋灄', '鐢樿們', '榛戦緳姹�', '浜戝崡', '鍐呰挋鍙�', '璐靛窞', '娴峰崡', '闈掓捣', '瀹佸'],
+							  },
+							  series: [
+							      {
+							      name: '澶╁',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: true,
+							          formatter:function(params){
+							              return params.value+"%";
+							          }
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [32, 30, 31, 33, 39, 35, 37,25,30,35,20,30,40,25,35,35,25,20,30,40,25,30,35,20,20,25,30,35,40,25]
+							      },
+							      {
+							      name: '鐧炬祹',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: true,
+							          formatter:function(params){
+							              return params.value+"%";
+							          }
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [19, 23, 20, 23, 19, 27, 21,20,25,15,20,25,20,25,20,15,20,15,20,25,20,25,15,20,15,20,25,20,15,20]
+							      },
+							      {
+							      name: '寰风惇',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: true,
+							          formatter:function(params){
+							              return params.value+"%";
+							          }
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [24, 26, 27, 30, 23, 19, 11,10,25,20,10,15,20,15,20,25,20,15,20,10,20,25,15,20,25,30,15,20,25,20]
+							      },
+							      {
+							      name: '鏉ㄦ.',
+							      type: 'bar',
+							      stack: 'total',
+							      label: {
+							          show: true,
+							          formatter:function(params){
+							              return params.value+"%";
+							          }
+							      },
+							      emphasis: {
+							          focus: 'series'
+							      },
+							      data: [25, 21, 22, 14, 19, 19, 31,45,20,30,50,30,20,35,25,25,35,50,30,25,35,20,35,40,40,25,30,25,20,35]
+							      },
+							  ]
+							};
+							cpChart.setOption(cpOption);
+						},
+						initData() {
+							var me = this;
+							let param_ = {
+								isClientMode: false,
+								dataname: this.dataname,
+								page: {
+									pageno: this.pagenum,
+									pagesize: this.pagesize
+								},
+							}
+							Server.call("root/data/getEntitySet", param_, function(result) {
+								me.total = 0;
+								me.tableData = [];
+								if (result && result.data) {
+									me.total = result.data.page.recordcount;
+									var data_ = result.data.entityset;
+									// console.log(data_)
+									me.tableData = data_;
+								}
+							});
+						},
+						showFilterPopup() {
+							
+						},
+						onInitFilter() {
+							this.filterObj = {}
+							this.onQuery();
+						},
+						onEditFilter() {
+							
+						},
+						getData(page) {
+							this.pagesize = page.pagesize;
+							this.pagenum = page.pagenum;
+							this.doQuery();
+						},
+						handleClick(tab) {
+							this.AnchorLinkTo(tab.name);
+						},
+						formSelectChange(obj) {
+							var me = this;
+							var fieldObj = obj.fieldobj;
+							var filterFieldsData = clone(me.filterFields);
+							
+							if (fieldObj.field == "province") {
+								var filterObj_ = clone(me.filterObj);
+								filterObj_.city = null;
+								me.filterObj = filterObj_;
+								let param_ = {
+									isClientMode: false,
+									dataname: "md_province",
+									filter: [
+										{field: "name", value:obj.data.province}
+									]
+								}
+								Server.call("root/data/getEntitySet", param_, function(result) {
+									if (result && result.data) {
+										let param_ = {
+											isClientMode: false,
+											dataname: "md_vip_area",
+											filter:[
+												{"field": "province_id", "value":result.data.entityset[0].id}
+											]
+										}
+										Server.call("root/data/getEntitySet", param_, function(result) {
+											if (result && result.data) {
+												var options_ = result.data.entityset;
+												for(var i=0; i<options_.length;i++) {
+													options_[i].label = options_[i].name;
+													options_[i].value = options_[i].name;
+													
+												}
+												filterFieldsData.map(e=>{
+													if(e.field == "city") {
+														e.options = options_;
+													}
+												})
+											}
+											me.filterFields = filterFieldsData;
+										});
+									}
+								});
+							}
+						},
+						
+						//鍔ㄦ�佸姞杞戒笅鎷夐」
+						cellVisibleChange(obj, row) {
+							let me = this;
+							var filterFieldsData = clone(me.filterFields);
+							if (obj.field == "province") {
+								var filterFieldsData = clone(me.filterFields);
+								let param_ = {
+									isClientMode: false,
+									dataname: "md_province",
+								}
+								Server.call("root/data/getEntitySet", param_, function(result) {
+									if (result && result.data) {
+										var options_ = result.data.entityset;
+										for(var i=0; i<options_.length;i++) {
+											options_[i].label = options_[i].name;
+											options_[i].value = options_[i].name;
+										}
+										filterFieldsData.map(e=>{
+											if(e.field == "province") {
+												e.options = options_;
+											}
+										})
+									}
+									me.filterFields = filterFieldsData;
+								});
+							}
+						},
+						
+						onFormButtonByCode(code) {
+							if (code == "add") {//娣诲姞
+								// let me = this;
+								// var config = {
+								// 	totab: true,
+								// 	title: "瀹㈡埛涓绘暟鎹柊澧�",
+								// 	url: "../home/masterDataAdd.html",
+								// 	data: {},
+								// 	delta: {},
+								// 	opentype: "add",
+								// 	sceneCode: "add",
+								// 	width: 780,
+								// 	height: 420,
+								// 	callback: function(obj, callback) {
+								// 		me.onQuery();
+								// 		if (callback) {
+								// 			callback();
+								// 		}
+								// 	}
+								// };
+								// Root.showPopup(config);
+								// this.tabCardClick(config);
+							}
+							else if (code == "import") {//瀵煎叆
+								
+							}
+							else if (code == "export") {//瀵煎嚭
+								
+							}
+						},
+						cellClick(obj) {//鍗曞厓鏍肩偣鍑�
+							var field = obj.column.property;
+							var row = obj.row;
+							var tableField = obj.tableField;
+							// if(tableField.field == "field2") {
+							// 	var to_page = {
+							// 		totab: true,
+							// 		title: "瀹㈡埛鏄庣粏(涓绘暟鎹�)",
+							// 		url: "../home/masterDataCustomerDetails.html",
+							// 		data: {},
+							// 		delta: {},
+							// 		opentype: "add",
+							// 		sceneCode: "add",
+							// 		width: 1100,
+							// 		height: 550,
+							// 		callback: function(obj, callback) {
+							// 			me.onQuery();
+							// 			if (callback) {
+							// 				callback();
+							// 			}
+							// 		}
+							// 	};
+							// 	Root.showPopup(to_page);
+							// }
+						},
+						queryData(row) {
+							let me = this;
+							
+							// var config = {
+							// 	width: 1000,
+							// 	height: 550,
+							// 	title: "鏌ョ湅鍗忎細鏅哄簱妗f",
+							// 	url: "../flow_manage/addAssociationLibraryList.html",
+							// 	totab: true,
+							// 	sceneCode: "query",
+							// 	opentype: "add",
+							// 	data: row,
+							// 	delta: {},
+							// 	callback: function(obj, callback) {
+							// 		if (callback) {
+							// 			callback();
+							// 		}
+							// 	}
+							// };
+							// // this.doPopup(config);
+							// this.tabCardClick(config);
+						},
+						cellButtonClick(obj) {
+							var type_ = obj.column.property;
+							var row = obj.row;
+							var field = "name";
+							var tips = "";
+							
+							if(type_ == "delete"){
+								this.delData(row,field,tips);
+							} else if (type_ == "update"){
+								this.editData(obj);
+							} else if (type_ == "query"){
+								this.queryData(row);
+							}
+						},
+						//淇敼鏁版嵁浜嬩欢
+						onEditData(config, scope) {
+							var me = this;
+							var row = scope.row;
+							// var config = {
+							// 	width: 1000,
+							// 	height: 550,
+							// 	title: "缂栬緫瀹㈡埛涓绘暟鎹�",
+							// 	url: "../home/masterDataAdd.html",
+							// 	totab: true,
+							// 	sceneCode: "edit",
+							// 	opentype: "add",
+							// 	data: row,
+							// 	delta: {},
+							// 	callback: function(obj, callback) {
+							// 		me.initData();
+							// 		if (callback) {
+							// 			callback();
+							// 		}
+							// 	}
+							// };
+							// this.doPopup(config);
+						},
+						
+						
+						
+						//婊氬姩浜嬩欢
+						myFunction(e) {
+							var isToBottom_ = this.isToBottom(e);
+							if (isToBottom_) {
+								this.org_footer = true;
+							}
+							else {
+								this.org_footer = false;
+							}
+						},
+						
+						isToBottom(e) {
+							var bo_ = false;
+							if(e.srcElement.scrollTop + e.srcElement.offsetHeight >= e.srcElement.scrollHeight){
+						銆�銆�銆�銆�//宸茬粡鍒版渶搴曢儴浜�
+								bo_ = true;
+						銆�銆�}
+							return bo_;
+						},
+						
+					}
+				});
+			}
+		
+			loadJsCss(function() {
+				initVue();
+			});
+		</script>
+		
+		
+		<style>
+			[v-cloak] {
+				display: none !important;
+			}
+			
+			.v_header .v_header_query{
+			    padding: 0px 36px;
+			    box-sizing: border-box;
+			}
+		</style>
+	</body>
+</html>
diff --git a/module/system/page/main.html b/module/system/page/main.html
index 4536f68..20d1f7a 100644
--- a/module/system/page/main.html
+++ b/module/system/page/main.html
@@ -7,27 +7,27 @@
 	<meta http-equiv="Cache-control" content="no-cache">
 	<meta http-equiv="Cache" content="no-cache">
 	<title>缁堢鎺ㄥ箍骞冲彴</title>
-	<link href="../css/main.css?v=2024073101" rel="stylesheet">
-	<link href="../../../css/control.css?v=2024073101" rel="stylesheet">
-	<link href="../../../css/page.css?v=2024073101" rel="stylesheet">
-	<link href="../../../css/icon/iconfont.css?v=2024073101" rel="stylesheet">
+	<link href="../css/main.css?v=2024080201" rel="stylesheet">
+	<link href="../../../css/control.css?v=2024080201" rel="stylesheet">
+	<link href="../../../css/page.css?v=2024080201" rel="stylesheet">
+	<link href="../../../css/icon/iconfont.css?v=2024080201" rel="stylesheet">
 	<link href="../../../js/vue/element-ui/lib/theme-chalk/index.css" rel="stylesheet">
 	<link href="../../../img/org/head.png" rel="shortcut icon" type="image/x-icon">
-	<link href="../../../css/myelement.css?v=2024073101" rel="stylesheet">
+	<link href="../../../css/myelement.css?v=2024080201" rel="stylesheet">
 	
 	<script src="../../../js/jquery-3.5.1.min.js"></script>
 	<script src="../../../js/vue/vue.js"></script>
 	
-	<script src="../../../js/config.js?v=2024073101"></script>
+	<script src="../../../js/config.js?v=2024080201"></script>
 	<script src="../../../data/data.js"></script>
 	<script src="../../../js/vue/elementDefault.js"></script>
 	<script src="../../../js/vue/element-ui/lib/index.js"></script>
 	<script src="../../../js/Sortable.js"></script>
-	<script src="../../../js/vue/page.js?v=2024073101"></script>
-	<script src="../../../js/foundation.js?v=2024073101"></script>
-	<script src="../../../js/control.js?v=2024073101"></script>
+	<script src="../../../js/vue/page.js?v=2024080201"></script>
+	<script src="../../../js/foundation.js?v=2024080201"></script>
+	<script src="../../../js/control.js?v=2024080201"></script>
 	<script src="../../../js/loadJsCss.js"></script>
-	<script src="../../../js/myelement.js?v=2024073101"></script>
+	<script src="../../../js/myelement.js?v=2024080201"></script>
 	
 </head>
 	
@@ -50,7 +50,7 @@
 			<div id="pnl_header" class="header">
 				<!-- 椤堕儴鑿滃崟鐨勬敹璧峰睍寮� -->
 				<div v-show="cardtablist.length > 1" id="btn_toggle" class="but_toggle">
-					<el-popover v-model="showTopMenu" placement="bottom-start"  trigger="click" popper-class="h_top_menu ">
+					<el-popover v-model="showTopMenu" placement="bottom-start"  trigger="click" popper-class="h_top_menu " @show="top_popup_background = true" @hide="onContentClick">
 					  <template v-for="pageno in cardlist_pagesize">
 					  	<div v-if="cardtablist[(cardlist_pagesize * (pagenum - 1)) + (pageno - 1)]" 
 					  	:class="['h_card', selectCard.id == cardtablist[(cardlist_pagesize * (pagenum - 1)) + (pageno - 1)].id ? 'active_card' : '']" 
@@ -847,6 +847,8 @@
 					this.isshowmessage = false;
 					// 涓婚璁剧疆
 					this.isshowthemeconfig = false;
+					// 妗岄潰寮瑰嚭
+					this.showTopMenu = false;
 					
 					this.message_show = false;
 					this.div_message_show = false;
diff --git a/module/target/page/customer_target_list.html b/module/target/page/customer_target_list.html
index 9e7c53b..b4212f7 100644
--- a/module/target/page/customer_target_list.html
+++ b/module/target/page/customer_target_list.html
@@ -25,8 +25,8 @@
 							// // {code: "Closed", name: "澶辨晥", dataname:"so_implant", filterTxt: "state_code='Open'",},
 							// {code: "All", name: "鍏ㄩ儴", dataname: "md_target_dealer", filterTxt: "1 = 1", orderby: "update_time desc"},
 
-							{code: "Open", name: "鍟嗛噰鎸囨爣", dataname: "md_target_dealer", filterTxt: "(type_code='target_dealer_sc' or type_code='dealer')", orderby: "md_target_dealer.update_time desc"},
-							{code: "TargetSum", name: "妞嶅叆鎬绘寚鏍�", dataname: "md_target_dealer", filterTxt: "(type_code='target_dealer_zr' or type_code='implant')", orderby: "md_target_dealer.update_time desc"},
+							{code: "Open", name: "鎺ㄥ箍鍟嗘寚鏍�", dataname: "md_target_dealer", filterTxt: "(type_code='target_dealer_sc' or type_code='dealer')", orderby: "md_target_dealer.update_time desc"},
+							{code: "TargetSum", name: "鐪佸尯缁忕悊鎸囨爣", dataname: "md_target_dealer", filterTxt: "(type_code='target_dealer_zr' or type_code='implant')", orderby: "md_target_dealer.update_time desc"},
 							// {code: "Apply", name: "鎸囨爣鐢宠", dataname: "md_target_apply", filterTxt: "1 = 1", orderby: "update_time desc"},
 						],
 						tabs: [],
diff --git a/module/target/page/terminal_target_list.html b/module/target/page/terminal_target_list.html
index 2c0a148..5b8ecdb 100644
--- a/module/target/page/terminal_target_list.html
+++ b/module/target/page/terminal_target_list.html
@@ -2,7 +2,7 @@
 <html>
 	<head>
 		<meta charset="utf-8"><meta http-equiv="Expires" content="0"><meta http-equiv="Pragma" content="no-cache"><meta http-equiv="Cache-control" content="no-cache"><meta http-equiv="Cache" content="no-cache">
-		<title>鐩爣鍖婚櫌</title>
+		<title>缁堢鎸囨爣</title>
 		
 		<script type="text/javascript">
 			var pageVue = null;
@@ -15,7 +15,7 @@
 				pageVue = new TabTableVue({
 					el: "#vbody",
 					data: {
-						title: "鐩爣鍖婚櫌",
+						title: "缁堢鎸囨爣",
 
 						//Tab椤硅缃�
 						tabs_d: [
@@ -26,7 +26,7 @@
 						],
 						tabs: [],
 						tabsobj: {},
-						
+						isShowTab: false,
 						filterFields: [],
 						tableFields: [],
 						tableData: [],
@@ -852,7 +852,7 @@
 						</el-button-group> -->
 					</div>
 				</div>
-				<div>
+				<div v-show="isShowTab">
 					<el-tabs v-model="activeTabName" @tab-click="handleClick">
 						<el-tab-pane v-for="(tab, k) in tabs" :label="tab.name" :name="tab.code" :key="k"></el-tab-pane>
 					</el-tabs>
diff --git a/module/visit/page/script_list.html b/module/visit/page/script_list.html
index b9ad7d2..8c6d440 100644
--- a/module/visit/page/script_list.html
+++ b/module/visit/page/script_list.html
@@ -14,9 +14,9 @@
 				new ListVue({
 					el: "#vbody",
 					data: {
-						dataname: "md_org_account_position_list",
+						dataname: "md_common_phrases",
 						title: "璇濇湳绠$悊",
-						orderby: "md_org_account_position.update_time desc",
+						orderby: "",
 						filterfieldClick: {},
 						tablefieldClick: {},
 						formfieldClick: {},
diff --git a/module/visit/page/visit_log_list.html b/module/visit/page/visit_log_list.html
index 83832a0..01e180e 100644
--- a/module/visit/page/visit_log_list.html
+++ b/module/visit/page/visit_log_list.html
@@ -20,7 +20,7 @@
 						tabs_d: [
 							{code: "month", name: "鏈堝害缁熻", dataname: "v_customer_visition", filterTxt: "", orderby: ""},
 							{code: "detail", name: "鎷滆鏄庣粏", dataname: "md_terminal_visition", filterTxt: "", orderby: ""},
-							{code: "clocklog", name: "鎵撳崱璁板綍", dataname: "md_terminal_promotion_detail", filterTxt: "", orderby: ""},
+							{code: "clocklog", name: "鎵撳崱璁板綍", dataname: "md_terminal_visition_detail", filterTxt: "", orderby: ""},
 						],
 						d_tabs: {
 							month: true,
diff --git a/module/visit/page/visit_schedule_list.html b/module/visit/page/visit_schedule_list.html
index 393fc15..a0ced22 100644
--- a/module/visit/page/visit_schedule_list.html
+++ b/module/visit/page/visit_schedule_list.html
@@ -15,7 +15,7 @@
 				pageVue = new TabTableVue({
 					el: "#vbody",
 					data: {
-						title: "鍖婚櫌绠$悊",
+						title: "鎷滆杩涘害",
 						//Tab椤硅缃�
 						/* 
 						 schedule	杩涘害姹囨��
@@ -24,8 +24,8 @@
 						 */
 						tabs_d: [
 							{code: "schedule", name: "杩涘害姹囨��", dataname: "v_customer_promotion", filterTxt: "", orderby: ""},
-							{code: "detail", name: "杩涘害鏄庣粏", dataname: "", filterTxt: "md_terminal_promotion", orderby: ""},
-							{code: "warning", name: "棰勮鍒楄〃", dataname: "", filterTxt: "md_terminal_promotion_detail", orderby: ""},
+							{code: "detail", name: "杩涘害鏄庣粏", dataname: "md_terminal_promotion", filterTxt: "", orderby: ""},
+							{code: "warning", name: "棰勮鍒楄〃", dataname: "md_terminal_promotion_detail", filterTxt: "", orderby: ""},
 						],
 						d_tabs: {
 							hospital: true,
@@ -206,6 +206,11 @@
 											filterFields_.push(filter_f);
 										}
 									})
+									
+									me.selectTabObj.tableData.map(d=>{
+										d.val_ratio = 50
+									})
+									
 									if (!me.selectTabObj.filterFields || (me.selectTabObj.filterFields && me.selectTabObj.filterFields.length == 0)) {
 										me.selectTabObj.filterFields = clone(filterFields_);
 										me.selectTabObj.tableFields = clone(tableFields_);
@@ -238,40 +243,41 @@
 								}
 							};
 							//杈栧尯鍙樻洿
-							var tablefieldClick_info = {
-								//waiting
-								hospital_code: {//瀛楁浜嬩欢璁剧疆
-									val: {//鏈夊�兼椂鐨勭偣鍑讳簨浠�
-										onclick: function(obj) {//鏁版嵁鍊肩偣鍑讳簨浠�
-											me.showChangeInfo(obj); 
+							var tablefieldClick_detail = {
+							
+								code: { //瀛楁浜嬩欢璁剧疆
+									val: { //鏈夊�兼椂鐨勭偣鍑讳簨浠�
+										notclick_val: "", //涓嶅彲鐐瑰嚮鐨勫��,1銆佹槸鏁扮粍["11","22"]锛�2銆佷互鈥�;鈥濆垎闅旂殑瀛楃涓�"111;222"
+										notclick_bindfield: [], //褰撹瀛楁鍊肩瓑浜庢寚瀹氬瓧娈靛�兼椂涓嶅彲鐐瑰嚮["filterfield": "111"]
+										onclick: function(obj) { //鏁版嵁鍊肩偣鍑讳簨浠�
+											me.showInfo(obj)
 										},
 									},
 								},
-								state_name: {//鐘舵��
-									val: {//鏈夊�兼椂鐨勭偣鍑讳簨浠�
-										notclick_val: ["鑽夌","鑽夌"],
-										notclick_bindfield: [],
-										onclick: function(obj) {
-											var config = {
-												totab: false,
-												width: "1100px",
-												height: "520px",
-												icon: "icon-product",
-												text: "娴佺▼姝ラ",
-												id: "popup_workflow_step_user" + obj.row.id,
-												url: "module/tool/page/popup_workflow_step_user.html?v=2023020703",
-												data: obj.row,
-												delta: {},
-												sceneCode: "browse",
-												callback: function(obj, callback) {
-													if (callback) {
-														callback();
-													}
-												}
-											};
-											me.doPopupByPublic(config);
-										},
-									},	
+								is_clinical: {
+									chart: {
+										type: "progress",// 杩涘害鏉$被鍨�
+										field: "val_ratio",//杩涘害鍊煎瓧娈�
+										progresswidth: 20,//绮楀害
+										isshowtext: true,//鏄惁鏄剧ず鍊�
+										istextinside: true//鏄惁鍦ㄨ繘搴︽潯鍐呮樉绀哄��
+									}
+								},
+								is_clinical_purchase: {
+									chart: {
+										type: "progress",
+										field: "val_ratio",
+										progresswidth: 10,
+										isshowtext: true
+									}
+								},
+								is_formal_purchase: {
+									chart: {
+										type: "progress",
+										field: "val_ratio",
+										progresswidth: 10,
+										isshowtext: false
+									}
 								},
 							};
 							//鍖婚櫌鎺堟潈鍒楄〃
@@ -371,8 +377,8 @@
 							var filterfieldClick = {};
 							
 							//鍖婚櫌绠$悊鍒楄〃-杈栧尯鍖婚櫌tab
-							if (this.selectTabObj.code == "hospital") {
-								this.selectTabObj.tablefieldClick = tablefieldClick_hospital;
+							if (this.selectTabObj.code == "detail") {
+								this.selectTabObj.tablefieldClick = tablefieldClick_detail;
 							}
 							//杈栧尯鏂板/鍙樻洿-杈栧尯瀹℃壒涓�佸叏閮ㄨ緰鍖虹敵璇穞ab
 							else if (this.selectTabObj.code == "infoUnderApproval" || this.selectTabObj.code == "infoAll") {

--
Gitblit v1.8.0