Bläddra i källkod

Merge branch 'master' of http://47.101.159.18:3000/Muchinfo/MTP2.0_WEB

Administrator 4 år sedan
förälder
incheckning
08e48e38ce
46 ändrade filer med 1316 tillägg och 758 borttagningar
  1. 42 61
      generate-code/cli.js
  2. 4 0
      src/assets/styles/mixin.less
  3. 43 43
      src/common/constants/enumOrderComponents.ts
  4. 251 0
      src/common/constants/enumRouterName.ts
  5. 309 309
      src/common/constants/modalNameEnum.ts
  6. 38 0
      src/common/setup/matket/router.ts
  7. 17 2
      src/common/setup/table/button.ts
  8. 3 2
      src/common/setup/table/interface.ts
  9. 14 13
      src/router/index.ts
  10. 3 2
      src/views/business/exposure/list/futures/index.vue
  11. 3 2
      src/views/business/exposure/list/realTime/index.vue
  12. 3 2
      src/views/business/exposure/list/spot/index.vue
  13. 3 2
      src/views/business/plan/list/audit/index.vue
  14. 3 2
      src/views/business/plan/list/running/index.vue
  15. 3 2
      src/views/business/plan/list/uncommitted/index.vue
  16. 3 2
      src/views/business/purchase/list/all/index.vue
  17. 3 2
      src/views/business/purchase/list/pending/index.vue
  18. 3 2
      src/views/business/purchase/list/performance/index.vue
  19. 3 2
      src/views/business/sell/list/all/index.vue
  20. 3 2
      src/views/business/sell/list/pending/index.vue
  21. 3 2
      src/views/business/sell/list/performance/index.vue
  22. 2 1
      src/views/information/account_info/list/account_info_business/index.vue
  23. 3 2
      src/views/information/spot-contract/list/checkpending/index.vue
  24. 3 2
      src/views/information/spot-contract/list/finished/index.vue
  25. 3 2
      src/views/information/spot-contract/list/performance/index.vue
  26. 3 2
      src/views/information/spot-contract/list/unsubmitted/index.vue
  27. 0 17
      src/views/market/spot_trade/capacity_pre_sale/capacity_pre_sale_floating_price/index.vue
  28. 0 58
      src/views/market/spot_trade/capacity_pre_sale/index.vue
  29. 35 0
      src/views/market/spot_trade/components/buy-sell-market/index.vue
  30. 57 0
      src/views/market/spot_trade/components/detail/index.vue
  31. 49 0
      src/views/market/spot_trade/components/post_buying/index.vue
  32. 111 0
      src/views/market/spot_trade/setup.ts
  33. 31 0
      src/views/market/spot_trade/warehouse_pre_sale/index.vue
  34. 18 0
      src/views/market/spot_trade/warehouse_pre_sale/warehouse_pre_sale_floating_price/index.vue
  35. 6 3
      src/views/market/spot_trade/warehouse_pre_sale/warehouse_pre_sale_price/index.vue
  36. 13 39
      src/views/market/spot_trade/warehouse_receipt_trade/index.vue
  37. 57 7
      src/views/market/spot_trade/warehouse_receipt_trade/warehouse_receipt_trade_floating_price/index.vue
  38. 5 6
      src/views/market/spot_trade/warehouse_receipt_trade/warehouse_receipt_trade_price/index.vue
  39. 3 2
      src/views/platinum/platinum_agreement/list/tab/index.vue
  40. 148 157
      src/views/report/exposure-report/list/exposure_report/index.vue
  41. 2 1
      src/views/report/finance-report/list/finance_report_finance/index.vue
  42. 2 1
      src/views/report/future_report/list/future_report/index.vue
  43. 2 1
      src/views/report/inventory-report/list/category/index.vue
  44. 2 1
      src/views/report/inventory-report/list/warehouse/index.vue
  45. 2 1
      src/views/report/spot-report/list/spot_report/index.vue
  46. 2 1
      src/views/report/sum_pl_report/list/sum_pl_report/index.vue

+ 42 - 61
generate-code/cli.js

@@ -22,75 +22,56 @@ const list = JSON.parse(fs.readFileSync('./generate-code/pc_menu_企业风管.js
 // const destDir = process.cwd();
 const destDir = path.join(process.cwd(), 'src');
 
+function action(type, name, path) {
+	function getEnum(arr, callback) {
+		arr.forEach((el) => {
+			const { code, title, children } = el;
+			if (el.type === type) {
+				// 按钮类型
+				fs.promises.readFile(path).then((res) => {
+					console.log(code);
+					if (!name.includes(code)) {
+						name += `
+						${code} = '${code}', // ${title}
+						`;
+						callback();
+					}
+					getEnum(children, callback);
+				});
+			} else {
+				getEnum(children, callback);
+			}
+		});
+	}
+	getEnum(list, () => {
+		const temp =
+			name +
+			`
+		}`;
+		fs.writeFileSync(path, temp, { flag: 'w+' }, (err) => {
+				// !err && console.log('写入文件成功!');
+		});
+	});
+}
+
 /*** ===================== 生成弹窗名枚举 ==================== ****/
 const enumPath = path.join(destDir, '/common/constants/modalNameEnum.ts');
-let name = `export enum ModalEnum {
+const name = `export enum ModalEnum {
     notice = 'notice',  // 消息
     logout = 'logout', // 退出登录
     commomOrder = 'commom-order', // 下单通用界面
 
     detail = 'detail', // 详情`;
-
-function getModalEnum(arr, callback) {
-	arr.forEach((el) => {
-		const { code, title, children, type } = el;
-		if (type === 2) {
-			// 按钮类型
-			fs.promises.readFile(enumPath).then((res) => {
-				console.log(code);
-				if (!name.includes(code)) {
-					name += `
-					${code} = '${code}', // ${title}
-					`;
-					callback();
-				}
-				getModalEnum(children, callback);
-			});
-		} else {
-			getModalEnum(children, callback);
-		}
-	});
-}
-
-getModalEnum(list, () => {
-const temp =
-	name +
-	`
-}`;
-	fs.writeFileSync(enumPath, temp, { flag: 'w+' }, (err) => {
-		// !err && console.log('写入文件成功!');
-	});
-});
+action(2, name, enumPath)
 
 /*** ===================== 生成单据组件名枚举 ==================== ****/
 const enumOrderPath = path.join(destDir, '/common/constants/enumOrderComponents.ts');
-let orderName = `// 组件名枚举
+const orderName = `// 组件名枚举
 export enum enumOrderComponents {`;
-function getOrderName(arr, callback) {
-	arr.forEach((el) => {
-		const { code, title, children, type } = el;
-		if (type === 4) {
-			// 单据类型
-			fs.promises.readFile(enumOrderPath).then((res) => {
-				if (!orderName.includes(code)) {
-					orderName += `
-					${code} = '${code}', // ${title}
-					`;
-					callback();
-				}
-				getOrderName(children, callback);
-			});
-		} else {
-			getOrderName(children, callback);
-		}
-	});
-}
-getOrderName(list, () => {
-	const temp =
-	orderName +
-		`
-}`;
-	fs.writeFileSync(enumOrderPath, temp, { flag: 'w+' }, (err) => {
-		// !err && console.log('写入文件成功!');
-	});
-});
+action(4, orderName, enumOrderPath)
+
+/*** ===================== 生成路由名枚举 ==================== ****/
+const enumRouterPath = path.join(destDir, '/common/constants/enumRouterName.ts');
+const routerName = `// 路由名 枚举
+export enum EnumRouterName {`;
+action(1, routerName, enumRouterPath)

+ 4 - 0
src/assets/styles/mixin.less

@@ -1606,4 +1606,8 @@ input:-internal-autofill-selected {
             line-height: 30px;
         }
     }
+}
+
+.topTableHeight {
+    height: calc(100% - 28px);
 }

+ 43 - 43
src/common/constants/enumOrderComponents.ts

@@ -1,45 +1,45 @@
 // 组件名枚举
 export enum enumOrderComponents {
-    bottom = 'bottom', // 底部单据菜单
-
-    spot_warrant = 'spot_warrant', // 现货仓单
-
-    pre_sale_warehouse_receipt = 'pre_sale_warehouse_receipt', // 预售仓单
-
-    performance_information = 'performance_information', // 履约信息
-
-    funding_information = 'funding_information', // 资金信息
-
-    spot_warrant_spot_summary = 'spot_warrant_spot_summary', // 现货汇总
-
-    spot_warrant_inventory_summary = 'spot_warrant_inventory_summary', // 库存汇总
-
-    spot_warrant_spot_details = 'spot_warrant_spot_details', // 现货明细
-
-    spot_warrant_pending_order = 'spot_warrant_pending_order', // 挂单
-
-    spot_warrant_deal = 'spot_warrant_deal', // 成交
-
-    spot_warrant_in_and_out_warehouse = 'spot_warrant_in_and_out_warehouse', // 出入库
-
-    pre_sale_warehouse_receipt_order_summary = 'pre_sale_warehouse_receipt_order_summary', // 订单汇总
-
-    spot_warrant_designated_deal = 'spot_warrant_designated_deal', // 指定成交
-
-    pre_sale_warehouse_receipt_designated_deal = 'pre_sale_warehouse_receipt_designated_deal', // 指定成交
-
-    performance_information_buy_performance = 'performance_information_buy_performance', // 买履约
-
-    pre_sale_warehouse_receipt_pending_order = 'pre_sale_warehouse_receipt_pending_order', // 挂单
-
-    pre_sale_warehouse_receipt_deal = 'pre_sale_warehouse_receipt_deal', // 成交
-
-    performance_information_sell_performance = 'performance_information_sell_performance', // 卖履约
-
-    funding_information_funding_summary = 'funding_information_funding_summary', // 资金汇总
-
-    funding_information_funding_log = 'funding_information_funding_log', // 资金流水
-
-    pre_sale_warehouse_receipt_designated_deal_resell = 'pre_sale_warehouse_receipt_designated_deal_resell', // 撤销出售
-
-}
+						bottom = 'bottom', // 底部单据菜单
+						
+						spot_warrant = 'spot_warrant', // 现货仓单
+						
+						pre_sale_warehouse_receipt = 'pre_sale_warehouse_receipt', // 预售仓单
+						
+						funding_information = 'funding_information', // 资金信息
+						
+						performance_information = 'performance_information', // 履约信息
+						
+						spot_warrant_spot_summary = 'spot_warrant_spot_summary', // 现货汇总
+						
+						spot_warrant_inventory_summary = 'spot_warrant_inventory_summary', // 库存汇总
+						
+						spot_warrant_spot_details = 'spot_warrant_spot_details', // 现货明细
+						
+						spot_warrant_pending_order = 'spot_warrant_pending_order', // 挂单
+						
+						spot_warrant_designated_deal = 'spot_warrant_designated_deal', // 指定成交
+						
+						spot_warrant_in_and_out_warehouse = 'spot_warrant_in_and_out_warehouse', // 出入库
+						
+						spot_warrant_deal = 'spot_warrant_deal', // 成交
+						
+						pre_sale_warehouse_receipt_order_summary = 'pre_sale_warehouse_receipt_order_summary', // 订单汇总
+						
+						pre_sale_warehouse_receipt_pending_order = 'pre_sale_warehouse_receipt_pending_order', // 挂单
+						
+						pre_sale_warehouse_receipt_designated_deal = 'pre_sale_warehouse_receipt_designated_deal', // 指定成交
+						
+						pre_sale_warehouse_receipt_deal = 'pre_sale_warehouse_receipt_deal', // 成交
+						
+						funding_information_funding_summary = 'funding_information_funding_summary', // 资金汇总
+						
+						funding_information_funding_log = 'funding_information_funding_log', // 资金流水
+						
+						performance_information_buy_performance = 'performance_information_buy_performance', // 买履约
+						
+						performance_information_sell_performance = 'performance_information_sell_performance', // 卖履约
+						
+						pre_sale_warehouse_receipt_designated_deal_resell = 'pre_sale_warehouse_receipt_designated_deal_resell', // 撤销出售
+						
+		}

+ 251 - 0
src/common/constants/enumRouterName.ts

@@ -0,0 +1,251 @@
+// 路由名 枚举
+export enum EnumRouterName {
+    info = 'info', // 信息
+
+    manage = 'manage', // 管理
+
+    search = 'search', // 查询
+
+    market = 'market', // 市场
+
+    platinum = 'platinum', // 铂金宝
+
+    business = 'business', // 业务
+
+    report = 'report', // 报表
+
+    remark = 'remark', //
+
+    spot_contract = 'spot_contract', // 现货合同
+
+    custom_info = 'custom_info', // 客户资料
+
+    account_info = 'account_info', // 账户管理
+
+    business_review = 'business_review', // 业务审核
+
+    goods_info = 'goods_info', // 商品信息
+
+    inventory_review = 'inventory_review', // 库存审核
+
+    finance_review = 'finance_review', // 财务审核
+
+    warehouse_info = 'warehouse_info', // 仓库信息
+
+    outaccount_status = 'outaccount_status', // 账户状态
+
+    spot_trade = 'spot_trade', // 现货贸易
+
+    futures = 'futures', // 期货
+
+    platinum_customer_info = 'platinum_customer_info', // 客户资料
+
+    platinum_pick_goods_management = 'platinum_pick_goods_management', // 提货商品管理
+
+    platinum_pick_query = 'platinum_pick_query', // 提货查询
+
+    platinum_recharge_withdrawal_review = 'platinum_recharge_withdrawal_review', // 充值和提现审核
+
+    platinum_fixed_investment_price_query = 'platinum_fixed_investment_price_query', // 定投价查询
+
+    platinum_fixed_investment_query = 'platinum_fixed_investment_query', // 定投查询
+
+    platinum_document_query = 'platinum_document_query', // 单据查询
+
+    platinum_contract_goods = 'platinum_contract_goods', // 合约商品
+
+    platinum_agents_and_stores = 'platinum_agents_and_stores', // 代理和门店
+
+    platinum_spot_and_price = 'platinum_spot_and_price', // 现货市价
+
+    platinum_contract_commodity_suspension = 'platinum_contract_commodity_suspension', // 合约商品停牌
+
+    platinum_agreement = 'platinum_agreement', // 协议管理
+
+    platinum_financing_information = 'platinum_financing_information', // 融资信息
+
+    purchase = 'purchase', // 采购
+
+    sell = 'sell', // 销售
+
+    exposure = 'exposure', // 敞口
+
+    plan = 'plan', // 计划
+
+    exposure_report = 'exposure_report', // 敞口报表
+
+    finance_report = 'finance_report', // 财务报表
+
+    sum_pl_report = 'sum_pl_report', // 汇总损益报表
+
+    future_report = 'future_report', // 期货报表
+
+    spot_report = 'spot_report', // 现货报表
+
+    inventory_report = 'inventory_report', // 库存报表
+
+    spot_contract_unsubmitted = 'spot_contract_unsubmitted', // 未提交
+
+    spot_contract_checkpending = 'spot_contract_checkpending', // 待审核
+
+    spot_contract_finished = 'spot_contract_finished', // 已完成
+
+    spot_contract_performance = 'spot_contract_performance', // 履约中
+
+    custom_info_unsubmit = 'custom_info_unsubmit', // 未提交
+
+    custom_info_normal = 'custom_info_normal', // 正常
+
+    custom_info_checkpending = 'custom_info_checkpending', // 待审核
+
+    custom_info_disabled = 'custom_info_disabled', // 停用
+
+    account_info_business = 'account_info_business', // 业务账户
+
+    account_info_manager = 'account_info_manager', // 管理账户
+
+    account_info_trade = 'account_info_trade', // 交易账户
+
+    account_info_futures = 'account_info_futures', // 期货账户
+
+    business_review_someprice = 'business_review_someprice', // 点价
+
+    business_review_settlement = 'business_review_settlement', // 交收
+
+    goods_info_spot = 'goods_info_spot', // 现货品种
+
+    goods_info_hedge = 'goods_info_hedge', // 套保品种
+
+    inventory_review_checkout = 'inventory_review_checkout', // 出库
+
+    inventory_review_checkin = 'inventory_review_checkin', // 入库
+
+    finance_review_funds = 'finance_review_funds', // 款项
+
+    finance_review_invoice = 'finance_review_invoice', // 发票
+
+    warehouse_info_normal = 'warehouse_info_normal', // 正常
+
+    warehouse_info_disabled = 'warehouse_info_disabled', // 停用
+
+    outaccount_status_status = 'outaccount_status_status', // 账户状态
+
+    inventory_current = 'inventory_current', // 当前库存
+
+    warehouse_receipt_trade = 'warehouse_receipt_trade', // 仓单贸易
+
+    inventory_applyrecord = 'inventory_applyrecord', // 申请记录
+
+    warehouse_pre_sale = 'warehouse_pre_sale', // 仓单预售
+
+    dominant_contract = 'dominant_contract', // 主力
+
+    main_contract = 'main_contract', // 主连
+
+    night_plate = 'night_plate', // 夜盘
+
+    position = 'position', // 持仓
+
+    orderdetail = 'orderdetail', // 委托
+
+    closedetail = 'closedetail', // 平仓
+
+    tradedetail = 'tradedetail', // 成交
+
+    platinum_custom_info_normal = 'platinum_custom_info_normal', // 正常
+
+    platinum_customer_info_unsubmit = 'platinum_customer_info_unsubmit', // 待审核
+
+    platinum_customer_info_stop = 'platinum_customer_info_stop', // 停用
+
+    platinum_pick_goods_management_tab = 'platinum_pick_goods_management_tab', // 提货商品管理
+
+    platinum_pick_query_tab = 'platinum_pick_query_tab', // 提货查询
+
+    platinum_recharge_review_tab = 'platinum_recharge_review_tab', // 充值审核
+
+    platinum_withdrawal_review_tab = 'platinum_withdrawal_review_tab', // 提现审核
+
+    platinum_fixed_investment_price_query_tab = 'platinum_fixed_investment_price_query_tab', // 定投价查询
+
+    platinum_fixed_investment_plan_query = 'platinum_fixed_investment_plan_query', // 定投计划查询
+
+    platinum_fixed_investment_flow_query = 'platinum_fixed_investment_flow_query', // 定投流水查询
+
+    platinum_document_query_position = 'platinum_document_query_position', // 持仓
+
+    platinum_document_query_order = 'platinum_document_query_order', // 委托单
+
+    platinum_document_query_success = 'platinum_document_query_success', // 成交单
+
+    platinum_document_query_waiting = 'platinum_document_query_waiting', // 待付单
+
+    platinum_contract_goods_tab = 'platinum_contract_goods_tab', // 合约商品
+
+    platinum_agents_and_stores_tab = 'platinum_agents_and_stores_tab', // 代理和门店
+
+    platinum_spot_and_price_tab = 'platinum_spot_and_price_tab', // 现货市价
+
+    platinum_contract_commodity_suspension_tab = 'platinum_contract_commodity_suspension_tab', // 合约商品停牌
+
+    platinum_agreement_tab = 'platinum_agreement_tab', // 协议管理
+
+    platinum_financing_information_tab = 'platinum_financing_information_tab', // 融资信息
+
+    purchase_pending = 'purchase_pending', // 待点价
+
+    purchase_performance = 'purchase_performance', // 履约交收
+
+    purchase_all = 'purchase_all', // 全部
+
+    sell_pending = 'sell_pending', // 待点价
+
+    sell_performance = 'sell_performance', // 履约交收
+
+    sell_all = 'sell_all', // 全部
+
+    exposure_realtime = 'exposure_realtime', // 实时敞口
+
+    exposure_spot = 'exposure_spot', // 现货头寸
+
+    exposure_futures = 'exposure_futures', // 期货头寸
+
+    exposure_history = 'exposure_history', // 历史敞口
+
+    plan_uncommitted = 'plan_uncommitted', // 未提交
+
+    plan_audit = 'plan_audit', // 待审核
+
+    plan_running = 'plan_running', // 执行中
+
+    exposure_report_exposure = 'exposure_report_exposure', // 敞口报表
+
+    finance_report_finance = 'finance_report_finance', // 财务报表
+
+    sum_pl_report_sum_pl = 'sum_pl_report_sum_pl', // 汇总损益报表
+
+    future_report_future = 'future_report_future', // 期货报表
+
+    spot_report_spot = 'spot_report_spot', // 现货报表
+
+    inventory_report_inventory_category = 'inventory_report_inventory_category', // 库存报表(品类)
+
+    inventory_report_warehouse = 'inventory_report_warehouse', // 库存报表(仓库)
+
+    goods_info_spot_disable = 'goods_info_spot_disable', // 停用
+
+    goods_info_hedge_normal = 'goods_info_hedge_normal', // 正常
+
+    goods_info_hedge_disable = 'goods_info_hedge_disable', // 停用
+
+    warehouse_receipt_trade_price = 'warehouse_receipt_trade_price', // 一口价挂牌
+
+    warehouse_receipt_trade_floating_price = 'warehouse_receipt_trade_floating_price', // 浮动价挂牌
+
+    warehouse_pre_sale_floating_price = 'warehouse_pre_sale_floating_price', // 浮动价预售
+
+    warehouse_pre_sale_price = 'warehouse_pre_sale_price', // 一口价预售
+
+    goods_info_spot_normal = 'goods_info_spot_normal', // 正常
+
+}

+ 309 - 309
src/common/constants/modalNameEnum.ts

@@ -4,312 +4,312 @@ export enum ModalEnum {
     commomOrder = 'commom-order', // 下单通用界面
 
     detail = 'detail', // 详情
-					spot_warrant_inventory_summary_detail = 'spot_warrant_inventory_summary_detail', // 仓单明细
-					
-					spot_warrant_spot_details_listed = 'spot_warrant_spot_details_listed', // 挂牌
-					
-					spot_warrant_deal_detail = 'spot_warrant_deal_detail', // 详情
-					
-					spot_warrant_pending_order_cancel_order = 'spot_warrant_pending_order_cancel_order', // 撤单
-					
-					spot_warrant_designated_deal_ignore = 'spot_warrant_designated_deal_ignore', // 忽略
-					
-					spot_warrant_designated_deal_confirm_purchase = 'spot_warrant_designated_deal_confirm_purchase', // 确定购买
-					
-					spot_warrant_in_and_out_warehouse_logistics_information = 'spot_warrant_in_and_out_warehouse_logistics_information', // 物流信息
-					
-					spot_warrant_spot_summary_check = 'spot_warrant_spot_summary_check', // 查看库存
-					
-					spot_warrant_spot_details_pick_up = 'spot_warrant_spot_details_pick_up', // 提货
-					
-					spot_warrant_in_and_out_warehouse_revoke = 'spot_warrant_in_and_out_warehouse_revoke', // 撤销
-					
-					pre_sale_warehouse_receipt_pending_order_cancel_order = 'pre_sale_warehouse_receipt_pending_order_cancel_order', // 撤单
-					
-					spot_warrant_designated_deal_resell = 'spot_warrant_designated_deal_resell', // 撤销出售
-					
-					pre_sale_warehouse_receipt_designated_deal_confirm_purchase = 'pre_sale_warehouse_receipt_designated_deal_confirm_purchase', // 确定购买
-					
-					pre_sale_warehouse_receipt_designated_deal_ignore = 'pre_sale_warehouse_receipt_designated_deal_ignore', // 忽略
-					
-					performance_information_buy_performance_pay = 'performance_information_buy_performance_pay', // 付款
-					
-					performance_information_buy_performance_breach_contract = 'performance_information_buy_performance_breach_contract', // 违约
-					
-					performance_information_buy_performance_detail = 'performance_information_buy_performance_detail', // 详情
-					
-					pre_sale_warehouse_receipt_order_summary_listed = 'pre_sale_warehouse_receipt_order_summary_listed', // 挂牌
-					
-					performance_information_sell_performance_extension = 'performance_information_sell_performance_extension', // 延期
-					
-					pre_sale_warehouse_receipt_deal_detail = 'pre_sale_warehouse_receipt_deal_detail', // 详情
-					
-					performance_information_buy_performance_extension = 'performance_information_buy_performance_extension', // 延期
-					
-					performance_information_sell_performance_pay = 'performance_information_sell_performance_pay', // 付款
-					
-					funding_information_funding_summary_recharge = 'funding_information_funding_summary_recharge', // 充值
-					
-					performance_information_sell_performance_breach_contract = 'performance_information_sell_performance_breach_contract', // 违约
-					
-					performance_information_sell_performance_detail = 'performance_information_sell_performance_detail', // 详情
-					
-					warehouse_receipt_trade_price_post_buying = 'warehouse_receipt_trade_price_post_buying', // 发布求购
-					
-					funding_information_funding_summary_withdraw = 'funding_information_funding_summary_withdraw', // 提现
-					
-					warehouse_receipt_trade_price_delisting = 'warehouse_receipt_trade_price_delisting', // 摘牌
-					
-					warehouse_receipt_trade_price_detail = 'warehouse_receipt_trade_price_detail', // 详情
-					
-					warehouse_receipt_trade_floating_price_post_buying = 'warehouse_receipt_trade_floating_price_post_buying', // 发布求购
-					
-					warehouse_receipt_trade_floating_price_delisting = 'warehouse_receipt_trade_floating_price_delisting', // 摘牌
-					
-					capacity_pre_sale_detail = 'capacity_pre_sale_detail', // 详情
-					
-					capacity_pre_sale_purchase = 'capacity_pre_sale_purchase', // 发布求购
-					
-					capacity_pre_sale_delisting = 'capacity_pre_sale_delisting', // 摘牌
-					
-					open = 'open', // 开仓
-					
-					custom_info_btn_modify = 'custom_info_btn_modify', // 修改
-					
-					custom_info_btn_delete = 'custom_info_btn_delete', // 删除
-					
-					custom_info_btn_cancel = 'custom_info_btn_cancel', // 撤销
-					
-					warehouse_receipt_trade_floating_price_detail = 'warehouse_receipt_trade_floating_price_detail', // 详情
-					
-					close = 'close', // 平仓
-					
-					custom_info_btn_add = 'custom_info_btn_add', // 新增
-					
-					custom_info_btn_disable = 'custom_info_btn_disable', // 停用
-					
-					goods_info_spot_normal_add = 'goods_info_spot_normal_add', // 新增
-					
-					goods_info_spot_normal_modify = 'goods_info_spot_normal_modify', // 修改
-					
-					custom_info_btn_check = 'custom_info_btn_check', // 审核
-					
-					goods_info_hedge_normal_modify = 'goods_info_hedge_normal_modify', // 修改
-					
-					goods_info_spot_normal_disable = 'goods_info_spot_normal_disable', // 停用
-					
-					spot_contract_btn_add = 'spot_contract_btn_add', // 新增
-					
-					custom_info_btn_recover = 'custom_info_btn_recover', // 恢复
-					
-					none_btn = 'none_btn', // 按钮
-					
-					warehouse_info_btn_add = 'warehouse_info_btn_add', // 新增
-					
-					warehouse_info_btn_modify = 'warehouse_info_btn_modify', // 修改
-					
-					warehouse_info_btn_disable = 'warehouse_info_btn_disable', // 停用
-					
-					warehouse_info_btn_recover = 'warehouse_info_btn_recover', // 恢复
-					
-					account_info_business_btn_add = 'account_info_business_btn_add', // 新增
-					
-					account_info_trade_btn_add = 'account_info_trade_btn_add', // 新增
-					
-					account_info_manager_btn_add = 'account_info_manager_btn_add', // 新增权限模板
-					
-					account_info_manager_btn_setting = 'account_info_manager_btn_setting', // 权限设置
-					
-					account_info_futures_btn_add = 'account_info_futures_btn_add', // 新增
-					
-					plan_btn_add = 'plan_btn_add', // 新增
-					
-					business_review_someprice_audit = 'business_review_someprice_audit', // 审核
-					
-					business_review_someprice_cancel = 'business_review_someprice_cancel', // 撤销
-					
-					business_review_settlement_audit = 'business_review_settlement_audit', // 审核
-					
-					business_review_settlement_cancel = 'business_review_settlement_cancel', // 撤销
-					
-					finance_review_funds_audit = 'finance_review_funds_audit', // 审核
-					
-					finance_review_funds_cancel = 'finance_review_funds_cancel', // 撤销
-					
-					finance_review_invoice_audit = 'finance_review_invoice_audit', // 审核
-					
-					finance_review_invoice_cancel = 'finance_review_invoice_cancel', // 撤销
-					
-					inventory_review_checkin_audit = 'inventory_review_checkin_audit', // 审核
-					
-					inventory_review_checkin_cancel = 'inventory_review_checkin_cancel', // 撤销
-					
-					inventory_review_checkout_audit = 'inventory_review_checkout_audit', // 审核
-					
-					inventory_review_checkout_cancel = 'inventory_review_checkout_cancel', // 撤销
-					
-					inventory_current_add = 'inventory_current_add', // 新增
-					
-					platinum_custom_info_add = 'platinum_custom_info_add', // 新增
-					
-					platinum_pick_goods_management_add = 'platinum_pick_goods_management_add', // 新增
-					
-					platinum_pick_query_complete_stocking = 'platinum_pick_query_complete_stocking', // 完成备货
-					
-					platinum_pick_query_upload_logistics = 'platinum_pick_query_upload_logistics', // 上传物流
-					
-					platinum_pick_query_receipt = 'platinum_pick_query_receipt', // 确认收货
-					
-					platinum_pick_query_confirm_pickup = 'platinum_pick_query_confirm_pickup', // 确认取货
-					
-					platinum_recharge_review_confirm_payment = 'platinum_recharge_review_confirm_payment', // 确认收款
-					
-					platinum_recharge_review_refuse = 'platinum_recharge_review_refuse', // 审核拒绝
-					
-					platinum_withdrawal_review_confirm_withdrawal = 'platinum_withdrawal_review_confirm_withdrawal', // 确认提现
-					
-					platinum_withdrawal_review_refuse = 'platinum_withdrawal_review_refuse', // 审核拒绝
-					
-					platinum_financing_information_detail = 'platinum_financing_information_detail', // 融资明细
-					
-					platinum_contract_goods_add = 'platinum_contract_goods_add', // 新增
-					
-					platinum_contract_commodity_suspension_add = 'platinum_contract_commodity_suspension_add', // 新增
-					
-					platinum_agents_and_stores_add = 'platinum_agents_and_stores_add', // 新增
-					
-					platinum_agents_and_stores_modify = 'platinum_agents_and_stores_modify', // 修改
-					
-					platinum_agents_and_stores_logout = 'platinum_agents_and_stores_logout', // 注销
-					
-					platinum_spot_and_price_modify = 'platinum_spot_and_price_modify', // 修改
-					
-					platinum_agreement_add = 'platinum_agreement_add', // 新增
-					
-					platinum_capital_flow = 'platinum_capital_flow', // 积分流水
-					
-					platinum_promotion_report = 'platinum_promotion_report', // 推广报表
-					
-					platinum_broker_management = 'platinum_broker_management', // 经纪人管理
-					
-					spot_contract_btn_modify = 'spot_contract_btn_modify', // 重新提交
-					
-					spot_contract_btn_delete = 'spot_contract_btn_delete', // 删除
-					
-					spot_contract_btn_check = 'spot_contract_btn_check', // 审核
-					
-					spot_contract_btn_finish = 'spot_contract_btn_finish', // 正常完结
-					
-					spot_contract_btn_cancel = 'spot_contract_btn_cancel', // 撤销
-					
-					account_info_business_btn_modify = 'account_info_business_btn_modify', // 修改
-					
-					account_info_business_btn_reset = 'account_info_business_btn_reset', // 重置密码
-					
-					account_info_business_btn_locked = 'account_info_business_btn_locked', // 锁定
-					
-					account_info_business_btn_unlocked = 'account_info_business_btn_unlocked', // 解锁
-					
-					account_info_business_btn_cancel = 'account_info_business_btn_cancel', // 注销
-					
-					account_info_trade_btn_modify = 'account_info_trade_btn_modify', // 修改
-					
-					account_info_trade_child_btn_add = 'account_info_trade_child_btn_add', // 新增
-					
-					account_info_manager_btn_child_add = 'account_info_manager_btn_child_add', // 新增
-					
-					account_info_futures_btn_child_add = 'account_info_futures_btn_child_add', // 新增
-					
-					purchase_pending_settlement = 'purchase_pending_settlement', // 交收登记
-					
-					purchase_pending_someprice = 'purchase_pending_someprice', // 点价登记
-					
-					purchase_pending_funds = 'purchase_pending_funds', // 款项登记
-					
-					purchase_pending_invoice = 'purchase_pending_invoice', // 发票登记
-					
-					purchase_pending_storage = 'purchase_pending_storage', // 入库登记
-					
-					sell_pending_settlement = 'sell_pending_settlement', // 交收登记
-					
-					sell_pending_funds = 'sell_pending_funds', // 款项登记
-					
-					sell_pending_invoice = 'sell_pending_invoice', // 发票登记
-					
-					sell_pending_storage = 'sell_pending_storage', // 出库登记
-					
-					plan_uncommitted_modify = 'plan_uncommitted_modify', // 修改
-					
-					plan_uncommitted_delete = 'plan_uncommitted_delete', // 删除
-					
-					plan_audit_audit = 'plan_audit_audit', // 审核
-					
-					plan_audit_cancel = 'plan_audit_cancel', // 撤销
-					
-					account_info_futures_btn_modify = 'account_info_futures_btn_modify', // 修改
-					
-					sell_pending_someprice = 'sell_pending_someprice', // 点价登记
-					
-					inventory_current_detail_storehouse = 'inventory_current_detail_storehouse', // 仓库明细
-					
-					inventory_current_detail_storesave = 'inventory_current_detail_storesave', // 库存明细
-					
-					platinum_custom_info_normal_modify = 'platinum_custom_info_normal_modify', // 修改
-					
-					platinum_custom_info_normal_stop = 'platinum_custom_info_normal_stop', // 停用
-					
-					platinum_customer_info_unsubmit_check = 'platinum_customer_info_unsubmit_check', // 审核
-					
-					platinum_customer_info_stop_resume = 'platinum_customer_info_stop_resume', // 恢复
-					
-					platinum_pick_goods_management_modify = 'platinum_pick_goods_management_modify', // 修改
-					
-					platinum_pick_goods_management_logout = 'platinum_pick_goods_management_logout', // 注销
-					
-					platinum_customer_info_stop_delete = 'platinum_customer_info_stop_delete', // 删除
-					
-					platinum_contract_goods_modify = 'platinum_contract_goods_modify', // 修改
-					
-					platinum_contract_goods_logout = 'platinum_contract_goods_logout', // 注销
-					
-					platinum_contract_commodity_suspension_modify = 'platinum_contract_commodity_suspension_modify', // 修改
-					
-					platinum_agreement_modify = 'platinum_agreement_modify', // 修改
-					
-					platinum_agreement_resume = 'platinum_agreement_resume', // 恢复
-					
-					platinum_agreement_stop = 'platinum_agreement_stop', // 停用
-					
-					platinum_agreement_delete = 'platinum_agreement_delete', // 注销
-					
-					platinum_broker_management_check = 'platinum_broker_management_check', // 审核
-					
-					platinum_broker_management_resume = 'platinum_broker_management_resume', // 恢复
-					
-					account_info_trade_btn_child_modify = 'account_info_trade_btn_child_modify', // 修改
-					
-					account_info_trade_btn_child_reset = 'account_info_trade_btn_child_reset', // 重置密码
-					
-					account_info_trade_btn_child_locked = 'account_info_trade_btn_child_locked', // 锁定
-					
-					account_info_trade_btn_child_unlocked = 'account_info_trade_btn_child_unlocked', // 解锁
-					
-					account_info_trade_btn_child_logout = 'account_info_trade_btn_child_logout', // 注销
-					
-					account_info_manager_btn_modify = 'account_info_manager_btn_modify', // 修改
-					
-					account_info_manager_btn_locked = 'account_info_manager_btn_locked', // 锁定
-					
-					account_info_manager_btn_unlocked = 'account_info_manager_btn_unlocked', // 
-					
-					account_info_manager_btn_logout = 'account_info_manager_btn_logout', // 注销
-					
-					account_info_manager_btn_reset = 'account_info_manager_btn_reset', // 重置密码
-					
-					account_info_futures_btn_child_credit = 'account_info_futures_btn_child_credit', // 授信
-					
-					account_info_futures_btn_child_cancel = 'account_info_futures_btn_child_cancel', // 注销
-					
-					account_info_futures_btn_child_modify = 'account_info_futures_btn_child_modify', // 修改
-					
-}
+						spot_warrant_spot_details_listed = 'spot_warrant_spot_details_listed', // 挂牌
+						
+						spot_warrant_deal_detail = 'spot_warrant_deal_detail', // 详情
+						
+						spot_warrant_inventory_summary_detail = 'spot_warrant_inventory_summary_detail', // 仓单明细
+						
+						spot_warrant_pending_order_cancel_order = 'spot_warrant_pending_order_cancel_order', // 撤单
+						
+						spot_warrant_designated_deal_ignore = 'spot_warrant_designated_deal_ignore', // 忽略
+						
+						spot_warrant_spot_summary_check = 'spot_warrant_spot_summary_check', // 查看库存
+						
+						spot_warrant_designated_deal_confirm_purchase = 'spot_warrant_designated_deal_confirm_purchase', // 确定购买
+						
+						spot_warrant_in_and_out_warehouse_logistics_information = 'spot_warrant_in_and_out_warehouse_logistics_information', // 物流信息
+						
+						spot_warrant_spot_details_pick_up = 'spot_warrant_spot_details_pick_up', // 提货
+						
+						spot_warrant_designated_deal_resell = 'spot_warrant_designated_deal_resell', // 撤销出售
+						
+						pre_sale_warehouse_receipt_pending_order_cancel_order = 'pre_sale_warehouse_receipt_pending_order_cancel_order', // 撤单
+						
+						pre_sale_warehouse_receipt_order_summary_listed = 'pre_sale_warehouse_receipt_order_summary_listed', // 挂牌
+						
+						pre_sale_warehouse_receipt_designated_deal_confirm_purchase = 'pre_sale_warehouse_receipt_designated_deal_confirm_purchase', // 确定购买
+						
+						performance_information_buy_performance_pay = 'performance_information_buy_performance_pay', // 付款
+						
+						performance_information_buy_performance_extension = 'performance_information_buy_performance_extension', // 延期
+						
+						spot_warrant_in_and_out_warehouse_revoke = 'spot_warrant_in_and_out_warehouse_revoke', // 撤销
+						
+						pre_sale_warehouse_receipt_deal_detail = 'pre_sale_warehouse_receipt_deal_detail', // 详情
+						
+						performance_information_buy_performance_detail = 'performance_information_buy_performance_detail', // 详情
+						
+						performance_information_sell_performance_pay = 'performance_information_sell_performance_pay', // 付款
+						
+						performance_information_sell_performance_detail = 'performance_information_sell_performance_detail', // 详情
+						
+						performance_information_sell_performance_extension = 'performance_information_sell_performance_extension', // 延期
+						
+						performance_information_buy_performance_breach_contract = 'performance_information_buy_performance_breach_contract', // 违约
+						
+						performance_information_sell_performance_breach_contract = 'performance_information_sell_performance_breach_contract', // 违约
+						
+						funding_information_funding_summary_withdraw = 'funding_information_funding_summary_withdraw', // 提现
+						
+						pre_sale_warehouse_receipt_designated_deal_ignore = 'pre_sale_warehouse_receipt_designated_deal_ignore', // 忽略
+						
+						warehouse_receipt_trade_price_post_buying = 'warehouse_receipt_trade_price_post_buying', // 发布求购
+						
+						warehouse_receipt_trade_floating_price_post_buying = 'warehouse_receipt_trade_floating_price_post_buying', // 发布求购
+						
+						funding_information_funding_summary_recharge = 'funding_information_funding_summary_recharge', // 充值
+						
+						warehouse_receipt_trade_floating_price_detail = 'warehouse_receipt_trade_floating_price_detail', // 详情
+						
+						warehouse_receipt_trade_floating_price_delisting = 'warehouse_receipt_trade_floating_price_delisting', // 摘牌
+						
+						warehouse_receipt_trade_price_delisting = 'warehouse_receipt_trade_price_delisting', // 摘牌
+						
+						capacity_pre_sale_detail = 'capacity_pre_sale_detail', // 详情
+						
+						warehouse_receipt_trade_price_detail = 'warehouse_receipt_trade_price_detail', // 详情
+						
+						capacity_pre_sale_purchase = 'capacity_pre_sale_purchase', // 发布求购
+						
+						capacity_pre_sale_delisting = 'capacity_pre_sale_delisting', // 摘牌
+						
+						open = 'open', // 开仓
+						
+						close = 'close', // 平仓
+						
+						custom_info_btn_delete = 'custom_info_btn_delete', // 删除
+						
+						custom_info_btn_cancel = 'custom_info_btn_cancel', // 撤销
+						
+						custom_info_btn_check = 'custom_info_btn_check', // 审核
+						
+						custom_info_btn_add = 'custom_info_btn_add', // 新增
+						
+						custom_info_btn_modify = 'custom_info_btn_modify', // 修改
+						
+						custom_info_btn_disable = 'custom_info_btn_disable', // 停用
+						
+						custom_info_btn_recover = 'custom_info_btn_recover', // 恢复
+						
+						goods_info_spot_normal_add = 'goods_info_spot_normal_add', // 新增
+						
+						goods_info_spot_normal_disable = 'goods_info_spot_normal_disable', // 停用
+						
+						goods_info_hedge_normal_modify = 'goods_info_hedge_normal_modify', // 修改
+						
+						spot_contract_btn_add = 'spot_contract_btn_add', // 新增
+						
+						goods_info_spot_normal_modify = 'goods_info_spot_normal_modify', // 修改
+						
+						none_btn = 'none_btn', // 按钮
+						
+						warehouse_info_btn_add = 'warehouse_info_btn_add', // 新增
+						
+						warehouse_info_btn_disable = 'warehouse_info_btn_disable', // 停用
+						
+						warehouse_info_btn_recover = 'warehouse_info_btn_recover', // 恢复
+						
+						account_info_business_btn_add = 'account_info_business_btn_add', // 新增
+						
+						warehouse_info_btn_modify = 'warehouse_info_btn_modify', // 修改
+						
+						account_info_trade_btn_add = 'account_info_trade_btn_add', // 新增
+						
+						account_info_manager_btn_add = 'account_info_manager_btn_add', // 新增权限模板
+						
+						account_info_manager_btn_setting = 'account_info_manager_btn_setting', // 权限设置
+						
+						business_review_someprice_audit = 'business_review_someprice_audit', // 审核
+						
+						account_info_futures_btn_add = 'account_info_futures_btn_add', // 新增
+						
+						business_review_someprice_cancel = 'business_review_someprice_cancel', // 撤销
+						
+						business_review_settlement_cancel = 'business_review_settlement_cancel', // 撤销
+						
+						finance_review_funds_audit = 'finance_review_funds_audit', // 审核
+						
+						business_review_settlement_audit = 'business_review_settlement_audit', // 审核
+						
+						plan_btn_add = 'plan_btn_add', // 新增
+						
+						finance_review_funds_cancel = 'finance_review_funds_cancel', // 撤销
+						
+						finance_review_invoice_audit = 'finance_review_invoice_audit', // 审核
+						
+						finance_review_invoice_cancel = 'finance_review_invoice_cancel', // 撤销
+						
+						inventory_review_checkin_audit = 'inventory_review_checkin_audit', // 审核
+						
+						inventory_review_checkin_cancel = 'inventory_review_checkin_cancel', // 撤销
+						
+						inventory_review_checkout_audit = 'inventory_review_checkout_audit', // 审核
+						
+						inventory_review_checkout_cancel = 'inventory_review_checkout_cancel', // 撤销
+						
+						inventory_current_add = 'inventory_current_add', // 新增
+						
+						platinum_custom_info_add = 'platinum_custom_info_add', // 新增
+						
+						platinum_pick_goods_management_add = 'platinum_pick_goods_management_add', // 新增
+						
+						platinum_pick_query_complete_stocking = 'platinum_pick_query_complete_stocking', // 完成备货
+						
+						platinum_pick_query_upload_logistics = 'platinum_pick_query_upload_logistics', // 上传物流
+						
+						platinum_pick_query_receipt = 'platinum_pick_query_receipt', // 确认收货
+						
+						platinum_pick_query_confirm_pickup = 'platinum_pick_query_confirm_pickup', // 确认取货
+						
+						platinum_recharge_review_confirm_payment = 'platinum_recharge_review_confirm_payment', // 确认收款
+						
+						platinum_recharge_review_refuse = 'platinum_recharge_review_refuse', // 审核拒绝
+						
+						platinum_withdrawal_review_confirm_withdrawal = 'platinum_withdrawal_review_confirm_withdrawal', // 确认提现
+						
+						platinum_withdrawal_review_refuse = 'platinum_withdrawal_review_refuse', // 审核拒绝
+						
+						platinum_financing_information_detail = 'platinum_financing_information_detail', // 融资明细
+						
+						platinum_contract_goods_add = 'platinum_contract_goods_add', // 新增
+						
+						platinum_contract_commodity_suspension_add = 'platinum_contract_commodity_suspension_add', // 新增
+						
+						platinum_agents_and_stores_add = 'platinum_agents_and_stores_add', // 新增
+						
+						platinum_agents_and_stores_modify = 'platinum_agents_and_stores_modify', // 修改
+						
+						platinum_agents_and_stores_logout = 'platinum_agents_and_stores_logout', // 注销
+						
+						platinum_spot_and_price_modify = 'platinum_spot_and_price_modify', // 修改
+						
+						platinum_agreement_add = 'platinum_agreement_add', // 新增
+						
+						platinum_capital_flow = 'platinum_capital_flow', // 积分流水
+						
+						platinum_promotion_report = 'platinum_promotion_report', // 推广报表
+						
+						platinum_broker_management = 'platinum_broker_management', // 经纪人管理
+						
+						spot_contract_btn_modify = 'spot_contract_btn_modify', // 重新提交
+						
+						spot_contract_btn_delete = 'spot_contract_btn_delete', // 删除
+						
+						spot_contract_btn_check = 'spot_contract_btn_check', // 审核
+						
+						spot_contract_btn_finish = 'spot_contract_btn_finish', // 正常完结
+						
+						spot_contract_btn_cancel = 'spot_contract_btn_cancel', // 撤销
+						
+						account_info_business_btn_modify = 'account_info_business_btn_modify', // 修改
+						
+						account_info_business_btn_reset = 'account_info_business_btn_reset', // 重置密码
+						
+						account_info_business_btn_locked = 'account_info_business_btn_locked', // 锁定
+						
+						account_info_business_btn_cancel = 'account_info_business_btn_cancel', // 注销
+						
+						account_info_business_btn_unlocked = 'account_info_business_btn_unlocked', // 解锁
+						
+						account_info_trade_child_btn_add = 'account_info_trade_child_btn_add', // 新增
+						
+						account_info_trade_btn_modify = 'account_info_trade_btn_modify', // 修改
+						
+						account_info_manager_btn_child_add = 'account_info_manager_btn_child_add', // 新增
+						
+						purchase_pending_settlement = 'purchase_pending_settlement', // 交收登记
+						
+						purchase_pending_invoice = 'purchase_pending_invoice', // 发票登记
+						
+						purchase_pending_storage = 'purchase_pending_storage', // 入库登记
+						
+						sell_pending_someprice = 'sell_pending_someprice', // 点价登记
+						
+						purchase_pending_someprice = 'purchase_pending_someprice', // 点价登记
+						
+						purchase_pending_funds = 'purchase_pending_funds', // 款项登记
+						
+						plan_audit_cancel = 'plan_audit_cancel', // 撤销
+						
+						account_info_futures_btn_child_add = 'account_info_futures_btn_child_add', // 新增
+						
+						account_info_futures_btn_modify = 'account_info_futures_btn_modify', // 修改
+						
+						plan_audit_audit = 'plan_audit_audit', // 审核
+						
+						sell_pending_funds = 'sell_pending_funds', // 款项登记
+						
+						sell_pending_settlement = 'sell_pending_settlement', // 交收登记
+						
+						sell_pending_invoice = 'sell_pending_invoice', // 发票登记
+						
+						sell_pending_storage = 'sell_pending_storage', // 出库登记
+						
+						plan_uncommitted_modify = 'plan_uncommitted_modify', // 修改
+						
+						plan_uncommitted_delete = 'plan_uncommitted_delete', // 删除
+						
+						inventory_current_detail_storehouse = 'inventory_current_detail_storehouse', // 仓库明细
+						
+						inventory_current_detail_storesave = 'inventory_current_detail_storesave', // 库存明细
+						
+						platinum_custom_info_normal_modify = 'platinum_custom_info_normal_modify', // 修改
+						
+						platinum_custom_info_normal_stop = 'platinum_custom_info_normal_stop', // 停用
+						
+						platinum_customer_info_stop_delete = 'platinum_customer_info_stop_delete', // 删除
+						
+						platinum_customer_info_unsubmit_check = 'platinum_customer_info_unsubmit_check', // 审核
+						
+						platinum_customer_info_stop_resume = 'platinum_customer_info_stop_resume', // 恢复
+						
+						platinum_pick_goods_management_modify = 'platinum_pick_goods_management_modify', // 修改
+						
+						platinum_pick_goods_management_logout = 'platinum_pick_goods_management_logout', // 注销
+						
+						platinum_contract_goods_modify = 'platinum_contract_goods_modify', // 修改
+						
+						platinum_contract_goods_logout = 'platinum_contract_goods_logout', // 注销
+						
+						platinum_contract_commodity_suspension_modify = 'platinum_contract_commodity_suspension_modify', // 修改
+						
+						platinum_agreement_modify = 'platinum_agreement_modify', // 修改
+						
+						platinum_agreement_stop = 'platinum_agreement_stop', // 停用
+						
+						platinum_agreement_resume = 'platinum_agreement_resume', // 恢复
+						
+						platinum_agreement_delete = 'platinum_agreement_delete', // 注销
+						
+						platinum_broker_management_check = 'platinum_broker_management_check', // 审核
+						
+						platinum_broker_management_resume = 'platinum_broker_management_resume', // 恢复
+						
+						account_info_trade_btn_child_modify = 'account_info_trade_btn_child_modify', // 修改
+						
+						account_info_trade_btn_child_locked = 'account_info_trade_btn_child_locked', // 锁定
+						
+						account_info_trade_btn_child_reset = 'account_info_trade_btn_child_reset', // 重置密码
+						
+						account_info_trade_btn_child_unlocked = 'account_info_trade_btn_child_unlocked', // 解锁
+						
+						account_info_manager_btn_modify = 'account_info_manager_btn_modify', // 修改
+						
+						account_info_manager_btn_reset = 'account_info_manager_btn_reset', // 重置密码
+						
+						account_info_trade_btn_child_logout = 'account_info_trade_btn_child_logout', // 注销
+						
+						account_info_manager_btn_locked = 'account_info_manager_btn_locked', // 锁
+						
+						account_info_manager_btn_unlocked = 'account_info_manager_btn_unlocked', // 解锁
+						
+						account_info_manager_btn_logout = 'account_info_manager_btn_logout', // 注销
+						
+						account_info_futures_btn_child_credit = 'account_info_futures_btn_child_credit', // 授信
+						
+						account_info_futures_btn_child_modify = 'account_info_futures_btn_child_modify', // 修改
+						
+						account_info_futures_btn_child_cancel = 'account_info_futures_btn_child_cancel', // 注销
+						
+		}

+ 38 - 0
src/common/setup/matket/router.ts

@@ -0,0 +1,38 @@
+import { TabList } from '@/common/components/description/interface';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+import { initData } from '@/common/methods';
+import { getThirdMenuData } from '@/common/setup/table/button';
+import { ref } from 'vue';
+import { useRoute, useRouter } from 'vue-router';
+
+export function handleMartketThirdRouter(code: EnumRouterName) {
+    const list = getThirdMenuData();
+    const item = list.find((e) => e.code === code);
+    const tabList = item
+        ? item.children.map((e) => {
+            return { lable: e.title, code: e.code };
+        })
+        : [];
+    const router = useRouter();
+    const route = useRoute();
+    const index = ref<string>('0');
+    initData(() => {
+        if (tabList.length) {
+            const name = route.name as string;
+            const result = tabList.findIndex((e) => e.code === name);
+            // 处理页面刷新
+            if (result !== -1) {
+                router.push({ name });
+                index.value = result.toString();
+            } else {
+                router.push({ name: tabList[0].code });
+                index.value = '0';
+            }
+        }
+    });
+    // 切换tab 跳转路由
+    function changeTab(index: number, current: TabList) {
+        router.push({ name: current.code });
+    }
+    return { index, tabList, changeTab }
+}

+ 17 - 2
src/common/setup/table/button.ts

@@ -1,4 +1,5 @@
 import { BtnList as btnType } from '@/common/components/btnList/interface';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 import { ModalName } from '@/common/constants/modalName';
 import { OperationTabMenu } from '@/services/go/commonService/interface';
 import { sessionStorageUtil } from "@/utils/storage";
@@ -109,6 +110,7 @@ export function _handleBtnList_(list: OperationTabMenu | undefined, hasDetail: b
     if (result.value.length === 0) {
         result.value = [[], []]
     }
+    console.log('按钮列表数据', result);
 
     return result
 }
@@ -170,8 +172,21 @@ export function _getBtnList(menuType: keyof ButtonListKey, hasDetail: boolean):
     return _handleBtnList(list, hasDetail)
 }
 
-export function getBtnList_(menuType: keyof ButtonListKey, hasDetail: boolean) {
+export function getBtnList_(menuType: EnumRouterName, hasDetail: boolean) {
     const data = getThirdMenuData()
-    const list = data.find((e) => e.code === menuType);
+    let list: OperationTabMenu | undefined = undefined
+    // 这里处理有两层路由菜单
+    data.map(el => {
+        if (el.code === menuType) {
+            list = el
+            return;
+        }
+        el.children.map(e => {
+            if (e.code === menuType) {
+                list = e
+                return;
+            }
+        })
+    })
     return _handleBtnList_(list, hasDetail)
 }

+ 3 - 2
src/common/setup/table/interface.ts

@@ -1,3 +1,4 @@
+import { EnumRouterName } from "@/common/constants/enumRouterName";
 import { TableKey } from "@/common/methods/table/interface";
 
 export interface TableEventCB {
@@ -21,7 +22,7 @@ export interface BtnParam {
 
 export interface ComposeTableParam {
     queryFn: Function,  // 查询表格数据
-    menuType: keyof ButtonListKey,  // 操作按钮列表key
+    menuType: EnumRouterName,  // 操作按钮列表key
     tableName: keyof TableKey, // 表头key
     tableFilterKey: string[], // 表格过滤字段
     tableFilterCB?: Function, // 表格过滤字段回调函数
@@ -32,7 +33,7 @@ export interface ComposeTableDetailParam {
     queryFn: Function,  // 查询表格数据
     tableName: keyof TableKey, // 表头key
     tableFilterKey: string[], // 表格过滤字段
-    menuType: keyof ButtonListKey
+    menuType: EnumRouterName
 }
 
 export interface ButtonListKey {

+ 14 - 13
src/router/index.ts

@@ -1,3 +1,4 @@
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 import { setLoadComplete } from '@/common/methods';
 import { getLoadIsComplete } from '@/common/methods/mixin';
 import Main from '@/layout/components/main.vue';
@@ -939,11 +940,11 @@ const routes: Array<RouteRecordRaw> = [
                 meta: {
                     requireAuth: true,
                 },
-                redirect: { name: '"warehouse_receipt_trade' },
+                redirect: { name: EnumRouterName.spot_trade, },
                 children: [
                     {
                         path: '/spot_trade/warehouse_receipt_trade',
-                        name: 'warehouse_receipt_trade',
+                        name: EnumRouterName.warehouse_receipt_trade,
                         component: () => import('@/views/market/spot_trade/warehouse_receipt_trade/index.vue'),
                         meta: {
                             requireAuth: true,
@@ -951,7 +952,7 @@ const routes: Array<RouteRecordRaw> = [
                         children: [
                             {
                                 path: '/spot_trade/warehouse_receipt_trade/warehouse_receipt_trade_floating_price',
-                                name: 'warehouse_receipt_trade_floating_price',
+                                name: EnumRouterName.warehouse_receipt_trade_floating_price,
                                 component: () => import('@/views/market/spot_trade/warehouse_receipt_trade/warehouse_receipt_trade_floating_price/index.vue'),
                                 meta: {
                                     requireAuth: true,
@@ -959,7 +960,7 @@ const routes: Array<RouteRecordRaw> = [
                             },
                             {
                                 path: '/spot_trade/warehouse_receipt_trade/warehouse_receipt_trade_price',
-                                name: 'warehouse_receipt_trade_price',
+                                name: EnumRouterName.warehouse_receipt_trade_price,
                                 component: () => import('@/views/market/spot_trade/warehouse_receipt_trade/warehouse_receipt_trade_price/index.vue'),
                                 meta: {
                                     requireAuth: true,
@@ -968,25 +969,25 @@ const routes: Array<RouteRecordRaw> = [
                         ]
                     },
                     {
-                        path: '/spot_trade/capacity_pre_sale',
-                        name: 'capacity_pre_sale',
-                        component: () => import('@/views/market/spot_trade/capacity_pre_sale/index.vue'),
+                        path: '/spot_trade/warehouse_pre_sale',
+                        name: EnumRouterName.warehouse_pre_sale,
+                        component: () => import('@/views/market/spot_trade/warehouse_pre_sale/index.vue'),
                         meta: {
                             requireAuth: true,
                         },
                         children: [
                             {
-                                path: '/spot_trade/capacity_pre_sale/capacity_pre_sale_floating_price',
-                                name: 'capacity_pre_sale_floating_price',
-                                component: () => import('@/views/market/spot_trade/capacity_pre_sale/capacity_pre_sale_floating_price/index.vue'),
+                                path: '/spot_trade/warehouse_pre_sale/warehouse_pre_sale_floating_price',
+                                name: EnumRouterName.warehouse_pre_sale_floating_price,
+                                component: () => import('@/views/market/spot_trade/warehouse_pre_sale/warehouse_pre_sale_floating_price/index.vue'),
                                 meta: {
                                     requireAuth: true,
                                 },
                             },
                             {
-                                path: '/spot_trade/capacity_pre_sale/capacity_pre_sale_price',
-                                name: 'capacity_pre_sale_price',
-                                component: () => import('@/views/market/spot_trade/capacity_pre_sale/capacity_pre_sale_price/index.vue'),
+                                path: '/spot_trade/warehouse_pre_sale/warehouse_pre_sale_price',
+                                name: EnumRouterName.warehouse_pre_sale_price,
+                                component: () => import('@/views/market/spot_trade/warehouse_pre_sale/warehouse_pre_sale_price/index.vue'),
                                 meta: {
                                     requireAuth: true,
                                 },

+ 3 - 2
src/views/business/exposure/list/futures/index.vue

@@ -32,9 +32,10 @@ import { handleComposeTable_detail } from '@/common/setup/table/compose';
 import { TabList } from '@/common/components/description/interface';
 import { queryResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
 import Description from '@/common/components/description/index.vue';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 export default defineComponent({
-    name: 'exposure-futures',
+    name: EnumRouterName.exposure_futures,
     components: {
         filterCustomTable,
         Description,
@@ -48,7 +49,7 @@ export default defineComponent({
             queryFn: queryTableAction, // 查询表格数据
             tableName: 'table_pcweb_exposure_futuresposition', // 表头key
             tableFilterKey: ['MiddleGoodsName'], // 表格过滤字段
-            menuType: 'exposure_futures', // 当前tab页对应的code
+            menuType: EnumRouterName.exposure_futures, // 当前tab页对应的code
         };
         const {
             visible,

+ 3 - 2
src/views/business/exposure/list/realTime/index.vue

@@ -34,9 +34,10 @@ import { ComposeTableDetailParam } from '@/common/setup/table/interface';
 import { TabList } from '@/common/components/description/interface';
 import { handleComposeTable_detail } from '@/common/setup/table/compose';
 import { queryResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 export default defineComponent({
-    name: 'exposure-real-time',
+    name: EnumRouterName.exposure_realtime,
     components: {
         Description,
         filterCustomTable,
@@ -50,7 +51,7 @@ export default defineComponent({
             queryFn: queryTableAction, // 查询表格数据
             tableName: 'table_pcweb_exposure', // 表头key
             tableFilterKey: ['MiddleGoodsName'], // 表格过滤字段
-            menuType: 'exposure_realtime', // 当前tab页对应的code
+            menuType: EnumRouterName.exposure_realtime, // 当前tab页对应的code
         };
         const {
             visible,

+ 3 - 2
src/views/business/exposure/list/spot/index.vue

@@ -32,9 +32,10 @@ import { queryTableList } from '@/common/setup/table';
 import { queryResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
 import Description from '@/common/components/description/index.vue';
 import { TabList } from '@/common/components/description/interface';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 export default defineComponent({
-    name: 'exposure-spot',
+    name: EnumRouterName.exposure_spot,
     components: {
         Description,
         filterCustomTable,
@@ -48,7 +49,7 @@ export default defineComponent({
             queryFn: queryTableAction, // 查询表格数据
             tableName: 'table_pcweb_exposure_spotposition', // 表头key
             tableFilterKey: ['MiddleGoodsName'], // 表格过滤字段
-            menuType: 'exposure_spot', // 当前tab页对应的code
+            menuType: EnumRouterName.exposure_spot, // 当前tab页对应的code
         };
         const {
             visible,

+ 3 - 2
src/views/business/plan/list/audit/index.vue

@@ -49,13 +49,14 @@ import { Filter } from '../../components';
 import { getPlanContractType, getPlanStatusName } from '@/views/business/plan/setup';
 import { Ermcp3HedgePlan } from '@/services/go/ermcp/plan/interface';
 import { QueryHedgePlan } from '@/services/go/ermcp/plan';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 const Detail = defineAsyncComponent(() => import('../../components/detail/index.vue'));
 const Cancel = defineAsyncComponent(() => import('../../components/cancel/index.vue'));
 const Audit = defineAsyncComponent(() => import('../../components/audit/index.vue'));
 
 export default defineComponent({
-    name: 'plan_uncommitted',
+    name: EnumRouterName.plan_audit,
     components: {
         contextMenu,
         BtnList,
@@ -72,7 +73,7 @@ export default defineComponent({
         // 表格通用逻辑
         const param: ComposeTableParam = {
             queryFn: queryTableAction,
-            menuType: 'plan_audit',
+            menuType: EnumRouterName.plan_audit,
             tableName: 'table_pcweb_hedging_plan',
             tableFilterKey: ['contracttype', 'hedgeplanno', 'deliverygoodsname'],
             isDetail: true,

+ 3 - 2
src/views/business/plan/list/running/index.vue

@@ -47,11 +47,12 @@ import { Filter } from '../../components';
 import { getPlanContractType, getPlanStatusName } from '@/views/business/plan/setup';
 import { Ermcp3HedgePlan } from '@/services/go/ermcp/plan/interface';
 import { QueryHedgePlan } from '@/services/go/ermcp/plan';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 const Detail = defineAsyncComponent(() => import('../../components/detail/index.vue'));
 
 export default defineComponent({
-    name: 'spot-contract-peddding',
+    name: EnumRouterName.plan_running,
     components: {
         contextMenu,
         BtnList,
@@ -66,7 +67,7 @@ export default defineComponent({
         // 表格通用逻辑
         const param: ComposeTableParam = {
             queryFn: queryTableAction,
-            menuType: 'plan_running',
+            menuType: EnumRouterName.plan_running,
             tableName: 'table_pcweb_hedging_plan',
             tableFilterKey: ['contracttype', 'hedgeplanno', 'deliverygoodsname'],
             isDetail: true,

+ 3 - 2
src/views/business/plan/list/uncommitted/index.vue

@@ -48,6 +48,7 @@ import { getPlanContractType, getPlanStatusName } from '@/views/business/plan/se
 import { BtnList as BtnListType } from '@/common/components/btnList/interface';
 import { Ermcp3HedgePlan } from '@/services/go/ermcp/plan/interface';
 import { QueryHedgePlan } from '@/services/go/ermcp/plan';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 const Detail = defineAsyncComponent(() => import('../../components/detail/index.vue'));
 const Add = defineAsyncComponent(() => import('../../components/add/index.vue'));
@@ -55,7 +56,7 @@ const Delete = defineAsyncComponent(() => import('../../components/delete/index.
 const Modfiy = defineAsyncComponent(() => import('../../components/modify/index.vue'));
 
 export default defineComponent({
-    name: 'plan-uncommitted',
+    name: EnumRouterName.plan_uncommitted,
     components: {
         contextMenu,
         BtnList,
@@ -73,7 +74,7 @@ export default defineComponent({
         // 表格通用逻辑
         const param: ComposeTableParam = {
             queryFn: queryTableAction,
-            menuType: 'plan_uncommitted',
+            menuType: EnumRouterName.plan_uncommitted,
             tableName: 'table_pcweb_hedging_plan',
             tableFilterKey: ['contracttype', 'hedgeplanno', 'deliverygoodsname'],
             isDetail: true,

+ 3 - 2
src/views/business/purchase/list/all/index.vue

@@ -40,6 +40,7 @@ import { queryTableList, BtnList, contextMenu, defineAsyncComponent, defineCompo
 import { Ermcp3SellBuyContract } from '../index';
 import { filterCustomTable } from '../../components';
 import { QueryPurchase } from '@/services/go/ermcp/purchase';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 const Detail = defineAsyncComponent(() => import('../../components/detail/index.vue'));
 const Settlement = defineAsyncComponent(() => import('../../components/settlement/index.vue')); //交收登记
@@ -49,7 +50,7 @@ const Storage = defineAsyncComponent(() => import('../../components/storage/inde
 const SomePrice = defineAsyncComponent(() => import('../../components/someprice/index.vue')); //采购点价登记
 
 export default defineComponent({
-    name: 'purchase-all',
+    name: EnumRouterName.purchase_all,
     components: {
         contextMenu,
         filterCustomTable,
@@ -70,7 +71,7 @@ export default defineComponent({
         // 表格通用逻辑
         const param: ComposeTableParam = {
             queryFn: queryTableAction,
-            menuType: 'purchase_all',
+            menuType: EnumRouterName.purchase_all,
             tableName: 'table_pcweb_purchase_all',
             tableFilterKey: ['accountname', 'contractno', 'deliverygoodsname', 'convertfactor', 'goodsname'],
             isDetail: true,

+ 3 - 2
src/views/business/purchase/list/pending/index.vue

@@ -40,12 +40,13 @@ import { queryTableList, BtnList, contextMenu, defineAsyncComponent, defineCompo
 import { Ermcp3SellBuyContract } from '../index';
 import { filterCustomTable } from '../../components';
 import { QueryPurchase } from '@/services/go/ermcp/purchase';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 const Detail = defineAsyncComponent(() => import('../../components/detail/index.vue'));
 const SomePrice = defineAsyncComponent(() => import('../../components/someprice/index.vue')); //采购点价登记
 
 export default defineComponent({
-    name: 'purchase-peddding',
+    name: EnumRouterName.purchase_pending,
     components: {
         contextMenu,
         filterCustomTable,
@@ -61,7 +62,7 @@ export default defineComponent({
         // 表格通用逻辑
         const param: ComposeTableParam = {
             queryFn: queryTableAction,
-            menuType: 'purchase_pending',
+            menuType: EnumRouterName.purchase_pending,
             tableName: 'table_pcweb_purchase_pointprice',
             tableFilterKey: ['accountname', 'contractno', 'deliverygoodsname', 'convertfactor', 'goodsname'],
             isDetail: true,

+ 3 - 2
src/views/business/purchase/list/performance/index.vue

@@ -40,6 +40,7 @@ import { queryTableList, BtnList, contextMenu, defineAsyncComponent, defineCompo
 import { filterCustomTable } from '../../components';
 import { QueryPurchase } from '@/services/go/ermcp/purchase';
 import { Ermcp3SellBuyContract } from '@/views/business/sell/list';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 const Detail = defineAsyncComponent(() => import('../../components/detail/index.vue'));
 const Settlement = defineAsyncComponent(() => import('../../components/settlement/index.vue')); //交收登记
@@ -48,7 +49,7 @@ const Invoice = defineAsyncComponent(() => import('../../components/invoice/inde
 const Storage = defineAsyncComponent(() => import('../../components/storage/index.vue')); // 入库登记
 
 export default defineComponent({
-    name: 'purchase-performance',
+    name: EnumRouterName.purchase_performance,
     components: {
         contextMenu,
         filterCustomTable,
@@ -67,7 +68,7 @@ export default defineComponent({
         // 表格通用逻辑
         const param: ComposeTableParam = {
             queryFn: queryTableAction,
-            menuType: 'purchase_performance',
+            menuType: EnumRouterName.purchase_performance,
             tableName: 'table_pcweb_purchase_settle',
             tableFilterKey: ['accountname', 'contractno', 'deliverygoodsname', 'convertfactor', 'goodsname'],
             isDetail: true,

+ 3 - 2
src/views/business/sell/list/all/index.vue

@@ -35,6 +35,7 @@
 </template>
 
 <script lang="ts">
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 import { queryTableList, BtnList, contextMenu, defineAsyncComponent, defineComponent, ModalEnum, handleComposeTable, ComposeTableParam } from '@/common/export/commonTable';
 import { QueryWareHouse } from '@/services/go/ermcp/sell';
 import { Ermcp3SellBuyContract } from '@/views/business/purchase/list';
@@ -48,7 +49,7 @@ const Storage = defineAsyncComponent(() => import('../../components/storage/inde
 const SomePrice = defineAsyncComponent(() => import('../../components/someprice/index.vue')); //采购点价登记
 
 export default defineComponent({
-    name: 'sell-all',
+    name: EnumRouterName.sell_all,
     components: {
         contextMenu,
         filterCustomTable,
@@ -68,7 +69,7 @@ export default defineComponent({
         // 表格通用逻辑
         const param: ComposeTableParam = {
             queryFn: queryTableAction,
-            menuType: 'sell_all',
+            menuType: EnumRouterName.sell_all,
             tableName: 'table_pcweb_sales_all',
             tableFilterKey: ['accountname', 'contractno', 'deliverygoodsname', 'convertfactor', 'goodsname'],
             isDetail: true,

+ 3 - 2
src/views/business/sell/list/pending/index.vue

@@ -35,6 +35,7 @@
 </template>
 
 <script lang="ts">
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 import { queryTableList, BtnList, contextMenu, defineAsyncComponent, defineComponent, ModalEnum, handleComposeTable, ComposeTableParam } from '@/common/export/commonTable';
 import { QueryWareHouse } from '@/services/go/ermcp/sell';
 import { Ermcp3SellBuyContract } from '@/views/business/purchase/list';
@@ -44,7 +45,7 @@ const Detail = defineAsyncComponent(() => import('../../components/detail/index.
 const SomePrice = defineAsyncComponent(() => import('../../components/someprice/index.vue')); //采购点价登记
 
 export default defineComponent({
-    name: 'sell-peddding',
+    name: EnumRouterName.sell_pending,
     components: {
         contextMenu,
         filterCustomTable,
@@ -60,7 +61,7 @@ export default defineComponent({
         // 表格通用逻辑
         const param: ComposeTableParam = {
             queryFn: queryTableAction,
-            menuType: 'sell_pending',
+            menuType: EnumRouterName.sell_pending,
             tableName: 'table_pcweb_sales_pointprice',
             tableFilterKey: ['accountname', 'contractno', 'deliverygoodsname', 'convertfactor', 'goodsname'],
             isDetail: true,

+ 3 - 2
src/views/business/sell/list/performance/index.vue

@@ -35,6 +35,7 @@
 </template>
 
 <script lang="ts">
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 import { queryTableList, BtnList, contextMenu, defineAsyncComponent, defineComponent, ModalEnum, handleComposeTable, ComposeTableParam } from '@/common/export/commonTable';
 import { QueryWareHouse } from '@/services/go/ermcp/sell';
 import { Ermcp3SellBuyContract } from '@/views/business/purchase/list';
@@ -47,7 +48,7 @@ const Invoice = defineAsyncComponent(() => import('../../components/invoice/inde
 const Storage = defineAsyncComponent(() => import('../../components/storage/index.vue')); // 入库登记
 
 export default defineComponent({
-    name: 'sell_performance',
+    name: EnumRouterName.sell_performance,
     components: {
         contextMenu,
         filterCustomTable,
@@ -66,7 +67,7 @@ export default defineComponent({
         // 表格通用逻辑
         const param: ComposeTableParam = {
             queryFn: queryTableAction,
-            menuType: 'sell_performance',
+            menuType: EnumRouterName.sell_performance,
             tableName: 'table_pcweb_sales_settle',
             tableFilterKey: ['accountname', 'contractno', 'deliverygoodsname', 'convertfactor', 'goodsname'],
             isDetail: true,

+ 2 - 1
src/views/information/account_info/list/account_info_business/index.vue

@@ -77,6 +77,7 @@ import { _handleTableList } from '../setup';
 import { ref } from 'vue';
 import { handleModalComponent } from '@/common/setup/asyncComponent';
 import { getBtnList_ } from '@/common/setup/table/button';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 const Add = defineAsyncComponent(() => import('../../compoments/add-business/index.vue'));
 const Modify = defineAsyncComponent(() => import('../../compoments/modify-business/index.vue'));
@@ -104,7 +105,7 @@ export default defineComponent({
         // 加载状态
         const loading = ref<boolean>(false);
         const { tableList, queryTable } = handlerManagerList(loading, 1);
-        const [firstBtn, secondBtn] = getBtnList_('account_info_business', true).value;
+        const [firstBtn, secondBtn] = getBtnList_(EnumRouterName.account_info_business, true).value;
 
         // 处理根据状态显示对应按钮
         function handleBtnAction() {

+ 3 - 2
src/views/information/spot-contract/list/checkpending/index.vue

@@ -78,13 +78,14 @@ import { formatTime, formatValue } from '@/common/methods';
 import { queryBusinessManager, findManagerName, tableFilterCB } from '../setup';
 import { Ermcp3ContractRsp } from '@/services/go/ermcp/spot-contract/interface';
 import { QuerySpotContract } from '@/services/go/ermcp/spot-contract';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 const Detail = defineAsyncComponent(() => import('../../components/detail/index.vue'));
 const Check = defineAsyncComponent(() => import('../../components/check/index.vue'));
 const Cancel = defineAsyncComponent(() => import('../../components/cancel/index.vue'));
 
 export default defineComponent({
-    name: 'spot-contract-peddding',
+    name: EnumRouterName.spot_contract_checkpending,
     components: {
         filterCustomTable,
         contextMenu,
@@ -105,7 +106,7 @@ export default defineComponent({
         // 表格通用逻辑
         const param: ComposeTableParam = {
             queryFn: queryTableAction,
-            menuType: 'spot_contract_checkpending',
+            menuType: EnumRouterName.spot_contract_checkpending,
             tableName: 'table_pcweb_delivery',
             tableFilterKey: ['contracttype', 'pricetype', 'contractno'],
             tableFilterCB,

+ 3 - 2
src/views/information/spot-contract/list/finished/index.vue

@@ -80,11 +80,12 @@ import { formatTime, formatValue } from '@/common/methods';
 
 import { Ermcp3ContractRsp } from '@/services/go/ermcp/spot-contract/interface';
 import { QuerySpotContract } from '@/services/go/ermcp/spot-contract';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 const Detail = defineAsyncComponent(() => import('../../components/detail/index.vue'));
 
 export default defineComponent({
-    name: 'spot-contract-done',
+    name: EnumRouterName.spot_contract_finished,
     components: {
         contextMenu,
         BtnList,
@@ -102,7 +103,7 @@ export default defineComponent({
         // 表格通用逻辑
         const param: ComposeTableParam = {
             queryFn: queryTableAction,
-            menuType: 'spot_contract_finished',
+            menuType: EnumRouterName.spot_contract_finished,
             tableName: 'table_pcweb_delivery',
             tableFilterKey: ['contracttype', 'pricetype', 'contractno'],
             tableFilterCB,

+ 3 - 2
src/views/information/spot-contract/list/performance/index.vue

@@ -80,12 +80,13 @@ import { QuerySpotContract } from '@/services/go/ermcp/spot-contract';
 
 import { getBizTypeName, getContractStatusName, getContractTypeName, getPriceTypeName } from '@/common/constants/enumsName';
 import { formatTime, formatValue } from '@/common/methods';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 const Detail = defineAsyncComponent(() => import('../../components/detail/index.vue'));
 const Finish = defineAsyncComponent(() => import('../../components/finish/index.vue'));
 
 export default defineComponent({
-    name: 'spot-contract-performance',
+    name: EnumRouterName.spot_contract_performance,
     components: {
         filterCustomTable,
         contextMenu,
@@ -105,7 +106,7 @@ export default defineComponent({
         // 表格通用逻辑
         const param: ComposeTableParam = {
             queryFn: queryTableAction,
-            menuType: 'spot_contract_performance',
+            menuType: EnumRouterName.spot_contract_performance,
             tableName: 'table_pcweb_delivery',
             tableFilterKey: ['contracttype', 'pricetype', 'contractno'],
             tableFilterCB,

+ 3 - 2
src/views/information/spot-contract/list/unsubmitted/index.vue

@@ -79,6 +79,7 @@ import { queryBusinessManager, findManagerName, tableFilterCB } from '../setup';
 import { getPriceTypeName, getBizTypeName, getContractStatusName, getContractTypeName } from '@/common/constants/enumsName';
 import { Ermcp3ContractRsp } from '@/services/go/ermcp/spot-contract/interface';
 import { QuerySpotContract } from '@/services/go/ermcp/spot-contract';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 const Add = defineAsyncComponent(() => import('../../components/add/index.vue'));
 const Detail = defineAsyncComponent(() => import('../../components/detail/index.vue'));
@@ -86,7 +87,7 @@ const Modify = defineAsyncComponent(() => import('../../components/modify/index.
 const Delete = defineAsyncComponent(() => import('../../components/delete/index.vue'));
 
 export default defineComponent({
-    name: 'spot-contract-not-commit',
+    name: EnumRouterName.spot_contract_unsubmitted,
     components: {
         filterCustomTable,
         contextMenu,
@@ -108,7 +109,7 @@ export default defineComponent({
         // 表格通用逻辑
         const param: ComposeTableParam = {
             queryFn: queryTableAction,
-            menuType: 'spot_contract_unsubmitted',
+            menuType: EnumRouterName.spot_contract_unsubmitted,
             tableName: 'table_pcweb_delivery',
             tableFilterKey: ['contracttype', 'pricetype', 'contractno'],
             tableFilterCB,

+ 0 - 17
src/views/market/spot_trade/capacity_pre_sale/capacity_pre_sale_floating_price/index.vue

@@ -1,17 +0,0 @@
-<template>
-  <!-- 仓单预售 浮动价预售-->
-  <div class="capacity_pre_sale_floating_price">
-    浮动价预售
-  </div>
-</template>
-
-<script lang="ts">
-import { defineComponent } from '@/common/export/commonTable';
-
-export default defineComponent({
-    name: 'capacity_pre_sale_floating_price',
-    setup() {
-        return {};
-    },
-});
-</script>

+ 0 - 58
src/views/market/spot_trade/capacity_pre_sale/index.vue

@@ -1,58 +0,0 @@
-<template>
-    <!-- 仓单预售 -->
-    <div class="warehouse_receipt_trade">
-        <router-view></router-view>
-        <ThridMenu :list="tabList" :selectedKey="index" @selectMenu="changeTab" />
-    </div>
-</template>
-
-<script lang="ts">
-import { defineComponent, ref } from 'vue';
-import { getThirdMenuData } from '@/common/setup/table/button';
-import { TabList } from '@/common/components/description/interface';
-import ThridMenu from '@/common/components/thirdMenu/index.vue';
-import { useRoute, useRouter } from 'vue-router';
-import { initData } from '@/common/methods';
-
-export default defineComponent({
-    name: 'capacity_pre_sale',
-    components: {
-        ThridMenu,
-    },
-    setup() {
-        const list = getThirdMenuData();
-        const item = list.find((e) => e.code === 'capacity_pre_sale');
-        const tabList = item
-            ? item.children.map((e) => {
-                  return { lable: e.title, code: e.code };
-              })
-            : [];
-        const router = useRouter();
-        const route = useRoute();
-        const index = ref<string>('0');
-        initData(() => {
-            if (tabList.length) {
-                const name = route.name as string;
-                const result = tabList.findIndex((e) => e.code === name);
-                // 处理页面刷新
-                if (result !== -1) {
-                    router.push({ name });
-                    index.value = result.toString();
-                } else {
-                    router.push({ name: tabList[0].code });
-                    index.value = '0';
-                }
-            }
-        });
-        function changeTab(index: number, current: TabList) {
-            router.push({ name: current.code });
-        }
-        return { tabList, changeTab, index };
-    },
-});
-</script>
-<style lang="less">
-.warehouse_receipt_trade {
-    height: calc(100% - 40px);
-}
-</style>

+ 35 - 0
src/views/market/spot_trade/components/buy-sell-market/index.vue

@@ -0,0 +1,35 @@
+<template>
+  <!-- 买卖大厅 -->
+  <div class="buy-sell-market">买卖大厅
+    <button @click="cancel">关闭</button>
+  </div>
+</template>
+
+<script lang="ts">
+import { defineComponent, ModalEnum } from '@/common/export/commonTable';
+import { _closeModal } from '@/common/setup/modal/modal';
+
+export default defineComponent({
+    emits: ['cancel'],
+    name: ModalEnum.warehouse_receipt_trade_price_delisting,
+    setup(props, context) {
+        const { visible, cancel } = _closeModal(context);
+        return {
+            cancel,
+            visible,
+        };
+    },
+});
+</script>
+<style lang="less">
+.buy-sell-market {
+    position: absolute;
+    z-index: 99;
+    top: 0;
+    height: 100%;
+    width: 100%;
+    bottom: 30px;
+    background: #fff;
+    left: 0;
+}
+</style>

+ 57 - 0
src/views/market/spot_trade/components/detail/index.vue

@@ -0,0 +1,57 @@
+<template>
+  <!-- 详情-->
+  <a-modal class="add-custom custom-detail"
+           title="详情"
+           centered
+           v-model:visible="visible"
+           :maskClosable="false"
+           @cancel="cancel"
+           width="890px">
+    <template #footer>
+      <a-button key="submit"
+                type="primary"
+                @click="cancel">关闭</a-button>
+    </template>
+    详情
+  </a-modal>
+</template>
+
+<script lang="ts">
+import { defineComponent, PropType } from 'vue';
+import { Des } from '@/common/components/commonDes';
+import { QhjAgreementConfig } from '@/services/go/ermcp/qhj/interface';
+import { _closeModal } from '@/common/setup/modal/modal';
+import { ModalEnum } from '@/common/constants/modalNameEnum';
+
+export default defineComponent({
+    emits: ['cancel'],
+    name: ModalEnum.detail,
+    components: { Des },
+    props: {
+        selectedRow: {
+            type: Object as PropType<QhjAgreementConfig>,
+            default: {},
+        },
+    },
+    setup(props, context) {
+        const { visible, cancel } = _closeModal(context);
+        return {
+            cancel,
+            visible,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+.custom-detail {
+    .ant-form.inlineForm {
+        margin-top: 20px;
+    }
+    .upload {
+        .look {
+            margin-left: 0;
+        }
+    }
+}
+</style>;

+ 49 - 0
src/views/market/spot_trade/components/post_buying/index.vue

@@ -0,0 +1,49 @@
+<style lang="less">
+</style>
+<template>
+  <!-- 发布求购 -->
+  <a-modal class="add-custom custom-detail"
+           title="发布求购"
+           centered
+           v-model:visible="visible"
+           :maskClosable="false"
+           @cancel="cancel"
+           width="890px">
+    <template #footer>
+      <a-button key="submit"
+                type="primary"
+                @click="cancel">关闭</a-button>
+    </template>
+    发布求购
+  </a-modal>
+</template>
+
+<script lang="ts">
+import { defineComponent, PropType } from 'vue';
+import { Des } from '@/common/components/commonDes';
+import { QhjAgreementConfig } from '@/services/go/ermcp/qhj/interface';
+import { _closeModal } from '@/common/setup/modal/modal';
+import { ModalEnum } from '@/common/constants/modalNameEnum';
+
+export default defineComponent({
+    emits: ['cancel'],
+    name: ModalEnum.warehouse_receipt_trade_price_post_buying,
+    components: { Des },
+    props: {
+        selectedRow: {
+            type: Object as PropType<QhjAgreementConfig>,
+            default: {},
+        },
+    },
+    setup(props, context) {
+        const { visible, cancel } = _closeModal(context);
+        return {
+            cancel,
+            visible,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+</style>;

+ 111 - 0
src/views/market/spot_trade/setup.ts

@@ -0,0 +1,111 @@
+import { BtnList } from '@/common/components/btnList/interface';
+import { ContextMenuTemp } from "@/common/components/contextMenu/interface";
+import { handleContextMenu } from "@/common/components/contextMenu/setup";
+import { TabList } from '@/common/components/description/interface';
+import { getTableColumns, getTableEvent, initData } from "@/common/export/table";
+import { handleModalComponent } from '@/common/setup/asyncComponent';
+import { getBtnList_, getThirdMenuData } from "@/common/setup/table/button";
+import { handleTableDrawer } from "@/common/setup/table/drawer";
+import { ComposeTableDetailParam, ComposeTableParam, TableEventCB } from "@/common/setup/table/interface";
+import { onUnmounted, ref, Ref } from "vue";
+
+export type { ComposeTableParam, ComposeTableDetailParam };
+
+// 表格 + 表头 + 右键 + 单击表格 + 按钮列表 通用处理逻辑
+export function handleComposeTable<T>({ queryFn, menuType, isDetail, tableName, tableFilterKey }: ComposeTableParam) {
+    // 右键逻辑
+    const { contextMenu, openContext, closeContext: closeContextAction } = handleContextMenu();
+    // 表头数据
+    const { columns, registerColumn, updateColumn } = getTableColumns();
+    // 右键回调函数
+    const eventsCB: TableEventCB = {
+        contextmenuCB: (record: T, value: ContextMenuTemp) => {
+            // 控制打开右键
+            contextMenu.value = value
+        }
+    }
+    // 表格事件
+    const { expandedRowKeys, selectedRow, Rowclick } = getTableEvent<T>(eventsCB);
+    // 表格操作按钮列表
+    const [firstBtn, secondBtn] = getBtnList_(menuType, isDetail).value;
+    // 控制异步组件
+    const { componentId, closeComponent, openComponent } = handleModalComponent(queryFn, selectedRow);
+    // 关闭右键
+    function closeContext(value: BtnList | null) {
+        // 打开对应的弹窗组件
+        if (value) openComponent(value, selectedRow.value)
+        // 关闭右键
+        closeContextAction()
+    }
+    onUnmounted(() => {
+        // 离开组件,手动关闭右键,防止出现bug
+        closeContextAction()
+    })
+    initData(() => {
+        // 获取列表数据
+        queryFn();
+        // 注册表头信息 过滤
+        registerColumn(tableName, tableFilterKey);
+    }); return {
+        contextMenu, openContext, closeContext, // 右键
+        columns, registerColumn, updateColumn,  // 表头
+        expandedRowKeys, selectedRow, Rowclick, // 表格折腾面板数据与单击、双击事件
+        componentId, closeComponent, openComponent,  // 控制异步组件
+        firstBtn, secondBtn, // 表格按钮
+    }
+}
+
+
+// 表格 + 表头 + 表格明细 + 单击表格  通用处理逻辑
+export function handleComposeTable_detail<T>({ queryFn, tableName, tableFilterKey, menuType }: ComposeTableDetailParam) {
+    // 控制 drawer 组件是否显示
+    const { visible, openDrawer, closeDrawer } = handleTableDrawer()
+    // 表头数据
+    const { columns, registerColumn, updateColumn } = getTableColumns();
+    // 明细列表数据
+    const detailTableList = ref<any[]>([])
+    // 明细表头数据
+    const { columns: columnsDetail, registerColumn: registerColumnDetail, updateColumn: updateColumnDetail } = getTableColumns();
+    // 缓存点击选中的数据
+    let cacheSelectedRow: null | Ref<T> = null
+    // 单击回调
+    const events: TableEventCB = {
+        clickCB: (value: T) => {
+            if (cacheSelectedRow) {
+                // 点击同一个
+                if (JSON.stringify(cacheSelectedRow.value) === JSON.stringify(value)) {
+                    visible.value ? closeDrawer() : openDrawer()
+                } else {
+                    openDrawer()
+                }
+            } else {
+                openDrawer()
+            }
+        },
+    };
+    // 表格事件
+    const { expandedRowKeys, selectedRow, Rowclick } = getTableEvent<T>(events);
+    cacheSelectedRow = selectedRow as Ref<T>
+    // 明细tab 列表
+    const data = getThirdMenuData()
+    const list = data.find((e) => e.code === menuType);
+    const tabList = ref<TabList[]>([])
+    list?.children.forEach(el => {
+        const { code, title, type } = el
+        if (type === 3) {
+            tabList.value.push({ lable: title, code })
+        }
+    })
+
+    initData(() => {
+        queryFn();
+        registerColumn(tableName, tableFilterKey);
+    });
+    return {
+        visible, openDrawer, closeDrawer,   // 控制 drawer 组件是否显示
+        columns, registerColumn, updateColumn,  //  表头数据
+        columnsDetail, registerColumnDetail, updateColumnDetail, detailTableList,// 明细表头数据
+        expandedRowKeys, selectedRow, Rowclick, // 表格事件
+        tabList,
+    }
+}

+ 31 - 0
src/views/market/spot_trade/warehouse_pre_sale/index.vue

@@ -0,0 +1,31 @@
+<template>
+  <!-- 仓单预售 -->
+  <div class="warehouse_receipt_trade">
+    <router-view></router-view>
+    <ThridMenu :list="tabList"
+               :selectedKey="index"
+               @selectMenu="changeTab" />
+  </div>
+</template>
+
+<script lang="ts">
+import { defineComponent } from 'vue';
+import ThridMenu from '@/common/components/thirdMenu/index.vue';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+import { handleMartketThirdRouter } from '@/common/setup/matket/router';
+
+export default defineComponent({
+    name: EnumRouterName.warehouse_pre_sale,
+    components: {
+        ThridMenu,
+    },
+    setup() {
+        return { ...handleMartketThirdRouter(EnumRouterName.warehouse_pre_sale) };
+    },
+});
+</script>
+<style lang="less">
+.warehouse_receipt_trade {
+    height: calc(100% - 40px);
+}
+</style>

+ 18 - 0
src/views/market/spot_trade/warehouse_pre_sale/warehouse_pre_sale_floating_price/index.vue

@@ -0,0 +1,18 @@
+<template>
+    <!-- 仓单预售 浮动价预售-->
+    <div class="warehouse_pre_sale_floating_price topTableHeight">浮动价预售</div>
+</template>
+
+<script lang="ts">
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+import { defineComponent } from '@/common/export/commonTable';
+
+export default defineComponent({
+    name: EnumRouterName.warehouse_pre_sale_floating_price,
+    setup() {
+        return {};
+    },
+});
+</script>
+<style lang="less">
+</style>

+ 6 - 3
src/views/market/spot_trade/capacity_pre_sale/capacity_pre_sale_price/index.vue → src/views/market/spot_trade/warehouse_pre_sale/warehouse_pre_sale_price/index.vue

@@ -1,17 +1,20 @@
 <template>
   <!-- 仓单预售 一口价预售-->
-  <div class="capacity_pre_sale_price">
+  <div class="capacity_pre_sale_price topTableHeight">
     一口价预售
   </div>
 </template>
 
 <script lang="ts">
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 import { defineComponent } from '@/common/export/commonTable';
 
 export default defineComponent({
-    name: 'capacity_pre_sale_price',
+    name: EnumRouterName.warehouse_pre_sale_price,
     setup() {
         return {};
     },
 });
-</script>
+</script>
+<style lang="less">
+</style>

+ 13 - 39
src/views/market/spot_trade/warehouse_receipt_trade/index.vue

@@ -1,58 +1,32 @@
 <template>
-    <!-- 仓单贸易 -->
-    <div class="warehouse_receipt_trade">
-        <router-view></router-view>
-        <ThridMenu :list="tabList" :selectedKey="index" @selectMenu="changeTab" />
-    </div>
+  <!-- 仓单贸易 -->
+  <div class="warehouse_receipt_trade">
+    <router-view></router-view>
+    <ThridMenu :list="tabList"
+               :selectedKey="index"
+               @selectMenu="changeTab" />
+  </div>
 </template>
 
 <script lang="ts">
-import { defineComponent, ref } from 'vue';
-import { getThirdMenuData } from '@/common/setup/table/button';
-import { TabList } from '@/common/components/description/interface';
+import { defineComponent } from 'vue';
 import ThridMenu from '@/common/components/thirdMenu/index.vue';
-import { useRoute, useRouter } from 'vue-router';
-import { initData } from '@/common/methods';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+import { handleMartketThirdRouter } from '@/common/setup/matket/router';
 
 export default defineComponent({
-    name: 'warehouse_receipt_trade',
+    name: EnumRouterName.warehouse_receipt_trade,
     components: {
         ThridMenu,
     },
     setup() {
-        const list = getThirdMenuData();
-        const item = list.find((e) => e.code === 'warehouse_receipt_trade');
-        const tabList = item
-            ? item.children.map((e) => {
-                  return { lable: e.title, code: e.code };
-              })
-            : [];
-        const router = useRouter();
-        const route = useRoute();
-        const index = ref<string>('0');
-        initData(() => {
-            if (tabList.length) {
-                const name = route.name as string;
-                const result = tabList.findIndex((e) => e.code === name);
-                // 处理页面刷新
-                if (result !== -1) {
-                    router.push({ name });
-                    index.value = result.toString();
-                } else {
-                    router.push({ name: tabList[0].code });
-                    index.value = '0';
-                }
-            }
-        });
-        function changeTab(index: number, current: TabList) {
-            router.push({ name: current.code });
-        }
-        return { tabList, changeTab, index };
+        return { ...handleMartketThirdRouter(EnumRouterName.warehouse_receipt_trade) };
     },
 });
 </script>
 <style lang="less">
 .warehouse_receipt_trade {
+    position: relative;
     height: calc(100% - 40px);
 }
 </style>

+ 57 - 7
src/views/market/spot_trade/warehouse_receipt_trade/warehouse_receipt_trade_floating_price/index.vue

@@ -1,20 +1,70 @@
 <template>
     <!-- 仓单贸易 浮动价挂牌-->
-    <div class="capacity_pre_sale">浮动价挂牌</div>
+    <div class="warehouse_receipt_trade_floating_price topTableHeight">
+        <a-table
+            :columns="columns"
+            class="srcollYTable"
+            :scroll="{ x: '100%', y: 'calc(100vh - 163px)' }"
+            :pagination="false"
+            :loading="loading"
+            :expandedRowKeys="expandedRowKeys"
+            :customRow="Rowclick"
+            rowKey="key"
+            :data-source="tableList"
+        ></a-table>
+        <!-- 右键 -->
+        <contextMenu :contextMenu="contextMenu" @cancel="closeContext" :list="firstBtn"></contextMenu>
+        <component
+            :is="componentId"
+            v-if="componentId"
+            :selectedRow="selectedRow"
+            @cancel="closeComponent"
+        ></component>
+    </div>
 </template>
 
 <script lang="ts">
-import { defineComponent } from '@/common/export/commonTable';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+import { queryTableList, BtnList, contextMenu, defineAsyncComponent, defineComponent, ModalEnum, handleComposeTable, ComposeTableParam } from '@/common/export/commonTable';
+import { queryAgreementConfig } from '@/services/go/ermcp/qhj';
+import { QueryOrderQuoteReq, WrOrderQuote } from '@/services/go/wrtrade/interface';
+import { queryOrderQuote } from '@/services/go/wrtrade';
 
 export default defineComponent({
-    name: 'warehouse_receipt_trade_floating_price',
+    name: EnumRouterName.warehouse_receipt_trade_floating_price,
+    components: {
+        contextMenu,
+        [ModalEnum.warehouse_receipt_trade_floating_price_detail]: defineAsyncComponent(() => import('../../components/detail/index.vue')),
+        [ModalEnum.warehouse_receipt_trade_floating_price_post_buying]: defineAsyncComponent(() => import('../../components/post_buying/index.vue')),
+        [ModalEnum.warehouse_receipt_trade_floating_price_delisting]: defineAsyncComponent(() => import('../../components/buy-sell-market/index.vue')),
+    },
     setup() {
-        return {};
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList<WrOrderQuote>();
+        // 获取列表数据
+        const queryTableAction = () => {
+            const param: QueryOrderQuoteReq = {
+                wrpricetype: 2,
+                haswr: 1,
+            };
+            // queryTable(queryOrderQuote, param);
+            queryTable(queryAgreementConfig);
+        };
+        // 表格通用逻辑
+        const param: ComposeTableParam = {
+            queryFn: queryTableAction,
+            menuType: EnumRouterName.warehouse_receipt_trade_floating_price,
+            tableName: 'table_pcweb_agreement',
+            tableFilterKey: [],
+            isDetail: false,
+        };
+        return {
+            ...handleComposeTable<WrOrderQuote>(param),
+            loading,
+            tableList,
+        };
     },
 });
 </script>
 <style lang="less">
-.capacity_pre_sale {
-    height: calc(100% - 28px);
-}
 </style>

+ 5 - 6
src/views/market/spot_trade/warehouse_receipt_trade/warehouse_receipt_trade_price/index.vue

@@ -1,20 +1,19 @@
 <template>
-    <!-- 仓单预售 一口价挂牌-->
-    <div class="capacity_pre_sale">一口价挂牌</div>
+  <!-- 仓单预售 一口价挂牌-->
+  <div class="warehouse_receipt_trade_price topTableHeight">一口价挂牌</div>
 </template>
 
 <script lang="ts">
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 import { defineComponent } from '@/common/export/commonTable';
 
 export default defineComponent({
-    name: 'warehouse_receipt_trade_price',
+    name: EnumRouterName.warehouse_receipt_trade_price,
     setup() {
         return {};
     },
 });
 </script>
 <style lang="less">
-.capacity_pre_sale {
-    height: calc(100% - 28px);
-}
+
 </style>

+ 3 - 2
src/views/platinum/platinum_agreement/list/tab/index.vue

@@ -50,6 +50,7 @@ import { QhjAgreementConfig } from '@/services/go/ermcp/qhj/interface';
 import Filter from '../../compoments/filter/index.vue';
 import { getAgreementStatus, getAgreementTypeName } from '@/common/constants/enumsName';
 import { handleArgreementType, handlePermissionBtn } from '../../setup';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 const Detail = defineAsyncComponent(() => import('../../compoments/detail/index.vue'));
 const Modify = defineAsyncComponent(() => import('../../compoments/modify/index.vue'));
@@ -59,7 +60,7 @@ const Resume = defineAsyncComponent(() => import('../../compoments/resume/index.
 const Stop = defineAsyncComponent(() => import('../../compoments/stop/index.vue'));
 
 export default defineComponent({
-    name: 'platinum_agreement_tabdd',
+    name: EnumRouterName.platinum_agreement_tab,
     components: {
         Filter,
         contextMenu,
@@ -79,7 +80,7 @@ export default defineComponent({
         // 表格通用逻辑
         const param: ComposeTableParam = {
             queryFn: queryTableAction,
-            menuType: 'platinum_agreement_tab',
+            menuType: EnumRouterName.platinum_agreement_tab,
             tableName: 'table_pcweb_agreement',
             tableFilterKey: ['agreementno', 'agreementtype'],
             isDetail: true,

+ 148 - 157
src/views/report/exposure-report/list/exposure_report/index.vue

@@ -1,172 +1,163 @@
 <template>
-    <!-- 敞口报表 -->
-    <div class="table-detail-container table-height"
-         :loading="loading">
-        <Filter @update="search"></Filter>
-        <a-table :columns="columns"
-                 class="topOrderTable"
-                 :scroll="{ x: '100%', y: 'calc(100vh - 163px)' }"
-                 :pagination="false"
-                 :expandedRowKeys="expandedRowKeys"
-                 :customRow="Rowclick"
-                 rowKey="key"
-                 :data-source="tableList">
-        </a-table>
-        <!-- 明细 -->
-        <Description v-if="visible"
-                     @close="closeDrawer"
-                     @changeTab="changeTab"
-                     :columns="columnsDetail"
-                     :tabList="tabList"
-                     :tableList="detailTableList">
-            <!-- 合同类型 -->
-            <template #contracttype="{ record }">
-                <a>{{ getContractTypeName(record.contracttype) }}</a>
-            </template>
-        </Description>
-    </div>
+  <!-- 敞口报表 -->
+  <div class="table-detail-container table-height"
+       :loading="loading">
+    <Filter @update="search"></Filter>
+    <a-table :columns="columns"
+             class="topOrderTable"
+             :scroll="{ x: '100%', y: 'calc(100vh - 163px)' }"
+             :pagination="false"
+             :expandedRowKeys="expandedRowKeys"
+             :customRow="Rowclick"
+             rowKey="key"
+             :data-source="tableList">
+    </a-table>
+    <!-- 明细 -->
+    <Description v-if="visible"
+                 @close="closeDrawer"
+                 @changeTab="changeTab"
+                 :columns="columnsDetail"
+                 :tabList="tabList"
+                 :tableList="detailTableList">
+      <!-- 合同类型 -->
+      <template #contracttype="{ record }">
+        <a>{{ getContractTypeName(record.contracttype) }}</a>
+      </template>
+    </Description>
+  </div>
 </template>
 
 <script lang="ts">
-    import Filter from '../../components/filterTable/index.vue';
-    import {defineComponent, queryTableList} from '@/common/export/table';
-    import {TypeAndTime} from '@/views/report/interface';
-    import {handleInitTypeAndTime} from '@/views/report/setup';
-    import {
-        AreaExpourseReportReq,
-        Ermcp3ExpourseReport,
-        QryAreaExpourseHedgeplanDetailReq
-    } from '@/services/go/ermcp/report/interface';
-    import {
-        qryAreaExpourseContractDetail,
-        qryAreaExpourseFutuDetail,
-        qryAreaExpourseHedgeplanDetail,
-        qryAreaExpourseParamChLogDetail,
-        qryAreaExpourseReport
-    } from '@/services/go/ermcp/report';
-    import {ComposeTableDetailParam, handleComposeTable_detail} from '@/common/setup/table/compose';
-    import Description from '@/common/components/description/index.vue';
-    import {watchEffect} from 'vue';
-    import {queryResultLoadingAndInfo} from '@/common/methods/request/resultInfo';
-    import {TabList} from '@/common/components/description/interface';
-    import {getContractTypeName} from "@/common/constants/enumsName";
+import Filter from '../../components/filterTable/index.vue';
+import { defineComponent, queryTableList } from '@/common/export/table';
+import { TypeAndTime } from '@/views/report/interface';
+import { handleInitTypeAndTime } from '@/views/report/setup';
+import { AreaExpourseReportReq, Ermcp3ExpourseReport, QryAreaExpourseHedgeplanDetailReq } from '@/services/go/ermcp/report/interface';
+import { qryAreaExpourseContractDetail, qryAreaExpourseFutuDetail, qryAreaExpourseHedgeplanDetail, qryAreaExpourseParamChLogDetail, qryAreaExpourseReport } from '@/services/go/ermcp/report';
+import { ComposeTableDetailParam, handleComposeTable_detail } from '@/common/setup/table/compose';
+import Description from '@/common/components/description/index.vue';
+import { watchEffect } from 'vue';
+import { queryResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
+import { TabList } from '@/common/components/description/interface';
+import { getContractTypeName } from '@/common/constants/enumsName';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
-    export default defineComponent({
-        name: 'exposure-report',
-        components: {
-            Filter,
-            Description,
-        },
-        setup() {
-            let cycletime = '';
-            // 表格列表数据
-            const {loading, tableList, queryTable} = queryTableList<Ermcp3ExpourseReport>();
-            // 获取列表数据
-            const queryTableAction = () => {
-                const {getInitTime, getInitType} = handleInitTypeAndTime();
-                cycletime = getInitTime();
-                const param: AreaExpourseReportReq = {
-                    cycletype: getInitType(),
-                    cycletime,
-                    querytype: 1,
-                };
-                // 获取列表数据
-                queryTable(qryAreaExpourseReport, param);
-            };
-            const param: ComposeTableDetailParam = {
-                queryFn: queryTableAction, // 查询表格数据
-                tableName: 'table_pcweb_exposure_report', // 表头key
-                tableFilterKey: [], // 表格过滤字段
-                menuType: 'exposure_report_exposure', // 当前tab页对应的code
+export default defineComponent({
+    name: EnumRouterName.exposure_report_exposure,
+    components: {
+        Filter,
+        Description,
+    },
+    setup() {
+        let cycletime = '';
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList<Ermcp3ExpourseReport>();
+        // 获取列表数据
+        const queryTableAction = () => {
+            const { getInitTime, getInitType } = handleInitTypeAndTime();
+            cycletime = getInitTime();
+            const param: AreaExpourseReportReq = {
+                cycletype: getInitType(),
+                cycletime,
+                querytype: 1,
             };
-            const {
-                visible,
-                closeDrawer, // 控制 drawer 组件是否显示
-                columns,
-                updateColumn, //  表头数据
-                columnsDetail,
-                registerColumnDetail,
-                detailTableList, // 明细表头数据
-                expandedRowKeys,
-                selectedRow,
-                Rowclick, // 表格事件
-                tabList,
-            } = handleComposeTable_detail<Ermcp3ExpourseReport>(param);
+            // 获取列表数据
+            queryTable(qryAreaExpourseReport, param);
+        };
+        const param: ComposeTableDetailParam = {
+            queryFn: queryTableAction, // 查询表格数据
+            tableName: 'table_pcweb_exposure_report', // 表头key
+            tableFilterKey: [], // 表格过滤字段
+            menuType: EnumRouterName.exposure_report_exposure, // 当前tab页对应的code
+        };
+        const {
+            visible,
+            closeDrawer, // 控制 drawer 组件是否显示
+            columns,
+            updateColumn, //  表头数据
+            columnsDetail,
+            registerColumnDetail,
+            detailTableList, // 明细表头数据
+            expandedRowKeys,
+            selectedRow,
+            Rowclick, // 表格事件
+            tabList,
+        } = handleComposeTable_detail<Ermcp3ExpourseReport>(param);
 
-            // 切换明细
-            function changeTab(index: number, current: TabList) {
-                const {code, lable} = current;
-                const data = selectedRow.value as Ermcp3ExpourseReport;
-                const {cycletype, middlegoodsid} = data;
-                const param: QryAreaExpourseHedgeplanDetailReq = {
-                    middlegoodsid,
-                    cycletype,
-                    cycletime,
-                };
-                let fn = null;
-                if (code === 'exposure_report_exposure_contract_changes') {
-                    // 现货合同变动量明细
-                    // 注册表头
-                    registerColumnDetail('table_pcweb_change_in_spot_contract', []);
-                    fn = qryAreaExpourseContractDetail;
-                } else if (code === 'exposure_report_exposure_hedging_plan') {
-                    // 套保计划变动量明细
-                    // 注册表头
-                    registerColumnDetail('table_pcweb_change_in_hedging_plan', []);
-                    fn = qryAreaExpourseHedgeplanDetail;
-                } else if (code === 'exposure_report_exposure_futures_changes') {
-                    // 期货变动量明细
-                    // 注册表头
-                    registerColumnDetail('table_pcweb_change_in_future', []);
-                    fn = qryAreaExpourseFutuDetail;
-                } else if (code === 'exposure_report_exposure_parameter_adjustment_changes') {
-                    // 参数调整变动量明细
-                    // 注册表头
-                    registerColumnDetail('table_pcweb_change_in_parameter_adjustment', []);
-                    fn = qryAreaExpourseParamChLogDetail;
-                } else {
-                    console.error(`${lable}没有配置对应的code: ${code},`);
-                    return;
-                }
-                // 查询明细数据
-                queryResultLoadingAndInfo(fn, loading, param).then((res) => {
-                    detailTableList.value = res;
-                });
+        // 切换明细
+        function changeTab(index: number, current: TabList) {
+            const { code, lable } = current;
+            const data = selectedRow.value as Ermcp3ExpourseReport;
+            const { cycletype, middlegoodsid } = data;
+            const param: QryAreaExpourseHedgeplanDetailReq = {
+                middlegoodsid,
+                cycletype,
+                cycletime,
+            };
+            let fn = null;
+            if (code === 'exposure_report_exposure_contract_changes') {
+                // 现货合同变动量明细
+                // 注册表头
+                registerColumnDetail('table_pcweb_change_in_spot_contract', []);
+                fn = qryAreaExpourseContractDetail;
+            } else if (code === 'exposure_report_exposure_hedging_plan') {
+                // 套保计划变动量明细
+                // 注册表头
+                registerColumnDetail('table_pcweb_change_in_hedging_plan', []);
+                fn = qryAreaExpourseHedgeplanDetail;
+            } else if (code === 'exposure_report_exposure_futures_changes') {
+                // 期货变动量明细
+                // 注册表头
+                registerColumnDetail('table_pcweb_change_in_future', []);
+                fn = qryAreaExpourseFutuDetail;
+            } else if (code === 'exposure_report_exposure_parameter_adjustment_changes') {
+                // 参数调整变动量明细
+                // 注册表头
+                registerColumnDetail('table_pcweb_change_in_parameter_adjustment', []);
+                fn = qryAreaExpourseParamChLogDetail;
+            } else {
+                console.error(`${lable}没有配置对应的code: ${code},`);
+                return;
             }
-
-            watchEffect(() => {
-                if (visible.value) {
-                    if (tabList.value.length) {
-                        changeTab(0, tabList.value[0]);
-                    }
-                }
+            // 查询明细数据
+            queryResultLoadingAndInfo(fn, loading, param).then((res) => {
+                detailTableList.value = res;
             });
+        }
 
-            function search(value: TypeAndTime) {
-                cycletime = value.cycletime;
-                const obj = Object.assign(value, {querytype: 1});
-                queryTable(qryAreaExpourseReport, obj);
+        watchEffect(() => {
+            if (visible.value) {
+                if (tabList.value.length) {
+                    changeTab(0, tabList.value[0]);
+                }
             }
+        });
 
-            return {
-                loading,
-                tableList,
-                visible,
-                closeDrawer,
-                columns,
-                updateColumn,
-                search,
-                columnsDetail,
-                detailTableList,
-                expandedRowKeys,
-                selectedRow,
-                Rowclick,
-                tabList,
-                changeTab,
-                getContractTypeName
-            };
-        },
-    });
+        function search(value: TypeAndTime) {
+            cycletime = value.cycletime;
+            const obj = Object.assign(value, { querytype: 1 });
+            queryTable(qryAreaExpourseReport, obj);
+        }
+
+        return {
+            loading,
+            tableList,
+            visible,
+            closeDrawer,
+            columns,
+            updateColumn,
+            search,
+            columnsDetail,
+            detailTableList,
+            expandedRowKeys,
+            selectedRow,
+            Rowclick,
+            tabList,
+            changeTab,
+            getContractTypeName,
+        };
+    },
+});
 </script>
 
 <style lang="less">

+ 2 - 1
src/views/report/finance-report/list/finance_report_finance/index.vue

@@ -34,6 +34,7 @@ import Description from '@/common/components/description/index.vue';
 import { TabList } from '@/common/components/description/interface';
 import { queryResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
 import { watchEffect } from 'vue';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 export default defineComponent({
     name: 'finance-report',
@@ -61,7 +62,7 @@ export default defineComponent({
             queryFn: queryTableAction, // 查询表格数据
             tableName: 'table_pcweb_finance_report', // 表头key
             tableFilterKey: [], // 表格过滤字段
-            menuType: 'finance_report_finance', // 当前tab页对应的code
+            menuType: EnumRouterName.finance_report_finance, // 当前tab页对应的code
         };
         const {
             visible,

+ 2 - 1
src/views/report/future_report/list/future_report/index.vue

@@ -34,6 +34,7 @@ import { qryTaFutureDataReport } from '@/services/go/ermcp/report';
 import { Ermcp3TaFutuReDataReport, QryTaFutureDataReportReq } from '@/services/go/ermcp/report/interface';
 import { TypeAndTime } from '@/views/report/interface';
 import { TabList } from '@/common/components/description/interface';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 export default defineComponent({
     name: 'inventory_report_inventory_category',
@@ -61,7 +62,7 @@ export default defineComponent({
             queryFn: queryTableAction, // 查询表格数据
             tableName: 'table_pcweb_futures_report', // 表头key
             tableFilterKey: [], // 表格过滤字段
-            menuType: 'future_report_future', // 当前tab页对应的code
+            menuType: EnumRouterName.future_report_future, // 当前tab页对应的code
         };
         const {
             visible,

+ 2 - 1
src/views/report/inventory-report/list/category/index.vue

@@ -34,6 +34,7 @@ import { qryAreaStockReport } from '@/services/go/ermcp/report';
 import { AreaStockReportReq, Ermcp3AreaStockReport } from '@/services/go/ermcp/report/interface';
 import { TypeAndTime } from '@/views/report/interface';
 import { TabList } from '@/common/components/description/interface';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 export default defineComponent({
     name: 'inventory_report_inventory_category',
@@ -62,7 +63,7 @@ export default defineComponent({
             queryFn: queryTableAction, // 查询表格数据
             tableName: 'table_pcweb_warehouse_category_report', // 表头key
             tableFilterKey: [], // 表格过滤字段
-            menuType: 'inventory_report_inventory_category', // 当前tab页对应的code
+            menuType: EnumRouterName.inventory_report_inventory_category, // 当前tab页对应的code
         };
 
         const {

+ 2 - 1
src/views/report/inventory-report/list/warehouse/index.vue

@@ -34,6 +34,7 @@ import { qryAreaStockReport } from '@/services/go/ermcp/report';
 import { AreaStockReportReq, Ermcp3AreaStockReport } from '@/services/go/ermcp/report/interface';
 import { TypeAndTime } from '@/views/report/interface';
 import { TabList } from '@/common/components/description/interface';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 export default defineComponent({
     name: 'inventory_report_warehouse',
@@ -62,7 +63,7 @@ export default defineComponent({
             queryFn: queryTableAction, // 查询表格数据
             tableName: 'table_pcweb_warehouse_report', // 表头key
             tableFilterKey: [], // 表格过滤字段
-            menuType: 'inventory_report_warehouse', // 当前tab页对应的code
+            menuType: EnumRouterName.inventory_report_warehouse, // 当前tab页对应的code
         };
         const {
             visible,

+ 2 - 1
src/views/report/spot-report/list/spot_report/index.vue

@@ -34,6 +34,7 @@ import Description from '@/common/components/description/index.vue';
 import { watchEffect } from 'vue';
 import { queryResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
 import { TabList } from '@/common/components/description/interface';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 
 export default defineComponent({
     name: 'spot-report',
@@ -61,7 +62,7 @@ export default defineComponent({
             queryFn: queryTableAction, // 查询表格数据
             tableName: 'table_pcweb_spot_report', // 表头key
             tableFilterKey: [], // 表格过滤字段
-            menuType: 'spot_report_spot', // 当前tab页对应的code
+            menuType: EnumRouterName.spot_report_spot, // 当前tab页对应的code
         };
         const {
             visible,

+ 2 - 1
src/views/report/sum_pl_report/list/sum_pl_report/index.vue

@@ -34,6 +34,7 @@ import { handleInitTypeAndTime } from '@/views/report/setup';
 import { Ermcp3ArealSumPL, QryAreaSumPLReq } from '@/services/go/ermcp/report/interface';
 import { qryAreaSumPL } from '@/services/go/ermcp/report';
 import { TabList } from '@/common/components/description/interface';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
 export default defineComponent({
     name: 'sum_pl_report',
     components: {
@@ -60,7 +61,7 @@ export default defineComponent({
             queryFn: queryTableAction, // 查询表格数据
             tableName: 'table_pcweb_aggregate_profit_and_loss', // 表头key
             tableFilterKey: [], // 表格过滤字段
-            menuType: 'sum_pl_report_sum_pl', // 当前tab页对应的code
+            menuType: EnumRouterName.sum_pl_report_sum_pl, // 当前tab页对应的code
         };
         const {
             visible,