leafydream 4 vuotta sitten
vanhempi
commit
93b557a8c2
100 muutettua tiedostoa jossa 4838 lisäystä ja 2637 poistoa
  1. 124 0
      generate-code/pc_menu_pingan.json
  2. 186 14
      generate-code/pc_menu_企业风管.json
  3. BIN
      src/assets/images/nodata_white.png
  4. BIN
      src/assets/images/tabbg_active_white.png
  5. BIN
      src/assets/images/tabbg_white.png
  6. BIN
      src/assets/images/titleArrow_white.png
  7. 64 15
      src/assets/styles/mixin.less
  8. 78 3
      src/assets/styles/theme.css
  9. 25 2
      src/assets/styles/variables.less
  10. 10 0
      src/common/components/drawer/index.vue
  11. 0 27
      src/common/components/filter/index.vue
  12. 0 41
      src/common/components/firstMenu/index.vue
  13. 2 2
      src/common/components/thirdMenu/index.vue
  14. 7 7
      src/common/constants/enumOrderComponents.ts
  15. 157 115
      src/common/constants/enumRouterName.ts
  16. 127 7
      src/common/constants/enumsName.ts
  17. 91 79
      src/common/constants/modalNameEnum.ts
  18. 9 3
      src/common/methods/table/interface.ts
  19. 7 2
      src/layout/components/bottom.vue
  20. 51 54
      src/layout/components/header.vue
  21. 23 19
      src/layout/components/main.vue
  22. 32 24
      src/layout/components/top.vue
  23. 252 9
      src/router/index.ts
  24. 1 1
      src/services/go/commonService/index.ts
  25. 12 1
      src/services/go/wrtrade/index.ts
  26. 57 24
      src/services/go/wrtrade/interface.ts
  27. 52 55
      src/views/account/login.vue
  28. 142 142
      src/views/business/plan/components/modify/index.vue
  29. 9 0
      src/views/hedging/entry_of_spot_information/index.vue
  30. 23 0
      src/views/hedging/spot_price_management/spot_price_management_disable/index.vue
  31. 23 0
      src/views/hedging/spot_price_management/spot_price_management_normal/index.vue
  32. 282 259
      src/views/information/custom/compoments/modify/index.vue
  33. 305 281
      src/views/information/goods/components/add/index.vue
  34. 69 69
      src/views/information/goods/components/hedgingModify/index.vue
  35. 303 280
      src/views/information/goods/components/modify/index.vue
  36. 120 149
      src/views/information/goods/components/spotDetail/index.vue
  37. 137 132
      src/views/information/warehouse-info/compoments/add/index.vue
  38. 40 31
      src/views/market/spot_trade/components/buy-sell-market/components/buy/index.vue
  39. 149 160
      src/views/market/spot_trade/components/buy-sell-market/components/delisting/index.vue
  40. 6 0
      src/views/market/spot_trade/components/buy-sell-market/components/delisting/interface.ts
  41. 6 9
      src/views/market/spot_trade/components/buy-sell-market/components/delisting/setup.ts
  42. 2 2
      src/views/market/spot_trade/components/buy-sell-market/components/financing_delisting/index.vue
  43. 5 5
      src/views/market/spot_trade/components/buy-sell-market/components/financing_delisting/setup.ts
  44. 34 29
      src/views/market/spot_trade/components/buy-sell-market/components/sell/index.vue
  45. 1 10
      src/views/market/spot_trade/components/buy-sell-market/index.vue
  46. 36 28
      src/views/market/spot_trade/components/detail/index.vue
  47. 64 40
      src/views/market/spot_trade/components/filter/index.vue
  48. 23 11
      src/views/market/spot_trade/components/post_buying/index.vue
  49. 6 0
      src/views/market/spot_trade/components/post_buying/interface.ts
  50. 28 4
      src/views/market/spot_trade/components/post_buying/setup.ts
  51. 28 0
      src/views/market/spot_trade/spot_trade_order_transaction/index.vue
  52. 112 0
      src/views/market/spot_trade/spot_trade_order_transaction/spot_trade_order_transaction_basis_difference/index.vue
  53. 71 0
      src/views/market/spot_trade/spot_trade_order_transaction/spot_trade_order_transaction_listing_transfer/index.vue
  54. 28 0
      src/views/market/spot_trade/spot_trade_reference_market/index.vue
  55. 2 2
      src/views/market/warehouseTrade/components/delisting/index.vue
  56. 2 2
      src/views/market/warehouseTrade/components/listed/index.vue
  57. 1 1
      src/views/market/warehouseTrade/index.vue
  58. 18 1
      src/views/order/financing_manager/components/financing_manager_apply_order/index.vue
  59. 9 7
      src/views/order/financing_manager/components/financing_manager_contract/components/buyback/index.vue
  60. 4 4
      src/views/order/financing_manager/components/financing_manager_contract/components/pay/index.vue
  61. 6 1
      src/views/order/financing_manager/components/financing_manager_contract/index.vue
  62. 1 1
      src/views/order/funding_information/components/funding_information_funding_summary/index.vue
  63. 14 14
      src/views/order/performance_information/components/components/breach_contract/index.vue
  64. 43 83
      src/views/order/performance_information/components/components/detail/index.vue
  65. 2 2
      src/views/order/performance_information/components/components/extension/index.vue
  66. 6 4
      src/views/order/performance_information/components/components/setup.ts
  67. 1 1
      src/views/order/performance_information/components/performance_information_buy_performance/index.vue
  68. 1 1
      src/views/order/performance_information/components/performance_information_sell_performance/index.vue
  69. 3 3
      src/views/order/pre_sale_warehouse_receipt/components/pre_sale_warehouse_receipt_order_summary/components/listed/index.vue
  70. 5 4
      src/views/order/pre_sale_warehouse_receipt/components/pre_sale_warehouse_receipt_order_summary/components/listed/setup.ts
  71. 2 1
      src/views/order/pre_sale_warehouse_receipt/components/pre_sale_warehouse_receipt_order_summary/index.vue
  72. 14 0
      src/views/order/spot_warran/components/spot_warrant_in_and_out_warehouse/index.vue
  73. 2 2
      src/views/order/spot_warran/components/spot_warrant_inventory_summary/components/listing.vue
  74. 2 2
      src/views/order/spot_warran/components/spot_warrant_inventory_summary/components/listing/index.vue
  75. 3 3
      src/views/order/spot_warran/components/spot_warrant_spot_details/components/listing/index.vue
  76. 7 3
      src/views/order/spot_warran/components/spot_warrant_spot_details/components/listing/setup.ts
  77. 2 2
      src/views/order/spot_warran/components/spot_warrant_spot_details/components/pick_up/index.vue
  78. 2 1
      src/views/order/spot_warran/components/spot_warrant_spot_details/index.vue
  79. 2 2
      src/views/order/spot_warran/components/spot_warrant_spot_summary/components/index.vue
  80. 57 60
      src/views/platinum/platinum_agreement/compoments/modify/index.vue
  81. 298 276
      src/views/platinum/platinum_customer_info/compoments/modify/index.vue
  82. 1 0
      src/views/platinum/platinum_document_query/list/waiting/index.vue
  83. 74 0
      src/views/search/search_capital_flow/search_capital_flow_tab/index.vue
  84. 2 2
      src/views/search/search_document_records/search_commodity_contract/index.vue
  85. 1 2
      src/views/search/search_document_records/search_commodity_contract/search_document_records_commission_record/index.vue
  86. 1 2
      src/views/search/search_document_records/search_commodity_contract/search_document_records_contract_summary/index.vue
  87. 1 2
      src/views/search/search_document_records/search_commodity_contract/search_document_records_delivery_record/index.vue
  88. 55 0
      src/views/search/search_document_records/search_commodity_contract/search_document_records_transaction_record/index.vue
  89. 71 0
      src/views/search/search_document_records/search_pre_sale_warehouse_receipt/search_pre_sale_warehouse_receipt_commission_record/index.vue
  90. 59 0
      src/views/search/search_document_records/search_pre_sale_warehouse_receipt/search_pre_sale_warehouse_receipt_order_summary/index.vue
  91. 55 0
      src/views/search/search_document_records/search_pre_sale_warehouse_receipt/search_pre_sale_warehouse_receipt_protocol_specified_record/index.vue
  92. 60 0
      src/views/search/search_document_records/search_pre_sale_warehouse_receipt/search_pre_sale_warehouse_receipt_transaction_record/index.vue
  93. 73 0
      src/views/search/search_document_records/search_spot_warrant/search_spot_warrant_listing_record/index.vue
  94. 1 1
      src/views/search/search_document_records/search_spot_warrant/search_spot_warrant_protocol_specified_record/index.vue
  95. 71 0
      src/views/search/search_document_records/search_spot_warrant/search_spot_warrant_transaction_record/index.vue
  96. 55 0
      src/views/search/search_document_records/search_spot_warrant/search_spot_warrant_warehouse_receipt_details/index.vue
  97. 85 0
      src/views/search/search_financing_inquiry/search_financing_inquiry_apply_order/index.vue
  98. 77 0
      src/views/search/search_financing_inquiry/search_financing_inquiry_contract/index.vue
  99. 85 0
      src/views/search/search_performance_query/search_performance_query_buy_performance/index.vue
  100. 83 0
      src/views/search/search_performance_query/search_performance_query_sell_performance/index.vue

+ 124 - 0
generate-code/pc_menu_pingan.json

@@ -0,0 +1,124 @@
+[
+	{
+		"code": "hedging",
+		"title": "套期保值",
+		"sort": 1,
+		"type": 1,
+		"rulekey": "",
+		"remark": "",
+		"isshow": true,
+		"children": [
+			{
+				"code": "entry_of_spot_information",
+				"title": "现货信息录入",
+				"sort": 1,
+				"type": 1,
+				"rulekey": "",
+				"remark": "",
+				"isshow": true,
+				"children": []
+			},
+			{
+				"code": "spot_price_management",
+				"title": "现货点价管理",
+				"sort": 2,
+				"type": 1,
+				"rulekey": "",
+				"remark": "",
+				"isshow": true,
+				"children": [
+					{
+						"code": "spot_price_management_normal",
+						"title": "正常",
+						"sort": 1,
+						"type": 1,
+						"rulekey": "",
+						"remark": "",
+						"isshow": true,
+						"children": [
+							{
+                "code": "spot_price_management_normal_add",
+                "title": "新增",
+                "sort": 1,
+                "type": 2,
+                "rulekey": "",
+                "isshow": true,
+                "url": "",
+                "remark": "",
+                "children": [
+									{
+										"code": "spot_price_management_normal_modify",
+										"title": "修改",
+										"sort": 1,
+										"type": 2,
+										"rulekey": "",
+										"isshow": true,
+										"url": "",
+										"remark": "",
+										"children": []
+									},
+									{
+										"code": "spot_price_management_normal_disable",
+										"title": "停用",
+										"sort": 2,
+										"type": 2,
+										"rulekey": "",
+										"isshow": true,
+										"url": "",
+										"remark": "",
+										"children": []
+									}
+								]
+							}
+						]
+					},
+					{
+						"code": "spot_price_management_disable",
+						"title": "停用",
+						"sort": 2,
+						"type": 1,
+						"rulekey": "",
+						"remark": "",
+						"isshow": true,
+						"children": [
+							{
+                "code": "spot_price_management_disable_add",
+                "title": "新增",
+                "sort": 1,
+                "type": 2,
+                "rulekey": "",
+                "isshow": true,
+                "url": "",
+                "remark": "",
+                "children": [
+									{
+										"code": "spot_price_management_disable_modify",
+										"title": "恢复",
+										"sort": 1,
+										"type": 2,
+										"rulekey": "",
+										"isshow": true,
+										"url": "",
+										"remark": "",
+										"children": []
+									},
+									{
+										"code": "spot_price_management_disable_disable",
+										"title": "删除",
+										"sort": 2,
+										"type": 2,
+										"rulekey": "",
+										"isshow": true,
+										"url": "",
+										"remark": "",
+										"children": []
+									}
+								]
+							}
+						]
+					}
+				]
+			}
+		]
+	}
+]

+ 186 - 14
generate-code/pc_menu_企业风管.json

@@ -1181,6 +1181,56 @@
                 ]
               }
             ]
+          },
+          {
+            "code": "spot_trade_order_transaction",
+            "title": "订单交易",
+            "sort": 1,
+            "type": 1,
+            "rulekey": "client_pc_web_spot_order_transaction",
+            "isshow": true,
+            "url": "",
+            "remark": "",
+            "children": [
+              {
+                "code": "spot_trade_order_transaction_listing_transfer",
+                "title": "挂牌转让",
+                "sort": 1,
+                "type": 1,
+                "rulekey": "client_pc_web_spot_order_transaction_listing_transfer",
+                "isshow": true,
+                "url": "",
+                "remark": "",
+                "children": [
+
+                ]
+              },          {
+                "code": "spot_trade_order_transaction_basis_difference",
+                "title": "基差点价",
+                "sort": 1,
+                "type": 1,
+                "rulekey": "client_pc_web_spot_order_transaction_basis_difference",
+                "isshow": true,
+                "url": "",
+                "remark": "",
+                "children": [
+
+                ]
+              }
+            ]
+          },
+          {
+            "code": "spot_trade_reference_market",
+            "title": "参考行情",
+            "sort": 1,
+            "type": 1,
+            "rulekey": "client_pc_web_spot_reference_market",
+            "isshow": true,
+            "url": "",
+            "remark": "",
+            "children": [
+
+            ]
           }
         ]
       },
@@ -3089,7 +3139,7 @@
                 "code": "search_spot_warrant_warehouse_receipt_details",
                 "title": "仓单明细",
                 "sort": 1,
-                "type": 3,
+                "type": 1,
                 "rulekey": "client_pc_web_inquire_document_record_spot_warrant_warehouse_receipt_details",
                 "isshow": true,
                 "url": "",
@@ -3101,7 +3151,7 @@
                 "code": "search_spot_warrant_listing_record",
                 "title": "挂牌记录",
                 "sort": 1,
-                "type": 3,
+                "type": 1,
                 "rulekey": "client_pc_web_inquire_document_record_spot_warrant_listing_record",
                 "isshow": true,
                 "url": "",
@@ -3113,7 +3163,7 @@
                 "code": "search_spot_warrant_transaction_record",
                 "title": "成交记录",
                 "sort": 1,
-                "type": 3,
+                "type": 1,
                 "rulekey": "client_pc_web_inquire_document_record_spot_warrant_transaction_record",
                 "isshow": true,
                 "url": "",
@@ -3125,7 +3175,7 @@
                 "code": "search_spot_warrant_protocol_specified_record",
                 "title": "协议指定记录",
                 "sort": 1,
-                "type": 3,
+                "type": 1,
                 "rulekey": "client_pc_web_inquire_document_record_spot_warrant_protocol_specified_record",
                 "isshow": true,
                 "url": "",
@@ -3149,7 +3199,7 @@
                 "code": "search_pre_sale_warehouse_receipt_order_summary",
                 "title": "订单汇总",
                 "sort": 1,
-                "type": 3,
+                "type": 1,
                 "rulekey": "client_pc_web_inquire_document_record_pre_sale_warehouse_receipt_order_summary",
                 "isshow": true,
                 "url": "",
@@ -3161,7 +3211,7 @@
                 "code": "search_pre_sale_warehouse_receipt_commission_record",
                 "title": "委托记录",
                 "sort": 1,
-                "type": 3,
+                "type": 1,
                 "rulekey": "client_pc_web_inquire_document_record_pre_sale_warehouse_receipt_commission_record",
                 "isshow": true,
                 "url": "",
@@ -3173,7 +3223,7 @@
                 "code": "search_pre_sale_warehouse_receipt_transaction_record",
                 "title": "成交记录",
                 "sort": 1,
-                "type": 3,
+                "type": 1,
                 "rulekey": "client_pc_web_inquire_document_record_pre_sale_warehouse_receipt_transaction_record",
                 "isshow": true,
                 "url": "",
@@ -3185,7 +3235,7 @@
                 "code": "search_pre_sale_warehouse_receipt_protocol_specified_record",
                 "title": "协议指定记录",
                 "sort": 1,
-                "type": 3,
+                "type": 1,
                 "rulekey": "client_pc_web_inquire_document_record_pre_sale_warehouse_receipt_protocol_specified_record",
                 "isshow": true,
                 "url": "",
@@ -3196,7 +3246,7 @@
             ]
           },
           {
-            "code": "search_document_records",
+            "code": "search_commodity_contract",
             "title": "商品合约",
             "sort": 1,
             "type": 1,
@@ -3209,7 +3259,7 @@
                 "code": "search_document_records_contract_summary",
                 "title": "合约汇总",
                 "sort": 1,
-                "type": 3,
+                "type": 1,
                 "rulekey": "client_pc_web_inquire_document_record_commodity_contract_contract_summary",
                 "isshow": true,
                 "url": "",
@@ -3221,7 +3271,7 @@
                 "code": "search_document_records_commission_record",
                 "title": "委托记录",
                 "sort": 1,
-                "type": 3,
+                "type": 1,
                 "rulekey": "client_pc_web_inquire_document_record_commodity_contract_commission_record",
                 "isshow": true,
                 "url": "",
@@ -3233,7 +3283,7 @@
                 "code": "search_document_records_transaction_record",
                 "title": "成交记录",
                 "sort": 1,
-                "type": 3,
+                "type": 1,
                 "rulekey": "client_pc_web_inquire_document_record_commodity_contract_transaction_record",
                 "isshow": true,
                 "url": "",
@@ -3245,7 +3295,7 @@
                 "code": "search_document_records_delivery_record",
                 "title": "交收记录",
                 "sort": 1,
-                "type": 3,
+                "type": 1,
                 "rulekey": "client_pc_web_inquire_document_record_commodity_contract_delivery_record",
                 "isshow": true,
                 "url": "",
@@ -4590,5 +4640,127 @@
         ]
       }
     ]
-  }
+  },
+  {
+		"code": "hedging",
+		"title": "套期保值",
+		"sort": 1,
+		"type": 1,
+		"rulekey": "",
+		"remark": "",
+		"isshow": true,
+		"children": [
+			{
+				"code": "entry_of_spot_information",
+				"title": "现货信息录入",
+				"sort": 1,
+				"type": 1,
+				"rulekey": "",
+				"remark": "",
+				"isshow": true,
+				"children": []
+			},
+			{
+				"code": "spot_price_management",
+				"title": "现货点价管理",
+				"sort": 2,
+				"type": 1,
+				"rulekey": "",
+				"remark": "",
+				"isshow": true,
+				"children": [
+					{
+						"code": "spot_price_management_normal",
+						"title": "正常",
+						"sort": 1,
+						"type": 1,
+						"rulekey": "",
+						"remark": "",
+						"isshow": true,
+						"children": [
+							{
+                "code": "spot_price_management_normal_add",
+                "title": "新增",
+                "sort": 1,
+                "type": 2,
+                "rulekey": "",
+                "isshow": true,
+                "url": "",
+                "remark": "",
+                "children": [
+									{
+										"code": "spot_price_management_normal_modify",
+										"title": "修改",
+										"sort": 1,
+										"type": 2,
+										"rulekey": "",
+										"isshow": true,
+										"url": "",
+										"remark": "",
+										"children": []
+									},
+									{
+										"code": "spot_price_management_normal_disable",
+										"title": "停用",
+										"sort": 2,
+										"type": 2,
+										"rulekey": "",
+										"isshow": true,
+										"url": "",
+										"remark": "",
+										"children": []
+									}
+								]
+							}
+						]
+					},
+					{
+						"code": "spot_price_management_disable",
+						"title": "停用",
+						"sort": 2,
+						"type": 1,
+						"rulekey": "",
+						"remark": "",
+						"isshow": true,
+						"children": [
+							{
+                "code": "spot_price_management_disable_add",
+                "title": "新增",
+                "sort": 1,
+                "type": 2,
+                "rulekey": "",
+                "isshow": true,
+                "url": "",
+                "remark": "",
+                "children": [
+									{
+										"code": "spot_price_management_disable_modify",
+										"title": "恢复",
+										"sort": 1,
+										"type": 2,
+										"rulekey": "",
+										"isshow": true,
+										"url": "",
+										"remark": "",
+										"children": []
+									},
+									{
+										"code": "spot_price_management_disable_disable",
+										"title": "删除",
+										"sort": 2,
+										"type": 2,
+										"rulekey": "",
+										"isshow": true,
+										"url": "",
+										"remark": "",
+										"children": []
+									}
+								]
+							}
+						]
+					}
+				]
+			}
+		]
+	}
 ]

BIN
src/assets/images/nodata_white.png


BIN
src/assets/images/tabbg_active_white.png


BIN
src/assets/images/tabbg_white.png


BIN
src/assets/images/titleArrow_white.png


+ 64 - 15
src/assets/styles/mixin.less

@@ -242,6 +242,7 @@
         .ant-table-placeholder {
             border: 0;
             background: @m-black2;
+            min-height: 227px;
         }
     }
     .ant-table-row-expand-icon {
@@ -559,7 +560,7 @@
                 color: @m-blue10;
                 margin-right: 20px;
                 &:hover {
-                    border-color: rgba(@m-blue10, .8);
+                    border-color: @m-blue10-hover;
                 }
             }
         }
@@ -734,10 +735,12 @@
 .input-enumdicname-absolute {
     position: absolute;
     top: -8px;
-    right: -23px;
+    right: -110px;
     color: @m-grey10;
     margin-left: 5px;
     font-size: 16px;
+    display: inline-block;
+    min-width: 100px;
   }
 
 .dialogInput {
@@ -826,8 +829,8 @@
         color: @m-white0;
         .rounded-corners(3px);
         &:hover {
-            background: rgba(@m-blue0, 0.8);
-            color: rgba(@m-white0, 0.8);
+            background: @m-blue0-hover;
+            color: @m-white0-hover;
         }
     }
     .ant-upload-list-item-info {
@@ -936,21 +939,30 @@
 .orange {
     color: @m-orange0;
 }
-.selectBtn.ant-btn {
+.selectBtn.ant-btn,.operBtn.ant-btn {
     margin-left: 10px;
     width: 80px;
     height: 30px;
     line-height: 31px;
     text-align: center;
-    background: linear-gradient(0deg, @m-grey15 0%, @m-grey16 98%);
+    background: linear-gradient(0deg, @m-grey39 0%, @m-grey40 98%);
     border: 0;
     color: @m-white0;
     font-size: 14px;
     .rounded-corners(3px);
     &:hover,
     &:focus {
-        background: linear-gradient(0deg, @m-grey15-hover 0%, @m-grey16-hover 98%);
-        color: rgba(@m-white0, 0.8);
+        background: linear-gradient(0deg, @m-grey39-hover 0%, @m-grey40-hover 98%);
+        color: @m-white0-hover;
+        border: 0;
+    }
+}
+.operBtn.ant-btn {
+    background: linear-gradient(0deg, @m-blue6 0%, @m-blue7 99%);
+    &:hover,
+    &:focus {
+        background: linear-gradient(0deg, @m-blue6-hover 0%, @m-blue7-hover 99%);
+        color: @m-white0-hover;
         border: 0;
     }
 }
@@ -969,7 +981,7 @@
     &:hover,
     &:focus {
         background: linear-gradient(0deg, @m-blue6-hover 0%, @m-blue7-hover 99%);
-        color: rgba(@m-white0, 0.8);
+        color: @m-white0-hover;
         border: 0;
     }
 }
@@ -993,7 +1005,7 @@
         &:hover,
     &:focus {
         background: linear-gradient(0deg, @m-blue2-hover 0%, @m-blue0-hover 99%);
-        color: rgba(@m-white0, 0.8);
+        color: @m-white0-hover;
         border: 0;
     }
     }
@@ -1015,7 +1027,7 @@
     &:hover,
     &:focus {
         background: linear-gradient(0deg, @m-red9-hover 0%, @m-red10-hover 99%);
-        color: rgba(@m-white0, 0.8);
+        color: @m-white0-hover;
         border: 0;
     }
 }
@@ -1033,7 +1045,7 @@
     &:hover,
     &:focus {
         background: linear-gradient(0deg, @m-grey12-hover 0%, @m-grey13-hover 99%);
-        color: rgba(@m-white0, 0.8);
+        color: @m-white0-hover;
         border: 0;
     }
 }
@@ -1818,7 +1830,7 @@ input:-internal-autofill-selected {
             .arrowRightIcon,.arrowLeftIcon {
                 width: 12px;
                 height: 40px;
-                background-image: url(../images/titleArrow.png);
+                background-image: @m-arrowRight;
                 background-position: 0 0;
                 background-repeat: no-repeat;
             }
@@ -2142,7 +2154,7 @@ input:-internal-autofill-selected {
 .noData {
     width: 80px;
     height: 80px;
-    background: url(../images/nodata.png) center center no-repeat;
+    background: @m-nodata center center no-repeat;
     background-size: cover;
 }
 
@@ -2150,7 +2162,7 @@ input:-internal-autofill-selected {
     .ant-empty-image {
         width: 80px;
         height: 80px;
-        background: url(../images/nodata.png) center center no-repeat;
+        background: @m-nodata center center no-repeat;
         background-size: cover;
         .ant-empty-img-simple {
             display: none;
@@ -2331,4 +2343,41 @@ input:-internal-autofill-selected {
 .ant-menu-dark .ant-menu-inline.ant-menu-sub {
     background: @m-black28;
     box-shadow: none;
+}
+
+// 仓单贸易查询条件
+.ant-select-tree-dropdown {
+    background: @m-grey9;
+    box-shadow: none;
+    .ant-select-tree {
+        color: @m-grey1;
+        li {
+            .ant-select-tree-node-content-wrapper-open:hover {
+                background: @m-blue3;
+            }
+            .ant-select-tree-node-content-wrapper {
+                color: @m-grey1;
+            }
+            .ant-select-tree-child-tree {
+                li:hover {
+                    background: @m-blue3;
+                    span {
+                        background: @m-blue3;
+                        color: @m-white0;
+                    }
+                }
+            }
+        }
+    }
+}
+
+// 左侧菜单样式
+.ant-menu-dark .ant-menu-sub .ant-menu-item,
+.ant-menu-dark .ant-menu-sub .ant-menu-item {
+    color: @m-grey34;
+}
+
+.ant-menu-dark .ant-menu-sub .ant-menu-item-selected,
+.ant-menu-dark .ant-menu-sub .ant-menu-item-selected {
+  color: @m-white8;
 }

+ 78 - 3
src/assets/styles/theme.css

@@ -29,7 +29,18 @@
     --m-grey26: #343e48;
 
     --m-grey31: #212629;
-    --m-green1: #e8ffef;
+    --m-grey32: #7a8a94;
+    --m-grey33: #88a0ae;
+    --m-grey34: #88A0AE;
+    --m-grey35: #343D46;
+    --m-grey36: #38444F;
+    --m-grey37: transpant;
+    --m-grey38: #88a0ae;
+    --m-grey39: #455773;
+    --m-grey39-hover: rgba(69, 87, 115, .8);
+    --m-grey40: #405066;
+    --m-grey40-hover: rgba(64, 80, 102, .8);
+    /* --m-green1: #e8ffef; */
 
     --m-black0: #242a2e;
     --m-black1: #181e22;
@@ -39,6 +50,7 @@
     --m-black5: #121415;
     --m-black6: #1B2F41;
     --m-black7: #15293A;
+    --m-black7-hover: rgba(21, 41, 58, .8);
     --m-black8: #212629;
     --m-black9: #161A1C;
     --m-black10: #121618;
@@ -62,6 +74,8 @@
     --m-black28: #000c17;
     --m-black29: #2B3F52;
     --m-black30: #15202B;
+    --m-black31: #0E0E0F;
+    --m-black32: #0E0E0F;
 
     --m-blue0: #3a87f7;
     --m-blue0-hover: rgba(58, 135, 247, .8);
@@ -79,6 +93,7 @@
     --m-blue9: #4179DB;
     --m-blue9-hover: rgba(65, 121, 219, .8);
     --m-blue10: #0C95FF;
+    --m-blue10-hover: rgba(12, 149, 255, .8);
     --m-blue11: #1271BA;
     --m-blue12: #1556B5;
     --m-blue13: #193778;
@@ -96,17 +111,27 @@
     --m-white0-hover: rgba(255, 255, 255, .8);
     --m-white1: #E5E5E5;
     --m-white5: #fffefe;
+    --m-white6: #ffffff;
+    --m-white7: #ffffff;
+    --m-white8: #ffffff;
 
     --m-green0: #1FF195;
     --m-green1: #10251d;
 
     --m-red2: #271112;
+    
+    --m-nodata: url("../images/nodata.png");
+
+    --m-tabbg: url("../images/tabbg.png");
+    --m-tabbg-active: url("../images/tabbgActive.png");
+    --m-arrowRight: url("../images/titleArrow.png");
+    
 } 
 /* 白色主题 */
 /* :root[theme="light"] { */
 :root[theme="light"] { 
     --m-grey0: #5179E2;
-    --m-grey1: #FEFFFF;
+    --m-grey1: #7A8A94;
     --m-grey2: #7A8A94;
     --m-grey5: #B2C4DD;
     --m-grey6: #ffffff;
@@ -124,6 +149,7 @@
     --m-grey15-hover: rgba(114, 124, 152, .8);
     --m-grey16: #727C98;
     --m-grey16-hover: rgba(114, 124, 152, .8);
+    --m-grey17: #808E97; 
     --m-grey18: #FFFFFF; /* #ECF2F5 */
     --m-grey19: #F6F8FA;
     --m-grey20: #DAE5EC;
@@ -134,6 +160,17 @@
     --m-grey26: #5179E2;
 
     --m-grey31: #D6DEE3;
+    --m-grey32: #FEFFFF;
+    --m-grey33: #5E6E78;
+    --m-grey34: #808E97;
+    --m-grey35: #ffffff;
+    --m-grey36: #ffffff;
+    --m-grey37: #CBD7DD;
+    --m-grey38: #7A8A94;
+    --m-grey39: #5179E2;
+    --m-grey39-hover: rgba(81, 121, 226, .8);
+    --m-grey40: #5179E2;
+    --m-grey40-hover: rgba(81, 121, 226, .8);
 
     --m-black0: #F8FBFF;
     --m-black1: #ECF2F5;
@@ -143,6 +180,7 @@
     --m-black5: #ECF2F5;
     --m-black6: #DAE5EC;
     --m-black7: #D4E0FF;
+    --m-black7-hover: rgba(212, 224, 255, .8);
     --m-black8: #DAE5EC;
     --m-black9: #e3ebf1;
     --m-black10: #ddebed;
@@ -166,6 +204,8 @@
     --m-black28: #DDE3E8;
     --m-black29: #2B3F52;
     --m-black30: #15202B;
+    --m-black31: #FFFFFF;
+    --m-black32: #CED8E6;
 
     --m-blue0: #5179E2;
     --m-blue0-hover: rgba(81, 121, 226, .8);
@@ -183,6 +223,7 @@
     --m-blue9: #5179E2;
     --m-blue9-hover: rgba(81, 121, 226, .8);
     --m-blue10: #0C95FF;
+    --m-blue10-hover: rgba(12, 149, 255, .8);
     --m-blue11: #ffffff;
     --m-blue12: #D4E0FF;
     --m-blue13: #DEEFFF;
@@ -200,11 +241,20 @@
     --m-white0-hover: rgba(255, 255, 255, .8);
     --m-white1: #333333;
     --m-white5: #FFFFFF;
+    --m-white6: #333333;
+    --m-white7: #718FAE;
+    --m-white8: #ffffff;
 
     --m-green0: #00A843;
     --m-green1: #e8ffef;
 
     --m-red2: #ffe2e2;
+
+    --m-nodata: url("../images/nodata_white.png");
+
+    --m-tabbg: url("../images/tabbg_white.png");
+    --m-tabbg-active: url("../images/tabbg_active_white.png");
+    --m-arrowRight: url("../images/titleArrow_white.png");
 }
 
 /* 黑色主题 */
@@ -228,6 +278,7 @@
     --m-grey15-hover: rgba(69, 87, 115, .8);
     --m-grey16: #405066;
     --m-grey16-hover: rgba(64, 80, 102, .8);
+    --m-grey17: #556772;
     --m-grey18: #1D2327;
     --m-grey19: #162534;
     --m-grey20: #1B2A38;
@@ -238,7 +289,18 @@
     --m-grey26: #343e48;
 
     --m-grey31: #212629;
-    --m-green1: #e8ffef;
+    --m-grey32: #7a8a94;
+    --m-grey33: #88a0ae;
+    --m-grey34: #88A0AE;
+    --m-grey35: #343D46;
+    --m-grey36: #38444F;
+    --m-grey37: transpant;
+    --m-grey38: #88a0ae;
+    --m-grey39: #455773;
+    --m-grey39-hover: rgba(69, 87, 115, .8);
+    --m-grey40: #405066;
+    --m-grey40-hover: rgba(64, 80, 102, .8);
+    /* --m-green1: #e8ffef; */
 
     --m-black0: #242a2e;
     --m-black1: #181e22;
@@ -248,6 +310,7 @@
     --m-black5: #121415;
     --m-black6: #1B2F41;
     --m-black7: #15293A;
+    --m-black7-hover: rgba(21, 41, 58, .8);
     --m-black8: #212629;
     --m-black9: #161A1C;
     --m-black10: #121618;
@@ -271,6 +334,8 @@
     --m-black28: #000c17;
     --m-black29: #2B3F52;
     --m-black30: #15202B;
+    --m-black31: #0E0E0F;
+    --m-black32: #0E0E0F;
 
     --m-blue0: #3a87f7;
     --m-blue0-hover: rgba(58, 135, 247, .8);
@@ -288,6 +353,7 @@
     --m-blue9: #4179DB;
     --m-blue9-hover: rgba(65, 121, 219, .8);
     --m-blue10: #0C95FF;
+    --m-blue10-hover: rgba(12, 149, 255, .8);
     --m-blue11: #1271BA;
     --m-blue12: #1556B5;
     --m-blue13: #193778;
@@ -305,10 +371,19 @@
     --m-white0-hover: rgba(255, 255, 255, .8);
     --m-white1: #E5E5E5;
     --m-white5: #fffefe;
+    --m-white6: #ffffff;
+    --m-white7: #ffffff;
+    --m-white8: #ffffff;
 
     --m-green0: #1FF195;
     --m-green1: #10251d;
 
     --m-red2: #271112;
+
+    --m-nodata: url("../images/nodata.png");
+
+    --m-tabbg: url("../images/tabbg.png");
+    --m-tabbg-active: url("../images/tabbgActive.png");
+    --m-arrowRight: url("../images/titleArrow.png");
 }
 

+ 25 - 2
src/assets/styles/variables.less

@@ -23,7 +23,7 @@
 @m-grey15-hover: var(--m-grey15-hover);
 @m-grey16: var(--m-grey16);
 @m-grey16-hover: var(--m-grey16-hover);
-@m-grey17: #556772;                         // orderTable颜色没用到
+@m-grey17: var(--m-grey17);
 @m-grey18: var(--m-grey18);
 @m-grey19: var(--m-grey19);
 @m-grey20: var(--m-grey20);
@@ -39,6 +39,17 @@
 @m-grey29: #4D647A;
 @m-grey30: #223548;
 @m-grey31: var(--m-grey31);
+@m-grey32: var(--m-grey32);
+@m-grey33: var(--m-grey33);
+@m-grey34: var(--m-grey34);
+@m-grey35: var(--m-grey35);
+@m-grey36: var(--m-grey36);
+@m-grey37: var(--m-grey37);
+@m-grey38: var(--m-grey38);
+@m-grey39: var(--m-grey39);
+@m-grey39-hover: var(--m-grey39-hover);
+@m-grey40: var(--m-grey40);
+@m-grey40-hover: var(--m-grey40-hover);
 
 @m-black: #000000;
 @m-black0: var(--m-black0);
@@ -49,6 +60,7 @@
 @m-black5: var(--m-black5);
 @m-black6: var(--m-black6);
 @m-black7: var(--m-black7);
+@m-black7-hover: var(--m-black7-hover);
 @m-black8: var(--m-black8);
 @m-black9: var(--m-black9);
 @m-black10: var(--m-black10);
@@ -72,7 +84,8 @@
 @m-black28: var(--m-black28);
 @m-black29: var(--m-black29);                // 角色详情复选框未选中边框色   白色版本等色值修改
 @m-black30: var(--m-black30);                // 角色详情复选框选中背景色   白色版本等色值修改
-
+@m-black31: var(--m-black31);
+@m-black32: var(--m-black32);
 
 @m-blue0: var(--m-blue0);
 @m-blue0-hover: var(--m-blue0-hover);
@@ -91,6 +104,7 @@
 @m-blue9: var(--m-blue9);
 @m-blue9-hover: var(--m-blue9-hover);
 @m-blue10: var(--m-blue10);
+@m-blue10-hover: var(--m-blue10-hover);
 @m-blue11: var(--m-blue11);
 @m-blue12: var(--m-blue12);
 @m-blue13: var(--m-blue13);                           // 白色版本买卖大厅小行情背景色
@@ -114,6 +128,9 @@
 @m-white3: rgb(54 187 207);
 @m-white4: #FEFEFE;
 @m-white5: var(--m-white5);
+@m-white6: var(--m-white6);
+@m-white7: var(--m-white7);
+@m-white8: var(--m-white8);
 
 
 @m-green0: var(--m-green0);
@@ -139,6 +156,12 @@
 @m-red10: #FB7F75;
 @m-red10-hover: rgba(@m-red10, .8);
 
+@m-nodata: var(--m-nodata);
+
+@m-tabbg: var(--m-tabbg);
+@m-tabbg-active: var(--m-tabbg-active);
+@m-arrowRight: var(--m-arrowRight);
+
 @m-yellow0: #FF9600;
 @m-yellow1: #FC9618;
 @m-yellow2: #ffae00;

+ 10 - 0
src/common/components/drawer/index.vue

@@ -112,6 +112,16 @@ export default defineComponent({
         width: 580px !important;
     }
 }
+.bottomWidth {
+    .position(fixed, auto, 0, 0, auto);
+    width: 765px;
+    height: 396px;
+    background: transparent;
+    z-index: 10;
+    .ant-drawer-content-wrapper {
+        width: 765px !important;
+    }
+}
 .tradeDialog {
     .position(fixed, 116px, 0, auto, auto);
     width: 467px;

+ 0 - 27
src/common/components/filter/index.vue

@@ -91,31 +91,4 @@ export default defineComponent({
         margin-left: 10px;
     }
 }
-.selectBtn.ant-btn {
-    margin-left: 10px;
-    width: 80px;
-    height: 30px;
-    line-height: 31px;
-    text-align: center;
-    background: linear-gradient(0deg, @m-grey15 0%, @m-grey16 98%);
-    border: 0;
-    color: @m-white0;
-    font-size: 14px;
-    .rounded-corners(3px);
-    &:hover,
-    &:focus {
-        background: linear-gradient(0deg, @m-grey15-hover 0%, @m-grey16-hover 98%);
-        color: rgba(@m-white0, 0.8);
-        border: 0;
-    }
-}
-.operBtn.ant-btn:extend(.selectBtn.ant-btn) {
-    background: linear-gradient(0deg, @m-blue6 0%, @m-blue7 99%);
-    &:hover,
-    &:focus {
-        background: linear-gradient(0deg, @m-blue6-hover 0%, @m-blue7-hover 99%);
-        color: rgba(@m-white0, 0.8);
-        border: 0;
-    }
-}
 </style>;

+ 0 - 41
src/common/components/firstMenu/index.vue

@@ -61,45 +61,4 @@ export default defineComponent({
 .noBorderBottom {
     border-bottom: none;
 }
-.first-menu {
-    width: 100%;
-    height: 40px;
-    display: flex;
-    justify-content: space-between;
-    background-color: @m-black1;
-    .a-menu_container {
-        padding-top: 5px;
-        .flex();
-        height: 40px;
-        line-height: 34px;
-        border-bottom: 1px solid @m-blue0 !important;
-        .ant-menu-item {
-            min-width: 120px;
-            height: 34px;
-            line-height: 34px;
-            background: linear-gradient(0deg, #343d46 0%, #38444f 100%);
-            margin-left: 3px;
-            font-size: 16px;
-            columns: @m-grey2;
-            border-radius: 5px 5px 0px 0px;
-            cursor: pointer;
-            font-family: Adobe Heiti Std;
-            font-weight: normal;
-            &:hover {
-                .noBorderBottom;
-            }
-        }
-        .ant-menu-item-active {
-            .noBorderBottom;
-        }
-        .ant-menu-item-selected {
-            .noBorderBottom;
-            color: @m-white0;
-            background: linear-gradient(0deg, #3270d2 0%, #3a87f7 100%);
-            &:hover {
-                color: @m-white0;
-            }
-        }
-    }
-}
 </style>;

+ 2 - 2
src/common/components/thirdMenu/index.vue

@@ -80,12 +80,12 @@ export default defineComponent({
                                 color: @m-grey1;
                                 padding: 0 20px;
                                 margin: 0;
-                                background: url(../../../assets/images/tabbg.png) center center no-repeat;
+                                background: @m-tabbg center center no-repeat;
                                 background-size: cover;
                             }
                             .ant-tabs-tab-active.ant-tabs-tab {
                                 color: @m-white0;
-                                background: url(../../../assets/images/tabbgActive.png) center center no-repeat;
+                                background: @m-tabbg-active center center no-repeat;
                                 background-size: cover;
                                 z-index: 2;
                             }

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

@@ -24,24 +24,24 @@ export enum enumOrderComponents {
 						
 						spot_warrant_deal = 'spot_warrant_deal', // 成交
 						
-						spot_warrant_designated_deal = 'spot_warrant_designated_deal', // 指定成交
-						
 						spot_warrant_in_and_out_warehouse = 'spot_warrant_in_and_out_warehouse', // 提货
 						
+						spot_warrant_designated_deal = 'spot_warrant_designated_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_deal = 'pre_sale_warehouse_receipt_deal', // 成交
-						
 						pre_sale_warehouse_receipt_designated_deal = 'pre_sale_warehouse_receipt_designated_deal', // 指定成交
 						
-						commodity_contract_summary = 'commodity_contract_summary', // 合约汇总
+						pre_sale_warehouse_receipt_deal = 'pre_sale_warehouse_receipt_deal', // 成交
 						
 						commodity_contract_commission = 'commodity_contract_commission', // 委托
 						
 						commodity_contract_make_deal = 'commodity_contract_make_deal', // 成交
 						
+						commodity_contract_summary = 'commodity_contract_summary', // 合约汇总
+						
 						commodity_contract_settlement = 'commodity_contract_settlement', // 交收
 						
 						financing_manager_apply_order = 'financing_manager_apply_order', // 申请单
@@ -52,10 +52,10 @@ export enum enumOrderComponents {
 						
 						performance_information_sell_performance = 'performance_information_sell_performance', // 卖履约
 						
-						funding_information_funding_summary = 'funding_information_funding_summary', // 资金汇总
-						
 						funding_information_funding_log = 'funding_information_funding_log', // 资金流水
 						
+						funding_information_funding_summary = 'funding_information_funding_summary', // 资金汇总
+						
 						pre_sale_warehouse_receipt_designated_deal_resell = 'pre_sale_warehouse_receipt_designated_deal_resell', // 撤销出售
 						
 		}

+ 157 - 115
src/common/constants/enumRouterName.ts

@@ -2,53 +2,87 @@
 export enum EnumRouterName {
 						remark = 'remark', // 
 						
+						market = 'market', // 市场
+						
+						info = 'info', // 信息
+						
+						search = 'search', // 查询
+						
+						report = 'report', // 报表
+						
 						manage = 'manage', // 管理
 						
-						market = 'market', // 市场
+						platinum = 'platinum', // 铂金宝
+						
+						hedging = 'hedging', // 套期保值
 						
 						business = 'business', // 业务
 						
-						platinum = 'platinum', // 铂金宝
+						spot_trade = 'spot_trade', // 现货贸易
 						
-						search = 'search', // 查询
+						futures = 'futures', // 期货
 						
-						info = 'info', // 信息
+						custom_info = 'custom_info', // 客户资料
 						
-						report = 'report', // 报表
+						spot_contract = 'spot_contract', // 现货合同
 						
-						business_review = 'business_review', // 业务审核
+						goods_info = 'goods_info', // 商品信息
 						
-						inventory_review = 'inventory_review', // 库存审核
+						outaccount_status = 'outaccount_status', // 账户状态
 						
-						spot_trade = 'spot_trade', // 现货贸易
+						inventory = 'inventory', // 库存查询
 						
-						inventory_manager = 'inventory_manager', // 库存管理
+						search_document_records = 'search_document_records', // 单据记录
 						
-						futures = 'futures', // 期货
+						search_capital_flow = 'search_capital_flow', // 资金流水
 						
-						sell = 'sell', // 销售
+						search_performance_query = 'search_performance_query', // 履约查询
 						
-						purchase = 'purchase', // 采购
+						search_financing_inquiry = 'search_financing_inquiry', // 融资查询
 						
-						exposure = 'exposure', // 敞口
+						search_pickup_query = 'search_pickup_query', // 提货查询
 						
-						plan = 'plan', // 计划
+						search_login_log = 'search_login_log', // 登录日志
+						
+						finance_report = 'finance_report', // 财务报表
+						
+						exposure_report = 'exposure_report', // 敞口报表
+						
+						spot_report = 'spot_report', // 现货报表
+						
+						inventory_report = 'inventory_report', // 库存报表
+						
+						sum_pl_report = 'sum_pl_report', // 汇总损益报表
+						
+						future_report = 'future_report', // 期货报表
+						
+						warehouse_info = 'warehouse_info', // 仓库信息
+						
+						account_info = 'account_info', // 账户管理
+						
+						business_review = 'business_review', // 业务审核
 						
 						finance_review = 'finance_review', // 财务审核
 						
+						inventory_review = 'inventory_review', // 库存审核
+						
+						inventory_manager = 'inventory_manager', // 库存管理
+						
 						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_query = 'platinum_fixed_investment_query', // 定投查询
 						
 						platinum_fixed_investment_price_query = 'platinum_fixed_investment_price_query', // 定投价查询
 						
 						platinum_document_query = 'platinum_document_query', // 单据查询
 						
-						platinum_fixed_investment_query = 'platinum_fixed_investment_query', // 定投查询
+						platinum_financing_information = 'platinum_financing_information', // 融资信息
+						
+						platinum_contract_goods = 'platinum_contract_goods', // 合约商品
+						
+						platinum_contract_commodity_suspension = 'platinum_contract_commodity_suspension', // 合约商品停牌
 						
 						platinum_agents_and_stores = 'platinum_agents_and_stores', // 代理和门店
 						
@@ -56,91 +90,95 @@ export enum EnumRouterName {
 						
 						platinum_agreement = 'platinum_agreement', // 协议管理
 						
-						platinum_financing_information = 'platinum_financing_information', // 融资信息
-						
-						search_document_records = 'search_document_records', // 单据记录
+						entry_of_spot_information = 'entry_of_spot_information', // 现货信息录入
 						
-						search_capital_flow = 'search_capital_flow', // 资金流水
+						spot_price_management = 'spot_price_management', // 现货点价管理
 						
-						search_financing_inquiry = 'search_financing_inquiry', // 融资查询
+						purchase = 'purchase', // 采购
 						
-						outaccount_status = 'outaccount_status', // 账户状态
+						sell = 'sell', // 销售
 						
-						search_performance_query = 'search_performance_query', // 履约查询
+						plan = 'plan', // 计划
 						
-						platinum_contract_goods = 'platinum_contract_goods', // 合约商品
+						platinum_pick_query = 'platinum_pick_query', // 提货查询
 						
-						search_pickup_query = 'search_pickup_query', // 提货查询
+						platinum_recharge_withdrawal_review = 'platinum_recharge_withdrawal_review', // 充值和提现审核
 						
-						platinum_contract_commodity_suspension = 'platinum_contract_commodity_suspension', // 合约商品停牌
+						account_info_manager = 'account_info_manager', // 管理账户
 						
-						search_login_log = 'search_login_log', // 登录日志
+						account_info_futures = 'account_info_futures', // 期货账户
 						
-						custom_info = 'custom_info', // 客户资料
+						business_review_someprice = 'business_review_someprice', // 点价
 						
-						spot_contract = 'spot_contract', // 现货合同
+						business_review_settlement = 'business_review_settlement', // 交收
 						
-						warehouse_info = 'warehouse_info', // 仓库信息
+						finance_review_funds = 'finance_review_funds', // 款项
 						
-						account_info = 'account_info', // 账户管理
+						inventory_review_checkin = 'inventory_review_checkin', // 入库
 						
-						goods_info = 'goods_info', // 商品信息
+						inventory_review_checkout = 'inventory_review_checkout', // 出库
 						
-						finance_report = 'finance_report', // 财务报表
+						inventory_manager_tab = 'inventory_manager_tab', // 库存管理
 						
-						exposure_report = 'exposure_report', // 敞口报表
+						platinum_custom_info_normal = 'platinum_custom_info_normal', // 正常
 						
-						spot_report = 'spot_report', // 现货报表
+						finance_review_invoice = 'finance_review_invoice', // 发票
 						
-						inventory_report = 'inventory_report', // 库存报表
+						platinum_customer_info_unsubmit = 'platinum_customer_info_unsubmit', // 待审核
 						
-						sum_pl_report = 'sum_pl_report', // 汇总损益报表
+						platinum_customer_info_stop = 'platinum_customer_info_stop', // 停用
 						
-						future_report = 'future_report', // 期货报表
+						platinum_pick_goods_management_tab = 'platinum_pick_goods_management_tab', // 提货商品管理
 						
-						business_review_someprice = 'business_review_someprice', // 点价
+						platinum_fixed_investment_plan_query = 'platinum_fixed_investment_plan_query', // 定投计划查询
 						
-						business_review_settlement = 'business_review_settlement', // 交收
+						platinum_fixed_investment_flow_query = 'platinum_fixed_investment_flow_query', // 定投流水查询
 						
-						inventory_review_checkin = 'inventory_review_checkin', // 入库
+						platinum_document_query_position = 'platinum_document_query_position', // 持仓
 						
-						inventory_review_checkout = 'inventory_review_checkout', // 出库
+						platinum_document_query_waiting = 'platinum_document_query_waiting', // 待付单
 						
-						warehouse_receipt_trade = 'warehouse_receipt_trade', // 仓单贸易
+						platinum_document_query_success = 'platinum_document_query_success', // 成交单
 						
-						warehouse_pre_sale = 'warehouse_pre_sale', // 仓单预售
+						platinum_fixed_investment_price_query_tab = 'platinum_fixed_investment_price_query_tab', // 定投价查询
 						
-						inventory_manager_tab = 'inventory_manager_tab', // 库存管理
+						platinum_document_query_order = 'platinum_document_query_order', // 委托单
 						
-						dominant_contract = 'dominant_contract', // 主力
+						platinum_financing_information_tab = 'platinum_financing_information_tab', // 融资信息
 						
-						night_plate = 'night_plate', // 夜盘
+						platinum_contract_goods_tab = 'platinum_contract_goods_tab', // 合约商品
 						
-						main_contract = 'main_contract', // 主连
+						platinum_contract_commodity_suspension_tab = 'platinum_contract_commodity_suspension_tab', // 合约商品停牌
 						
-						position = 'position', // 持仓
+						platinum_agents_and_stores_tab = 'platinum_agents_and_stores_tab', // 代理和门店
 						
-						orderdetail = 'orderdetail', // 委托
+						platinum_spot_and_price_tab = 'platinum_spot_and_price_tab', // 现货市价
 						
-						closedetail = 'closedetail', // 平仓
+						platinum_agreement_tab = 'platinum_agreement_tab', // 协议管理
 						
-						sell_pending = 'sell_pending', // 待点价
+						spot_price_management_disable = 'spot_price_management_disable', // 停用
 						
-						sell_performance = 'sell_performance', // 履约交收
+						spot_price_management_normal = 'spot_price_management_normal', // 正常
 						
-						sell_all = 'sell_all', // 全部
+						purchase_pending = 'purchase_pending', // 待点价
 						
 						purchase_performance = 'purchase_performance', // 履约交收
 						
 						purchase_all = 'purchase_all', // 全部
 						
+						sell_performance = 'sell_performance', // 履约交收
+						
+						sell_all = 'sell_all', // 全部
+						
+						sell_pending = 'sell_pending', // 待点价
+						
 						exposure_realtime = 'exposure_realtime', // 实时敞口
 						
 						exposure_spot = 'exposure_spot', // 现货头寸
 						
 						exposure_futures = 'exposure_futures', // 期货头寸
 						
-						tradedetail = 'tradedetail', // 成交
+						exposure_history = 'exposure_history', // 历史敞口
 						
 						plan_uncommitted = 'plan_uncommitted', // 未提交
 						
@@ -148,49 +186,47 @@ export enum EnumRouterName {
 						
 						plan_running = 'plan_running', // 执行中
 						
-						finance_review_funds = 'finance_review_funds', // 款项
-						
-						finance_review_invoice = 'finance_review_invoice', // 发票
+						platinum_pick_query_tab = 'platinum_pick_query_tab', // 提货查询
 						
-						exposure_history = 'exposure_history', // 历史敞口
+						warehouse_receipt_trade = 'warehouse_receipt_trade', // 仓单贸易
 						
-						purchase_pending = 'purchase_pending', // 待点价
+						warehouse_pre_sale = 'warehouse_pre_sale', // 仓单预售
 						
-						platinum_customer_info_unsubmit = 'platinum_customer_info_unsubmit', // 待审核
+						spot_trade_order_transaction = 'spot_trade_order_transaction', // 订单交易
 						
-						platinum_customer_info_stop = 'platinum_customer_info_stop', // 停用
+						dominant_contract = 'dominant_contract', // 主力
 						
-						platinum_custom_info_normal = 'platinum_custom_info_normal', // 正常
+						night_plate = 'night_plate', // 夜盘
 						
-						platinum_pick_goods_management_tab = 'platinum_pick_goods_management_tab', // 提货商品管理
+						main_contract = 'main_contract', // 主连
 						
-						platinum_pick_query_tab = 'platinum_pick_query_tab', // 提货查询
+						spot_trade_reference_market = 'spot_trade_reference_market', // 参考行情
 						
-						platinum_withdrawal_review_tab = 'platinum_withdrawal_review_tab', // 提现审核
+						orderdetail = 'orderdetail', // 委托
 						
-						platinum_recharge_review_tab = 'platinum_recharge_review_tab', // 充值审核
+						tradedetail = 'tradedetail', // 成交
 						
-						platinum_fixed_investment_price_query_tab = 'platinum_fixed_investment_price_query_tab', // 定投价查询
+						closedetail = 'closedetail', // 平仓
 						
-						platinum_document_query_position = 'platinum_document_query_position', // 持仓
+						custom_info_unsubmit = 'custom_info_unsubmit', // 未提交
 						
-						platinum_document_query_waiting = 'platinum_document_query_waiting', // 待付单
+						custom_info_checkpending = 'custom_info_checkpending', // 待审核
 						
-						platinum_document_query_success = 'platinum_document_query_success', // 成交单
+						custom_info_disabled = 'custom_info_disabled', // 停用
 						
-						platinum_fixed_investment_plan_query = 'platinum_fixed_investment_plan_query', // 定投计划查询
+						spot_contract_unsubmitted = 'spot_contract_unsubmitted', // 未提交
 						
-						platinum_fixed_investment_flow_query = 'platinum_fixed_investment_flow_query', // 定投流水查询
+						spot_contract_performance = 'spot_contract_performance', // 履约中
 						
-						platinum_agents_and_stores_tab = 'platinum_agents_and_stores_tab', // 代理和门店
+						spot_contract_finished = 'spot_contract_finished', // 已完成
 						
-						platinum_spot_and_price_tab = 'platinum_spot_and_price_tab', // 现货市价
+						spot_contract_checkpending = 'spot_contract_checkpending', // 待审核
 						
-						platinum_document_query_order = 'platinum_document_query_order', // 委托单
+						goods_info_spot = 'goods_info_spot', // 现货品种
 						
-						platinum_agreement_tab = 'platinum_agreement_tab', // 协议管理
+						goods_info_hedge = 'goods_info_hedge', // 套保品种
 						
-						platinum_financing_information_tab = 'platinum_financing_information_tab', // 融资信息
+						outaccount_status_status = 'outaccount_status_status', // 账户状态
 						
 						inventory_current = 'inventory_current', // 当前库存
 						
@@ -200,83 +236,89 @@ export enum EnumRouterName {
 						
 						search_pre_sale_warehouse_receipt = 'search_pre_sale_warehouse_receipt', // 预售仓单
 						
-						search_capital_flow_tab = 'search_capital_flow_tab', // 资金流水
-						
-						search_financing_inquiry_contract = 'search_financing_inquiry_contract', // 合同
+						search_commodity_contract = 'search_commodity_contract', // 商品合约
 						
-						outaccount_status_status = 'outaccount_status_status', // 账户状态
+						search_capital_flow_tab = 'search_capital_flow_tab', // 资金流水
 						
 						search_performance_query_buy_performance = 'search_performance_query_buy_performance', // 买履约
 						
 						search_performance_query_sell_performance = 'search_performance_query_sell_performance', // 卖履约
 						
-						platinum_contract_goods_tab = 'platinum_contract_goods_tab', // 合约商品
+						search_financing_inquiry_apply_order = 'search_financing_inquiry_apply_order', // 申请单
 						
-						search_pickup_query_tab = 'search_pickup_query_tab', // 提货查询
+						search_financing_inquiry_contract = 'search_financing_inquiry_contract', // 合同
 						
-						platinum_contract_commodity_suspension_tab = 'platinum_contract_commodity_suspension_tab', // 合约商品停牌
+						search_pickup_query_tab = 'search_pickup_query_tab', // 提货查询
 						
-						search_financing_inquiry_apply_order = 'search_financing_inquiry_apply_order', // 申请单
+						finance_report_finance = 'finance_report_finance', // 财务报表
 						
-						custom_info_unsubmit = 'custom_info_unsubmit', // 未提交
+						exposure_report_exposure = 'exposure_report_exposure', // 敞口报表
 						
-						custom_info_checkpending = 'custom_info_checkpending', // 待审核
+						spot_report_spot = 'spot_report_spot', // 现货报表
 						
-						custom_info_disabled = 'custom_info_disabled', // 停用
+						inventory_report_inventory_category = 'inventory_report_inventory_category', // 库存报表(品类)
 						
-						spot_contract_unsubmitted = 'spot_contract_unsubmitted', // 未提交
+						inventory_report_warehouse = 'inventory_report_warehouse', // 库存报表(仓库)
 						
-						spot_contract_checkpending = 'spot_contract_checkpending', // 待审核
+						sum_pl_report_sum_pl = 'sum_pl_report_sum_pl', // 汇总损益报表
 						
-						spot_contract_performance = 'spot_contract_performance', // 履约中
+						future_report_future = 'future_report_future', // 期货报表
 						
-						spot_contract_finished = 'spot_contract_finished', // 已完成
+						warehouse_info_normal = 'warehouse_info_normal', // 正常
 						
 						warehouse_info_disabled = 'warehouse_info_disabled', // 停用
 						
-						warehouse_info_normal = 'warehouse_info_normal', // 正常
-						
 						account_info_business = 'account_info_business', // 业务账户
 						
 						account_info_trade = 'account_info_trade', // 交易账户
 						
-						account_info_manager = 'account_info_manager', // 管理账户
+						platinum_recharge_review_tab = 'platinum_recharge_review_tab', // 充值审核
 						
-						account_info_futures = 'account_info_futures', // 期货账户
+						platinum_withdrawal_review_tab = 'platinum_withdrawal_review_tab', // 提现审核
 						
-						goods_info_spot = 'goods_info_spot', // 现货品种
+						warehouse_pre_sale_floating_price = 'warehouse_pre_sale_floating_price', // 浮动价预售
 						
-						goods_info_hedge = 'goods_info_hedge', // 套保品种
+						spot_trade_order_transaction_basis_difference = 'spot_trade_order_transaction_basis_difference', // 基差点价
 						
-						finance_report_finance = 'finance_report_finance', // 财务报表
+						spot_trade_order_transaction_listing_transfer = 'spot_trade_order_transaction_listing_transfer', // 挂牌转让
 						
-						exposure_report_exposure = 'exposure_report_exposure', // 敞口报表
+						goods_info_spot_normal = 'goods_info_spot_normal', // 正常
 						
-						spot_report_spot = 'spot_report_spot', // 现货报表
+						goods_info_spot_disable = 'goods_info_spot_disable', // 停用
 						
-						inventory_report_inventory_category = 'inventory_report_inventory_category', // 库存报表(品类)
+						goods_info_hedge_normal = 'goods_info_hedge_normal', // 正常
 						
-						sum_pl_report_sum_pl = 'sum_pl_report_sum_pl', // 汇总损益报表
+						search_spot_warrant_listing_record = 'search_spot_warrant_listing_record', // 挂牌记录
 						
-						inventory_report_warehouse = 'inventory_report_warehouse', // 库存报表(仓库)
+						goods_info_hedge_disable = 'goods_info_hedge_disable', // 停用
 						
-						future_report_future = 'future_report_future', // 期货报表
+						search_spot_warrant_warehouse_receipt_details = 'search_spot_warrant_warehouse_receipt_details', // 仓单明细
+						
+						search_spot_warrant_protocol_specified_record = 'search_spot_warrant_protocol_specified_record', // 协议指定记录
+						
+						search_spot_warrant_transaction_record = 'search_spot_warrant_transaction_record', // 成交记录
 						
 						warehouse_receipt_trade_price = 'warehouse_receipt_trade_price', // 一口价挂牌
 						
-						warehouse_receipt_trade_floating_price = 'warehouse_receipt_trade_floating_price', // 浮动价挂牌
+						search_pre_sale_warehouse_receipt_order_summary = 'search_pre_sale_warehouse_receipt_order_summary', // 订单汇总
 						
-						warehouse_pre_sale_price = 'warehouse_pre_sale_price', // 一口价预售
+						search_pre_sale_warehouse_receipt_transaction_record = 'search_pre_sale_warehouse_receipt_transaction_record', // 成交记录
 						
-						warehouse_pre_sale_floating_price = 'warehouse_pre_sale_floating_price', // 浮动价预售
+						search_pre_sale_warehouse_receipt_protocol_specified_record = 'search_pre_sale_warehouse_receipt_protocol_specified_record', // 协议指定记录
 						
-						goods_info_spot_normal = 'goods_info_spot_normal', // 正常
+						search_document_records_contract_summary = 'search_document_records_contract_summary', // 合约汇总
 						
-						goods_info_spot_disable = 'goods_info_spot_disable', // 停用
+						search_document_records_commission_record = 'search_document_records_commission_record', // 委托记录
 						
-						goods_info_hedge_normal = 'goods_info_hedge_normal', // 正常
+						warehouse_receipt_trade_floating_price = 'warehouse_receipt_trade_floating_price', // 浮动价挂牌
 						
-						goods_info_hedge_disable = 'goods_info_hedge_disable', // 停用
+						search_document_records_delivery_record = 'search_document_records_delivery_record', // 交收记录
+						
+						warehouse_pre_sale_price = 'warehouse_pre_sale_price', // 一口价预售
+						
+						search_document_records_transaction_record = 'search_document_records_transaction_record', // 成交记录
+						
+						search_pre_sale_warehouse_receipt_commission_record = 'search_pre_sale_warehouse_receipt_commission_record', // 委托记录
 						
 						spot_trade_warehouse_buy_hall = 'spot_trade_warehouse_buy_hall', // 买大厅
 						

+ 127 - 7
src/common/constants/enumsName.ts

@@ -637,9 +637,10 @@ export function getWrOrderTypeName(buyOrSell: number, wrTradeType: number) {
 
 /**
  * 履约类型 - 0:通用 1:交割 2:仓单贸易 3:预售集采 4:竞拍-降价式 (无仓单) 5:挂牌期权 6:竞拍-降价式 7:竞拍-竞价式 8:竞拍-大宗式 9:荷兰式 10:法币C2C 11:报价系统 12:挂牌系统
+ * /-仓单预售 1-仓单贸易
  * @param type
  */
-export function getPerformanceTypeName(type: number) {
+export function getPerformanceTypeName(type: number, haswr: number) {
     let result = '--'
     switch (type) {
         case 0:
@@ -649,16 +650,21 @@ export function getPerformanceTypeName(type: number) {
             result = '交割'
             break
         case 2:
-            result = '仓单贸易'
+            result = '预售仓单'
+            if(haswr === 1){
+                result = '仓单贸易'
+            }else{
+                result = '仓单预售'
+            }
             break
         case 3:
-            result = '预售集采'
+            result = '预售采'
             break
         case 4:
-            result = '竞拍-降价式'
+            result = '竞拍-降价式 (无仓单)'
             break
         case 5:
-            result = '挂牌期权'
+            result = '挂牌期权 (无仓单)'
             break
         case 6:
             result = '竞拍-降价式'
@@ -670,7 +676,7 @@ export function getPerformanceTypeName(type: number) {
             result = '竞拍-大宗式'
             break
         case 9:
-            result = '荷兰式'
+            result = '竞拍-荷兰式'
             break
         case 10:
             result = '法币C2C'
@@ -693,7 +699,7 @@ export function getPerformanceStatusName(type: number) {
     let result = '--'
     switch (type) {
         case 1:
-            result = '初始化'
+            result = '待激活'
             break
         case 2:
             result = '正常'
@@ -841,6 +847,62 @@ export function getApplyStatusFinanceName(type: number) {
     return result
 }
 
+//:预约成功 1:待初审 2:初审通过 3:初审拒绝 4:初审失败 5复审通过 6:复审拒绝 7:复审失败 8:已撤销
+export function getPickUpTypeName(type: number) {
+    let result = "--"
+    switch (type) {
+        case 0:
+            result = "预约成功"
+            break;
+        case 1:
+            result = '待审核'
+            break
+        case 2:
+            result = '初审通过'
+            break
+        case 3:
+            result = '初审拒绝'
+            break
+        case 4:
+            result = '初审失败'
+            break
+        case 5:
+            result = '复审通过'
+            break
+        case 6:
+            result = '复审拒绝'
+            break
+        case 7:
+            result = '复审失败'
+            break
+        case 8:
+            result = '已撤销'
+            break
+    }
+    return result
+}
+
+//申请类型 - 1:预约入库 2:预约出库 3:入库注册 4:出库注销
+export function getPickUpStatusName(type: number) {
+    let result = "--"
+    switch (type) {
+        case 1:
+            result = '预约入库'
+            break
+        case 2:
+            result = '预约出库'
+            break
+        case 3:
+            result = '入库注册'
+            break
+        case 4:
+            result = '出库注销'
+            break
+    }
+    return result
+}
+
+
 /**
  * //合同状态 - 1:待确认 2:已确认 3:确认拒绝 4:已支付保证金 5:已激活 6:已违约 7:到期结束 8:延期结束 9:违约结束 1number;
  //:已注销 11:已关闭 99:未提交
@@ -877,6 +939,64 @@ export function getScfContractStatusName(type: number) {
     return result
 }
 
+//scfcontracttype: number;//合同类型 - 1:仓单回购 2:仓单质押 3:合作套保 4:资金贷款 5:融资单 6:融资回购
+export function getScfContractTypeName(type: number) {
+    let result = "--"
+    switch (type) {
+        case 1:
+            result = '仓单回购'
+            break
+        case 2:
+            result = '仓单质押'
+            break
+        case 3:
+            result = '合作套保'
+            break
+        case 4:
+            result = '资金贷款'
+            break
+        case 5:
+            result = '融资单'
+            break
+        case 6:
+            result = '融资回购'
+            break
+    }
+    return result
+}
+
+// <!-- 结算方式 1:按日结息 3:按月结息-->
+export function getInterestSettleModeName(type: number) {
+    let result = "--"
+    switch (type) {
+        case 1:
+            result = '按日结息'
+            break
+        case 3:
+            result = '按月结息'
+            break
+    }
+    return result
+}
+
+//    interestratemode: number;//利率方式 - 1:年利率 2:日利率 3:日固定值
+export function getInterestrateModeName(mode: number, value: number) {
+    let result = "--"
+    switch (mode) {  // 1:年利率
+        case 1:
+            result = (value * 100).toFixed(2).toString()
+            break
+        case 2: //  2:日利率
+            result = (value * 10000).toFixed(2).toString()
+            break
+        case 3: // 日固定值
+            result = value.toFixed(2).toString()
+            break;
+    }
+    return result
+}
+
+
 
 /**
  * 资金操作类型

+ 91 - 79
src/common/constants/modalNameEnum.ts

@@ -4,79 +4,75 @@ export enum ModalEnum {
     commomOrder = 'commom-order', // 下单通用界面
 
     detail = 'detail', // 详情
-						spot_warrant_spot_details_pick_up = 'spot_warrant_spot_details_pick_up', // 提货
-						
 						spot_warrant_spot_summary_check = 'spot_warrant_spot_summary_check', // 查看库存
 						
-						spot_warrant_deal_detail = 'spot_warrant_deal_detail', // 详情
-						
-						spot_warrant_pending_order_cancel_order = 'spot_warrant_pending_order_cancel_order', // 撤单
-						
 						spot_warrant_spot_details_listed = 'spot_warrant_spot_details_listed', // 挂牌
 						
-						spot_warrant_designated_deal_resell = 'spot_warrant_designated_deal_resell', // 撤销出售
-						
 						spot_warrant_designated_deal_confirm_purchase = 'spot_warrant_designated_deal_confirm_purchase', // 确定购买
 						
+						spot_warrant_deal_detail = 'spot_warrant_deal_detail', // 详情
+						
+						spot_warrant_spot_details_pick_up = 'spot_warrant_spot_details_pick_up', // 提货
+						
 						spot_warrant_in_and_out_warehouse_sure_pick_up = 'spot_warrant_in_and_out_warehouse_sure_pick_up', // 确认提货
 						
+						spot_warrant_pending_order_cancel_order = 'spot_warrant_pending_order_cancel_order', // 撤单
+						
 						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_ignore = 'spot_warrant_designated_deal_ignore', // 忽略
+						
+						spot_warrant_designated_deal_resell = 'spot_warrant_designated_deal_resell', // 撤销出售
 						
 						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', // 确定购买
+						pre_sale_warehouse_receipt_pending_order_cancel_order = 'pre_sale_warehouse_receipt_pending_order_cancel_order', // 撤单
 						
-						spot_warrant_designated_deal_ignore = 'spot_warrant_designated_deal_ignore', // 忽略
+						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', // 忽略
 						
 						commodity_contract_summary_transfer = 'commodity_contract_summary_transfer', // 转让
 						
-						commodity_contract_summary_settlement = 'commodity_contract_summary_settlement', // 交收
-						
 						pre_sale_warehouse_receipt_deal_detail = 'pre_sale_warehouse_receipt_deal_detail', // 详情
 						
-						financing_manager_contract_repurchase_warrant = 'financing_manager_contract_repurchase_warrant', // 回购仓
+						commodity_contract_commission_cancel_order = 'commodity_contract_commission_cancel_order', // 撤
 						
-						financing_manager_contract_pay_arrears = 'financing_manager_contract_pay_arrears', // 支付欠款
+						financing_manager_contract_repurchase_warrant = 'financing_manager_contract_repurchase_warrant', // 回购仓单
 						
-						performance_information_buy_performance_pay = 'performance_information_buy_performance_pay', // 付款
+						commodity_contract_summary_settlement = 'commodity_contract_summary_settlement', // 交收
 						
 						financing_manager_apply_cancel = 'financing_manager_apply_cancel', // 撤销
 						
-						commodity_contract_commission_cancel_order = 'commodity_contract_commission_cancel_order', // 撤单
+						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_settlement = 'performance_information_buy_performance_settlement', // 交收
 						
 						performance_information_buy_performance_detail = 'performance_information_buy_performance_detail', // 详情
 						
+						performance_information_sell_performance_extension = 'performance_information_sell_performance_extension', // 延期
+						
 						performance_information_sell_performance_pay = 'performance_information_sell_performance_pay', // 付款
 						
-						performance_information_buy_performance_breach_contract = 'performance_information_buy_performance_breach_contract', // 违约
+						performance_information_sell_performance_breach_contract = 'performance_information_sell_performance_breach_contract', // 违约
 						
-						performance_information_buy_performance_extension = 'performance_information_buy_performance_extension', // 延期
+						performance_information_sell_performance_settlement = 'performance_information_sell_performance_settlement', // 交收
 						
-						performance_information_sell_performance_breach_contract = 'performance_information_sell_performance_breach_contract', // 违约
+						funding_information_funding_summary_recharge = 'funding_information_funding_summary_recharge', // 充值
 						
 						performance_information_sell_performance_detail = 'performance_information_sell_performance_detail', // 详情
 						
-						performance_information_sell_performance_extension = 'performance_information_sell_performance_extension', // 延期
-						
-						funding_information_funding_summary_recharge = 'funding_information_funding_summary_recharge', // 充值
+						funding_information_funding_summary_withdraw = 'funding_information_funding_summary_withdraw', // 提现
 						
 						spot_trade_warehouse_post_buying = 'spot_trade_warehouse_post_buying', // 挂牌求购
 						
-						spot_trade_warehouse_detail = 'spot_trade_warehouse_detail', // 详情
-						
 						spot_trade_warehouse_delisting = 'spot_trade_warehouse_delisting', // 摘牌
 						
-						funding_information_funding_summary_withdraw = 'funding_information_funding_summary_withdraw', // 提现
-						
 						spot_trade_warehouse_financing_delisting = 'spot_trade_warehouse_financing_delisting', // 融资摘牌
 						
-						performance_information_sell_performance_settlement = 'performance_information_sell_performance_settlement', // 交收
+						spot_trade_warehouse_detail = 'spot_trade_warehouse_detail', // 详情
 						
 						open = 'open', // 开仓
 						
@@ -88,21 +84,23 @@ export enum ModalEnum {
 						
 						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_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_modify = 'goods_info_spot_normal_modify', // 修改
 						
-						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_disable = 'goods_info_spot_normal_disable', // 停用
 						
-						custom_info_btn_recover = 'custom_info_btn_recover', // 恢复
+						spot_contract_btn_add = 'spot_contract_btn_add', // 新增
 						
 						none_btn = 'none_btn', // 按钮
 						
@@ -110,17 +108,15 @@ export enum ModalEnum {
 						
 						warehouse_info_btn_modify = 'warehouse_info_btn_modify', // 修改
 						
-						custom_info_btn_check = 'custom_info_btn_check', // 审核
-						
-						account_info_trade_btn_add = 'account_info_trade_btn_add', // 新增
-						
-						account_info_manager_btn_add = 'account_info_manager_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_recover = 'warehouse_info_btn_recover', // 恢复
+						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', // 权限设置
 						
@@ -132,16 +128,20 @@ export enum ModalEnum {
 						
 						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_invoice_audit = 'finance_review_invoice_audit', // 审核
+						finance_review_funds_cancel = 'finance_review_funds_cancel', // 撤销
 						
-						business_review_settlement_audit = 'business_review_settlement_audit', // 审核
+						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', // 审核
@@ -152,7 +152,11 @@ export enum ModalEnum {
 						
 						platinum_custom_info_add = 'platinum_custom_info_add', // 新增
 						
-						inventory_review_checkin_audit = 'inventory_review_checkin_audit', // 审核
+						financing_manager_contract_pay_arrears = 'financing_manager_contract_pay_arrears', // 支付欠款
+						
+						performance_information_buy_performance_extension = 'performance_information_buy_performance_extension', // 延期
+						
+						platinum_pick_goods_management_add = 'platinum_pick_goods_management_add', // 新增
 						
 						platinum_pick_query_complete_stocking = 'platinum_pick_query_complete_stocking', // 完成备货
 						
@@ -160,7 +164,7 @@ export enum ModalEnum {
 						
 						platinum_pick_query_receipt = 'platinum_pick_query_receipt', // 确认收货
 						
-						finance_review_funds_cancel = 'finance_review_funds_cancel', // 撤销
+						platinum_pick_query_confirm_pickup = 'platinum_pick_query_confirm_pickup', // 确认取货
 						
 						platinum_recharge_review_confirm_payment = 'platinum_recharge_review_confirm_payment', // 确认收款
 						
@@ -168,13 +172,13 @@ export enum ModalEnum {
 						
 						platinum_withdrawal_review_confirm_withdrawal = 'platinum_withdrawal_review_confirm_withdrawal', // 确认提现
 						
-						platinum_pick_goods_management_add = 'platinum_pick_goods_management_add', // 新增
-						
 						platinum_withdrawal_review_refuse = 'platinum_withdrawal_review_refuse', // 审核拒绝
 						
 						platinum_financing_information_detail = 'platinum_financing_information_detail', // 融资明细
 						
-						platinum_pick_query_confirm_pickup = 'platinum_pick_query_confirm_pickup', // 确认取货
+						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', // 新增
 						
@@ -182,7 +186,7 @@ export enum ModalEnum {
 						
 						platinum_agents_and_stores_logout = 'platinum_agents_and_stores_logout', // 注销
 						
-						platinum_contract_goods_add = 'platinum_contract_goods_add', // 新增
+						platinum_spot_and_price_modify = 'platinum_spot_and_price_modify', // 修改
 						
 						platinum_agreement_add = 'platinum_agreement_add', // 新增
 						
@@ -190,38 +194,44 @@ export enum ModalEnum {
 						
 						platinum_promotion_report = 'platinum_promotion_report', // 推广报表
 						
-						platinum_spot_and_price_modify = 'platinum_spot_and_price_modify', // 修改
-						
 						platinum_broker_management = 'platinum_broker_management', // 经纪人管理
 						
-						platinum_contract_commodity_suspension_add = 'platinum_contract_commodity_suspension_add', // 新增
+						spot_price_management_normal_add = 'spot_price_management_normal_add', // 新增
 						
-						spot_contract_btn_delete = 'spot_contract_btn_delete', // 删除
+						spot_price_management_disable_add = 'spot_price_management_disable_add', // 新增
 						
 						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_cancel = 'spot_contract_btn_cancel', // 撤销
 						
 						spot_contract_btn_finish = 'spot_contract_btn_finish', // 正常完结
 						
-						account_info_manager_btn_child_add = 'account_info_manager_btn_child_add', // 新增
+						account_info_business_btn_modify = 'account_info_business_btn_modify', // 修改
+						
+						account_info_business_btn_locked = 'account_info_business_btn_locked', // 锁定
+						
+						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_business_btn_modify = 'account_info_business_btn_modify', // 修改
+						account_info_manager_btn_child_add = 'account_info_manager_btn_child_add', // 新增
 						
 						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_futures_btn_child_add = 'account_info_futures_btn_child_add', // 新增
 						
 						account_info_business_btn_cancel = 'account_info_business_btn_cancel', // 注销
 						
+						account_info_futures_btn_modify = 'account_info_futures_btn_modify', // 修改
+						
+						purchase_pending_someprice = 'purchase_pending_someprice', // 点价登记
+						
 						purchase_pending_settlement = 'purchase_pending_settlement', // 交收登记
 						
 						purchase_pending_funds = 'purchase_pending_funds', // 款项登记
@@ -230,16 +240,8 @@ export enum ModalEnum {
 						
 						purchase_pending_storage = 'purchase_pending_storage', // 入库登记
 						
-						account_info_futures_btn_modify = 'account_info_futures_btn_modify', // 修改
-						
-						account_info_futures_btn_child_add = 'account_info_futures_btn_child_add', // 新增
-						
 						sell_pending_someprice = 'sell_pending_someprice', // 点价登记
 						
-						plan_uncommitted_modify = 'plan_uncommitted_modify', // 修改
-						
-						plan_uncommitted_delete = 'plan_uncommitted_delete', // 删除
-						
 						sell_pending_settlement = 'sell_pending_settlement', // 交收登记
 						
 						sell_pending_funds = 'sell_pending_funds', // 款项登记
@@ -248,12 +250,14 @@ export enum ModalEnum {
 						
 						sell_pending_storage = 'sell_pending_storage', // 出库登记
 						
-						purchase_pending_someprice = 'purchase_pending_someprice', // 点价登记
+						plan_uncommitted_modify = 'plan_uncommitted_modify', // 修改
 						
-						plan_audit_cancel = 'plan_audit_cancel', // 撤销
+						plan_uncommitted_delete = 'plan_uncommitted_delete', // 删除
 						
 						plan_audit_audit = 'plan_audit_audit', // 审核
 						
+						plan_audit_cancel = 'plan_audit_cancel', // 撤销
+						
 						inventory_current_detail_storehouse = 'inventory_current_detail_storehouse', // 仓库明细
 						
 						inventory_current_detail_storesave = 'inventory_current_detail_storesave', // 库存明细
@@ -262,8 +266,6 @@ export enum ModalEnum {
 						
 						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_customer_info_stop_delete = 'platinum_customer_info_stop_delete', // 删除
@@ -274,7 +276,7 @@ export enum ModalEnum {
 						
 						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', // 修改
 						
@@ -282,33 +284,41 @@ export enum ModalEnum {
 						
 						platinum_agreement_resume = 'platinum_agreement_resume', // 恢复
 						
+						platinum_contract_goods_logout = 'platinum_contract_goods_logout', // 注销
+						
 						platinum_agreement_delete = 'platinum_agreement_delete', // 注销
 						
 						platinum_broker_management_check = 'platinum_broker_management_check', // 审核
 						
 						platinum_broker_management_resume = 'platinum_broker_management_resume', // 恢复
 						
-						platinum_contract_commodity_suspension_modify = 'platinum_contract_commodity_suspension_modify', // 修改
+						spot_price_management_normal_modify = 'spot_price_management_normal_modify', // 修改
 						
-						account_info_manager_btn_modify = 'account_info_manager_btn_modify', // 修改
+						spot_price_management_normal_disable = 'spot_price_management_normal_disable', // 停用
 						
-						account_info_manager_btn_locked = 'account_info_manager_btn_locked', // 锁定
+						spot_price_management_disable_modify = 'spot_price_management_disable_modify', // 恢复
 						
-						account_info_manager_btn_unlocked = 'account_info_manager_btn_unlocked', // 解锁
+						spot_price_management_disable_disable = 'spot_price_management_disable_disable', // 删除
 						
-						account_info_manager_btn_reset = 'account_info_manager_btn_reset', // 重置密码
-						
-						account_info_manager_btn_logout = 'account_info_manager_btn_logout', // 注销
+						platinum_customer_info_unsubmit_check = 'platinum_customer_info_unsubmit_check', // 审核
 						
 						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_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_trade_btn_child_locked = 'account_info_trade_btn_child_locked', // 锁定
 						
-						account_info_trade_btn_child_unlocked = 'account_info_trade_btn_child_unlocked', // 解锁
+						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_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', // 授信
 						
@@ -316,4 +326,6 @@ export enum ModalEnum {
 						
 						account_info_futures_btn_child_cancel = 'account_info_futures_btn_child_cancel', // 注销
 						
+						account_info_trade_btn_child_reset = 'account_info_trade_btn_child_reset', // 重置密码
+						
 		}

+ 9 - 3
src/common/methods/table/interface.ts

@@ -26,13 +26,13 @@ table_pcweb_sales_pointprice:string, // 销售_待点价
 table_pcweb_sales_settle:string, // 销售_履约交收
 table_pcweb_sales_all:string, // 销售_全部
 table_pcweb_exposure:string, // 实时敞口
-table_pcweb_exposure_detail:string, // 实时敞口--现货明细
-table_pcweb_exposure_futures_detail:string, // 实时敞口--期货明细
 table_pcweb_exposure_spotposition:string, // 敞口--现货头寸
 table_pcweb_exposure_spotposition_detail:string, // 敞口--现货头寸--现货明细
 table_pcweb_exposure_futuresposition:string, // 敞口--期货头寸
 table_pcweb_exposure_futuresposition_detail:string, // 敞口--现货头寸--期货明细
 table_pcweb_report_spot_detail_day:string, // 现货日报表-详情
+table_pcweb_exposure_detail:string, // 实时敞口--现货明细
+table_pcweb_exposure_futures_detail:string, // 实时敞口--期货明细
 table_pcweb_report_spot_detail_month:string, // 现货月报表-详情
 table_pcweb_report_fincial_payment_day:string, // 报表-财务报表-款项-日报表
 table_pcweb_report_fincial_invoice_day:string, // 报表-财务报表-发票-日报表
@@ -122,5 +122,11 @@ table_pcweb_spot_trade_bottom_performance_info_sale:string, // 底部栏-履约
 table_pcweb_spot_trade_bottom_funding_info_summary:string, // 底部栏-资金信息
 table_pcweb_spot_trade_bottom_funding_info_log:string, // 底部栏-资金信息
 table_pcweb_financing_manage_bottom_apply_order:string, // 底部栏-融资管理
-table_pcweb_financing_manage_bottom_contract:string, // 底部栏-融资管理 
+table_pcweb_financing_manage_bottom_contract:string, // 底部栏-融资管理
+table_pcweb_financing_manage_bottom_commodity_order_summary:string, // 底部栏-商品订单
+table_pcweb_financing_manage_bottom_commodity_order_entrust:string, // 底部栏-商品订单
+table_pcweb_financing_manage_bottom_commodity_order_deal:string, // 底部栏-商品订单
+table_pcweb_financing_manage_bottom_commodity_order_settlement:string, // 底部栏-商品订单
+table_pcweb_financing_manage_order_transaction:string, // 现货贸易-订单交易
+table_pcweb_financing_manage_reference_market:string, // 现货贸易-参考行情 
  }

+ 7 - 2
src/layout/components/bottom.vue

@@ -105,6 +105,10 @@ export default defineComponent({
     .capitalSelect {
         margin-top: 3px;
         margin-right: 10px;
+        .ant-select-selector{
+            background-color: @m-grey6;
+            border:none
+        }
     }
 }
 .layout-bottom-all {
@@ -129,6 +133,7 @@ export default defineComponent({
         border-right: 1px solid @m-black2;
     }
     main {
+        max-width: 100%;
         flex: 1;
         .flex;
         flex-direction: column;
@@ -136,14 +141,14 @@ export default defineComponent({
         position: relative;
         .conditionIcon {
             font-size: 16px;
-            color: @m-grey1;
+            color: @m-white0;
             width: 16px;
             cursor: pointer;
             height: 40px;
             line-height: 40px;
             margin-right: 10px;
             &:hover {
-                color: rgba(@m-grey1, 0.8);
+                color: @m-white0-hover
             }
         }
     }

+ 51 - 54
src/layout/components/header.vue

@@ -1,65 +1,62 @@
 <template>
-  <!-- 风险管理 -->
+    <!-- 风险管理 -->
 
-  <div v-if="isOemByEnum(OemType.manager)">
-    <img src="../../assets/images/logoHeader.png" />
-    <span>深圳市多元世纪信息技术股份有限公司</span>
-  </div>
-  <!-- 云融 -->
+    <div v-if="isOemByEnum(OemType.manager)">
+        <img src="../../assets/images/logoHeader.png" />
+        <span>深圳市多元世纪信息技术股份有限公司</span>
+    </div>
+    <!-- 云融 -->
 
-  <div v-else-if="isOemByEnum(OemType.wrspot)">
-    <img src="../../assets/images/headLogo.jpg" />
-    <span>云融</span>
-  </div>
-  <div v-else>
-    <img src="../../assets/images/logoHeader.png" />
-    <span>深圳市多元世纪信息技术股份有限公司</span>
-  </div>
-  <div class="m-layout-header-right">
-    <div @click="openDrawer">
-      <span>{{ getUserName() }},您好!</span>
+    <div v-else-if="isOemByEnum(OemType.wrspot)">
+        <img src="../../assets/images/headLogo.jpg" />
+        <span>云融</span>
+    </div>
+    <div v-else>
+        <img src="../../assets/images/logoHeader.png" />
+        <span>深圳市多元世纪信息技术股份有限公司</span>
     </div>
-    <div class="relative">
-      <!-- <a-input-search ref="userNameInput"
+    <div class="m-layout-header-right">
+        <div @click="openDrawer">
+            <span>{{ getUserName() }},您好!</span>
+        </div>
+        <div class="relative">
+            <!-- <a-input-search ref="userNameInput"
                           class="searchInput"
                           readonly
                           placeholder="请输入代码/名称"
                           @pressEnter="search">
             </a-input-search>-->
-      <!-- <a-icon type="search" /> -->
-    </div>
-    <div class="news-container">
-      <a-badge @click="openNotice"
-               :dot="getUnReadNoticeLength() > 0">
-        <svg class="icon svg-icon"
-             aria-hidden="true">
-          <use xlink:href="#icon-xiaoxi" />
-        </svg>
-      </a-badge>
-    </div>
-    <div>
-      <a-popover v-model:visible="visible"
-                 trigger="click"
-                 placement="bottomRight">
-        <template #content>
-          <div v-for="item in setMenu"
-               class="popItem"
-               @click="chooseSetMenu(item.path)"
-               :key="item.path">{{ item.name }}</div>
-        </template>
-        <a-avatar :size="24">
-          <template #icon>
-            <!-- <SettingFilled /> -->
-            <svg class="icon svg-icon"
-                 aria-hidden="true">
-              <use xlink:href="#icon-yonghu4" />
-            </svg>
-          </template>
-        </a-avatar>
-      </a-popover>
-      <Setting />
+            <!-- <a-icon type="search" /> -->
+        </div>
+        <div class="news-container">
+            <a-badge @click="openNotice" :dot="getUnReadNoticeLength() > 0">
+                <svg class="icon svg-icon" aria-hidden="true">
+                    <use xlink:href="#icon-xiaoxi" />
+                </svg>
+            </a-badge>
+        </div>
+        <div>
+            <a-popover v-model:visible="visible" trigger="click" placement="bottomRight">
+                <template #content>
+                    <div
+                        v-for="item in setMenu"
+                        class="popItem"
+                        @click="chooseSetMenu(item.path)"
+                        :key="item.path"
+                    >{{ item.name }}</div>
+                </template>
+                <a-avatar :size="24">
+                    <template #icon>
+                        <!-- <SettingFilled /> -->
+                        <svg class="icon svg-icon" aria-hidden="true">
+                            <use xlink:href="#icon-yonghu4" />
+                        </svg>
+                    </template>
+                </a-avatar>
+            </a-popover>
+            <Setting />
+        </div>
     </div>
-  </div>
 </template>
 
 <script lang="ts">
@@ -87,8 +84,8 @@ const setFn = () => {
         // { name: '手机号码绑定/解绑', path: 'phone' },
         // { name: '关于我们', path: 'aboutUs' },
         { name: '退出', path: 'logout' },
-        // { name: '白主题', path: ThemeEnum.light },
-        // { name: '黑主题', path: ThemeEnum.dark },
+        { name: '白主题', path: ThemeEnum.light },
+        { name: '黑主题', path: ThemeEnum.dark },
     ];
     const { openAction } = openModal('logout');
     function chooseSetMenu(path: string) {

+ 23 - 19
src/layout/components/main.vue

@@ -1,20 +1,21 @@
 <template>
-  <div class="exposure">
-    <div class="first-menu">
-      <a-menu class="a-menu_container"
-              theme="dark"
-              v-model:selectedKeys="selectedKey"
-              @click="selectMenu"
-              mode="horizontal">
-        <a-menu-item :key="String(index)"
-                     v-for="(item, index) in list">{{ item.title}}</a-menu-item>
-      </a-menu>
-      <div class="menu_right">
-        <!-- <slot></slot> -->
-      </div>
+    <div class="exposure">
+        <div class="first-menu">
+            <a-menu
+                class="a-menu_container"
+                theme="dark"
+                v-model:selectedKeys="selectedKey"
+                @click="selectMenu"
+                mode="horizontal"
+            >
+                <a-menu-item :key="String(index)" v-for="(item, index) in list">{{ item.title}}</a-menu-item>
+            </a-menu>
+            <div class="menu_right">
+                <!-- <slot></slot> -->
+            </div>
+        </div>
+        <router-view />
     </div>
-    <router-view />
-  </div>
 </template>
 
 <script lang="ts">
@@ -54,23 +55,26 @@ export default defineComponent({
     height: 40px;
     border-bottom: 1px solid @m-blue0 !important;
     background-color: @m-black1;
+    .flex;
+    justify-content: space-between;
     .a-menu_container {
         padding-top: 5px;
         .flex();
         height: 34px;
         line-height: 34px;
+        background: transparent;
         .ant-menu-item {
             min-width: 120px;
             height: 34px;
             line-height: 34px;
-            background: linear-gradient(0deg, #343d46 0%, #38444f 100%);
+            background: linear-gradient(0deg, @m-grey35 0%, @m-grey36 100%);
             margin-left: 3px;
             font-size: 16px;
-            columns: @m-grey2;
+            color: @m-grey38;
             border-radius: 5px 5px 0px 0px;
             cursor: pointer;
             font-family: Adobe Heiti Std;
-            font-weight: normal;
+            border: 1px solid @m-grey37;
             &:hover {
                 .noBorderBottom;
             }
@@ -81,7 +85,7 @@ export default defineComponent({
         .ant-menu-item-selected {
             .noBorderBottom;
             color: @m-white0;
-            background: linear-gradient(0deg, #3270d2 0%, #3a87f7 100%);
+            background: linear-gradient(0deg, @m-blue2 0%, @m-blue0 100%);
             &:hover {
                 color: @m-white0;
             }

+ 32 - 24
src/layout/components/top.vue

@@ -1,24 +1,25 @@
 <template>
-  <a-layout :class="['layout-top', isBottom ? 'layout-top-bottom' : 'layout-top-no-bottom']">
-    <a-layout-header class="m-layout-header">
-      <Header />
-    </a-layout-header>
-    <a-layout class="middleLayout">
-      <a-layout-sider class="m-layout-left"
-                      width="180"
-                      v-model:collapsed="collapsed"
-                      @collapse="collapse"
-                      collapsible>
-        <Menu @chooseMenu="chooseMenu"
-              :collapsed="collapsed" />
-      </a-layout-sider>
-      <a-layout-content :style="{ background: '#0E0E0F', flex: 1, }">
-        <!-- <Drawer :title="'挂牌'" :visible="visible"></Drawer> -->
-        <!-- <Main /> -->
-        <router-view />
-      </a-layout-content>
+    <a-layout :class="['layout-top', isBottom ? 'layout-top-bottom' : 'layout-top-no-bottom']">
+        <a-layout-header class="m-layout-header">
+            <Header />
+        </a-layout-header>
+        <a-layout class="middleLayout">
+            <a-layout-sider
+                class="m-layout-left"
+                width="180"
+                v-model:collapsed="collapsed"
+                @collapse="collapse"
+                collapsible
+            >
+                <Menu @chooseMenu="chooseMenu" :collapsed="collapsed" />
+            </a-layout-sider>
+            <a-layout-content :style="{ background: '#0E0E0F', flex: 1, }">
+                <!-- <Drawer :title="'挂牌'" :visible="visible"></Drawer> -->
+                <!-- <Main /> -->
+                <router-view />
+            </a-layout-content>
+        </a-layout>
     </a-layout>
-  </a-layout>
 </template>
 <script lang="ts">
 import { defineComponent, ref, provide } from 'vue';
@@ -133,7 +134,7 @@ export default defineComponent({
         height: 40px;
         line-height: 40px;
         background: @m-grey0;
-        color: @m-grey1;
+        color: @m-grey32;
         padding: 0 20px;
         .flex();
         justify-content: space-between;
@@ -204,7 +205,7 @@ export default defineComponent({
         .m-layout-left {
             min-height: calc(100vh - 376px);
             background: @m-black4;
-            border-right: 1px solid @m-black2;
+            border-right: 1px solid @m-black32;
             overflow: hidden;
             .ant-layout-sider-children {
                 ul.ant-menu.ant-menu-inline.left-menu {
@@ -213,7 +214,7 @@ export default defineComponent({
                     li.ant-menu-submenu {
                         padding-bottom: 0;
                         .ant-menu-submenu-title {
-                            color: @m-grey2;
+                            color: @m-grey33;
                             font-size: 16px;
                             height: 60px;
                             line-height: 60px;
@@ -239,9 +240,15 @@ export default defineComponent({
                     }
                     li.ant-menu-submenu-open {
                         .ant-menu-submenu-title {
-                            color: @m-white0;
+                            color: @m-white6;
                             .icon {
-                                color: @m-white0;
+                                color: @m-white7;
+                            }
+                            .ant-menu-submenu-arrow {
+                                &::before,
+                                &::after {
+                                    background: @m-white7;
+                                }
                             }
                         }
                         .ant-menu-sub {
@@ -262,6 +269,7 @@ export default defineComponent({
         }
         .ant-layout-content {
             overflow: hidden;
+            background: @m-black31 !important;
         }
         .ant-menu-vertical {
             .ant-menu-submenu-vertical {

+ 252 - 9
src/router/index.ts

@@ -994,6 +994,40 @@ const routes: Array<RouteRecordRaw> = [
                             },
                         ]
                     },
+                    {
+                        path: '/spot_trade/spot_trade_order_transaction',
+                        name: EnumRouterName.spot_trade_order_transaction,
+                        component: () => import('@/views/market/spot_trade/spot_trade_order_transaction/index.vue'),
+                        meta: {
+                            requireAuth: true,
+                        },
+                        children: [
+                            {
+                                path: '/spot_trade/spot_trade_order_transaction/spot_trade_order_transaction_basis_difference',
+                                name: EnumRouterName.spot_trade_order_transaction_basis_difference,
+                                component: () => import('@/views/market/spot_trade/spot_trade_order_transaction/spot_trade_order_transaction_basis_difference/index.vue'),
+                                meta: {
+                                    requireAuth: true,
+                                },
+                            },
+                            {
+                                path: '/spot_trade/spot_trade_order_transaction/spot_trade_order_transaction_listing_transfer',
+                                name: EnumRouterName.spot_trade_order_transaction_listing_transfer,
+                                component: () => import('@/views/market/spot_trade/spot_trade_order_transaction/spot_trade_order_transaction_listing_transfer/index.vue'),
+                                meta: {
+                                    requireAuth: true,
+                                },
+                            },
+                        ]
+                    },
+                    {
+                        path: '/spot_trade/spot_trade_reference_market',
+                        name: EnumRouterName.spot_trade_reference_market,
+                        component: () => import('@/views/market/spot_trade/spot_trade_reference_market/index.vue'),
+                        meta: {
+                            requireAuth: true,
+                        },
+                    }
                 ]
             },
             {
@@ -1006,21 +1040,45 @@ const routes: Array<RouteRecordRaw> = [
                 // redirect: { name: EnumRouterName.search_document_records, },
                 children: [
                     {
-                        path: '/search_document_records/search_document_records',
-                        name: EnumRouterName.search_document_records,
-                        component: () => import('@/views/search/search_document_records/search_document_records/index.vue'),
+                        path: '/search_document_records/search_commodity_contract',
+                        name: EnumRouterName.search_commodity_contract,
+                        component: () => import('@/views/search/search_document_records/search_commodity_contract/index.vue'),
                         meta: {
                             requireAuth: true,
                         },
                         children: [
                             {
-                                path: '/search_document_records/search_document_records/search_spot_warrant_listing_record',
-                                // name: EnumRouterName.search_spot_warrant_listing_record,
-                                component: () => import('@/views/search/search_document_records/search_document_records/search_spot_warrant_listing_record/index.vue'),
+                                path: '/search_document_records/search_commodity_contract/search_document_records_contract_summary',
+                                name: EnumRouterName.search_document_records_contract_summary,
+                                component: () => import('@/views/search/search_document_records/search_commodity_contract/search_document_records_contract_summary/index.vue'),
+                                meta: {
+                                    requireAuth: true,
+                                },
+                            },
+                            {
+                                path: '/search_document_records/search_commodity_contract/search_document_records_commission_record',
+                                name: EnumRouterName.search_document_records_commission_record,
+                                component: () => import('@/views/search/search_document_records/search_commodity_contract/search_document_records_commission_record/index.vue'),
+                                meta: {
+                                    requireAuth: true,
+                                },
+                            },
+                            {
+                                path: '/search_document_records/search_commodity_contract/search_document_records_delivery_record',
+                                name: EnumRouterName.search_document_records_delivery_record,
+                                component: () => import('@/views/search/search_document_records/search_commodity_contract/search_document_records_delivery_record/index.vue'),
+                                meta: {
+                                    requireAuth: true,
+                                },
+                            },
+                            {
+                                path: '/search_document_records/search_document_records/search_document_records_transaction_record',
+                                name: EnumRouterName.search_document_records_transaction_record,
+                                component: () => import('@/views/search/search_document_records/search_commodity_contract/search_document_records_transaction_record/index.vue'),
                                 meta: {
                                     requireAuth: true,
                                 },
-                            }
+                            },
                         ]
                     },
                     {
@@ -1031,7 +1089,38 @@ const routes: Array<RouteRecordRaw> = [
                             requireAuth: true,
                         },
                         children: [
-
+                            {
+                                path: '/search_document_records/search_pre_sale_warehouse_receipt/search_pre_sale_warehouse_receipt_commission_record',
+                                name: EnumRouterName.search_pre_sale_warehouse_receipt_commission_record,
+                                component: () => import('@/views/search/search_document_records/search_pre_sale_warehouse_receipt/search_pre_sale_warehouse_receipt_commission_record/index.vue'),
+                                meta: {
+                                    requireAuth: true,
+                                },
+                            },
+                            {
+                                path: '/search_document_records/search_pre_sale_warehouse_receipt/search_pre_sale_warehouse_receipt_order_summary',
+                                name: EnumRouterName.search_pre_sale_warehouse_receipt_order_summary,
+                                component: () => import('@/views/search/search_document_records/search_pre_sale_warehouse_receipt/search_pre_sale_warehouse_receipt_order_summary/index.vue'),
+                                meta: {
+                                    requireAuth: true,
+                                },
+                            },
+                            {
+                                path: '/search_document_records/search_pre_sale_warehouse_receipt/search_pre_sale_warehouse_receipt_protocol_specified_record',
+                                name: EnumRouterName.search_pre_sale_warehouse_receipt_protocol_specified_record,
+                                component: () => import('@/views/search/search_document_records/search_pre_sale_warehouse_receipt/search_pre_sale_warehouse_receipt_protocol_specified_record/index.vue'),
+                                meta: {
+                                    requireAuth: true,
+                                },
+                            },
+                            {
+                                path: '/search_document_records/search_pre_sale_warehouse_receipt/search_pre_sale_warehouse_receipt_transaction_record',
+                                name: EnumRouterName.search_pre_sale_warehouse_receipt_transaction_record,
+                                component: () => import('@/views/search/search_document_records/search_pre_sale_warehouse_receipt/search_pre_sale_warehouse_receipt_transaction_record/index.vue'),
+                                meta: {
+                                    requireAuth: true,
+                                },
+                            },
                         ]
                     },
                     {
@@ -1042,16 +1131,170 @@ const routes: Array<RouteRecordRaw> = [
                             requireAuth: true,
                         },
                         children: [
-
+                            {
+                                path: '/search_document_records/search_spot_warrant/search_spot_warrant_transaction_record',
+                                name: EnumRouterName.search_spot_warrant_transaction_record,
+                                component: () => import('@/views/search/search_document_records/search_spot_warrant/search_spot_warrant_transaction_record/index.vue'),
+                                meta: {
+                                    requireAuth: true,
+                                },
+                            },
+                            {
+                                path: '/search_document_records/search_spot_warrant/search_spot_warrant_protocol_specified_record',
+                                name: EnumRouterName.search_spot_warrant_protocol_specified_record,
+                                component: () => import('@/views/search/search_document_records/search_spot_warrant/search_spot_warrant_protocol_specified_record/index.vue'),
+                                meta: {
+                                    requireAuth: true,
+                                },
+                            },
+                            {
+                                path: '/search_document_records/search_spot_warrant/search_spot_warrant_listing_record',
+                                name: EnumRouterName.search_spot_warrant_listing_record,
+                                component: () => import('@/views/search/search_document_records/search_spot_warrant/search_spot_warrant_listing_record/index.vue'),
+                                meta: {
+                                    requireAuth: true,
+                                },
+                            },
+                            {
+                                path: '/search_document_records/search_spot_warrant/search_spot_warrant_warehouse_receipt_details',
+                                name: EnumRouterName.search_spot_warrant_warehouse_receipt_details,
+                                component: () => import('@/views/search/search_document_records/search_spot_warrant/search_spot_warrant_warehouse_receipt_details/index.vue'),
+                                meta: {
+                                    requireAuth: true,
+                                },
+                            },
                         ]
                     },
                 ]
             },
             {
+<<<<<<< HEAD
               path: '/hedging/entry_of_spot_information',
               name: '',
               component: () => import('@/views/hedging/entry_of_spot_information/index.vue'),
               
+=======
+                path: '/search_capital_flow',
+                name: EnumRouterName.search_capital_flow,
+                component: Main,
+                meta: {
+                    requireAuth: true,
+                },
+                children: [
+                    {
+                        path: '/search_capital_flow/search_capital_flow_tab',
+                        name: EnumRouterName.search_capital_flow_tab,
+                        component: () => import('@/views/search/search_capital_flow/search_capital_flow_tab/index.vue'),
+                        meta: {
+                            requireAuth: true,
+                        },
+                    }
+                ]
+            },
+            {
+                path: '/search_financing_inquiry',
+                name: EnumRouterName.search_financing_inquiry,
+                component: Main,
+                meta: {
+                    requireAuth: true,
+                },
+                children: [
+                    {
+                        path: '/search_financing_inquiry/search_financing_inquiry_apply_order',
+                        name: EnumRouterName.search_financing_inquiry_apply_order,
+                        component: () => import('@/views/search/search_financing_inquiry/search_financing_inquiry_apply_order/index.vue'),
+                        meta: {
+                            requireAuth: true,
+                        },
+                    },
+                    {
+                        path: '/search_financing_inquiry/search_financing_inquiry_contract',
+                        name: EnumRouterName.search_financing_inquiry_contract,
+                        component: () => import('@/views/search/search_financing_inquiry/search_financing_inquiry_contract/index.vue'),
+                        meta: {
+                            requireAuth: true,
+                        },
+                    }
+                ]
+            },
+            {
+                path: '/search_performance_query',
+                name: EnumRouterName.search_performance_query,
+                component: Main,
+                meta: {
+                    requireAuth: true,
+                },
+                children: [
+                    {
+                        path: '/search_performance_query/search_performance_query_buy_performance',
+                        name: EnumRouterName.search_performance_query_buy_performance,
+                        component: () => import('@/views/search/search_performance_query/search_performance_query_buy_performance/index.vue'),
+                        meta: {
+                            requireAuth: true,
+                        },
+                    },
+                    {
+                        path: '/search_performance_query/search_performance_query_sell_performance',
+                        name: EnumRouterName.search_performance_query_sell_performance,
+                        component: () => import('@/views/search/search_performance_query/search_performance_query_sell_performance/index.vue'),
+                        meta: {
+                            requireAuth: true,
+                        },
+                    }
+                ]
+            },
+            {
+                path: '/search_pickup_query',
+                name: EnumRouterName.search_pickup_query,
+                component: Main,
+                meta: {
+                    requireAuth: true,
+                },
+                children: [
+                    {
+                        path: '/search_pickup_query/search_pickup_query_tab',
+                        name: EnumRouterName.search_pickup_query_tab,
+                        component: () => import('@/views/search/search_pickup_query/search_pickup_query_tab/index.vue'),
+                        meta: {
+                            requireAuth: true,
+                        },
+                    }
+                ]
+            },
+            {
+                path: '/entry_of_spot_information',
+                name: EnumRouterName.entry_of_spot_information,
+                component: () => import('@/views/hedging/entry_of_spot_information/index.vue'),
+                meta: {
+                    requireAuth: true,
+                },
+            },
+            {
+                path: '/spot_price_management',
+                name: EnumRouterName.spot_price_management,
+                component: Main,
+                meta: {
+                    requireAuth: true,
+                },
+                children: [
+                    {
+                        path: '/spot_price_management/spot_price_management_disable',
+                        name: EnumRouterName.spot_price_management_disable,
+                        component: () => import('@/views/hedging/spot_price_management/spot_price_management_disable/index.vue'),
+                        meta: {
+                            requireAuth: true,
+                        },
+                    },
+                    {
+                        path: '/spot_price_management/spot_price_management_normal',
+                        name: EnumRouterName.spot_price_management_normal,
+                        component: () => import('@/views/hedging/spot_price_management/spot_price_management_normal/index.vue'),
+                        meta: {
+                            requireAuth: true,
+                        },
+                    },
+                ]
+>>>>>>> master
             },
         ],
     },

+ 1 - 1
src/services/go/commonService/index.ts

@@ -90,7 +90,7 @@ export function GetPCMenus(): Promise<string> {
     return commonSearch_go('/Common/GetClientMenus', param)
         .then((res) => {
             APP.set('menus', res);
-            console.log('res', res);
+            console.log('交易端菜单', res);
             return 'ok';
         })
         .catch((err: Error) => {

+ 12 - 1
src/services/go/wrtrade/index.ts

@@ -16,7 +16,7 @@ import {
     QueryWrOrderDetailReq, QueryWrPerformancePlanStepReq,
     QueryWrPositionReq, QueryWrScfContractInterestReq, QueryWrSpecialMatchOrderReq,
     QueryWrStandardFactoryItemReq,
-    QueryWrTradeDetailReq, WrBuybackDetail,
+    QueryWrTradeDetailReq, WrBuybackDetail, WrDeliveryDetail,
     WrFactorTypeInfo,
     WrFAProductDetail,
     WrFilterItem,
@@ -267,4 +267,15 @@ export function queryWrOutInApply(): Promise<WrOutInApply[]> {
     });
 }
 
+/**
+ * 查询交收 /WrTrade2/QueryWrDeliveryDetail
+ * 资金账号id
+ */
+export function queryWrDeliveryDetail(accountid: number): Promise<WrDeliveryDetail[]> {
+    const userid = getUsrId()
+    return commonSearch_go('/WrTrade2/QueryWrDeliveryDetail', { userid, accountid}).catch((err) => {
+        throw new Error(`查询交收: ${err}`);
+    });
+}
+
 

+ 57 - 24
src/services/go/wrtrade/interface.ts

@@ -163,6 +163,7 @@ export interface WrPosition {
     freezeqty: number;//总冻结数量
     modifytime: string;//修改时间(过户时间)
     optioncompare: string;//选择项比较串【{选择项ID}+{冒号}+选择项值 } ,逗号分隔,头尾加逗号】-- 所有选择项拼接,用于比较
+    minivalue: number;
     pledgeqty: number;//质押数量
     querytype: number;//查询类型 1-现货汇总 2-库存汇总(订单汇总) 3-现货明细
     sellexcuteqty: number;//销售履约中数量
@@ -881,30 +882,62 @@ export interface QueryWrOutInApplyReq {
 }
 
 
-export interface WrOutInApply{
-    applyid	:string;//申请单id
-    applystatus	:number;//申请状态 - number;
-//:预约成功 1:待初审 2:初审通过 3:初审拒绝 4:初审失败 5复审通过 6:复审拒绝 7:复审失败 8:已撤销
-    applytime	:string;//申请时间
-    applytype	:number;//申请类型 - 1:预约入库 2:预约出库 3:入库注册 4:出库注销
-    deliverygoodscode	:string;//品种代码
-    deliverygoodsid	:number;//品种ID
-    deliverygoodsname	:string;//品种名称
-    enumdicname	:string;//单位名称
-    expresscompany	:string;//物流公司
-    expressnum	:string;//物流单号
-    minivalue	:number;//现货商品最小变动值
-    optioncompare	:string;//选择项比较串【{选择项ID}+{冒号}+选择项值 } ,逗号分隔,头尾加逗号】-- 所有选择项拼接,用于比较
-    qty	:number;//数量
+export interface WrOutInApply {
+    applyid: string;//申请单id
+    applystatus: number;//申请状态 - number;
+    //:预约成功 1:待初审 2:初审通过 3:初审拒绝 4:初审失败 5复审通过 6:复审拒绝 7:复审失败 8:已撤销
+    applytime: string;//申请时间
+    applytype: number;//申请类型 - 1:预约入库 2:预约出库 3:入库注册 4:出库注销
+    deliverygoodscode: string;//品种代码
+    deliverygoodsid: number;//品种ID
+    deliverygoodsname: string;//品种名称
+    enumdicname: string;//单位名称
+    expresscompany: string;//物流公司
+    expressnum: string;//物流单号
+    minivalue: number;//现货商品最小变动值
+    optioncompare: string;//选择项比较串【{选择项ID}+{冒号}+选择项值 } ,逗号分隔,头尾加逗号】-- 所有选择项拼接,用于比较
+    qty: number;//数量
+    userid: number;//用户id
+    warehouseid: number;//仓库ID
+    warehousename: string;//仓库名称
+    wrfactortypeid: string;//仓单要素类型ID(212+Unix秒时间戳(1number;
+    //位)+xxxxxx)
+    wrfactortypename: string;//仓单要素类型名称(选择项要素的名称合并显示,逗号分隔)
+    wrstandardcode: string;//现货商品代码
+    wrstandardid: number;//现货商品ID
+    wrstandardname: string;//商品名称
+    wrtypename: string;//商品
+}
+
+export interface WrDeliveryDetail{
+    accountid	:number;//账号ID
+    buyorsell	:number;//方向 - number;
+//:买 1:卖
+    deliveryamount	:number;//货款金额(X总货款+P总货款)
+    deliveryorderid	:string;//申报单号
+    deliverypricemove	:number;//升贴水(升贴水总额)
+    deliveryqty	:number;//交收数量(点选数量)
+    deliverystatus	:number;//状态 - 1:待成交 2:已成交 3:成交失败 4:履约完成
+    deliverytime	:string;//交割时间
+    deliverytotalamount	:number;//交收金额
+    matchaccountid	:number;//对手账号ID
+    matchusername	:string;//对手方名称(仓单持有人)
+    p1goodsremainamount	:number;//点价货款 ps:当PPRICEMODE=2时, 界面需显示-
+    pdeliverycloseqty	:number;//p合约平仓数量
+    pdeliveryprice	:number;//点价价格 ps:当PPRICEMODE=2时, 界面需显示-
+    pgoodscode	:string;//商品代码
+    pgoodsid	:number;//p点选合约id
+    pgoodsname	:string;//商品名称
+    ppricemode	:number;//点价价格方式 - 1:商品价 2:固定值
+    tradedate	:string;//交易日(yyyymmdd)
     userid	:number;//用户id
-    warehouseid	:number;//仓库ID
-    warehousename	:string;//仓库名称
-    wrfactortypeid	:string;//仓单要素类型ID(212+Unix秒时间戳(1number;
-//位)+xxxxxx)
-    wrfactortypename	:string;//仓单要素类型名称(选择项要素的名称合并显示,逗号分隔)
-    wrstandardcode	:string;//现货商品代码
-    wrstandardid	:number;//现货商品ID
-    wrstandardname	:string;//商品名称
-    wrtypename	:string;//商品
+    username	:string;//用户名称
+    wrfactortypeid	:number;//仓单要素类型ID
+    xdeliverycloseqty	:number;//合约数量
+    xgoodsamount	:number;//合约金额 = 货款金额(DELIVERYAMOUNT) - 点价货款(P1GOODSREMAINAMOUNT)
+    xgoodscode	:string;//商品代码
+    xgoodsid	:number;//x交易合约ID
+    xgoodsname	:string;//商品名称
 }
 
+

+ 52 - 55
src/views/account/login.vue

@@ -1,48 +1,42 @@
 <template>
-  <div class="login">
-    <a-row type="flex"
-           justify="center"
-           align="middle">
-      <a-col>
-        <div class="login-background">
-          <div id="img">
-            <!-- <img src="./logo.png"
+    <div class="login">
+        <a-row type="flex" justify="center" align="middle">
+            <a-col>
+                <div class="login-background">
+                    <div id="img">
+                        <!-- <img src="./logo.png"
                         alt="" />-->
-          </div>
-        </div>
-        <div class="login-content">
-          <p>账号登录</p>
-          <a-form ref="formDom"
-                  :model="form"
-                  :rules="rules">
-            <a-form-item name="account">
-              <a-input placeholder="用户名/账号/手机号"
-                       v-model:value="form.account">
-                <template #prefix>
-                  <img src="@/assets/images/user.png"
-                       alt />
-                </template>
-              </a-input>
-            </a-form-item>
-            <a-form-item name="password"
-                         class="mb20">
-              <a-input @keyup.enter="loginAction"
-                       placeholder="请输入您的登录密码"
-                       type="password"
-                       v-model:value="form.password">
-                <template #prefix>
-                  <img src="@/assets/images/password.png"
-                       alt />
-                </template>
-              </a-input>
-            </a-form-item>
-            <a-form-item>
-              <div class="login-remember-password">
-                <a-checkbox v-model:checked="form.isRemember">记住账号</a-checkbox>
-                <!-- <router-link to="/resetPassword">忘记密码?</router-link> -->
-              </div>
-            </a-form-item>
-            <!-- <a-form-item>
+                    </div>
+                </div>
+                <div class="login-content">
+                    <p>账号登录</p>
+                    <a-form ref="formDom" :model="form" :rules="rules">
+                        <a-form-item name="account">
+                            <a-input placeholder="用户名/账号/手机号" v-model:value="form.account">
+                                <template #prefix>
+                                    <img src="@/assets/images/user.png" alt />
+                                </template>
+                            </a-input>
+                        </a-form-item>
+                        <a-form-item name="password" class="mb20">
+                            <a-input
+                                @keyup.enter="loginAction"
+                                placeholder="请输入您的登录密码"
+                                type="password"
+                                v-model:value="form.password"
+                            >
+                                <template #prefix>
+                                    <img src="@/assets/images/password.png" alt />
+                                </template>
+                            </a-input>
+                        </a-form-item>
+                        <a-form-item>
+                            <div class="login-remember-password">
+                                <a-checkbox v-model:checked="form.isRemember">记住账号</a-checkbox>
+                                <!-- <router-link to="/resetPassword">忘记密码?</router-link> -->
+                            </div>
+                        </a-form-item>
+                        <!-- <a-form-item>
               <div style="text-align:left">
                 <a-checkbox v-model:checked="form.isRead">
                   我已阅读并同意
@@ -50,16 +44,18 @@
                 <router-link to="/resetPassword">《用户协议》</router-link>
               </div>
                         </a-form-item>-->
-            <a-form-item class="mt20">
-              <a-button @click="loginAction"
-                        :loading="loading"
-                        :disabled="goHomeloading">登录</a-button>
-            </a-form-item>
-          </a-form>
-        </div>
-      </a-col>
-    </a-row>
-  </div>
+                        <a-form-item class="mt20">
+                            <a-button
+                                @click="loginAction"
+                                :loading="loading"
+                                :disabled="goHomeloading"
+                            >登录</a-button>
+                        </a-form-item>
+                    </a-form>
+                </div>
+            </a-col>
+        </a-row>
+    </div>
 </template>
 
 <script lang="ts">
@@ -153,7 +149,7 @@ export default defineComponent({
             const img = document.querySelector('#logo_img') || document.createElement('img');
             const obj = {
                 id: 'logo_img',
-                src: './logo.png',
+                src: './wrLogo.png',
             };
             Object.assign(img, obj);
             document.querySelector('#img')?.appendChild(img);
@@ -243,7 +239,8 @@ export default defineComponent({
     background-size: cover;
     div {
         margin-top: 120px;
-        margin-left: 55px;
+        // margin-left: 69.5px; // 企业风管logo
+        margin-left: 33px; // 云融
         width: 136px;
         height: 136px;
         min-width: 136px;

+ 142 - 142
src/views/business/plan/components/modify/index.vue

@@ -1,147 +1,147 @@
 <template>
-  <!-- 修改计划 -->
-  <a-modal class="commonModal modify-custom"
-           title="修改计划"
-           v-if="visible"
-           centered
-           v-model:visible="visible"
-           @cancel="cancel"
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit(2)">完成</a-button>
-      <a-button key="cancel"
-                type="primary"
-                :loading="loading"
-                @click="cancel">取消</a-button>
-    </template>
-    <a-form class="inlineForm"
-            ref="formRef"
-            :model="formState"
-            :rules="rules">
-      <a-row :gutter="24">
-        <a-col :span="12">
-          <a-form-item label="计划类型"
-                       name="ContractType">
-            <a-select class="inlineFormSelect"
-                      style="width: 200px"
-                      v-model:value="formState.ContractType"
-                      placeholder="请选择计划类型">
-              <a-select-option v-for="item in planTye"
-                               :value="item.enumitemname"
-                               :key="item.autoid">
-                {{item.enumdicname}}
-              </a-select-option>
-            </a-select>
-          </a-form-item>
-        </a-col>
-        <a-col :span="12">
-          <a-form-item label="计划名称"
-                       name="HedgePlanNo">
-            <a-input class="dialogInput"
-                     v-model:value="formState.HedgePlanNo"
-                     style="width: 200px"
-                     placeholder="请输入计划名称" />
-          </a-form-item>
-        </a-col>
-        <a-col :span="12">
-          <a-form-item label="现货品种"
-                       name="DeliveryGoodsID">
-            <a-select class="inlineFormSelect"
-                      style="width: 200px"
-                      v-model:value="formState.DeliveryGoodsID"
-                      @change="chooseMG"
-                      placeholder="请选择现货品种">
-              <a-select-option v-for="item in DGList"
-                               :value="item.data.deliverygoodsid"
-                               :key="item.data.deliverygoodsid">
-                {{item.data.deliverygoodsname}}
-              </a-select-option>
-            </a-select>
-          </a-form-item>
-        </a-col>
-        <a-col :span="12">
-          <a-form-item label="商品"
-                       name="WRStandardID">
-            <a-select class="inlineFormSelect"
-                      style="width: 200px"
-                      @change="chooseWR"
-                      v-model:value="formState.WRStandardID"
-                      placeholder="请选择商品">
-              <a-select-option v-for="item in gmlist"
-                               :value="item.wrstandardid"
-                               :key="item.wrstandardid">
-                {{item.wrstandardname}}
-              </a-select-option>
-            </a-select>
-          </a-form-item>
-        </a-col>
-        <a-col :span="12">
-          <a-form-item label="标仓系数"
-                       name="">
-            <a-input class="dialogInput ConvertFactor"
-                     v-model:value="formState.ConvertFactor"
-                     readonly
-                     style="width: 200px"
-                     placeholder="请输入标仓系数" />
-          </a-form-item>
-        </a-col>
-        <a-col :span="12">
-          <a-form-item label="计划量"
-                       class="relative"
-                       name="PlanQty">
-            <a-input-number class="dialogInput"
+    <!-- 修改计划 -->
+    <a-modal
+        class="commonModal modify-custom"
+        title="修改计划"
+        v-if="visible"
+        centered
+        v-model:visible="visible"
+        @cancel="cancel"
+        width="890px"
+    >
+        <template #footer>
+            <a-button key="submit" type="primary" :loading="loading" @click="submit(2)">完成</a-button>
+            <a-button key="cancel" type="primary" :loading="loading" @click="cancel">取消</a-button>
+        </template>
+        <a-form class="inlineForm" ref="formRef" :model="formState" :rules="rules">
+            <a-row :gutter="24">
+                <a-col :span="12">
+                    <a-form-item label="计划类型" name="ContractType">
+                        <a-select
+                            class="inlineFormSelect"
+                            style="width: 200px"
+                            v-model:value="formState.ContractType"
+                            placeholder="请选择计划类型"
+                        >
+                            <a-select-option
+                                v-for="item in planTye"
+                                :value="item.enumitemname"
+                                :key="item.autoid"
+                            >{{item.enumdicname}}</a-select-option>
+                        </a-select>
+                    </a-form-item>
+                </a-col>
+                <a-col :span="12">
+                    <a-form-item label="计划名称" name="HedgePlanNo">
+                        <a-input
+                            class="dialogInput"
+                            v-model:value="formState.HedgePlanNo"
+                            style="width: 200px"
+                            placeholder="请输入计划名称"
+                        />
+                    </a-form-item>
+                </a-col>
+                <a-col :span="12">
+                    <a-form-item label="现货品种" name="DeliveryGoodsID">
+                        <a-select
+                            class="inlineFormSelect"
+                            style="width: 200px"
+                            v-model:value="formState.DeliveryGoodsID"
+                            @change="chooseMG"
+                            placeholder="请选择现货品种"
+                        >
+                            <a-select-option
+                                v-for="item in DGList"
+                                :value="item.data.deliverygoodsid"
+                                :key="item.data.deliverygoodsid"
+                            >{{item.data.deliverygoodsname}}</a-select-option>
+                        </a-select>
+                    </a-form-item>
+                </a-col>
+                <a-col :span="12">
+                    <a-form-item label="商品" name="WRStandardID">
+                        <a-select
+                            class="inlineFormSelect"
+                            style="width: 200px"
+                            @change="chooseWR"
+                            v-model:value="formState.WRStandardID"
+                            placeholder="请选择商品"
+                        >
+                            <a-select-option
+                                v-for="item in gmlist"
+                                :value="item.wrstandardid"
+                                :key="item.wrstandardid"
+                            >{{item.wrstandardname}}</a-select-option>
+                        </a-select>
+                    </a-form-item>
+                </a-col>
+                <a-col :span="12">
+                    <a-form-item label="标仓系数" name>
+                        <a-input
+                            class="dialogInput ConvertFactor"
+                            v-model:value="formState.ConvertFactor"
+                            readonly
+                            style="width: 200px"
+                            placeholder="请输入标仓系数"
+                        />
+                    </a-form-item>
+                </a-col>
+                <a-col :span="12">
+                    <a-form-item label="计划量" class="relative" name="PlanQty">
+                        <a-input-number
+                            class="dialogInput"
                             style="width: 200px"
                             :min="0"
                             v-model:value="formState.PlanQty"
-                            placeholder="请输入计划量"></a-input-number>
-          </a-form-item>
-        </a-col>
-        <a-col :span="12">
-          <a-form-item label="交易用户"
-                       name="Tradeuserid">
-            <a-select class="inlineFormSelect"
-                      style="width: 200px"
-                      v-model:value="formState.Tradeuserid"
-                      placeholder="请选择交易用户">
-              <a-select-option v-for="item in tableList"
-                               :value="item.roleid"
-                               :key="item.roleid">
-                {{item.rolename}}
-              </a-select-option>
-            </a-select>
-          </a-form-item>
-        </a-col>
-        <a-col :span="12">
-          <a-form-item label="结算币种"
-                       name="Currencyid">
-            <a-select class="inlineFormSelect"
-                      style="width: 200px"
-                      v-model:value="formState.Currencyid"
-                      placeholder="请选择结算币种">
-              <a-select-option v-for="item in priceTyep"
-                               :key="item.enumitemname"
-                               :value="item.enumitemname">
-                {{item.enumdicname}}
-              </a-select-option>
-            </a-select>
-          </a-form-item>
-        </a-col>
-        <a-col :span="24">
-          <a-form-item label="备注"
-                       class="relative"
-                       name="Remark">
-            <a-input class="dialogInput"
-                     v-model:value="formState.Remark"
-                     style="width: 636px"
-                     placeholder="请输入备注" />
-          </a-form-item>
-        </a-col>
-      </a-row>
-    </a-form>
-  </a-modal>
+                            placeholder="请输入计划量"
+                        ></a-input-number>
+                    </a-form-item>
+                </a-col>
+                <a-col :span="12">
+                    <a-form-item label="交易用户" name="Tradeuserid">
+                        <a-select
+                            class="inlineFormSelect"
+                            style="width: 200px"
+                            v-model:value="formState.Tradeuserid"
+                            placeholder="请选择交易用户"
+                        >
+                            <a-select-option
+                                v-for="item in tableList"
+                                :value="item.roleid"
+                                :key="item.roleid"
+                            >{{item.rolename}}</a-select-option>
+                        </a-select>
+                    </a-form-item>
+                </a-col>
+                <a-col :span="12">
+                    <a-form-item label="结算币种" name="Currencyid">
+                        <a-select
+                            class="inlineFormSelect"
+                            style="width: 200px"
+                            v-model:value="formState.Currencyid"
+                            placeholder="请选择结算币种"
+                        >
+                            <a-select-option
+                                v-for="item in priceTyep"
+                                :key="item.enumitemname"
+                                :value="item.enumitemname"
+                            >{{item.enumdicname}}</a-select-option>
+                        </a-select>
+                    </a-form-item>
+                </a-col>
+                <a-col :span="24">
+                    <a-form-item label="备注" class="relative" name="Remark">
+                        <a-input
+                            class="dialogInput"
+                            v-model:value="formState.Remark"
+                            style="width: 636px"
+                            placeholder="请输入备注"
+                        />
+                    </a-form-item>
+                </a-col>
+            </a-row>
+        </a-form>
+    </a-modal>
 </template>
 
 <script lang="ts">
@@ -259,8 +259,8 @@ export default defineComponent({
             color: @m-white0;
             .rounded-corners(3px);
             &:hover {
-                background: rgba(@m-blue0, 0);
-                color: rgba(@m-white0, 0.8);
+                background: @m-blue0-hover;
+                color: @m-white0-hover;
             }
         }
         .look {

+ 9 - 0
src/views/hedging/entry_of_spot_information/index.vue

@@ -223,6 +223,9 @@ import { defineComponent, reactive, ref, unref, onMounted, watch } from 'vue';
 import useEntrySpotInfoEvent from './useEntrySpotInfoEvent';
 import useFormValue from './useFormValue';
 
+import { initData } from '@/common/methods';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+
 export default defineComponent({
     name: 'entrySpotInfo',
     components: {},
@@ -257,6 +260,12 @@ export default defineComponent({
 });
 </script>
 
+<<<<<<< HEAD
 <style lang="less" scoped>
 
 </style>
+=======
+<style lang="less">
+</style
+>;
+>>>>>>> master

+ 23 - 0
src/views/hedging/spot_price_management/spot_price_management_disable/index.vue

@@ -0,0 +1,23 @@
+<template>
+  <!-- 现货点价管理: 正常-->
+  <div>现货点价管理: 正常</div>
+</template>
+
+<script lang="ts">
+import { defineComponent } from 'vue';
+import { initData } from '@/common/methods';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+
+export default defineComponent({
+    name: EnumRouterName.spot_price_management_disable,
+    components: {},
+    setup() {
+        initData(() => {});
+        return {};
+    },
+});
+</script>
+
+<style lang="less">
+</style
+>;

+ 23 - 0
src/views/hedging/spot_price_management/spot_price_management_normal/index.vue

@@ -0,0 +1,23 @@
+<template>
+  <!-- 现货点价管理: 停用-->
+  <div>现货点价管理: 停用</div>
+</template>
+
+<script lang="ts">
+import { defineComponent } from 'vue';
+import { initData } from '@/common/methods';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+
+export default defineComponent({
+    name: EnumRouterName.spot_price_management_normal,
+    components: {},
+    setup() {
+        initData(() => {});
+        return {};
+    },
+});
+</script>
+
+<style lang="less">
+</style
+>;

+ 282 - 259
src/views/information/custom/compoments/modify/index.vue

@@ -1,268 +1,291 @@
 <template>
-  <!-- 修改客户资料 -->
-  <a-modal class="commonModal modify-custom"
-           title="修改客户资料"
-           v-if="visible"
-           v-model:visible="visible"
-           centered
-           :maskClosable="false"
-           @cancel="cancel"
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
+    <!-- 修改客户资料 -->
+    <a-modal
+        class="commonModal modify-custom"
+        title="修改客户资料"
+        v-if="visible"
+        v-model:visible="visible"
+        centered
+        :maskClosable="false"
+        @cancel="cancel"
+        width="890px"
+    >
+        <template #footer>
+            <a-button
+                key="submit"
                 class="cancelBtn"
                 :loading="loading"
                 :disabled="loading"
-                @click="submit(1)">保存草稿
-      </a-button>
-      <a-button key="submit"
+                @click="submit(1)"
+            >保存草稿</a-button>
+            <a-button
+                key="submit"
                 type="primary"
                 :loading="loading"
                 :disabled="loading"
-                @click="submit(2)">提交修改</a-button>
-    </template>
-    <a-form class="inlineForm"
-            ref="formRef"
-            :model="formState"
-            :rules="rules">
-      <a-row :gutter="24">
-        <a-col :span="12">
-          <a-form-item label="客户类型"
-                       name="userinfotype">
-            <a-select class="typeSelect"
-                      style="width: 200px"
-                      v-model:value="formState.userinfotype"
-                      placeholder="请选择客户类型">
-              <a-select-option value="1">
-                个人
-              </a-select-option>
-              <a-select-option value="2">
-                企业
-              </a-select-option>
-            </a-select>
-          </a-form-item>
-        </a-col>
-        <template v-if="!isPersonal()">
-          <a-col :span="12">
-            <a-form-item label="企业名称"
-                         name="customername">
-              <a-input class="dialogInput"
-                       v-model:value="formState.customername"
-                       style="width: 200px"
-                       placeholder="请输入企业名称" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="企业简称"
-                         name="nickname">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.nickname"
-                       placeholder="请输入企业简称" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="证件类型"
-                         name="cardtype">
-              <a-select class="inlineFormSelect"
-                        v-model:value="formState.cardtype"
-                        style="width: 200px"
-                        placeholder="请选择证件类型">
-                <a-select-option :value="item.enumitemname"
-                                 v-for="item in cardTypeList"
-                                 :key="item.autoid">
-                  {{ item.enumdicname }}
-                </a-select-option>
-              </a-select>
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="法定代表人"
-                         name="legalpersonname">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.legalpersonname"
-                       placeholder="请输入法定代表人" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="证件号码"
-                         name="cardnum">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.cardnum"
-                       placeholder="请输入证件号码" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="纳税人识别号"
-                         name="taxpayernum">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.taxpayernum"
-                       placeholder="请输入纳税人识别号" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="营业执照">
-              <UploadImg :visible="visible"
-                         :imgList="attachmentImgList"
-                         @upload="attachmentUpload" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="联系人"
-                         name="contactname">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.contactname"
-                       placeholder="请输入联系人" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="联系人手机号"
-                         name="mobilephone">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.mobilephone"
-                       placeholder="请输入联系人手机号" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="联系电话"
-                         name="telphone">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.telphone"
-                       placeholder="请输入联系电话" />
-            </a-form-item>
-          </a-col>
+                @click="submit(2)"
+            >提交修改</a-button>
         </template>
-        <template v-else>
-          <a-col :span="12">
-            <a-form-item label="姓名"
-                         name="username">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.username"
-                       placeholder="请输入姓名" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="身份证号码"
-                         name="cardnum">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.cardnum"
-                       placeholder="请输入身份证号码" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="手机号码"
-                         name="mobilephone">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.mobilephone"
-                       placeholder="请输入手机号码" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="身份证正面照"
-                         name="cardbackphotourl">
-              <UploadImg :visible="visible"
-                         :imgList="cardfrontImgList"
-                         @upload="cardfrontUpload" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="邮箱"
-                         name="email">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.email"
-                       placeholder="请输入邮箱" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="24">
-            <a-form-item label="身份证反面照"
-                         name="cardfrontphotourl">
-              <UploadImg :visible="visible"
-                         :imgList="cardbackImgList"
-                         @upload="cardbackUpload" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="联系电话"
-                         name="telphone">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.telphone"
-                       placeholder="请输入联系电话" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item>
-              &nbsp;
-            </a-form-item>
-          </a-col>
-        </template>
-        <a-col :span="24">
-          <a-form-item label="通讯地址">
-            <a-select class="inlineFormSelect"
-                      style="width: 205px"
-                      v-model:value="formState.provinceid"
-                      @change="getCityList"
-                      placeholder="请选择省">
-              <a-select-option v-for="item in provinceList"
-                               :key="item.autoid"
-                               :value="item.autoid">
-                {{ item.divisionname }}
-              </a-select-option>
-            </a-select>
-            <a-select class="inlineFormSelect ml9"
-                      style="width: 205px"
-                      v-model:value="formState.cityid"
-                      @change="getDistrictList"
-                      placeholder="请选择市">
-              <a-select-option v-for="item in cityList"
-                               :key="item.autoid"
-                               :value="item.autoid">
-                {{ item.divisionname }}
-              </a-select-option>
-            </a-select>
-            <a-select class="inlineFormSelect ml9"
-                      v-model:value="formState.districtid"
-                      style="width: 205px"
-                      placeholder="请选择县(区)">
-              <a-select-option v-for="item in districtList"
-                               :key="item.autoid"
-                               :value="item.autoid">
-                {{ item.divisionname }}
-              </a-select-option>
-            </a-select>
-          </a-form-item>
-        </a-col>
-        <a-col :span="24">
-          <a-form-item label="&nbsp;"
-                       name="cardaddress">
-            <a-input class="dialogInput"
-                     style="width: 635px"
-                     v-model:value="formState.cardaddress"
-                     placeholder="请输入详细地址" />
-          </a-form-item>
-        </a-col>
-        <a-col :span="24">
-          <a-form-item label="备注"
-                       name="remark">
-            <a-input class="dialogInput"
-                     style="width: 635px"
-                     v-model:value="formState.remark"
-                     placeholder="请输入备注" />
-          </a-form-item>
-        </a-col>
-      </a-row>
-    </a-form>
-  </a-modal>
+        <a-form class="inlineForm" ref="formRef" :model="formState" :rules="rules">
+            <a-row :gutter="24">
+                <a-col :span="12">
+                    <a-form-item label="客户类型" name="userinfotype">
+                        <a-select
+                            class="typeSelect"
+                            style="width: 200px"
+                            v-model:value="formState.userinfotype"
+                            placeholder="请选择客户类型"
+                        >
+                            <a-select-option value="1">个人</a-select-option>
+                            <a-select-option value="2">企业</a-select-option>
+                        </a-select>
+                    </a-form-item>
+                </a-col>
+                <template v-if="!isPersonal()">
+                    <a-col :span="12">
+                        <a-form-item label="企业名称" name="customername">
+                            <a-input
+                                class="dialogInput"
+                                v-model:value="formState.customername"
+                                style="width: 200px"
+                                placeholder="请输入企业名称"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="企业简称" name="nickname">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.nickname"
+                                placeholder="请输入企业简称"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="证件类型" name="cardtype">
+                            <a-select
+                                class="inlineFormSelect"
+                                v-model:value="formState.cardtype"
+                                style="width: 200px"
+                                placeholder="请选择证件类型"
+                            >
+                                <a-select-option
+                                    :value="item.enumitemname"
+                                    v-for="item in cardTypeList"
+                                    :key="item.autoid"
+                                >{{ item.enumdicname }}</a-select-option>
+                            </a-select>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="法定代表人" name="legalpersonname">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.legalpersonname"
+                                placeholder="请输入法定代表人"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="证件号码" name="cardnum">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.cardnum"
+                                placeholder="请输入证件号码"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="纳税人识别号" name="taxpayernum">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.taxpayernum"
+                                placeholder="请输入纳税人识别号"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="营业执照">
+                            <UploadImg
+                                :visible="visible"
+                                :imgList="attachmentImgList"
+                                @upload="attachmentUpload"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="联系人" name="contactname">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.contactname"
+                                placeholder="请输入联系人"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="联系人手机号" name="mobilephone">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.mobilephone"
+                                placeholder="请输入联系人手机号"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="联系电话" name="telphone">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.telphone"
+                                placeholder="请输入联系电话"
+                            />
+                        </a-form-item>
+                    </a-col>
+                </template>
+                <template v-else>
+                    <a-col :span="12">
+                        <a-form-item label="姓名" name="username">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.username"
+                                placeholder="请输入姓名"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="身份证号码" name="cardnum">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.cardnum"
+                                placeholder="请输入身份证号码"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="手机号码" name="mobilephone">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.mobilephone"
+                                placeholder="请输入手机号码"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="身份证正面照" name="cardbackphotourl">
+                            <UploadImg
+                                :visible="visible"
+                                :imgList="cardfrontImgList"
+                                @upload="cardfrontUpload"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="邮箱" name="email">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.email"
+                                placeholder="请输入邮箱"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="24">
+                        <a-form-item label="身份证反面照" name="cardfrontphotourl">
+                            <UploadImg
+                                :visible="visible"
+                                :imgList="cardbackImgList"
+                                @upload="cardbackUpload"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="联系电话" name="telphone">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.telphone"
+                                placeholder="请输入联系电话"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item>&nbsp;</a-form-item>
+                    </a-col>
+                </template>
+                <a-col :span="24">
+                    <a-form-item label="通讯地址">
+                        <a-select
+                            class="inlineFormSelect"
+                            style="width: 205px"
+                            v-model:value="formState.provinceid"
+                            @change="getCityList"
+                            placeholder="请选择省"
+                        >
+                            <a-select-option
+                                v-for="item in provinceList"
+                                :key="item.autoid"
+                                :value="item.autoid"
+                            >{{ item.divisionname }}</a-select-option>
+                        </a-select>
+                        <a-select
+                            class="inlineFormSelect ml9"
+                            style="width: 205px"
+                            v-model:value="formState.cityid"
+                            @change="getDistrictList"
+                            placeholder="请选择市"
+                        >
+                            <a-select-option
+                                v-for="item in cityList"
+                                :key="item.autoid"
+                                :value="item.autoid"
+                            >{{ item.divisionname }}</a-select-option>
+                        </a-select>
+                        <a-select
+                            class="inlineFormSelect ml9"
+                            v-model:value="formState.districtid"
+                            style="width: 205px"
+                            placeholder="请选择县(区)"
+                        >
+                            <a-select-option
+                                v-for="item in districtList"
+                                :key="item.autoid"
+                                :value="item.autoid"
+                            >{{ item.divisionname }}</a-select-option>
+                        </a-select>
+                    </a-form-item>
+                </a-col>
+                <a-col :span="24">
+                    <a-form-item label="&nbsp;" name="cardaddress">
+                        <a-input
+                            class="dialogInput"
+                            style="width: 635px"
+                            v-model:value="formState.cardaddress"
+                            placeholder="请输入详细地址"
+                        />
+                    </a-form-item>
+                </a-col>
+                <a-col :span="24">
+                    <a-form-item label="备注" name="remark">
+                        <a-input
+                            class="dialogInput"
+                            style="width: 635px"
+                            v-model:value="formState.remark"
+                            placeholder="请输入备注"
+                        />
+                    </a-form-item>
+                </a-col>
+            </a-row>
+        </a-form>
+    </a-modal>
 </template>
 
 <script lang="ts">
@@ -420,8 +443,8 @@ export default defineComponent({
             color: @m-white0;
             .rounded-corners(3px);
             &:hover {
-                background: rgba(@m-blue0, 0);
-                color: rgba(@m-white0, 0.8);
+                background: @m-blue0-hover;
+                color: @m-white0-hover;
             }
         }
         .look {

+ 305 - 281
src/views/information/goods/components/add/index.vue

@@ -1,281 +1,305 @@
 <template>
-  <!-- 新增现货品种 -->
-  <a-modal class="commonModal addSpotVariety"
-           wrapClassName=""
-           title="新增现货品种"
-           v-model:visible="visible"
-           @cancel="closeAction"
-           centered
-           :maskClosable="false"
-           width="850px">
-    <template #footer>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit">完成</a-button>
-    </template>
-    <a-form class="inlineForm"
-            ref="formRef"
-            :model="formState"
-            :rules="rules">
-      <fieldset class="formFieldSet">
-        <legend>基本信息</legend>
-        <a-row :gutter="24">
-          <a-col :span="12">
-            <a-form-item label="现货品种名称"
-                         name="deliverygoodsname">
-              <a-input class="dialogInput"
-                       v-model:value="formState.deliverygoodsname"
-                       style="width: 200px"
-                       placeholder="请输入现货品种名称" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="现货品种代码"
-                         name="deliverygoodscode">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.deliverygoodscode"
-                       placeholder="请输入现货品种代码" />
-            </a-form-item>
-          </a-col>
-        </a-row>
-        <a-row :gutter="24">
-          <a-col :span="24">
-            <a-form-item label="单位"
-                         name="unitid">
-              <a-select class="inlineFormSelect"
-                        style="width: 200px"
-                        v-model:value="formState.unitid"
-                        :getPopupContainer="(triggerNode) => triggerNode.parentNode"
-                        placeholder="请选择单位">
-                <a-select-option v-for="item in unitList"
-                                 :value="item.enumitemname"
-                                 :key="item.enumitemname">
-                  {{item.enumdicname}}
-                </a-select-option>
-              </a-select>
-            </a-form-item>
-          </a-col>
-        </a-row>
-        <a-row :gutter="24">
-          <a-col :span="24">
-            <a-form-item label="备注"
-                         name="remark">
-              <a-input class="dialogInput"
-                       v-model:value="formState.remark"
-                       style="width: 588px"
-                       placeholder="请输入备注" />
-            </a-form-item>
-          </a-col>
-        </a-row>
-      </fieldset>
-      <fieldset class="formFieldSet">
-        <legend>商品信息</legend>
-        <a-row :gutter="24"
-               class="dialogRowTitle">
-          <a-col :span="6">
-            <span>
-              <span class="red">*</span>
-              商品
-            </span>
-          </a-col>
-          <a-col :span="6">
-            <span>
-              <span class="red">*</span>
-              单位
-            </span>
-          </a-col>
-          <a-col :span="6">
-            <span>
-              <span class="red">*</span>
-              标仓系数
-            </span>
-          </a-col>
-          <a-col :span="6">
-            <span>
-              操作
-            </span>
-          </a-col>
-          <template v-for="(domain, index) in formState.gldwrstandards"
-                    :key="domain.index + 'domain'">
-            <a-col :span="6">
-              <a-form-item :name="['gldwrstandards',index, 'wrstandardname', ]"
-                           :rules="rules.gldwrstandards.wrstandardname">
-                <a-input class="dialogInput"
-                         v-model:value="domain.wrstandardname"
-                         placeholder="请输入商品"></a-input>
-              </a-form-item>
-            </a-col>
-            <a-col :span="6">
-              <a-form-item :name="['gldwrstandards',index,'unitid' ]"
-                           :rules="rules.gldwrstandards.unitid">
-                <a-select class="inlineFormSelect"
-                          v-model:value="domain.unitid"
-                          :getPopupContainer="(triggerNode) => triggerNode.parentNode"
-                          placeholder="请选择单位">
-                  <a-select-option v-for="item in unitList"
-                                   :value="item.enumitemname"
-                                   :key="item.enumitemname">
-                    {{item.enumdicname}}
-                  </a-select-option>
-                </a-select>
-              </a-form-item>
-            </a-col>
-            <a-col :span="6">
-              <a-form-item :name="['gldwrstandards',index,'convertfactor']"
-                           :rules="rules.gldwrstandards.convertfactor">
-                <a-input class="dialogInput"
-                         v-model:value="domain.convertfactor"
-                         type="number"
-                         placeholder="请输入标仓系数"></a-input>
-              </a-form-item>
-            </a-col>
-            <a-col :span="6"
-                   class="tc">
-              <a-button class="plusBtn"
-                        @click="deleteOne('gldwrstandards', index)"
-                        v-if="index > 0">
-                <template #icon>
-                  <MinusOutlined />
-                </template>
-              </a-button>
-              <a-button class="minusBtn"
-                        @click="addOne('gldwrstandards')">
-                <template #icon>
-                  <PlusOutlined />
-                </template>
-              </a-button>
-            </a-col>
-          </template>
-        </a-row>
-      </fieldset>
-      <fieldset class="formFieldSet">
-        <legend>品牌信息</legend>
-        <a-row :gutter="24"
-               class="dialogRowTitle dialogRowTitle2">
-          <a-col :span="12">
-            <span>
-              <span class="red">*</span>
-              品牌
-            </span>
-          </a-col>
-          <a-col :span="12">
-            <span>
-              操作
-            </span>
-          </a-col>
-          <template v-for="(domain, index) in formState.glddgfactoryItems"
-                    :key="domain.index + 'domain'">
-            <a-col :span="12">
-              <a-form-item :name="['glddgfactoryItems',index,'dgfactoryitemvalue']"
-                           :rules="rules.glddgfactoryItems.dgfactoryitemvalue">
-                <a-input class="dialogInput"
-                         v-model:value="domain.dgfactoryitemvalue"
-                         placeholder="请输入品牌"></a-input>
-              </a-form-item>
-            </a-col>
-            <a-col :span="12">
-              <a-button class="plusBtn"
-                        @click="deleteOne('glddgfactoryItems', index)"
-                        v-if="index > 0">
-                <template #icon>
-                  <MinusOutlined />
-                </template>
-              </a-button>
-              <a-button class="minusBtn"
-                        @click="addOne('glddgfactoryItems')">
-                <template #icon>
-                  <PlusOutlined />
-                </template>
-              </a-button>
-            </a-col>
-          </template>
-        </a-row>
-      </fieldset>
-      <fieldset class="formFieldSet">
-        <legend>套保品种信息</legend>
-        <a-row :gutter="24"
-               class="dialogRowTitle">
-          <a-col :span="6">
-            <span>
-              <span class="red">*</span>
-              套保品种
-            </span>
-          </a-col>
-          <a-col :span="6">
-            <span>
-              <span class="red">*</span>
-              单位
-            </span>
-          </a-col>
-          <a-col :span="6">
-            <span>
-              <span class="red">*</span>
-              套保系数
-            </span>
-          </a-col>
-          <a-col :span="6">
-            <span>
-              操作
-            </span>
-          </a-col>
-          <template v-for="(domain, index) in formState.wrsconvertdetails"
-                    :key="domain.index + 'domain'">
-            <a-col :span="6">
-              <a-form-item :name="['wrsconvertdetails',index,'middlegoodsid']"
-                           :rules="rules.wrsconvertdetails.middlegoodsid">
-                <a-select class="inlineFormSelect"
-                          @change="middleChange(domain.middlegoodsid, domain)"
-                          v-model:value="domain.middlegoodsid"
-                          :getPopupContainer="(triggerNode) => triggerNode.parentNode"
-                          placeholder="请选择套保品种">
-                  <a-select-option v-for="item in goodsGroup"
-                                   :value="item.goodsgroupid"
-                                   :key="item.goodsgroupid">
-                    {{item.goodsgroupname}}
-                  </a-select-option>
-                </a-select>
-              </a-form-item>
-            </a-col>
-            <a-col :span="6">
-              <a-form-item :name="['wrsconvertdetails', index, 'unitidName']">
-                <a-input class="dialogInput"
-                         readonly
-                         v-model:value="domain.unitidName"
-                         placeholder="选择套保品种后自动填入"></a-input>
-              </a-form-item>
-            </a-col>
-            <a-col :span="6">
-              <a-form-item :name="['wrsconvertdetails', index, 'convertratio']"
-                           :rules="rules.wrsconvertdetails.convertratio">
-                <a-input class="dialogInput"
-                         v-model:value="domain.convertratio"
-                         type="number"
-                         placeholder="请输入套保系数"></a-input>
-              </a-form-item>
-            </a-col>
-            <a-col :span="6"
-                   class="tc">
-              <a-button class="plusBtn"
-                        @click="deleteOne('wrsconvertdetails', index)"
-                        v-if="index > 0">
-                <template #icon>
-                  <MinusOutlined />
-                </template>
-              </a-button>
-              <a-button class="minusBtn"
-                        @click="addOne('wrsconvertdetails')">
-                <template #icon>
-                  <PlusOutlined />
-                </template>
-              </a-button>
-            </a-col>
-          </template>
-        </a-row>
-      </fieldset>
-    </a-form>
-  </a-modal>
+    <!-- 新增现货品种 -->
+    <a-modal
+        class="commonModal addSpotVariety"
+        wrapClassName
+        title="新增现货品种"
+        v-model:visible="visible"
+        @cancel="closeAction"
+        centered
+        :maskClosable="false"
+        width="850px"
+    >
+        <template #footer>
+            <a-button key="submit" type="primary" :loading="loading" @click="submit">完成</a-button>
+        </template>
+        <a-form class="inlineForm" ref="formRef" :model="formState" :rules="rules">
+            <fieldset class="formFieldSet">
+                <legend>基本信息</legend>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="现货品种名称" name="deliverygoodsname">
+                            <a-input
+                                class="dialogInput"
+                                v-model:value="formState.deliverygoodsname"
+                                style="width: 200px"
+                                placeholder="请输入现货品种名称"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="现货品种代码" name="deliverygoodscode">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.deliverygoodscode"
+                                placeholder="请输入现货品种代码"
+                            />
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+                <a-row :gutter="24">
+                    <a-col :span="24">
+                        <a-form-item label="单位" name="unitid">
+                            <a-select
+                                class="inlineFormSelect"
+                                style="width: 200px"
+                                v-model:value="formState.unitid"
+                                :getPopupContainer="(triggerNode) => triggerNode.parentNode"
+                                placeholder="请选择单位"
+                            >
+                                <a-select-option
+                                    v-for="item in unitList"
+                                    :value="item.enumitemname"
+                                    :key="item.enumitemname"
+                                >{{item.enumdicname}}</a-select-option>
+                            </a-select>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+                <a-row :gutter="24">
+                    <a-col :span="24">
+                        <a-form-item label="备注" name="remark">
+                            <a-input
+                                class="dialogInput"
+                                v-model:value="formState.remark"
+                                style="width: 588px"
+                                placeholder="请输入备注"
+                            />
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+            </fieldset>
+            <fieldset class="formFieldSet">
+                <legend>商品信息</legend>
+                <a-row :gutter="24" class="dialogRowTitle">
+                    <a-col :span="6">
+                        <span>
+                            <span class="red">*</span>
+                            商品
+                        </span>
+                    </a-col>
+                    <a-col :span="6">
+                        <span>
+                            <span class="red">*</span>
+                            单位
+                        </span>
+                    </a-col>
+                    <a-col :span="6">
+                        <span>
+                            <span class="red">*</span>
+                            标仓系数
+                        </span>
+                    </a-col>
+                    <a-col :span="6">
+                        <span>操作</span>
+                    </a-col>
+                    <template
+                        v-for="(domain, index) in formState.gldwrstandards"
+                        :key="domain.index + 'domain'"
+                    >
+                        <a-col :span="6">
+                            <a-form-item
+                                :name="['gldwrstandards',index, 'wrstandardname', ]"
+                                :rules="rules.gldwrstandards.wrstandardname"
+                            >
+                                <a-input
+                                    class="dialogInput"
+                                    v-model:value="domain.wrstandardname"
+                                    placeholder="请输入商品"
+                                ></a-input>
+                            </a-form-item>
+                        </a-col>
+                        <a-col :span="6">
+                            <a-form-item
+                                :name="['gldwrstandards',index,'unitid' ]"
+                                :rules="rules.gldwrstandards.unitid"
+                            >
+                                <a-select
+                                    class="inlineFormSelect"
+                                    v-model:value="domain.unitid"
+                                    :getPopupContainer="(triggerNode) => triggerNode.parentNode"
+                                    placeholder="请选择单位"
+                                >
+                                    <a-select-option
+                                        v-for="item in unitList"
+                                        :value="item.enumitemname"
+                                        :key="item.enumitemname"
+                                    >{{item.enumdicname}}</a-select-option>
+                                </a-select>
+                            </a-form-item>
+                        </a-col>
+                        <a-col :span="6">
+                            <a-form-item
+                                :name="['gldwrstandards',index,'convertfactor']"
+                                :rules="rules.gldwrstandards.convertfactor"
+                            >
+                                <a-input
+                                    class="dialogInput"
+                                    v-model:value="domain.convertfactor"
+                                    type="number"
+                                    placeholder="请输入标仓系数"
+                                ></a-input>
+                            </a-form-item>
+                        </a-col>
+                        <a-col :span="6" class="tc">
+                            <a-button
+                                class="plusBtn"
+                                @click="deleteOne('gldwrstandards', index)"
+                                v-if="index > 0"
+                            >
+                                <template #icon>
+                                    <MinusOutlined />
+                                </template>
+                            </a-button>
+                            <a-button class="minusBtn" @click="addOne('gldwrstandards')">
+                                <template #icon>
+                                    <PlusOutlined />
+                                </template>
+                            </a-button>
+                        </a-col>
+                    </template>
+                </a-row>
+            </fieldset>
+            <fieldset class="formFieldSet">
+                <legend>品牌信息</legend>
+                <a-row :gutter="24" class="dialogRowTitle dialogRowTitle2">
+                    <a-col :span="12">
+                        <span>
+                            <span class="red">*</span>
+                            品牌
+                        </span>
+                    </a-col>
+                    <a-col :span="12">
+                        <span>操作</span>
+                    </a-col>
+                    <template
+                        v-for="(domain, index) in formState.glddgfactoryItems"
+                        :key="domain.index + 'domain'"
+                    >
+                        <a-col :span="12">
+                            <a-form-item
+                                :name="['glddgfactoryItems',index,'dgfactoryitemvalue']"
+                                :rules="rules.glddgfactoryItems.dgfactoryitemvalue"
+                            >
+                                <a-input
+                                    class="dialogInput"
+                                    v-model:value="domain.dgfactoryitemvalue"
+                                    placeholder="请输入品牌"
+                                ></a-input>
+                            </a-form-item>
+                        </a-col>
+                        <a-col :span="12">
+                            <a-button
+                                class="plusBtn"
+                                @click="deleteOne('glddgfactoryItems', index)"
+                                v-if="index > 0"
+                            >
+                                <template #icon>
+                                    <MinusOutlined />
+                                </template>
+                            </a-button>
+                            <a-button class="minusBtn" @click="addOne('glddgfactoryItems')">
+                                <template #icon>
+                                    <PlusOutlined />
+                                </template>
+                            </a-button>
+                        </a-col>
+                    </template>
+                </a-row>
+            </fieldset>
+            <fieldset class="formFieldSet">
+                <legend>套保品种信息</legend>
+                <a-row :gutter="24" class="dialogRowTitle">
+                    <a-col :span="6">
+                        <span>
+                            <span class="red">*</span>
+                            套保品种
+                        </span>
+                    </a-col>
+                    <a-col :span="6">
+                        <span>
+                            <span class="red">*</span>
+                            单位
+                        </span>
+                    </a-col>
+                    <a-col :span="6">
+                        <span>
+                            <span class="red">*</span>
+                            套保系数
+                        </span>
+                    </a-col>
+                    <a-col :span="6">
+                        <span>操作</span>
+                    </a-col>
+                    <template
+                        v-for="(domain, index) in formState.wrsconvertdetails"
+                        :key="domain.index + 'domain'"
+                    >
+                        <a-col :span="6">
+                            <a-form-item
+                                :name="['wrsconvertdetails',index,'middlegoodsid']"
+                                :rules="rules.wrsconvertdetails.middlegoodsid"
+                            >
+                                <a-select
+                                    class="inlineFormSelect"
+                                    @change="middleChange(domain.middlegoodsid, domain)"
+                                    v-model:value="domain.middlegoodsid"
+                                    :getPopupContainer="(triggerNode) => triggerNode.parentNode"
+                                    placeholder="请选择套保品种"
+                                >
+                                    <a-select-option
+                                        v-for="item in goodsGroup"
+                                        :value="item.goodsgroupid"
+                                        :key="item.goodsgroupid"
+                                    >{{item.goodsgroupname}}</a-select-option>
+                                </a-select>
+                            </a-form-item>
+                        </a-col>
+                        <a-col :span="6">
+                            <a-form-item :name="['wrsconvertdetails', index, 'unitidName']">
+                                <a-input
+                                    class="dialogInput"
+                                    readonly
+                                    v-model:value="domain.unitidName"
+                                    placeholder="选择套保品种后自动填入"
+                                ></a-input>
+                            </a-form-item>
+                        </a-col>
+                        <a-col :span="6">
+                            <a-form-item
+                                :name="['wrsconvertdetails', index, 'convertratio']"
+                                :rules="rules.wrsconvertdetails.convertratio"
+                            >
+                                <a-input
+                                    class="dialogInput"
+                                    v-model:value="domain.convertratio"
+                                    type="number"
+                                    placeholder="请输入套保系数"
+                                ></a-input>
+                            </a-form-item>
+                        </a-col>
+                        <a-col :span="6" class="tc">
+                            <a-button
+                                class="plusBtn"
+                                @click="deleteOne('wrsconvertdetails', index)"
+                                v-if="index > 0"
+                            >
+                                <template #icon>
+                                    <MinusOutlined />
+                                </template>
+                            </a-button>
+                            <a-button class="minusBtn" @click="addOne('wrsconvertdetails')">
+                                <template #icon>
+                                    <PlusOutlined />
+                                </template>
+                            </a-button>
+                        </a-col>
+                    </template>
+                </a-row>
+            </fieldset>
+        </a-form>
+    </a-modal>
 </template>
 
 <script lang="ts">
@@ -437,8 +461,8 @@ export default defineComponent({
             color: @m-white0;
             .rounded-corners(3px);
             &:hover {
-                background: rgba(@m-blue0, 0);
-                color: rgba(@m-white0, 0.8);
+                background: @m-blue0-hover;
+                color: @m-white0-hover;
             }
         }
         .look {
@@ -468,9 +492,9 @@ export default defineComponent({
         }
         &:hover,
         &:focus {
-            background: rgba(@m-blue0, 0.8);
+            background: @m-blue0-hover;
             .anticon {
-                color: rgba(@m-white0, 0.8);
+                color: @m-white0-hover;
             }
         }
     }

+ 69 - 69
src/views/information/goods/components/hedgingModify/index.vue

@@ -1,71 +1,71 @@
 <template>
-  <!-- 修改套保品种 -->
-  <a-modal class="commonModal fieldsetForm modify-custom"
-           title="修改套保品种"
-           v-if="visible"
-           v-model:visible="visible"
-           :loading="loading"
-           centered
-           :maskClosable="false"
-           @cancel="cancel"
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit">完成</a-button>
-    </template>
-    <a-spin :spinning="loading">
-      <a-form class="inlineForm"
-              ref="formRef"
-              :model="formState"
-              :rules="rules">
-        <fieldset class="formFieldSet">
-          <legend>基本信息</legend>
-          <a-row :gutter="24">
-            <a-col :span="12">
-              <a-form-item label="套保品种名称">
-                <span class="white">{{selctedMG.mg.middlegoodsname}}</span>
-              </a-form-item>
-            </a-col>
-            <a-col :span="12">
-              <a-form-item label="单位">
-                <span class="white">{{getGoodsUnitEnumItemName(selctedMG.mg.goodsunitid)}}</span>
-              </a-form-item>
-            </a-col>
-            <a-col :span="12">
-              <a-form-item label="当前套保比例">
-                <span class="white">{{(selctedMG.mg.needhedgeratio * 100).toFixed(2)}}%</span>
-              </a-form-item>
-            </a-col>
-            <a-col :span="12">
-              <a-form-item label="修改后套保比例"
-                           name="needhedgeratio"
-                           class="relative">
-                <a-input-number class="dialogInput"
-                                style="width: 200px"
-                                type="number"
-                                :min="0"
-                                placeholder="请输入套保比例"
-                                v-model:value="formState.needhedgeratio" />
-                <div class="backUnit">%</div>
-              </a-form-item>
-            </a-col>
-          </a-row>
-        </fieldset>
-        <fieldset class="formFieldSet">
-          <legend>其他信息</legend>
-          <a-row :gutter="24">
-            <a-col :span="24">
-              <a-form-item label="备注">
-                <span class="white">{{selctedMG.mg.remark}}</span>
-              </a-form-item>
-            </a-col>
-          </a-row>
-        </fieldset>
-      </a-form>
-    </a-spin>
-  </a-modal>
+    <!-- 修改套保品种 -->
+    <a-modal
+        class="commonModal fieldsetForm modify-custom"
+        title="修改套保品种"
+        v-if="visible"
+        v-model:visible="visible"
+        :loading="loading"
+        centered
+        :maskClosable="false"
+        @cancel="cancel"
+        width="890px"
+    >
+        <template #footer>
+            <a-button key="submit" type="primary" :loading="loading" @click="submit">完成</a-button>
+        </template>
+        <a-spin :spinning="loading">
+            <a-form class="inlineForm" ref="formRef" :model="formState" :rules="rules">
+                <fieldset class="formFieldSet">
+                    <legend>基本信息</legend>
+                    <a-row :gutter="24">
+                        <a-col :span="12">
+                            <a-form-item label="套保品种名称">
+                                <span class="white">{{selctedMG.mg.middlegoodsname}}</span>
+                            </a-form-item>
+                        </a-col>
+                        <a-col :span="12">
+                            <a-form-item label="单位">
+                                <span
+                                    class="white"
+                                >{{getGoodsUnitEnumItemName(selctedMG.mg.goodsunitid)}}</span>
+                            </a-form-item>
+                        </a-col>
+                        <a-col :span="12">
+                            <a-form-item label="当前套保比例">
+                                <span
+                                    class="white"
+                                >{{(selctedMG.mg.needhedgeratio * 100).toFixed(2)}}%</span>
+                            </a-form-item>
+                        </a-col>
+                        <a-col :span="12">
+                            <a-form-item label="修改后套保比例" name="needhedgeratio" class="relative">
+                                <a-input-number
+                                    class="dialogInput"
+                                    style="width: 200px"
+                                    type="number"
+                                    :min="0"
+                                    placeholder="请输入套保比例"
+                                    v-model:value="formState.needhedgeratio"
+                                />
+                                <div class="backUnit">%</div>
+                            </a-form-item>
+                        </a-col>
+                    </a-row>
+                </fieldset>
+                <fieldset class="formFieldSet">
+                    <legend>其他信息</legend>
+                    <a-row :gutter="24">
+                        <a-col :span="24">
+                            <a-form-item label="备注">
+                                <span class="white">{{selctedMG.mg.remark}}</span>
+                            </a-form-item>
+                        </a-col>
+                    </a-row>
+                </fieldset>
+            </a-form>
+        </a-spin>
+    </a-modal>
 </template>
 
 <script lang="ts">
@@ -151,8 +151,8 @@ export default defineComponent({
             color: @m-white0;
             .rounded-corners(3px);
             &:hover {
-                background: rgba(@m-blue0, 0);
-                color: rgba(@m-white0, 0.8);
+                background: @m-blue0-hover;
+                color: @m-white0-hover;
             }
         }
         .look {

+ 303 - 280
src/views/information/goods/components/modify/index.vue

@@ -1,282 +1,305 @@
 <template>
-  <!-- 修改现货品种 -->
-  <a-modal class="commonModal addSpotVariety"
-           title="修改现货品种"
-           v-if="visible"
-           v-model:visible="visible"
-           centered
-           :maskClosable="false"
-           @cancel="cancel"
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit">完成
-      </a-button>
-    </template>
-    <a-form class="inlineForm"
-            ref="formRef"
-            :model="formState"
-            :rules="rules">
-      <fieldset class="formFieldSet">
-        <legend>基本信息</legend>
-        <a-row :gutter="24">
-          <a-col :span="12">
-            <a-form-item label="现货品种名称"
-                         name="deliverygoodsname">
-              <a-input class="dialogInput"
-                       v-model:value="formState.deliverygoodsname"
-                       style="width: 200px"
-                       placeholder="请输入现货品种名称" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="现货品种代码"
-                         name="deliverygoodscode">
-              <a-input class="dialogInput"
-                       readonly
-                       style="width: 200px"
-                       v-model:value="formState.deliverygoodscode"
-                       placeholder="请输入现货品种代码" />
-            </a-form-item>
-          </a-col>
-        </a-row>
-        <a-row :gutter="24">
-          <a-col :span="24">
-            <a-form-item label="单位"
-                         name="unitid">
-              <a-select class="inlineFormSelect"
-                        style="width: 200px"
-                        v-model:value="formState.unitid"
-                        placeholder="请选择单位">
-                <a-select-option v-for="item in unitList"
-                                 :value="item.enumitemname"
-                                 :key="item.autoid">
-                  {{ item.enumdicname }}
-                </a-select-option>
-              </a-select>
-            </a-form-item>
-          </a-col>
-        </a-row>
-        <a-row :gutter="24">
-          <a-col :span="24">
-            <a-form-item label="备注"
-                         name="remark">
-              <a-input class="dialogInput"
-                       v-model:value="formState.remark"
-                       style="width: 588px"
-                       placeholder="请输入备注" />
-            </a-form-item>
-          </a-col>
-        </a-row>
-      </fieldset>
-      <fieldset class="formFieldSet">
-        <legend>商品信息</legend>
-        <a-row :gutter="24"
-               class="dialogRowTitle">
-          <a-col :span="6">
-            <span>
-              <span class="red">*</span>
-              商品
-            </span>
-          </a-col>
-          <a-col :span="6">
-            <span>
-              <span class="red">*</span>
-              单位
-            </span>
-          </a-col>
-          <a-col :span="6">
-            <span>
-              <span class="red">*</span>
-              标仓系数
-            </span>
-          </a-col>
-          <a-col :span="6">
-            <span>
-              操作
-            </span>
-          </a-col>
-          <template v-for="(domain, index) in formState.gldwrstandards"
-                    :key="domain.index + 'domain'">
-            <a-col :span="6">
-              <a-form-item :name="['gldwrstandards',index, 'wrstandardname', ]"
-                           :rules="rules.gldwrstandards.wrstandardname">
-                <a-input class="dialogInput"
-                         v-model:value="domain.wrstandardname"
-                         placeholder="请输入商品"></a-input>
-              </a-form-item>
-            </a-col>
-            <a-col :span="6">
-              <a-form-item :name="['gldwrstandards',index,'unitid' ]"
-                           :rules="rules.gldwrstandards.unitid">
-                <a-select class="inlineFormSelect"
-                          v-model:value="domain.unitid"
-                          placeholder="请选择单位">
-                  <a-select-option v-for="item in unitList"
-                                   :value="item.enumitemname"
-                                   :key="item.autoid">
-                    {{ item.enumdicname }}
-                  </a-select-option>
-                </a-select>
-              </a-form-item>
-            </a-col>
-            <a-col :span="6">
-              <a-form-item :name="['gldwrstandards',index,'convertfactor']"
-                           :rules="rules.gldwrstandards.convertfactor">
-                <a-input-number class="dialogInput"
+    <!-- 修改现货品种 -->
+    <a-modal
+        class="commonModal addSpotVariety"
+        title="修改现货品种"
+        v-if="visible"
+        v-model:visible="visible"
+        centered
+        :maskClosable="false"
+        @cancel="cancel"
+        width="890px"
+    >
+        <template #footer>
+            <a-button key="submit" type="primary" :loading="loading" @click="submit">完成</a-button>
+        </template>
+        <a-form class="inlineForm" ref="formRef" :model="formState" :rules="rules">
+            <fieldset class="formFieldSet">
+                <legend>基本信息</legend>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="现货品种名称" name="deliverygoodsname">
+                            <a-input
+                                class="dialogInput"
+                                v-model:value="formState.deliverygoodsname"
                                 style="width: 200px"
-                                :min="0"
-                                v-model:value="domain.convertfactor"
-                                placeholder="请输入标仓系数"></a-input-number>
-              </a-form-item>
-            </a-col>
-            <a-col :span="6"
-                   class="tc">
-              <a-button class="plusBtn"
-                        @click="deleteOne('gldwrstandards', index)"
-                        v-if="index > 0">
-                <template #icon>
-                  <MinusOutlined />
-                </template>
-              </a-button>
-              <a-button class="minusBtn"
-                        @click="addOne('gldwrstandards')">
-                <template #icon>
-                  <PlusOutlined />
-                </template>
-              </a-button>
-            </a-col>
-          </template>
-        </a-row>
-      </fieldset>
-      <fieldset class="formFieldSet">
-        <legend>品牌信息</legend>
-        <a-row :gutter="24"
-               class="dialogRowTitle dialogRowTitle2">
-          <a-col :span="12">
-            <span>
-              <span class="red">*</span>
-              品牌
-            </span>
-          </a-col>
-          <a-col :span="12">
-            <span>
-              操作
-            </span>
-          </a-col>
-          <template v-for="(domain, index) in formState.glddgfactoryItems"
-                    :key="domain.index + 'domain'">
-            <a-col :span="12">
-              <a-form-item :name="['glddgfactoryItems',index,'dgfactoryitemvalue']"
-                           :rules="rules.glddgfactoryItems.dgfactoryitemvalue">
-                <a-input class="dialogInput"
-                         v-model:value="domain.dgfactoryitemvalue"
-                         placeholder="请输入品牌"></a-input>
-              </a-form-item>
-            </a-col>
-            <a-col :span="12">
-              <a-button class="plusBtn"
-                        @click="deleteOne('glddgfactoryItems', index)"
-                        v-if="index > 0">
-                <template #icon>
-                  <MinusOutlined />
-                </template>
-              </a-button>
-              <a-button class="minusBtn"
-                        @click="addOne('glddgfactoryItems')">
-                <template #icon>
-                  <PlusOutlined />
-                </template>
-              </a-button>
-            </a-col>
-          </template>
-        </a-row>
-      </fieldset>
-      <fieldset class="formFieldSet">
-        <legend>套保品种信息</legend>
-        <a-row :gutter="24"
-               class="dialogRowTitle">
-          <a-col :span="6">
-            <span>
-              <span class="red">*</span>
-              套保品种
-            </span>
-          </a-col>
-          <a-col :span="6">
-            <span>
-              <span class="red">*</span>
-              单位
-            </span>
-          </a-col>
-          <a-col :span="6">
-            <span>
-              <span class="red">*</span>
-              套保系数
-            </span>
-          </a-col>
-          <a-col :span="6">
-            <span>
-              操作
-            </span>
-          </a-col>
-          <template v-for="(domain, index) in formState.wrsconvertdetails"
-                    :key="domain.index + 'domain'">
-            <a-col :span="6">
-              <a-form-item :name="['wrsconvertdetails',index,'middlegoodsid']"
-                           :rules="rules.wrsconvertdetails.middlegoodsid">
-                <a-select class="inlineFormSelect"
-                          @change="middleChange(domain.middlegoodsid, domain)"
-                          v-model:value="domain.middlegoodsid"
-                          placeholder="请选择套保品种">
-                  <a-select-option v-for="item in goodsGroup"
-                                   :value="item.goodsgroupid"
-                                   :key="item.goodsgroupid">
-                    {{ item.goodsgroupname }}
-                  </a-select-option>
-                </a-select>
-              </a-form-item>
-            </a-col>
-            <a-col :span="6">
-              <a-form-item :name="['wrsconvertdetails', index, 'unitidName']">
-                <a-input class="dialogInput"
-                         readonly
-                         v-model:value="domain.unitidName"
-                         placeholder="选择套保品种后自动填入"></a-input>
-              </a-form-item>
-            </a-col>
-            <a-col :span="6">
-              <a-form-item :name="['wrsconvertdetails', index, 'convertratio']"
-                           :rules="rules.wrsconvertdetails.convertratio">
-                <a-input-number class="dialogInput"
+                                placeholder="请输入现货品种名称"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="现货品种代码" name="deliverygoodscode">
+                            <a-input
+                                class="dialogInput"
+                                readonly
                                 style="width: 200px"
-                                :min="0"
-                                v-model:value="domain.convertratio"
-                                placeholder="请输入套保系数"></a-input-number>
-              </a-form-item>
-            </a-col>
-            <a-col :span="6"
-                   class="tc">
-              <a-button class="plusBtn"
-                        @click="deleteOne('wrsconvertdetails', index)"
-                        v-if="index > 0">
-                <template #icon>
-                  <MinusOutlined />
-                </template>
-              </a-button>
-              <a-button class="minusBtn"
-                        @click="addOne('wrsconvertdetails')">
-                <template #icon>
-                  <PlusOutlined />
-                </template>
-              </a-button>
-            </a-col>
-          </template>
-        </a-row>
-      </fieldset>
-    </a-form>
-  </a-modal>
+                                v-model:value="formState.deliverygoodscode"
+                                placeholder="请输入现货品种代码"
+                            />
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+                <a-row :gutter="24">
+                    <a-col :span="24">
+                        <a-form-item label="单位" name="unitid">
+                            <a-select
+                                class="inlineFormSelect"
+                                style="width: 200px"
+                                v-model:value="formState.unitid"
+                                placeholder="请选择单位"
+                            >
+                                <a-select-option
+                                    v-for="item in unitList"
+                                    :value="item.enumitemname"
+                                    :key="item.autoid"
+                                >{{ item.enumdicname }}</a-select-option>
+                            </a-select>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+                <a-row :gutter="24">
+                    <a-col :span="24">
+                        <a-form-item label="备注" name="remark">
+                            <a-input
+                                class="dialogInput"
+                                v-model:value="formState.remark"
+                                style="width: 588px"
+                                placeholder="请输入备注"
+                            />
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+            </fieldset>
+            <fieldset class="formFieldSet">
+                <legend>商品信息</legend>
+                <a-row :gutter="24" class="dialogRowTitle">
+                    <a-col :span="6">
+                        <span>
+                            <span class="red">*</span>
+                            商品
+                        </span>
+                    </a-col>
+                    <a-col :span="6">
+                        <span>
+                            <span class="red">*</span>
+                            单位
+                        </span>
+                    </a-col>
+                    <a-col :span="6">
+                        <span>
+                            <span class="red">*</span>
+                            标仓系数
+                        </span>
+                    </a-col>
+                    <a-col :span="6">
+                        <span>操作</span>
+                    </a-col>
+                    <template
+                        v-for="(domain, index) in formState.gldwrstandards"
+                        :key="domain.index + 'domain'"
+                    >
+                        <a-col :span="6">
+                            <a-form-item
+                                :name="['gldwrstandards',index, 'wrstandardname', ]"
+                                :rules="rules.gldwrstandards.wrstandardname"
+                            >
+                                <a-input
+                                    class="dialogInput"
+                                    v-model:value="domain.wrstandardname"
+                                    placeholder="请输入商品"
+                                ></a-input>
+                            </a-form-item>
+                        </a-col>
+                        <a-col :span="6">
+                            <a-form-item
+                                :name="['gldwrstandards',index,'unitid' ]"
+                                :rules="rules.gldwrstandards.unitid"
+                            >
+                                <a-select
+                                    class="inlineFormSelect"
+                                    v-model:value="domain.unitid"
+                                    placeholder="请选择单位"
+                                >
+                                    <a-select-option
+                                        v-for="item in unitList"
+                                        :value="item.enumitemname"
+                                        :key="item.autoid"
+                                    >{{ item.enumdicname }}</a-select-option>
+                                </a-select>
+                            </a-form-item>
+                        </a-col>
+                        <a-col :span="6">
+                            <a-form-item
+                                :name="['gldwrstandards',index,'convertfactor']"
+                                :rules="rules.gldwrstandards.convertfactor"
+                            >
+                                <a-input-number
+                                    class="dialogInput"
+                                    style="width: 200px"
+                                    :min="0"
+                                    v-model:value="domain.convertfactor"
+                                    placeholder="请输入标仓系数"
+                                ></a-input-number>
+                            </a-form-item>
+                        </a-col>
+                        <a-col :span="6" class="tc">
+                            <a-button
+                                class="plusBtn"
+                                @click="deleteOne('gldwrstandards', index)"
+                                v-if="index > 0"
+                            >
+                                <template #icon>
+                                    <MinusOutlined />
+                                </template>
+                            </a-button>
+                            <a-button class="minusBtn" @click="addOne('gldwrstandards')">
+                                <template #icon>
+                                    <PlusOutlined />
+                                </template>
+                            </a-button>
+                        </a-col>
+                    </template>
+                </a-row>
+            </fieldset>
+            <fieldset class="formFieldSet">
+                <legend>品牌信息</legend>
+                <a-row :gutter="24" class="dialogRowTitle dialogRowTitle2">
+                    <a-col :span="12">
+                        <span>
+                            <span class="red">*</span>
+                            品牌
+                        </span>
+                    </a-col>
+                    <a-col :span="12">
+                        <span>操作</span>
+                    </a-col>
+                    <template
+                        v-for="(domain, index) in formState.glddgfactoryItems"
+                        :key="domain.index + 'domain'"
+                    >
+                        <a-col :span="12">
+                            <a-form-item
+                                :name="['glddgfactoryItems',index,'dgfactoryitemvalue']"
+                                :rules="rules.glddgfactoryItems.dgfactoryitemvalue"
+                            >
+                                <a-input
+                                    class="dialogInput"
+                                    v-model:value="domain.dgfactoryitemvalue"
+                                    placeholder="请输入品牌"
+                                ></a-input>
+                            </a-form-item>
+                        </a-col>
+                        <a-col :span="12">
+                            <a-button
+                                class="plusBtn"
+                                @click="deleteOne('glddgfactoryItems', index)"
+                                v-if="index > 0"
+                            >
+                                <template #icon>
+                                    <MinusOutlined />
+                                </template>
+                            </a-button>
+                            <a-button class="minusBtn" @click="addOne('glddgfactoryItems')">
+                                <template #icon>
+                                    <PlusOutlined />
+                                </template>
+                            </a-button>
+                        </a-col>
+                    </template>
+                </a-row>
+            </fieldset>
+            <fieldset class="formFieldSet">
+                <legend>套保品种信息</legend>
+                <a-row :gutter="24" class="dialogRowTitle">
+                    <a-col :span="6">
+                        <span>
+                            <span class="red">*</span>
+                            套保品种
+                        </span>
+                    </a-col>
+                    <a-col :span="6">
+                        <span>
+                            <span class="red">*</span>
+                            单位
+                        </span>
+                    </a-col>
+                    <a-col :span="6">
+                        <span>
+                            <span class="red">*</span>
+                            套保系数
+                        </span>
+                    </a-col>
+                    <a-col :span="6">
+                        <span>操作</span>
+                    </a-col>
+                    <template
+                        v-for="(domain, index) in formState.wrsconvertdetails"
+                        :key="domain.index + 'domain'"
+                    >
+                        <a-col :span="6">
+                            <a-form-item
+                                :name="['wrsconvertdetails',index,'middlegoodsid']"
+                                :rules="rules.wrsconvertdetails.middlegoodsid"
+                            >
+                                <a-select
+                                    class="inlineFormSelect"
+                                    @change="middleChange(domain.middlegoodsid, domain)"
+                                    v-model:value="domain.middlegoodsid"
+                                    placeholder="请选择套保品种"
+                                >
+                                    <a-select-option
+                                        v-for="item in goodsGroup"
+                                        :value="item.goodsgroupid"
+                                        :key="item.goodsgroupid"
+                                    >{{ item.goodsgroupname }}</a-select-option>
+                                </a-select>
+                            </a-form-item>
+                        </a-col>
+                        <a-col :span="6">
+                            <a-form-item :name="['wrsconvertdetails', index, 'unitidName']">
+                                <a-input
+                                    class="dialogInput"
+                                    readonly
+                                    v-model:value="domain.unitidName"
+                                    placeholder="选择套保品种后自动填入"
+                                ></a-input>
+                            </a-form-item>
+                        </a-col>
+                        <a-col :span="6">
+                            <a-form-item
+                                :name="['wrsconvertdetails', index, 'convertratio']"
+                                :rules="rules.wrsconvertdetails.convertratio"
+                            >
+                                <a-input-number
+                                    class="dialogInput"
+                                    style="width: 200px"
+                                    :min="0"
+                                    v-model:value="domain.convertratio"
+                                    placeholder="请输入套保系数"
+                                ></a-input-number>
+                            </a-form-item>
+                        </a-col>
+                        <a-col :span="6" class="tc">
+                            <a-button
+                                class="plusBtn"
+                                @click="deleteOne('wrsconvertdetails', index)"
+                                v-if="index > 0"
+                            >
+                                <template #icon>
+                                    <MinusOutlined />
+                                </template>
+                            </a-button>
+                            <a-button class="minusBtn" @click="addOne('wrsconvertdetails')">
+                                <template #icon>
+                                    <PlusOutlined />
+                                </template>
+                            </a-button>
+                        </a-col>
+                    </template>
+                </a-row>
+            </fieldset>
+        </a-form>
+    </a-modal>
 </template>
 
 <script lang="ts">
@@ -484,8 +507,8 @@ export default defineComponent({
             .rounded-corners(3px);
 
             &:hover {
-                background: rgba(@m-blue0, 0);
-                color: rgba(@m-white0, 0.8);
+                background: @m-blue0-hover;
+                color: @m-white0-hover;
             }
         }
 
@@ -520,10 +543,10 @@ export default defineComponent({
 
         &:hover,
         &:focus {
-            background: rgba(@m-blue0, 0.8);
+            background: @m-blue0-hover;
 
             .anticon {
-                color: rgba(@m-white0, 0.8);
+                color: @m-white0-hover;
             }
         }
     }

+ 120 - 149
src/views/information/goods/components/spotDetail/index.vue

@@ -1,151 +1,122 @@
 <template>
-  <!-- 现货品种详情 -->
-  <a-modal class="commonModal spot-detail"
-           title="详情"
-           v-if="visible"
-           v-model:visible="visible"
-           centered
-           :maskClosable="false"
-           @cancel="cancel"
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit">完成
-      </a-button>
-    </template>
-    <a-form class="inlineForm"
-            ref="formRef"
-            :model="formState"
-            :rules="rules">
-      <fieldset class="formFieldSet">
-        <legend>基本信息</legend>
-        <a-row :gutter="24">
-          <a-col :span="12">
-            <a-form-item label="现货品种名称"
-                         name="deliverygoodsname">
-              <span class="white">{{ formatValue(selectedRow.data.deliverygoodsname) }}</span>
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="现货品种代码"
-                         name="deliverygoodscode">
-              <span class="white">{{ formatValue(selectedRow.data.deliverygoodscode) }}</span>
-            </a-form-item>
-          </a-col>
-        </a-row>
-        <a-row :gutter="24">
-          <a-col :span="12">
-            <a-form-item label="单位"
-                         name="unitid">
-              <span class="white">{{ formatValue(selectedRow.data.enumdicname) }}</span>
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="状态"
-                         name="unitid">
-              <span class="green">{{ getValidName(selectedRow.data.isvalid) }}</span>
-            </a-form-item>
-          </a-col>
-        </a-row>
-        <a-row :gutter="24">
-          <a-col :span="24">
-            <a-form-item label="备注"
-                         name="remark">
-              <span class="white">{{ formatValue(selectedRow.data.remark) }}</span>
-            </a-form-item>
-          </a-col>
-        </a-row>
-      </fieldset>
-      <fieldset class="formFieldSet">
-        <legend>商品信息</legend>
-        <a-row :gutter="24"
-               class="dialogRowTitle">
-          <a-col :span="8">
-            <span>
-              商品
-            </span>
-          </a-col>
-          <a-col :span="8">
-            <span>
-              单位
-            </span>
-          </a-col>
-          <a-col :span="8">
-            <span>
-              标仓系数
-            </span>
-          </a-col>
-          <template v-for="item in selectedRow.gmlist"
-                    :key="item.wrstandardid">
-            <a-col :span="8"
-                   class="bt1">
-              <div class="white">{{ item.wrstandardname }}</div>
-            </a-col>
-            <a-col :span="8">
-              <div class="white">{{ item.enumdicname }}</div>
-            </a-col>
-            <a-col :span="8">
-              <div class="white">{{ item.convertfactor }}</div>
-            </a-col>
-          </template>
-        </a-row>
-      </fieldset>
-      <fieldset class="formFieldSet">
-        <legend>品牌信息</legend>
-        <a-row :gutter="24"
-               class="dialogRowTitle dialogRowTitle2">
-          <a-col :span="24">
-            <span>
-              品牌
-            </span>
-          </a-col>
-          <template v-for="item in selectedRow.gblist"
-                    :key="item.brandid">
-            <a-col :span="24"
-                   class="bt1">
-              <div class="white">{{ item.brandname }}</div>
-            </a-col>
-          </template>
-        </a-row>
-      </fieldset>
-      <fieldset class="formFieldSet">
-        <legend>套保品种信息</legend>
-        <a-row :gutter="24"
-               class="dialogRowTitle">
-          <a-col :span="8">
-            <span>
-              套保品种
-            </span>
-          </a-col>
-          <a-col :span="8">
-            <span>
-              单位
-            </span>
-          </a-col>
-          <a-col :span="8">
-            <span>
-              套保系数
-            </span>
-          </a-col>
-          <template v-for="item in selectedRow.mgList"
-                    :key="item.mg.middlegoodsid">
-            <a-col :span="8"
-                   class="bt1">
-              <div class="white">{{ item.mg.middlegoodsname }}</div>
-            </a-col>
-            <a-col :span="8">
-              <div class="white">{{ item.mg.enumdicname }}</div>
-            </a-col>
-            <a-col :span="8">
-              <div class="white">{{ item.mg.needhedgeratio }}</div>
-            </a-col>
-          </template>
-        </a-row>
-      </fieldset>
-    </a-form>
-  </a-modal>
+    <!-- 现货品种详情 -->
+    <a-modal
+        class="commonModal spot-detail"
+        title="详情"
+        v-if="visible"
+        v-model:visible="visible"
+        centered
+        :maskClosable="false"
+        @cancel="cancel"
+        width="890px"
+    >
+        <template #footer>
+            <a-button key="submit" type="primary" :loading="loading" @click="submit">完成</a-button>
+        </template>
+        <a-form class="inlineForm" ref="formRef" :model="formState" :rules="rules">
+            <fieldset class="formFieldSet">
+                <legend>基本信息</legend>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="现货品种名称" name="deliverygoodsname">
+                            <span
+                                class="white"
+                            >{{ formatValue(selectedRow.data.deliverygoodsname) }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="现货品种代码" name="deliverygoodscode">
+                            <span
+                                class="white"
+                            >{{ formatValue(selectedRow.data.deliverygoodscode) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="单位" name="unitid">
+                            <span class="white">{{ formatValue(selectedRow.data.enumdicname) }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="状态" name="unitid">
+                            <span class="green">{{ getValidName(selectedRow.data.isvalid) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+                <a-row :gutter="24">
+                    <a-col :span="24">
+                        <a-form-item label="备注" name="remark">
+                            <span class="white">{{ formatValue(selectedRow.data.remark) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+            </fieldset>
+            <fieldset class="formFieldSet">
+                <legend>商品信息</legend>
+                <a-row :gutter="24" class="dialogRowTitle">
+                    <a-col :span="8">
+                        <span>商品</span>
+                    </a-col>
+                    <a-col :span="8">
+                        <span>单位</span>
+                    </a-col>
+                    <a-col :span="8">
+                        <span>标仓系数</span>
+                    </a-col>
+                    <template v-for="item in selectedRow.gmlist" :key="item.wrstandardid">
+                        <a-col :span="8" class="bt1">
+                            <div class="white">{{ item.wrstandardname }}</div>
+                        </a-col>
+                        <a-col :span="8">
+                            <div class="white">{{ item.enumdicname }}</div>
+                        </a-col>
+                        <a-col :span="8">
+                            <div class="white">{{ item.convertfactor }}</div>
+                        </a-col>
+                    </template>
+                </a-row>
+            </fieldset>
+            <fieldset class="formFieldSet">
+                <legend>品牌信息</legend>
+                <a-row :gutter="24" class="dialogRowTitle dialogRowTitle2">
+                    <a-col :span="24">
+                        <span>品牌</span>
+                    </a-col>
+                    <template v-for="item in selectedRow.gblist" :key="item.brandid">
+                        <a-col :span="24" class="bt1">
+                            <div class="white">{{ item.brandname }}</div>
+                        </a-col>
+                    </template>
+                </a-row>
+            </fieldset>
+            <fieldset class="formFieldSet">
+                <legend>套保品种信息</legend>
+                <a-row :gutter="24" class="dialogRowTitle">
+                    <a-col :span="8">
+                        <span>套保品种</span>
+                    </a-col>
+                    <a-col :span="8">
+                        <span>单位</span>
+                    </a-col>
+                    <a-col :span="8">
+                        <span>套保系数</span>
+                    </a-col>
+                    <template v-for="item in selectedRow.mgList" :key="item.mg.middlegoodsid">
+                        <a-col :span="8" class="bt1">
+                            <div class="white">{{ item.mg.middlegoodsname }}</div>
+                        </a-col>
+                        <a-col :span="8">
+                            <div class="white">{{ item.mg.enumdicname }}</div>
+                        </a-col>
+                        <a-col :span="8">
+                            <div class="white">{{ item.mg.needhedgeratio }}</div>
+                        </a-col>
+                    </template>
+                </a-row>
+            </fieldset>
+        </a-form>
+    </a-modal>
 </template>
 
 <script lang="ts">
@@ -208,8 +179,8 @@ export default defineComponent({
             .rounded-corners(3px);
 
             &:hover {
-                background: rgba(@m-blue0, 0);
-                color: rgba(@m-white0, 0.8);
+                background: @m-blue0-hover;
+                color: @m-white0-hover;
             }
         }
 

+ 137 - 132
src/views/information/warehouse-info/compoments/add/index.vue

@@ -1,134 +1,139 @@
 <template>
-  <!-- 新增仓库信息 -->
-  <a-modal class="add-warehouse commonModal"
-           title="新增仓库信息"
-           v-model:visible="visible"
-           centered
-           :maskClosable="false"
-           @cancel="cancel"
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="cancel">取消</a-button>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit">完成</a-button>
-    </template>
-    <a-form class="inlineForm"
-            ref="formRef"
-            :model="formState"
-            :rules="rules">
-      <a-row :gutter="24">
-        <a-col :span="12">
-          <a-form-item label="仓库类型"
-                       name="warehousetype">
-            <a-select class="typeSelect"
-                      style="width: 200px"
-                      v-model:value="formState.warehousetype"
-                      placeholder="请选择仓库类型">
-              <a-select-option v-for="item in warehouseType"
-                               :key="item.enumitemname"
-                               :value="item.enumitemname">
-                {{item.enumdicname}}
-              </a-select-option>
-            </a-select>
-          </a-form-item>
-        </a-col>
-        <a-col :span="12">
-          <a-form-item label="仓库名称"
-                       name="warehousename">
-            <a-input class="dialogInput"
-                     style="width: 200px"
-                     v-model:value="formState.warehousename"
-                     placeholder="请输入仓库名称" />
-          </a-form-item>
-        </a-col>
-      </a-row>
-      <a-row :gutter="24">
-        <a-col :span="12">
-          <a-form-item label="仓库简称"
-                       name="warehousecode">
-            <a-input class="dialogInput"
-                     style="width: 200px"
-                     v-model:value="formState.warehousecode"
-                     placeholder="请输入仓库简称" />
-          </a-form-item>
-        </a-col>
-        <a-col :span="12">
-          <a-form-item label="联系人"
-                       name="contactname">
-            <a-input class="dialogInput"
-                     style="width: 200px"
-                     v-model:value="formState.contactname"
-                     placeholder="请输入联系人" />
-          </a-form-item>
-        </a-col>
-      </a-row>
-      <a-row :gutter="24">
-        <a-col :span="24">
-          <a-form-item label="联系电话"
-                       name="contactnum">
-            <a-input class="dialogInput"
-                     style="width: 200px"
-                     v-model:value="formState.contactnum"
-                     placeholder="请输入联系电话" />
-          </a-form-item>
-        </a-col>
-      </a-row>
-      <a-row :gutter="24">
-        <a-col :span="24">
-          <a-form-item label="所在地区">
-            <a-select class="inlineFormSelect"
-                      style="width: 205px"
-                      v-model:value="formState.provinceid"
-                      @change="getCityList"
-                      placeholder="请选择省">
-              <a-select-option v-for="item in provinceList"
-                               :key="item.autoid"
-                               :value="item.autoid">
-                {{item.divisionname}}
-              </a-select-option>
-            </a-select>
-            <a-select class="inlineFormSelect ml9"
-                      style="width: 205px"
-                      v-model:value="formState.cityid"
-                      @change="getDistrictList"
-                      placeholder="请选择市">
-              <a-select-option v-for="item in cityList"
-                               :key="item.autoid"
-                               :value="item.autoid">
-                {{item.divisionname}}
-              </a-select-option>
-            </a-select>
-            <a-select class="inlineFormSelect ml9"
-                      v-model:value="formState.districtid"
-                      style="width: 205px"
-                      placeholder="请选择县(区)">
-              <a-select-option v-for="item in districtList"
-                               :key="item.autoid"
-                               :value="item.autoid">
-                {{item.divisionname}}
-              </a-select-option>
-            </a-select>
-          </a-form-item>
-        </a-col>
-      </a-row>
-      <a-row :gutter="24">
-        <a-col :span="24">
-          <a-form-item label="详细地址"
-                       name="address">
-            <a-input class="dialogInput"
-                     v-model:value="formState.address"
-                     style="width: 635px"
-                     placeholder="请输入详细地址" />
-          </a-form-item>
-        </a-col>
-      </a-row>
-    </a-form>
-  </a-modal>
+    <!-- 新增仓库信息 -->
+    <a-modal
+        class="add-warehouse commonModal"
+        title="新增仓库信息"
+        v-model:visible="visible"
+        centered
+        :maskClosable="false"
+        @cancel="cancel"
+        width="890px"
+    >
+        <template #footer>
+            <a-button key="submit" type="primary" :loading="loading" @click="cancel">取消</a-button>
+            <a-button key="submit" type="primary" :loading="loading" @click="submit">完成</a-button>
+        </template>
+        <a-form class="inlineForm" ref="formRef" :model="formState" :rules="rules">
+            <a-row :gutter="24">
+                <a-col :span="12">
+                    <a-form-item label="仓库类型" name="warehousetype">
+                        <a-select
+                            class="typeSelect"
+                            style="width: 200px"
+                            v-model:value="formState.warehousetype"
+                            placeholder="请选择仓库类型"
+                        >
+                            <a-select-option
+                                v-for="item in warehouseType"
+                                :key="item.enumitemname"
+                                :value="item.enumitemname"
+                            >{{item.enumdicname}}</a-select-option>
+                        </a-select>
+                    </a-form-item>
+                </a-col>
+                <a-col :span="12">
+                    <a-form-item label="仓库名称" name="warehousename">
+                        <a-input
+                            class="dialogInput"
+                            style="width: 200px"
+                            v-model:value="formState.warehousename"
+                            placeholder="请输入仓库名称"
+                        />
+                    </a-form-item>
+                </a-col>
+            </a-row>
+            <a-row :gutter="24">
+                <a-col :span="12">
+                    <a-form-item label="仓库简称" name="warehousecode">
+                        <a-input
+                            class="dialogInput"
+                            style="width: 200px"
+                            v-model:value="formState.warehousecode"
+                            placeholder="请输入仓库简称"
+                        />
+                    </a-form-item>
+                </a-col>
+                <a-col :span="12">
+                    <a-form-item label="联系人" name="contactname">
+                        <a-input
+                            class="dialogInput"
+                            style="width: 200px"
+                            v-model:value="formState.contactname"
+                            placeholder="请输入联系人"
+                        />
+                    </a-form-item>
+                </a-col>
+            </a-row>
+            <a-row :gutter="24">
+                <a-col :span="24">
+                    <a-form-item label="联系电话" name="contactnum">
+                        <a-input
+                            class="dialogInput"
+                            style="width: 200px"
+                            v-model:value="formState.contactnum"
+                            placeholder="请输入联系电话"
+                        />
+                    </a-form-item>
+                </a-col>
+            </a-row>
+            <a-row :gutter="24">
+                <a-col :span="24">
+                    <a-form-item label="所在地区">
+                        <a-select
+                            class="inlineFormSelect"
+                            style="width: 205px"
+                            v-model:value="formState.provinceid"
+                            @change="getCityList"
+                            placeholder="请选择省"
+                        >
+                            <a-select-option
+                                v-for="item in provinceList"
+                                :key="item.autoid"
+                                :value="item.autoid"
+                            >{{item.divisionname}}</a-select-option>
+                        </a-select>
+                        <a-select
+                            class="inlineFormSelect ml9"
+                            style="width: 205px"
+                            v-model:value="formState.cityid"
+                            @change="getDistrictList"
+                            placeholder="请选择市"
+                        >
+                            <a-select-option
+                                v-for="item in cityList"
+                                :key="item.autoid"
+                                :value="item.autoid"
+                            >{{item.divisionname}}</a-select-option>
+                        </a-select>
+                        <a-select
+                            class="inlineFormSelect ml9"
+                            v-model:value="formState.districtid"
+                            style="width: 205px"
+                            placeholder="请选择县(区)"
+                        >
+                            <a-select-option
+                                v-for="item in districtList"
+                                :key="item.autoid"
+                                :value="item.autoid"
+                            >{{item.divisionname}}</a-select-option>
+                        </a-select>
+                    </a-form-item>
+                </a-col>
+            </a-row>
+            <a-row :gutter="24">
+                <a-col :span="24">
+                    <a-form-item label="详细地址" name="address">
+                        <a-input
+                            class="dialogInput"
+                            v-model:value="formState.address"
+                            style="width: 635px"
+                            placeholder="请输入详细地址"
+                        />
+                    </a-form-item>
+                </a-col>
+            </a-row>
+        </a-form>
+    </a-modal>
 </template>
 
 <script lang="ts">
@@ -217,8 +222,8 @@ export default defineComponent({
         color: @m-white0;
         .rounded-corners(3px);
         &:hover {
-            background: rgba(@m-blue0, 0);
-            color: rgba(@m-white0, 0.8);
+            background: @m-blue0-hover;
+            color: @m-white0-hover;
         }
     }
     .look {

+ 40 - 31
src/views/market/spot_trade/components/buy-sell-market/components/buy/index.vue

@@ -1,35 +1,41 @@
 <template>
-  <!-- 买大厅 -->
-  <a-table :columns="handleColumn(columns)"
-           :class="['buyHallTable', isBottom ? '' : 'buyHallTableHigh', tableList.length ? '' : 'noDataTable']"
-           :scroll="{ x: '100%', y: isBottom ? 'calc(100vh- 470px)' : 'calc(100vh - 180px)' }"
-           :pagination="false"
-           :loading="loading"
-           :expandedRowKeys="expandedRowKeys"
-           :customRow="Rowclick"
-           :expandIcon="expandIcon"
-           :expandIconAsCell="false"
-           rowKey="key"
-           :data-source="tableList">
-    <!-- ,  -->
-    <!-- 额外的展开行 -->
-    <template #expandedRowRender="{ record }">
-      <BtnList :btnList="btnList"
-               :record="record"
-               class="btn-list-sticky"
-               @click="openComponent" />
-    </template>
-    <template #username="{text, record }">
-      <span>{{record.userid}}{{text}}</span>
-    </template>
-  </a-table>
-  <component :is="componentId"
-             v-if="componentId"
-             :selectedRow="selectedRow"
-             :buyOrSell="BuyOrSell.buy"
-             :enumName="enumName"
-             :parantSelectedRow="parantSelectedRow"
-             @cancel="closeComponent"></component>
+    <!--  现货贸易 - 买卖大厅 - 卖报价牌 -->
+    <a-table
+        :columns="handleColumn(columns)"
+        :class="['buyHallTable', isBottom ? '' : 'buyHallTableHigh', tableList.length ? '' : 'noDataTable']"
+        :scroll="{ x: '100%', y: isBottom ? 'calc(100vh- 470px)' : 'calc(100vh - 180px)' }"
+        :pagination="false"
+        :loading="loading"
+        :expandedRowKeys="expandedRowKeys"
+        :customRow="Rowclick"
+        :expandIcon="expandIcon"
+        :expandIconAsCell="false"
+        rowKey="key"
+        :data-source="tableList"
+    >
+        <!-- ,  -->
+        <!-- 额外的展开行 -->
+        <template #expandedRowRender="{ record }">
+            <BtnList
+                :btnList="btnList"
+                :record="record"
+                class="btn-list-sticky"
+                @click="openComponent"
+            />
+        </template>
+        <template #username="{text, record }">
+            <span>{{record.userid + " "}}{{text}}</span>
+        </template>
+    </a-table>
+    <component
+        :is="componentId"
+        v-if="componentId"
+        :selectedRow="selectedRow"
+        :buyOrSell="BuyOrSell.buy"
+        :enumName="enumName"
+        :parantSelectedRow="parantSelectedRow"
+        @cancel="closeComponent"
+    ></component>
 </template>
 
 <script lang="ts">
@@ -127,5 +133,8 @@ export default defineComponent({
 </script>
 <style lang="less">
 .buy-sell-market {
+    .btnDeafault.ant-btn {
+        height: 30px;
+    }
 }
 </style>

+ 149 - 160
src/views/market/spot_trade/components/buy-sell-market/components/delisting/index.vue

@@ -1,160 +1,149 @@
 <template>
-    <!-- 仓单贸易&仓单预售 买/卖 摘牌 -->
-    <Drawer
-        :title="'摘牌'"
-        :placement="'right'"
-        :visible="visible"
-        width="486px"
-        height="479px"
-        @cancel="cancel"
-        class="top"
-    >
-        <div class="delisting">
-            <div class="formBar">
-                <a-form
-                    class="inlineForm dialogForm"
-                    ref="formRef"
-                    :model="formState"
-                    :rules="rules"
-                >
-                    <a-row :gutter="24">
-                        <a-col :span="24">
-                            <a-form-item label="交易账户" name="accountid">
-                                <a-select
-                                    class="inlineFormSelect"
-                                    style="width: 260px"
-                                    v-model:value="formState.accountid"
-                                    placeholder="请选择"
-                                >
-                                    <a-select-option
-                                        v-for="item in accountList"
-                                        :value="item.accountid"
-                                        :key="item.accountid"
-                                    >{{item.accountid}}</a-select-option>
-                                </a-select>
-                            </a-form-item>
-                        </a-col>
-                    </a-row>
-                    <a-row :gutter="24">
-                        <a-col :span="24">
-                            <a-form-item label="挂牌方">
-                                <span class="white ml8">{{selectedRow.username}}</span>
-                            </a-form-item>
-                        </a-col>
-                    </a-row>
-                    <a-row :gutter="24">
-                        <a-col :span="24">
-                            <a-form-item label="基差" v-if="isFloat()">
-                                <span class="yellow ml8">{{selectedRow.pricemove}}</span>
-                            </a-form-item>
-                            <a-form-item label="挂牌价格" v-if="!isFloat()">
-                                <span class="yellow ml8">{{selectedRow.fixedprice}}</span>
-                            </a-form-item>
-                            <a-row :gutter="24">
-                                <a-col :span="24"></a-col>
-                            </a-row>
-                            <a-form-item label="挂牌数量">
-                                <span
-                                    class="white ml8"
-                                >{{selectedRow.orderqty}}{{selectedRow.enumdicname}}</span>
-                            </a-form-item>
-                        </a-col>
-                    </a-row>
-                    <a-row :gutter="24" v-if="isBuy() && isWR()">
-                        <a-col :span="24">
-                            <a-form-item label="现货仓单" name="LadingBillId">
-                                <a-select
-                                    class="inlineFormSelect"
-                                    style="width: 260px"
-                                    v-model:value="formState.LadingBillId"
-                                    placeholder="请选择"
-                                >
-                                    <a-select-option
-                                        v-for="item in wrHoldList"
-                                        :value="item.id"
-                                        :key="item.id"
-                                    >{{item.name}}</a-select-option>
-                                </a-select>
-                            </a-form-item>
-                        </a-col>
-                    </a-row>
-                    <a-row :gutter="24">
-                        <a-col :span="24">
-                            <a-form-item label="摘牌数量" class="relative" name="num">
-                                <a-input-number
-                                    class="dialogInput yellowInput"
-                                    style="width: 260px"
-                                    :min="0"
-                                    :max="getMaxNum()"
-                                    v-model:value="formState.num"
-                                />
-                                <span class="input-enumdicname-absolute">{{selectedRow.enumdicname}}</span>
-                                <div
-                                    class="labelTip"
-                                >({{selectedRow.minivalue}}{{selectedRow.enumdicname}}起)</div>
-                            </a-form-item>
-                        </a-col>
-                    </a-row>
-                    <a-row :gutter="24">
-                        <a-col :span="24" class="mt-20">
-                            <a-form-item>
-                                <a-slider
-                                    ::min="0"
-                                    v-model:value="formState.num"
-                                    :max="selectedRow.orderqty"
-                                    class="formSlider"
-                                />
-                                <div class="unit">
-                                    <span>0</span>
-                                    <span>{{getMaxNum()}}{{selectedRow.enumdicname}}</span>
-                                </div>
-                            </a-form-item>
-                        </a-col>
-                        <a-col :span="12">&nbsp;</a-col>
-                    </a-row>
-                    <a-row :gutter="24">
-                        <a-col :span="24" class="mt-20">
-                            <a-form-item :label="isFloat() ? '估算金额' : '摘牌金额'">
-                                <span class="white ml8">{{getMoney()}}</span>
-                            </a-form-item>
-                        </a-col>
-                    </a-row>
-                    <a-row :gutter="24">
-                        <a-col :span="24" class="mt-20">
-                            <a-form-item :label="getMargin() ? '履约保证金' : ''">
-                                <a-row>
-                                    <a-col :span="8" v-if="getMargin()">
-                                        <span class="white ml8">{{getMargin()}}</span>
-                                    </a-col>
-                                    <a-col :span="4" class="tr">
-                                        <span class="grey1">可用资金</span>
-                                    </a-col>
-                                    <a-col :span="12">
-                                        <span
-                                            class="white ml8"
-                                        >{{getCanUseMoney(getSelectedAccount())}}</span>
-                                    </a-col>
-                                </a-row>
-                            </a-form-item>
-                        </a-col>
-                    </a-row>
-                    <a-row :gutter="24">
-                        <a-col :span="24">
-                            <a-form-item class="tc">
-                                <a-button
-                                    class="listedBtn"
-                                    :loading="loading"
-                                    :disabled="loading"
-                                    @click="submit"
-                                >{{isBuy() ? '卖出' : '买入'}}</a-button>
-                                <a-button class="ml10 cancelBtn" @click="cancel">取消</a-button>
-                            </a-form-item>
-                        </a-col>
-                    </a-row>
-                </a-form>
-            </div>
-        </div>
-    </Drawer>
+  <!-- 仓单贸易&仓单预售 买/卖 摘牌 -->
+  <Drawer :title="'摘牌'"
+          :placement="'right'"
+          :visible="visible"
+          width="486px"
+          height="479px"
+          @cancel="cancel"
+          class="top">
+    <div class="delisting">
+      <div class="formBar">
+        <a-form class="inlineForm dialogForm"
+                ref="formRef"
+                :model="formState"
+                :rules="rules">
+          <a-row :gutter="24">
+            <a-col :span="24">
+              <a-form-item label="交易账户"
+                           name="accountid">
+                <a-select class="inlineFormSelect"
+                          style="width: 260px"
+                          v-model:value="formState.accountid"
+                          placeholder="请选择">
+                  <a-select-option v-for="item in accountList"
+                                   :value="item.accountid"
+                                   :key="item.accountid">{{item.accountid}}</a-select-option>
+                </a-select>
+              </a-form-item>
+            </a-col>
+          </a-row>
+          <a-row :gutter="24">
+            <a-col :span="24">
+              <a-form-item label="挂牌方">
+                <span class="white ml8">{{selectedRow.username}}</span>
+              </a-form-item>
+            </a-col>
+          </a-row>
+          <a-row :gutter="24">
+            <a-col :span="24">
+              <a-form-item label="基差"
+                           v-if="isFloat()">
+                <span class="yellow ml8">{{selectedRow.pricemove}}</span>
+              </a-form-item>
+              <a-form-item label="挂牌价格"
+                           v-if="!isFloat()">
+                <span class="yellow ml8">{{selectedRow.fixedprice}}</span>
+              </a-form-item>
+              <a-row :gutter="24">
+                <a-col :span="24"></a-col>
+              </a-row>
+              <a-form-item label="挂牌数量">
+                <span class="white ml8">{{selectedRow.orderqty}}{{selectedRow.enumdicname}}</span>
+              </a-form-item>
+            </a-col>
+          </a-row>
+          <a-row :gutter="24"
+                 v-if="isBuy() && isWR()">
+            <a-col :span="24">
+              <a-form-item label="现货仓单"
+                           name="LadingBillId">
+                <a-select class="inlineFormSelect"
+                          style="width: 260px"
+                          v-model:value="formState.LadingBillId"
+                          placeholder="请选择">
+                  <a-select-option v-for="item in wrHoldList"
+                                   :value="item.id"
+                                   :key="item.id">{{item.name}}</a-select-option>
+                </a-select>
+              </a-form-item>
+            </a-col>
+          </a-row>
+          <a-row :gutter="24">
+            <a-col :span="24">
+              <a-form-item label="摘牌数量"
+                           class="relative"
+                           name="num">
+                <a-input-number class="dialogInput yellowInput"
+                                style="width: 260px"
+                                :min="0"
+                                :max="getMaxNum()"
+                                v-model:value="formState.num" />
+                <span class="input-enumdicname-absolute">{{selectedRow.enumdicname}}</span>
+                <div class="labelTip">({{selectedRow.minivalue}}{{selectedRow.enumdicname}}起)</div>
+              </a-form-item>
+            </a-col>
+          </a-row>
+          <a-row :gutter="24">
+            <a-col :span="24"
+                   class="mt-20">
+              <a-form-item>
+                <a-slider ::min="0"
+                          v-model:value="formState.num"
+                          :max="selectedRow.orderqty"
+                          class="formSlider" />
+                <div class="unit">
+                  <span>0</span>
+                  <span>{{getMaxNum()}}{{selectedRow.enumdicname}}</span>
+                </div>
+              </a-form-item>
+            </a-col>
+            <a-col :span="12">&nbsp;</a-col>
+          </a-row>
+          <a-row :gutter="24">
+            <a-col :span="24"
+                   class="mt-20">
+              <a-form-item :label="isFloat() ? '估算金额' : '摘牌金额'">
+                <span class="white ml8">{{getMoney()}}</span>
+              </a-form-item>
+            </a-col>
+          </a-row>
+          <a-row :gutter="24">
+            <a-col :span="24"
+                   class="mt-20">
+              <a-form-item :label="getMargin() ? '履约保证金' : ''">
+                <a-row>
+                  <a-col :span="8"
+                         v-if="getMargin()">
+                    <span class="white ml8">{{getMargin()}}</span>
+                  </a-col>
+                  <a-col :span="4"
+                         class="tr">
+                    <span class="grey1">可用资金</span>
+                  </a-col>
+                  <a-col :span="12">
+                    <span class="white ml8">{{getCanUseMoney(getSelectedAccount())}}</span>
+                  </a-col>
+                </a-row>
+              </a-form-item>
+            </a-col>
+          </a-row>
+          <a-row :gutter="24">
+            <a-col :span="24">
+              <a-form-item class="tc">
+                <a-button class="listedBtn"
+                          :loading="loading"
+                          :disabled="loading"
+                          @click="submit">{{isBuy() ? '卖出' : '买入'}}</a-button>
+                <a-button class="ml10 cancelBtn"
+                          @click="cancel">取消</a-button>
+              </a-form-item>
+            </a-col>
+          </a-row>
+        </a-form>
+      </div>
+    </div>
+  </Drawer>
 </template>
 
 <script lang="ts">
@@ -173,7 +162,7 @@ import { _closeModal } from '@/common/setup/modal/modal';
 import { handleForm, handleNumAndMoney, handleSpotWarrant, getWrPosition } from './setup';
 import { handleIs } from '../../setup';
 import { validateAction } from '@/common/setup/form';
-import { ListingForm } from './interface';
+import { ListingForm, TempWrOrderQuoteDetail } from './interface';
 import { BuyOrSell } from '@/common/constants/enumCommon';
 import { EnumRouterName } from '@/common/constants/enumRouterName';
 import { getCanUseMoney } from '@/services/bus/account';
@@ -187,7 +176,7 @@ export default defineComponent({
             type: String as PropType<EnumRouterName>,
         },
         selectedRow: {
-            type: Object as PropType<WrOrderQuoteDetail>,
+            type: Object as PropType<TempWrOrderQuoteDetail>,
             default: {},
         },
         parantSelectedRow: {
@@ -306,8 +295,8 @@ export default defineComponent({
             font-size: 14px;
             color: @m-blue0;
             &:hover {
-                background: rgba(@m-black7, 0.8);
-                color: rgba(@m-blue0, 0.8);
+                background: @m-black7-hover;
+                color: @m-blue0-hover;
             }
         }
         .conditionBtn + .conditionBtn {

+ 6 - 0
src/views/market/spot_trade/components/buy-sell-market/components/delisting/interface.ts

@@ -1,3 +1,5 @@
+import { WrOrderQuoteDetail } from "@/services/go/wrtrade/interface";
+
 export interface ListingForm {
     accountid: undefined | number,
     num: number,
@@ -7,4 +9,8 @@ export interface ListingForm {
 export interface Wrhold {
     id: string,
     name: string,
+}
+
+export interface TempWrOrderQuoteDetail extends WrOrderQuoteDetail {
+    wrResult: { dgfactoryitemtypeid: number; dgfactoryitemid: number }[]
 }

+ 6 - 9
src/views/market/spot_trade/components/buy-sell-market/components/delisting/setup.ts

@@ -70,14 +70,14 @@ export function handleNumAndMoney(enumName: EnumRouterName, buyOrSell: BuyOrSell
     const rules = getRules()
     // 是否有规则
     const hasRule = () => rules.length > 0;
+    const { buymarginvalue, buymarginalgorithm } = rules[0]
     //保证金模式 1: 比率 2: 固定
-    const marginMethod = (buymarginalgorithm: number) => buymarginalgorithm === 1
+    const marginMethod = () => buymarginalgorithm === 1
     const { fixedprice, orderqty, pricemove } = selectedRow;
     // 获取摘牌最大可摘量
     function getMaxNum() {
         let result = 0;
         if (hasRule()) {
-            const { buymarginvalue, buymarginalgorithm } = rules[0]
             // 可用资金
             const canUseMoney = Number(getCanUseMoney(getSelectedAccount() as AccountListItem))
             if (!isBuy()) {
@@ -88,13 +88,13 @@ export function handleNumAndMoney(enumName: EnumRouterName, buyOrSell: BuyOrSell
                         // 估算总价
                         const predictTotal = pricemove + (goodsPrice.value as number);
                         // 买方履约保证金比例*估算总价
-                        const marginMoney = marginMethod(buymarginalgorithm) ? (buymarginvalue * predictTotal) : (buymarginvalue + predictTotal)
+                        const marginMoney = marginMethod() ? (buymarginvalue * predictTotal) : (buymarginvalue + predictTotal)
                         // 浮动价 摘买 最大数量=min{可用资金/(买方履约保证金比例*估算总价),挂牌数量}
                         result = Math.min(orderqty, canUseMoney / marginMoney)
                     }
                 } else {
                     // 买方履约保证金比例*挂牌价格
-                    const marginMoney = marginMethod(buymarginalgorithm) ? (buymarginvalue * fixedprice) : (buymarginvalue + fixedprice)
+                    const marginMoney = marginMethod() ? (buymarginvalue * fixedprice) : (buymarginvalue + fixedprice)
                     //  一口价 摘买 最大数量=min{挂牌数量,可用资金/(买方履约保证金比例*挂牌价格)
                     result = Math.min(orderqty, canUseMoney / marginMoney)
                 }
@@ -145,11 +145,8 @@ export function handleNumAndMoney(enumName: EnumRouterName, buyOrSell: BuyOrSell
         let result = 0
         if (hasRule()) {
             const { buymarginvalue, sellmarginvalue } = rules[0]
-            if (isBuy()) {
-                result = sellmarginvalue * getMoney()
-            } else {
-                result = buymarginvalue * getMoney()
-            }
+            const margin = isBuy() ? sellmarginvalue : buymarginvalue
+            result = marginMethod() ? margin * getMoney() : margin + getMoney()
         }
         return Number(result.toFixed(2))
     }

+ 2 - 2
src/views/market/spot_trade/components/buy-sell-market/components/financing_delisting/index.vue

@@ -341,8 +341,8 @@ export default defineComponent({
             font-size: 14px;
             color: @m-blue0;
             &:hover {
-                background: rgba(@m-black7, 0.8);
-                color: rgba(@m-blue0, 0.8);
+                background: @m-black7-hover;
+                color: @m-blue0-hover;
             }
         }
         .conditionBtn + .conditionBtn {

+ 5 - 5
src/views/market/spot_trade/components/buy-sell-market/components/financing_delisting/setup.ts

@@ -93,13 +93,13 @@ export function handleNumAndMoney(enumName: EnumRouterName, buyOrSell: BuyOrSell
     // 是否有规则
     const hasRule = () => rules.length > 0;
     //保证金模式 1: 比率 2: 固定
-    const marginMethod = (buymarginalgorithm: number) => buymarginalgorithm === 1
+    const { buymarginvalue, buymarginalgorithm } = rules[0]
+    const marginMethod = () => buymarginalgorithm === 1
     const { fixedprice, orderqty, pricemove } = selectedRow;
     // 获取摘牌最大可摘量
     function getMaxNum() {
         let result = 0;
         if (hasRule()) {
-            const { buymarginvalue, buymarginalgorithm } = rules[0]
             // 可用资金
             const canUseMoney = Number(getCanUseMoney(getSelectedAccount() as AccountListItem))
             if (!isBuy()) {
@@ -110,13 +110,13 @@ export function handleNumAndMoney(enumName: EnumRouterName, buyOrSell: BuyOrSell
                         // 估算总价
                         const predictTotal = pricemove + (goodsPrice.value as number);
                         // 买方履约保证金比例*估算总价
-                        const marginMoney = marginMethod(buymarginalgorithm) ? (buymarginvalue * predictTotal) : (buymarginvalue + predictTotal)
+                        const marginMoney = marginMethod() ? (buymarginvalue * predictTotal) : (buymarginvalue + predictTotal)
                         // 浮动价 摘买 最大数量=min{可用资金/(买方履约保证金比例*估算总价),挂牌数量}
                         result = Math.min(orderqty, canUseMoney / marginMoney)
                     }
                 } else {
                     // 买方履约保证金比例*挂牌价格
-                    const marginMoney = marginMethod(buymarginalgorithm) ? (buymarginvalue * fixedprice) : (buymarginvalue + fixedprice)
+                    const marginMoney = marginMethod() ? (buymarginvalue * fixedprice) : (buymarginvalue + fixedprice)
                     //  一口价 摘买 最大数量=min{挂牌数量,可用资金/(买方履约保证金比例*挂牌价格)
                     result = Math.min(orderqty, canUseMoney / marginMoney)
                 }
@@ -167,7 +167,7 @@ export function handleNumAndMoney(enumName: EnumRouterName, buyOrSell: BuyOrSell
         let result = 0
         if (hasRule()) {
             if (selecedFinance.value) {
-                result = selecedFinance.value.marginratio * getMoney()
+                result = marginMethod() ? selecedFinance.value.marginratio * getMoney() : selecedFinance.value.marginratio * getMoney()
             }
         }
         return Number(result.toFixed(2))

+ 34 - 29
src/views/market/spot_trade/components/buy-sell-market/components/sell/index.vue

@@ -1,33 +1,35 @@
 <template>
-  <!-- 卖大厅 -->
-  <a-table :columns="handleColumn(columns)"
-           :class="['sellHallTable', isBottom ? '' : 'sellHallTableHigh', tableList.length ? '' : 'noDataTable']"
-           :scroll="{ x: '100%', y: isBottom ? 'calc(100vh- 470px)' : 'calc(100vh - 180px)' }"
-           :pagination="false"
-           :loading="loading"
-           :expandedRowKeys="expandedRowKeys"
-           :customRow="Rowclick"
-           :expandIcon="expandIcon"
-           :expandIconAsCell="false"
-           rowKey="key"
-           :data-source="tableList">
-    <!-- 额外的展开行 -->
-    <template #expandedRowRender="{ record }">
-      <BtnList :btnList="btnList"
-               :record="record"
-               @click="openComponent" />
-    </template>
-    <template #username="{text, record }">
-      <span>{{record.userid}}{{text}}</span>
-    </template>
-  </a-table>
-  <component :is="componentId"
-             v-if="componentId"
-             :selectedRow="selectedRow"
-             :enumName="enumName"
-             :buyOrSell="BuyOrSell.sell"
-             :parantSelectedRow="parantSelectedRow"
-             @cancel="closeComponent"></component>
+    <!-- 现货贸易 - 买卖大厅 - 买报价牌 -->
+    <a-table
+        :columns="handleColumn(columns)"
+        :class="['sellHallTable', isBottom ? '' : 'sellHallTableHigh', tableList.length ? '' : 'noDataTable']"
+        :scroll="{ x: '100%', y: isBottom ? 'calc(100vh- 470px)' : 'calc(100vh - 180px)' }"
+        :pagination="false"
+        :loading="loading"
+        :expandedRowKeys="expandedRowKeys"
+        :customRow="Rowclick"
+        :expandIcon="expandIcon"
+        :expandIconAsCell="false"
+        rowKey="key"
+        :data-source="tableList"
+    >
+        <!-- 额外的展开行 -->
+        <template #expandedRowRender="{ record }">
+            <BtnList :btnList="btnList" :record="record" @click="openComponent" />
+        </template>
+        <template #username="{text, record }">
+            <span>{{record.userid + " " }}{{text}}</span>
+        </template>
+    </a-table>
+    <component
+        :is="componentId"
+        v-if="componentId"
+        :selectedRow="selectedRow"
+        :enumName="enumName"
+        :buyOrSell="BuyOrSell.sell"
+        :parantSelectedRow="parantSelectedRow"
+        @cancel="closeComponent"
+    ></component>
 </template>
 
 <script lang="ts">
@@ -128,5 +130,8 @@ export default defineComponent({
 </script>
 <style lang="less">
 .buy-sell-market {
+    .btnDeafault.ant-btn {
+        height: 30px;
+    }
 }
 </style>

+ 1 - 10
src/views/market/spot_trade/components/buy-sell-market/index.vue

@@ -227,14 +227,5 @@ export default defineComponent({
 });
 </script>
 <style lang="less">
-// .buy-sell-market {
-//     .ant-row.buySellHall {
-//         .ant-col:first-child {
-//             background: rgba(@m-green0, 0.1);
-//         }
-//         .ant-col:last-child {
-//             background: rgba(@m-red1, 0.1);
-//         }
-//     }
-// }
+
 </style>

+ 36 - 28
src/views/market/spot_trade/components/detail/index.vue

@@ -1,27 +1,35 @@
 <template>
-    <!-- 买卖大厅详情 -->
-    <Drawer :title="'详情'" :placement="'right'" :visible="visible" class="top" @cancel="cancel">
-        <div class="detailCont">
-            <div class="rows">
-                <div class="row" v-for="item in lstitem" :key="item.name">
-                    <div class="left">{{item.name}}</div>
-                    <div class="right">{{item.value}}</div>
-                </div>
-            </div>
-            <div class="ruleTitle">履约规则:</div>
-            <div class="rulesCont">
-                <a-row>
-                    <a-col :span="12" v-for="item in lststep" :key="item.autoid">
-                        <div class="line">
-                            <div class="no">{{item.autoid}}</div>
-                            <div class="name">{{item.steptypename}}</div>
-                            <div class="time">T+{{item.stepvalue}}</div>
-                        </div>
-                    </a-col>
-                </a-row>
-            </div>
+  <!-- 买卖大厅详情 -->
+  <Drawer :title="'详情'"
+          :placement="'right'"
+          :visible="visible"
+          class="top"
+          @cancel="cancel">
+    <div class="detailCont">
+      <div class="rows">
+        <div class="row"
+             v-for="item in lstitem"
+             :key="item.name">
+          <div class="left">{{item.name}}</div>
+          <div class="right">{{item.value}}</div>
         </div>
-    </Drawer>
+      </div>
+      <div class="ruleTitle">履约规则:</div>
+      <div class="rulesCont">
+        <a-row>
+          <a-col :span="24"
+                 v-for="(item, index) in lststep"
+                 :key="item.autoid">
+            <div class="line">
+              <div class="no">{{index + 1}}</div>
+              <div class="name">{{item.steptypename}}</div>
+              <div class="time">{{item.stepdate}}</div>
+            </div>
+          </a-col>
+        </a-row>
+      </div>
+    </div>
+  </Drawer>
 </template>
 
 <script lang="ts">
@@ -163,11 +171,11 @@ export default defineComponent({
             margin-right: 8px;
         }
     }
-    .ant-col:nth-child(even) {
-        padding-left: 10px !important;
-    }
-    .ant-col:nth-child(odd) {
-        padding-right: 10px !important;
-    }
+    // .ant-col:nth-child(even) {
+    //     padding-left: 10px !important;
+    // }
+    // .ant-col:nth-child(odd) {
+    //     padding-right: 10px !important;
+    // }
 }
 </style>

+ 64 - 40
src/views/market/spot_trade/components/filter/index.vue

@@ -1,52 +1,56 @@
 <template>
-  <!-- 报表通用过滤 -->
-  <div class="filterTable">
-    <div class="filter-custom-table">
-      <a-tree-select v-model:value="selectedFT"
-                     @change="changeFT"
-                     style="width: 200px"
-                     :dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
-                     :tree-data="FtDeliveryGoods"
-                     placeholder="全部商品"
-                     :showCheckedStrategy="ALL"
-                     tree-default-expand-all>
-      </a-tree-select>
-      <a-select label-in-value
+    <!-- 报表通用过滤 -->
+    <div class="filterTable">
+        <div class="filter-custom-table">
+            <a-tree-select
+                v-model:value="selectedFT"
+                @change="changeFT"
+                style="width: 200px"
+                :dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
+                :tree-data="FtDeliveryGoods"
+                placeholder="全部商品"
+                :showCheckedStrategy="ALL"
+                tree-default-expand-all
+            ></a-tree-select>
+            <a-select
+                label-in-value
                 class="conditionSelect"
                 v-for="(item, index) in wrLsit"
                 :key="index + '11'"
                 style="width: 120px"
                 v-model:value="item.selected"
-                :placeholder="`全部${item.itemtypename}`">
-        <a-select-option v-for="sub in item.itemlst"
-                         :key="sub.dgfactoryitemid">
-          {{sub.dgfactoryitemvalue}}
-        </a-select-option>
-      </a-select>
-      <a-space direction="vertical"
-               v-if="!isWR()">
-        <a-month-picker :allowClear="false"
-                        placeholder="全部交收月"
-                        v-model:value="time"
-                        class="commonDatePicker conditionPicker" />
-      </a-space>
-      <a-select class="conditionSelect"
+                :placeholder="`全部${item.itemtypename}`"
+            >
+                <a-select-option
+                    v-for="sub in item.itemlst"
+                    :key="sub.dgfactoryitemid"
+                >{{sub.dgfactoryitemvalue}}</a-select-option>
+            </a-select>
+            <a-space direction="vertical" v-if="!isWR()">
+                <a-month-picker
+                    :allowClear="false"
+                    placeholder="全部交收月"
+                    v-model:value="time"
+                    class="commonDatePicker conditionPicker allDatePicker"
+                />
+            </a-space>
+            <a-select
+                class="conditionSelect"
                 v-if="isFloat()"
                 :style="{width: '180px', maxHeight: '400px', overflow: 'auto' }"
                 @change="goodsChange"
-                placeholder="全部期货合约">
-        <a-select-option v-for="item in goodsList"
-                         :value="item.goodsid"
-                         :key="item.goodsid">{{item.goodscode}}({{item.goodsname}})
-        </a-select-option>
-      </a-select>
-      <a-button class="selectBtn"
-                @click="search(true)">筛选</a-button>
-      <a-button class="selectBtn"
-                @click="listingAction">挂牌求购
-      </a-button>
+                placeholder="全部期货合约"
+            >
+                <a-select-option
+                    v-for="item in goodsList"
+                    :value="item.goodsid"
+                    :key="item.goodsid"
+                >{{item.goodscode}}({{item.goodsname}})</a-select-option>
+            </a-select>
+            <a-button class="selectBtn" @click="search(true)">筛选</a-button>
+            <a-button class="selectBtn" @click="listingAction">挂牌求购</a-button>
+        </div>
     </div>
-  </div>
 </template>
 
 <script lang="ts">
@@ -137,8 +141,9 @@ export default defineComponent({
                     });
                 });
             }
+            const wrResult: { dgfactoryitemtypeid: number; dgfactoryitemid: number }[] = [];
             wrLsit.value.forEach((el) => {
-                const { selected, itemtypename } = el;
+                const { selected, itemtypename, dgfactoryitemtypeid } = el;
                 if (selected) {
                     const { key } = selected;
                     if (itemtypename === '仓库') {
@@ -148,6 +153,7 @@ export default defineComponent({
                         const name = el.itemlst.find((e) => e.dgfactoryitemid === key)!.dgfactoryitemvalue;
                         result.dgitemname = result.dgitemname ? `${result.dgitemname},${name}` : name;
                     }
+                    wrResult.push({ dgfactoryitemtypeid, dgfactoryitemid: key });
                 }
             });
             if (!isWR()) {
@@ -160,6 +166,7 @@ export default defineComponent({
             if (isQuery) {
                 context.emit('search', result);
             }
+            result.wrResult = wrResult;
             return result;
         }
         function listingAction() {
@@ -214,5 +221,22 @@ export default defineComponent({
 </script>
 
 <style lang="less">
+.allDatePicker.ant-calendar-picker {
+    cursor: pointer;
+    min-width: 120px;
+    height: 30px;
+    padding: 0 8px;
+    background: @m-grey9;
+    border: none;
+    border-radius: 3px 3px 3px 3px;
+    color: @m-grey10;
+    .ant-input {
+        width: 104px;
+        &::placeholder {
+            color: @m-grey10;
+            font-size: 14px;
+        }
+    }
+}
 </style>;
 

+ 23 - 11
src/views/market/spot_trade/components/post_buying/index.vue

@@ -48,7 +48,7 @@
                    v-if="isFloat()">
               <a-form-item label="估算价"
                            name="PriceMove">
-                <span>估算价估算价</span>
+                <span class="white">{{getPrice()}}</span>
               </a-form-item>
             </a-col>
 
@@ -76,12 +76,12 @@
             <a-col :span="24"
                    class="mt-10">
               <a-form-item>
-                <a-slider ::min="0"
+                <a-slider :min="0"
                           v-model:value="formState.OrderQty"
-                          :max="99999999"
+                          :max="getMaxNum()"
                           class="formSlider" />
                 <div class="unit">
-                  <span>{{selectedRow.minivalue}}</span>
+                  <span>{{getMaxNum() ? selectedRow.minivalue : 0}}</span>
                   <span>{{getMaxNum()}}{{selectedRow.enumdicname}}</span>
                 </div>
               </a-form-item>
@@ -98,7 +98,7 @@
             </a-col>
             <a-col :span="24"
                    class="relative mt20">
-              <a-form-item :label="isFloat() ? '估算金额' : '牌金额'">
+              <a-form-item :label="isFloat() ? '估算金额' : '牌金额'">
                 <span class="white ml8">{{getMoney()}}</span>
               </a-form-item>
             </a-col>
@@ -149,7 +149,7 @@ import Drawer from '@/common/components/drawer/index.vue';
 import { PlusOutlined, MinusOutlined } from '@ant-design/icons-vue';
 import { hdWROrder } from '@/services/proto/warehousetrade';
 import { requestResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
-import { WRGoodsInfo } from '@/services/proto/warehousetrade/interface';
+import { DGFactoryItems, WRGoodsInfo } from '@/services/proto/warehousetrade/interface';
 import { getAccountTypeList, getUserId } from '@/services/bus/account';
 import { v4 as uuidv4 } from 'uuid';
 import moment, { Moment } from 'moment';
@@ -157,7 +157,7 @@ import { getMarketRunByTradeMode } from '@/services/bus/market';
 import { WrOrderQuote } from '@/services/go/wrtrade/interface';
 import { handleForm, handleNumAndPrice } from './setup';
 import { validateAction } from '@/common/setup/form';
-import { FormParam } from './interface';
+import { FormParam, TempWrOrderQuoteDetail } from './interface';
 import { EnumRouterName } from '@/common/constants/enumRouterName';
 import { handleIs } from '../buy-sell-market/setup';
 import { BuyOrSell } from '@/common/constants/enumCommon';
@@ -169,7 +169,7 @@ export default defineComponent({
     components: { Des, Drawer, PlusOutlined, MinusOutlined },
     props: {
         selectedRow: {
-            type: Object as PropType<WrOrderQuote>,
+            type: Object as PropType<TempWrOrderQuoteDetail>,
             default: {},
         },
         enumName: {
@@ -195,11 +195,14 @@ export default defineComponent({
         }
         formState.DeliveryMonth = props.selectedRow.deliverymonth ? moment(props.selectedRow.deliverymonth) : props.time;
 
-        const { getMaxNum, getMoney, getMargin } = handleNumAndPrice(props.enumName, props.selectedRow);
+        const { getMaxNum, getMoney, getMargin, getPrice } = handleNumAndPrice(props.enumName, props.selectedRow);
         function submit() {
             const marketInfo = getMarketRunByTradeMode(17);
             if (marketInfo) {
                 validateAction<FormParam>(formRef, formState).then((res) => {
+                    // 现在增加一种挂牌求购的情况
+                    // 这种求购模式会生成一种仓单贸易商品
+
                     const wrGoodsInfo: WRGoodsInfo = {
                         GoodsID: props.selectedRow.goodsid, // uint32 配置商品ID
                         GoodsCode: props.selectedRow.goodscode, // string 配置商品代码
@@ -248,7 +251,15 @@ export default defineComponent({
                         WRStandardID: props.selectedRow.wrstandardid,
                         HasWr: isWR(), // 无仓单挂牌  是否有无仓单
                         DeliveryMonth: isWR() ? '' : moment(res.DeliveryMonth).format('YYYY-MM'),
+                        FactoryItems: props.selectedRow.wrResult.flatMap((it) => {
+                            return {
+                                DGFactoryItemTypeID: it.dgfactoryitemtypeid, // uint64 要素项类型ID
+                                DGFactoryItemID: it.dgfactoryitemid, // uint64 预约要素项类型值
+                                ItemTypeMode: 1, // uint32 要素项类型模式
+                            };
+                        }), // DGFactoryItems 要素类型明细集合(没有仓单要素ID填写)
                     };
+                    debugger;
                     requestResultLoadingAndInfo(hdWROrder, param, loading, ['求购成功', '求购失败:']).then(() => {
                         cancel(true);
                     });
@@ -270,6 +281,7 @@ export default defineComponent({
             getMargin,
             getSelectedAccount,
             getCanUseMoney,
+            getPrice,
         };
     },
 });
@@ -300,8 +312,8 @@ export default defineComponent({
             font-size: 14px;
             color: @m-blue0;
             &:hover {
-                background: rgba(@m-black7, 0.8);
-                color: rgba(@m-blue0, 0.8);
+                background: @m-black7-hover;
+                color: @m-blue0-hover;
             }
         }
         .conditionBtn + .conditionBtn {

+ 6 - 0
src/views/market/spot_trade/components/post_buying/interface.ts

@@ -1,4 +1,5 @@
 import { Moment } from "moment";
+import {WrOrderQuote, WrOrderQuoteDetail} from "@/services/go/wrtrade/interface";
 
 export interface FormParam {
     accountid: undefined | number,
@@ -7,3 +8,8 @@ export interface FormParam {
     PriceMove: number,
     DeliveryMonth: Moment,
 }
+
+
+export interface TempWrOrderQuoteDetail extends WrOrderQuote {
+    wrResult: { dgfactoryitemtypeid: number; dgfactoryitemid: number }[]
+}

+ 28 - 4
src/views/market/spot_trade/components/post_buying/setup.ts

@@ -36,13 +36,28 @@ export function handleNumAndPrice(enumName: EnumRouterName, selectedRow: WrOrder
     const getSelectedAccount = () => accountList.find((e) => e.accountid === formState.accountid);
     // 交易规则
     const rules = getRules()
+    const { buymarginvalue, buymarginalgorithm } = rules[0]
+    //保证金模式 1: 比率 2: 固定
+    const marginMethod = () => buymarginalgorithm === 1
     // 挂牌最大数量
     function getMaxNum() {
         // 可用资金
         const canUseMoney = Number(getCanUseMoney(getSelectedAccount() as AccountListItem))
+        const { buymarginvalue } = rules[0]
         // 挂牌最大数量=可用资金/(买方履约保证金比例*挂牌价格)
-        const margin = getMargin()
-        return margin ? Math.floor(canUseMoney / getMargin()) : selectedRow.minivalue
+        let result = 0
+        if (isFloat()) {
+            const price = getPrice()
+            if (price !== '--') {
+                result = canUseMoney / (Number(price) * buymarginvalue)
+            }
+        } else {
+            const margin = marginMethod() ? (buymarginvalue * formState.FixedPrice) : (buymarginvalue + formState.FixedPrice)
+            if (margin) {
+                result = Math.floor(canUseMoney / margin)
+            }
+        }
+        return +result.toFixed(0)
     }
     //  摘牌金额
     function getMoney() {
@@ -66,7 +81,16 @@ export function handleNumAndPrice(enumName: EnumRouterName, selectedRow: WrOrder
         const { buymarginvalue } = rules[0]
         // 浮动价 履约保证金=估算总额*买方履约保证金比例
         // 一口价 履约保证金=挂牌金额*买方履约保证金比例
-        return Number((getMoney() * buymarginvalue).toFixed(2))
+        const margin = marginMethod() ? (buymarginvalue * getMoney()) : (buymarginvalue + getMoney())
+        return Number((margin).toFixed(2))
+    }
+    function getPrice() {
+        let result = '--'
+        const goodsPrice = getGoodsPrice()
+        if (goodsPrice.value && goodsPrice.value !== '--') {   // 有实时行情价格
+            result = ((goodsPrice.value as number) + formState.PriceMove).toFixed(2)
+        }
+        return result
     }
-    return { getMaxNum, getMoney, getMargin }
+    return { getMaxNum, getMoney, getMargin, getPrice }
 }

+ 28 - 0
src/views/market/spot_trade/spot_trade_order_transaction/index.vue

@@ -0,0 +1,28 @@
+<template>
+  <!-- 订单交易 -->
+  <div class="topTableHeight40">
+    <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.spot_trade_order_transaction,
+    components: {
+        ThridMenu,
+    },
+    setup() {
+        return { ...handleMartketThirdRouter(EnumRouterName.spot_trade_order_transaction) };
+    },
+});
+</script>
+<style lang="less">
+</style>

+ 112 - 0
src/views/market/spot_trade/spot_trade_order_transaction/spot_trade_order_transaction_basis_difference/index.vue

@@ -0,0 +1,112 @@
+<template>
+  <!-- 仓单贸易 一口价挂牌-->
+  <div class="topTableHeight">
+    <a-table :columns="columns"
+             class="srcollYTable"
+             :scroll="{ x: '100%', y: 'calc(100vh - 479px)' }"
+             :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"
+               :enumName="name"
+               :selectedRow="selectedRow"
+               @cancel="closeComponent"></component>
+  </div>
+</template>
+
+<script lang="ts">
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+import { queryTableList, BtnList, contextMenu, defineAsyncComponent, defineComponent, ModalEnum, ComposeTableParam } from '@/common/export/commonTable';
+import { QueryOrderQuoteReq, WrOrderQuote } from '@/services/go/wrtrade/interface';
+import { queryOrderQuote } from '@/services/go/wrtrade';
+import { handleComposeTable } from '@/views/market/spot_trade/setup';
+import Bus from '@/utils/eventBus/index';
+import Filter from '../../components/filter/index.vue';
+
+export default defineComponent({
+    name: EnumRouterName.spot_trade_order_transaction_basis_difference,
+    components: {
+        contextMenu,
+        // [ModalEnum.spot_trade_warehouse_detail]: defineAsyncComponent(() => import('../../components/detail/index.vue')),
+        // [ModalEnum.spot_trade_warehouse_post_buying]: defineAsyncComponent(() => import('../../components/post_buying/index.vue')),
+        // buyAndSell: defineAsyncComponent(() => import('../../components/buy-sell-market/index.vue')),
+        // postBuying: defineAsyncComponent(() => import('../../components/post_buying/index.vue')),
+    },
+    setup() {
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList<WrOrderQuote>();
+        // 获取列表数据
+        const queryTableAction = () => {
+            const param: QueryOrderQuoteReq = {
+                wrpricetype: 1,
+                haswr: 1,
+            };
+            queryTable(queryOrderQuote, param);
+        };
+        // 表格通用逻辑
+        const param: ComposeTableParam = {
+            queryFn: queryTableAction,
+            menuType: EnumRouterName.warehouse_receipt_trade_price,
+            tableName: 'table_pcweb_financing_manage_order_transaction',
+            tableFilterKey: [],
+            isDetail: false,
+        };
+        const {
+            contextMenu,
+            openContext,
+            closeContext, // 右键
+            columns,
+            registerColumn,
+            updateColumn, // 表头
+            expandedRowKeys,
+            selectedRow,
+            Rowclick, // 表格折腾面板数据与单击、双击事件
+            componentId,
+            closeComponent, // 控制异步组件
+            firstBtn, // 表格按钮
+        } = handleComposeTable<WrOrderQuote>(param);
+        function search(value: Object) {
+            const param: QueryOrderQuoteReq = {
+                wrpricetype: 1,
+                haswr: 1,
+            };
+            Object.assign(param, value);
+            queryTable(queryOrderQuote, param);
+        }
+        function buyOpen(value: any, goods: any) {
+            componentId.value = 'postBuying';
+            selectedRow.value = value;
+        }
+
+        return {
+            contextMenu,
+            openContext,
+            closeContext, // 右键
+            columns,
+            registerColumn,
+            updateColumn, // 表头
+            expandedRowKeys,
+            selectedRow,
+            Rowclick, // 表格折腾面板数据与单击、双击事件
+            componentId,
+            closeComponent, // 控制异步组件
+            firstBtn, // 表格按钮
+            name: EnumRouterName.warehouse_receipt_trade_price,
+            loading,
+            tableList,
+            search,
+            buyOpen,
+        };
+    },
+});
+</script>
+<style lang="less">
+</style>

+ 71 - 0
src/views/market/spot_trade/spot_trade_order_transaction/spot_trade_order_transaction_listing_transfer/index.vue

@@ -0,0 +1,71 @@
+<template>
+  <!-- 仓单贸易 一口价挂牌-->
+  <div class="topTableHeight">
+    <a-table :columns="columns"
+             class="srcollYTable"
+             :scroll="{ x: '100%', y: 'calc(100vh - 479px)' }"
+             :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"
+               :enumName="name"
+               :selectedRow="selectedRow"
+               @cancel="closeComponent"></component>
+  </div>
+</template>
+
+<script lang="ts">
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+import { queryTableList, BtnList, contextMenu, defineAsyncComponent, defineComponent, ModalEnum, ComposeTableParam } from '@/common/export/commonTable';
+import { QueryOrderQuoteReq, WrOrderQuote } from '@/services/go/wrtrade/interface';
+import { queryOrderQuote } from '@/services/go/wrtrade';
+import { handleComposeTable } from '@/views/market/spot_trade/setup';
+import Bus from '@/utils/eventBus/index';
+import Filter from '../../components/filter/index.vue';
+
+export default defineComponent({
+    name: EnumRouterName.spot_trade_order_transaction_listing_transfer,
+    components: {
+        contextMenu,
+        // [ModalEnum.spot_trade_warehouse_detail]: defineAsyncComponent(() => import('../../components/detail/index.vue')),
+        // [ModalEnum.spot_trade_warehouse_post_buying]: defineAsyncComponent(() => import('../../components/post_buying/index.vue')),
+        // buyAndSell: defineAsyncComponent(() => import('../../components/buy-sell-market/index.vue')),
+        // postBuying: defineAsyncComponent(() => import('../../components/post_buying/index.vue')),
+    },
+    setup() {
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList<WrOrderQuote>();
+        // 获取列表数据
+        const queryTableAction = () => {
+            const param: QueryOrderQuoteReq = {
+                wrpricetype: 1,
+                haswr: 1,
+            };
+            queryTable(queryOrderQuote, param);
+        };
+        // 表格通用逻辑
+        const param: ComposeTableParam = {
+            queryFn: queryTableAction,
+            menuType: EnumRouterName.warehouse_receipt_trade_price,
+            tableName: 'table_pcweb_financing_manage_order_transaction',
+            tableFilterKey: [],
+            isDetail: false,
+        };
+        return {
+            ...handleComposeTable<WrOrderQuote>(param),
+            loading,
+            tableList,
+        };
+    },
+});
+</script>
+<style lang="less">
+</style>

+ 28 - 0
src/views/market/spot_trade/spot_trade_reference_market/index.vue

@@ -0,0 +1,28 @@
+<template>
+  <!-- 参考行情 -->
+  <div class="topTableHeight40">
+    <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.spot_trade_reference_market,
+    components: {
+        ThridMenu,
+    },
+    setup() {
+        return { ...handleMartketThirdRouter(EnumRouterName.spot_trade_reference_market) };
+    },
+});
+</script>
+<style lang="less">
+</style>

+ 2 - 2
src/views/market/warehouseTrade/components/delisting/index.vue

@@ -133,8 +133,8 @@ export default defineComponent({
             font-size: 14px;
             color: @m-blue0;
             &:hover {
-                background: rgba(@m-black7, 0.8);
-                color: rgba(@m-blue0, 0.8);
+                background: @m-black7-hover;
+                color: @m-blue0-hover;
             }
         }
         .conditionBtn + .conditionBtn {

+ 2 - 2
src/views/market/warehouseTrade/components/listed/index.vue

@@ -133,8 +133,8 @@ export default defineComponent({
             font-size: 14px;
             color: @m-blue0;
             &:hover {
-                background: rgba(@m-black7, 0.8);
-                color: rgba(@m-blue0, 0.8);
+                background: @m-black7-hover;
+                color: @m-blue0-hover;
             }
         }
         .conditionBtn + .conditionBtn {

+ 1 - 1
src/views/market/warehouseTrade/index.vue

@@ -129,7 +129,7 @@ export default defineComponent({
         cursor: pointer;
         .position(absolute, 8px, 14px, auto, auto);
         &:hover {
-            color: rgba(@m-blue0, 0.8);
+            color: @m-blue0-hover;
         }
     }
     .topBar {

+ 18 - 1
src/views/order/financing_manager/components/financing_manager_apply_order/index.vue

@@ -33,6 +33,16 @@
       <template #createtime="{ record }">
         <a>{{ formatTime(record.createtime) }}</a>
       </template>
+
+    <!-- 结算方式 1:按日结息 3:按月结息-->
+        <template #interestsettlemode="{ record }">
+            <a>{{ getInterestSettleModeName(record.interestsettlemode) }}</a>
+        </template>
+        <!-- 费用 -->
+        <template #interestsettlevalue="{ record }">
+            <a>{{ getInterestrateModeName(record.interestratemode, record.interestrate) }}</a>
+        </template>
+
     </a-table>
     <component :is="componentId"
                v-if="componentId"
@@ -52,7 +62,12 @@ import { ComposeOrderTableParam } from '@/common/setup/table/interface';
 import { formatTime } from '@/common/methods';
 import Bus from '@/utils/eventBus/index';
 import { expandIcon } from '@/common/setup/table/clolumn';
-import { getApplyStatusFinanceName, getFinanceTypeName } from '@/common/constants/enumsName';
+import {
+    getApplyStatusFinanceName,
+    getFinanceTypeName,
+    getInterestrateModeName,
+    getInterestSettleModeName
+} from '@/common/constants/enumsName';
 import { BtnList as BtnListType } from '@/common/components/btnList/interface';
 
 export default defineComponent({
@@ -95,6 +110,8 @@ export default defineComponent({
             getFinanceTypeName,
             getApplyStatusFinanceName,
             handleBtnList,
+            getInterestrateModeName,
+            getInterestSettleModeName,
         };
     },
 });

+ 9 - 7
src/views/order/financing_manager/components/financing_manager_contract/components/buyback/index.vue

@@ -1,5 +1,5 @@
 <template>
-  <!-- 付款-->
+  <!-- 回购仓单 -->
   <Drawer :title="'回购仓单'"
           :placement="'right'"
           :visible="visible"
@@ -29,17 +29,17 @@
             </a-col>
             <a-col :span="12">
               <a-form-item label="购买数量">
-                <span class="white ml10">1000吨</span>
+                <span class="white ml10">{{ selectedRow.wrqty + " " + selectedRow.enumdicname }}</span>
               </a-form-item>
             </a-col>
             <a-col :span="12">
               <a-form-item label="已回购数量">
-                <span class="white ml10">1000吨</span>
+                <span class="white ml10">{{ selectedRow.buybackwrpositionqty + " " + selectedRow.enumdicname }}</span>
               </a-form-item>
             </a-col>
             <a-col :span="12">
               <a-form-item label="待回购数量">
-                <span class="white ml10">1000吨</span>
+                <span class="white ml10">{{ selectedRow.remainwrpositionqty + " " + selectedRow.enumdicname }}</span>
               </a-form-item>
             </a-col>
             <a-col :span="12">
@@ -52,17 +52,19 @@
                                 style="width: 200px" />
 
                 <div class="day">吨</div>
-                <div class="tip">本次可回购数量30吨</div>
+                  <!-- 本次可回购数量=min{资金方对应仓单头寸可用数量,融资合同剩余待回购数量} -->
+                <div class="tip">{{ "本次可回购数量" + selectedRow.remainwrpositionqty + " " + selectedRow.enumdicname }}</div>
               </a-form-item>
             </a-col>
             <a-col :span="12">
+                <!--(回购数量/合同剩余数量) * 合同剩余金额 -->
               <a-form-item label="本次回购金额">
-                <span class="white ml10">100.00</span>
+                <span class="white ml10">{{ (((formState.num ===  0 ? 1 : formState.num) * selectedRow.remainamount) / selectedRow.remainwrpositionqty).toFixed(2) + " 元" }}</span>
               </a-form-item>
             </a-col>
             <a-col :span="12">
               <a-form-item label="剩余保证金">
-                <span class="white ml10">100.00</span>
+                <span class="white ml10">{{ selectedRow.initmargin + " 元" }}</span>
               </a-form-item>
             </a-col>
           </a-row>

+ 4 - 4
src/views/order/financing_manager/components/financing_manager_contract/components/pay/index.vue

@@ -12,22 +12,22 @@
           <a-row :gutter="24">
             <a-col :span="12">
               <a-form-item label="借款金额">
-                <span class="white ml10">100.00</span>
+                <span class="white ml10">{{ selectedRow.lenderamount + " 元"}}</span>
               </a-form-item>
             </a-col>
             <a-col :span="12">
               <a-form-item label="剩余金额">
-                <span class="white ml10">100.00</span>
+                <span class="white ml10">{{ selectedRow.remainamount + " 元"}}</span>
               </a-form-item>
             </a-col>
             <a-col :span="12">
               <a-form-item label="已计费用">
-                <span class="white ml10">100.00</span>
+                <span class="white ml10">{{ selectedRow.totalinterest + " 元"}}</span>
               </a-form-item>
             </a-col>
             <a-col :span="12">
               <a-form-item label="费用欠款">
-                <span class="red ml10">100.00</span>
+                <span class="red ml10">{{ selectedRow.interestdebt + " 元"}}</span>
               </a-form-item>
             </a-col>
           </a-row>

+ 6 - 1
src/views/order/financing_manager/components/financing_manager_contract/index.vue

@@ -32,6 +32,10 @@
       <template #createtime="{ record }">
         <a>{{ formatTime(record.createtime) }}</a>
       </template>
+        <template #scfcontracttype="{ record }">
+            <a>{{ getScfContractTypeName(record.scfcontracttype) }}</a>
+        </template>
+
     </a-table>
     <component :is="componentId"
                v-if="componentId"
@@ -50,7 +54,7 @@ import { handleComposeOrderTable } from '@/common/setup/table/compose';
 import { ComposeOrderTableParam } from '@/common/setup/table/interface';
 import { formatTime } from '@/common/methods';
 import { expandIcon } from '@/common/setup/table/clolumn';
-import { getContractName, getFinanceTypeName } from '@/common/constants/enumsName';
+import {getContractName, getFinanceTypeName, getScfContractTypeName} from '@/common/constants/enumsName';
 import { BtnList as BtnListType } from '@/common/components/btnList/interface';
 
 export default defineComponent({
@@ -94,6 +98,7 @@ export default defineComponent({
             getContractName,
             getFinanceTypeName,
             handleBtnList,
+            getScfContractTypeName,
         };
     },
 });

+ 1 - 1
src/views/order/funding_information/components/funding_information_funding_summary/index.vue

@@ -24,7 +24,7 @@
         <span>{{getCanUseMoney(record)}}</span>
       </template>
       <template #freezemargin="{record}">
-        <span>{{getFreeze(record)}}</span>
+        <span>{{getFreeze(record, true)}}</span>
       </template>
     </a-table>
     <component :is="componentId"

+ 14 - 14
src/views/order/performance_information/components/components/breach_contract/index.vue

@@ -36,14 +36,14 @@
                 <span class="white">{{selectedRow.relatedorderid}}</span>
               </a-form-item>
             </a-col>
-<!--            <a-col :span="24">-->
-<!--              <a-form-item label="附件"-->
-<!--                           name="url">-->
-<!--                <UploadImg :visible="visible"-->
-<!--                           :imgList="uploadImgList"-->
-<!--                           @upload="uploadImgAction" />-->
-<!--              </a-form-item>-->
-<!--            </a-col>-->
+            <!--            <a-col :span="24">-->
+            <!--              <a-form-item label="附件"-->
+            <!--                           name="url">-->
+            <!--                <UploadImg :visible="visible"-->
+            <!--                           :imgList="uploadImgList"-->
+            <!--                           @upload="uploadImgAction" />-->
+            <!--              </a-form-item>-->
+            <!--            </a-col>-->
             <a-col :span="24">
               <a-form-item label="备注"
                            name="remark">
@@ -82,13 +82,13 @@ import { validateAction } from '@/common/setup/form';
 import { FormState } from './interface';
 import UploadImg from '@/common/components/uploadImg/index.vue';
 import { getUploadImg } from '@/common/setup/upload';
-import {PerformanceContractedApplyReq, PerformanceDelayApplyReq} from '@/services/proto/performance/interface';
-import {getSelectedAccount, getSelectedAccountId, getUserId} from '@/services/bus/account';
+import { PerformanceContractedApplyReq, PerformanceDelayApplyReq } from '@/services/proto/performance/interface';
+import { getSelectedAccount, getSelectedAccountId, getUserId } from '@/services/bus/account';
 import { requestResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
 import { performanceContractedApply, performanceDelayApply } from '@/services/proto/performance';
 import { BuyOrSell } from '@/common/constants/enumCommon';
 import { handlePerformancePlanStep } from '../setup';
-import Long from "long";
+import Long from 'long';
 
 export default defineComponent({
     name: ModalEnum.performance_information_buy_performance_breach_contract,
@@ -115,12 +115,12 @@ export default defineComponent({
                 // 违约申请
                 const paramReq: PerformanceContractedApplyReq = {
                     PerformancePlanID: Long.fromString(props.selectedRow.performanceplanid), // uint64 履约计划ID
-                    BreachType: props.selectedRow.buyaccountid === getSelectedAccountId() ? 2: 1, // uint32 违约方类型 买履约是2 卖履约是1 (刘工说是黄工说的 )
+                    BreachType: props.selectedRow.buyaccountid === getSelectedAccountId() ? 2 : 1, // uint32 违约方类型 买履约是2 卖履约是1 (刘工说是黄工说的 )
                     Applicant: getUserId(), // uint64 违约申请人
                     ApplyRemark: param.remark, // string 申请备注
-                    Attachment: "" // string 附件
+                    Attachment: '', // string 附件
                 };
-                requestResultLoadingAndInfo(performanceContractedApply, paramReq, loading, ['违约成功', '违约失败:']).then(() => {
+                requestResultLoadingAndInfo(performanceContractedApply, paramReq, loading, ['申请违约成功', '申请违约失败:']).then(() => {
                     cancel(true);
                 });
             });

+ 43 - 83
src/views/order/performance_information/components/components/detail/index.vue

@@ -1,99 +1,58 @@
 <template>
-    <!-- 履约明细-->
-    <Drawer :title="'履约明细'" :placement="'bottom'" :visible="visible" @cancel="cancel">
-        <!-- <div class="listed">
+  <!-- 履约明细-->
+  <Drawer :title="'履约明细'"
+          :placement="'right'"
+          class="bottomWidth"
+          :visible="visible"
+          @cancel="cancel">
+    <div class="listed">
       <div class="condition">
         <a-button class="conditionBtn">{{selectedRow.deliverygoodsname}}</a-button>
         <a-button class="conditionBtn">{{selectedRow.wrtypename}}</a-button>
         <a-button class="conditionBtn">{{selectedRow.warehousename}}</a-button>
       </div>
-        </div>-->
-        <div class="performanceSteps">
-            <a-steps v-model:current="current" class="commonSteps" direction="vertical">
-                <a-step status="finish">
-                    <template #title>
-                        <div class="block">
-                            <div class="line">
-                                <div class="num">1</div>
-                                <div class="desc">买方30%货款</div>
-                                <div class="day">T+30</div>
-                                <CaretRightOutlined class="arrowRight" />
-                            </div>
-                            <div class="tip">已完成</div>
-                        </div>
-                    </template>
-                </a-step>
-                <a-step status="finish">
-                    <template #title>
-                        <div class="block">
-                            <div class="line">
-                                <div class="num">2</div>
-                                <div class="desc">卖方发货</div>
-                                <div class="day">T+3</div>
-                                <CaretRightOutlined class="arrowRight" />
-                            </div>
-                            <div class="tip">已完成</div>
-                        </div>
-                    </template>
-                </a-step>
-                <a-step status="process">
-                    <template #title>
-                        <div class="block">
-                            <div class="line">
-                                <div class="num">3</div>
-                                <div class="desc">买方70%货款</div>
-                                <div class="day">T+10</div>
-                                <CaretRightOutlined class="arrowRight" />
-                            </div>
-                            <div class="tip">2日后扣款</div>
-                        </div>
-                    </template>
-                </a-step>
-                <a-step status="wait">
-                    <template #title>
-                        <div class="block">
-                            <div class="line">
-                                <div class="num">4</div>
-                                <div class="desc">卖方开票</div>
-                                <div class="day">T+1</div>
-                                <CaretRightOutlined class="arrowRight" />
-                            </div>
-                            <div class="tip">未开始</div>
-                        </div>
-                    </template>
-                </a-step>
-            </a-steps>
-            <div class="btns">
-                <a-button class="closeBtn" @click="cancel">关闭</a-button>
-            </div>
-        </div>
-    </Drawer>
+      <a-table class="dialogTable"
+               :columns="columns"
+               :data-source="performancePlanStepList"
+               :pagination="false">
+        <template #isauto="{ text }">
+          <span>{{text ? '是' : '否'}}</span>
+        </template>
+        <template #stepvalue="{ text }">
+          <span>{{(text* 100).toFixed(0)}}</span>
+        </template>
+        <template #stepstatus="{ text }">
+          <span>{{getPerformanceStatusName(text)}}</span>
+        </template>
+      </a-table>
+    </div>
+  </Drawer>
 </template>
 
 <script lang="ts">
-import { defineComponent, PropType, ref } from 'vue';
-import { enumOrderComponents } from '@/common/constants/enumOrderComponents';
+import { defineComponent, PropType } from 'vue';
 import Drawer from '@/common/components/drawer/index.vue';
-import { QueryWrPositionReq, WrHoldLB, WrPerformancePlan, WrPosition } from '@/services/go/wrtrade/interface';
-import { getInTaAccount, getUserId } from '@/services/bus/account';
-import { requestResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
-import { hdWROrder } from '@/services/proto/warehousetrade';
-import { v4 as uuidv4 } from 'uuid';
-import moment from 'moment';
+import { WrPerformancePlan } from '@/services/go/wrtrade/interface';
 import { ModalEnum } from '@/common/constants/modalNameEnum';
 import { _closeModal } from '@/common/setup/modal/modal';
-import { validateAction } from '@/common/setup/form';
-import { getMarketRunByTradeMode } from '@/services/bus/market';
-import { message } from 'ant-design-vue';
-import { getGoodsGroupsByTradeMode } from '@/services/bus/goods';
-import { BuyOrSell, TradeMode } from '@/common/constants/enumCommon';
-import { WRGoodsInfo } from '@/services/proto/warehousetrade/interface';
-import { CaretRightOutlined } from '@ant-design/icons-vue';
+
+import { BuyOrSell } from '@/common/constants/enumCommon';
 import { handlePerformancePlanStep } from '../setup';
+import { getPerformanceStatusName } from '@/common/constants/enumsName';
+
+const columns = [
+    { title: '履约步骤', dataIndex: 'steptypename', key: 'steptypename', align: 'center' },
+    // { title: '天数', dataIndex: 'applytime', key: 'applytime', align: 'center' },
+    { title: '剩余天数', dataIndex: 'remaindays', key: 'remaindays', align: 'center' },
+    { title: '步骤值(%)', dataIndex: 'stepvalue', key: 'stepvalue', align: 'center', slots: { customRender: 'stepvalue' } },
+    { title: '距离上一步', dataIndex: 'stepdays', key: 'stepdays', align: 'center' },
+    { title: '自动', dataIndex: 'isauto', key: 'isauto', align: 'center', slots: { customRender: 'isauto' } },
+    { title: '当前状态', dataIndex: 'stepstatus', key: 'stepstatus', align: 'center', slots: { customRender: 'stepstatus' } },
+];
 
 export default defineComponent({
     name: ModalEnum.performance_information_buy_performance_detail,
-    components: { Drawer, CaretRightOutlined },
+    components: { Drawer },
     emits: ['cancel', 'update'],
     props: {
         selectedRow: {
@@ -107,12 +66,13 @@ export default defineComponent({
     },
     setup(props, context) {
         const { visible, cancel } = _closeModal(context);
-        const { performancePlanStep } = handlePerformancePlanStep(props.selectedRow);
-        const current = ref<number>(0);
+        const { performancePlanStepList } = handlePerformancePlanStep(props.selectedRow, true);
         return {
             visible,
             cancel,
-            current,
+            performancePlanStepList,
+            columns,
+            getPerformanceStatusName,
         };
     },
 });

+ 2 - 2
src/views/order/performance_information/components/components/extension/index.vue

@@ -90,7 +90,7 @@ import { performanceDelayApply, performanceManualConfirm } from '@/services/prot
 import { getUserId } from '@/services/bus/account';
 import { BuyOrSell } from '@/common/constants/enumCommon';
 import { handlePerformancePlanStep } from '../setup';
-import Long from "long";
+import Long from 'long';
 
 export default defineComponent({
     name: ModalEnum.performance_information_buy_performance_extension,
@@ -120,7 +120,7 @@ export default defineComponent({
                     applicant: getUserId(),
                     applyremark: param.remark,
                 };
-                requestResultLoadingAndInfo(performanceDelayApply, paramReq, loading, ['延期成功', '延期失败:']).then(() => {
+                requestResultLoadingAndInfo(performanceDelayApply, paramReq, loading, ['延期申请成功', '延期申请失败:']).then(() => {
                     cancel(true);
                 });
             });

+ 6 - 4
src/views/order/performance_information/components/components/setup.ts

@@ -1,20 +1,22 @@
 import { queryWrPerformancePlanStep } from "@/services/go/wrtrade";
 import { QueryWrPerformancePlanStepReq, WrPerformancePlan, WrPerformancePlanStep } from "@/services/go/wrtrade/interface";
 import { ref } from "vue";
-import Long from "long";
 
 // 获取当前履约步骤
-export function handlePerformancePlanStep(selectedRow: WrPerformancePlan) {
+export function handlePerformancePlanStep(selectedRow: WrPerformancePlan, isAll = false) {
     const performancePlanStep = ref<WrPerformancePlanStep>()
+    const performancePlanStepList = ref<WrPerformancePlanStep[]>([])
 
     const stepamount = ref<string>('--')
-    const param: QueryWrPerformancePlanStepReq = { planid: selectedRow.performanceplanid, curstepid: selectedRow.curstepid }
+
+    const param: QueryWrPerformancePlanStepReq = isAll ? { planid: selectedRow.performanceplanid } : { planid: selectedRow.performanceplanid, curstepid: selectedRow.curstepid }
     queryWrPerformancePlanStep(param).then(res => {
         console.log('获取当前履约步骤', res)
         if (res.length) {
+            performancePlanStepList.value = res;
             performancePlanStep.value = res[0]
             stepamount.value = res[0].stepamount.toFixed(2).toString()
         }
     })
-    return { performancePlanStep , stepamount}
+    return { performancePlanStep, stepamount, performancePlanStepList }
 }

+ 1 - 1
src/views/order/performance_information/components/performance_information_buy_performance/index.vue

@@ -21,7 +21,7 @@
       </template>
       <!-- 履约类型 -->
       <template #performancetype="{ record }">
-        <a>{{ getPerformanceTypeName(record.performancetype) }}</a>
+        <a>{{ getPerformanceTypeName(record.performancetype, record.haswr) }}</a>
       </template>
 
       <!-- 付款方式 -->

+ 1 - 1
src/views/order/performance_information/components/performance_information_sell_performance/index.vue

@@ -22,7 +22,7 @@
       </template>
       <!-- 履约类型 -->
       <template #performancetype="{ record }">
-        <a>{{ getPerformanceTypeName(record.performancetype) }}</a>
+        <a>{{ getPerformanceTypeName(record.performancetype, record.haswr)}}</a>
       </template>
 
       <!-- 付款方式 -->

+ 3 - 3
src/views/order/pre_sale_warehouse_receipt/components/pre_sale_warehouse_receipt_order_summary/components/listed/index.vue

@@ -71,7 +71,7 @@
                                 v-model:value="formState.DelistMinQty"
                                 style="width: 140px" />
                 <span class="input-enumdicname">{{selectedRow.enumdicname}}</span>
-                <div class="tip">最小单位:1{{selectedRow.enumdicname}}</div>
+                <div class="tip">最小单位:{{selectedRow.minivalue}}{{selectedRow.enumdicname}}</div>
               </a-form-item>
             </a-col>
           </a-row>
@@ -353,8 +353,8 @@ export default defineComponent({
             font-size: 14px;
             color: @m-blue0;
             &:hover {
-                background: rgba(@m-black7, 0.8);
-                color: rgba(@m-blue0, 0.8);
+                background: @m-black7-hover;
+                color: @m-blue0-hover;
             }
         }
         .conditionBtn + .conditionBtn {

+ 5 - 4
src/views/order/pre_sale_warehouse_receipt/components/pre_sale_warehouse_receipt_order_summary/components/listed/setup.ts

@@ -92,10 +92,11 @@ export function handleNumAndPrice() {
     // 履约保证金
     function getMargin() {
         if (hasRules()) {
-            const { sellmarginvalue } = getRules()[0]
-            // 浮动价 履约保证金=估算总额*买方履约保证金比例
-            // 一口价 履约保证金=挂牌金额*买方履约保证金比例
-            return Number((getMoney() * sellmarginvalue).toFixed(2))
+            const { sellmarginvalue2, sellmarginalgorithm } = getRules()[0]
+            // 浮动价 履约保证金=估算总额*卖方履约保证金比例
+            // 一口价 履约保证金=挂牌金额*卖方履约保证金比例
+            const margin = sellmarginalgorithm === 1 ? getMoney() * sellmarginvalue2 : getMoney() + sellmarginvalue2
+            return Number(margin.toFixed(2))
         } else {
             return 0
         }

+ 2 - 1
src/views/order/pre_sale_warehouse_receipt/components/pre_sale_warehouse_receipt_order_summary/index.vue

@@ -17,7 +17,8 @@
         <BtnList :btnList="btnList"
                  class="btn-list-sticky"
                  :record="record"
-                 @click="openComponent" />
+                 @click="openComponent"
+                 v-if="record.creditenableqty > 0" />
       </template>
     </a-table>
     <component :is="componentId"

+ 14 - 0
src/views/order/spot_warran/components/spot_warrant_in_and_out_warehouse/index.vue

@@ -19,6 +19,17 @@
                  class="btn-list-sticky"
                  @click="openComponent" />
       </template>
+
+        <!-- applytype 类型-->
+        <template #applytype="{ record }">
+            <span>{{ getPickUpStatusName(record.applytype) }}</span>
+        </template>
+
+        <!-- applystatus 状态 -->
+        <template #applystatus="{ record }">
+            <span>{{ getPickUpTypeName(record.applystatus) }}</span>
+        </template>
+
     </a-table>
     <component :is="componentId"
                v-if="componentId"
@@ -37,6 +48,7 @@ import { handleComposeOrderTable } from '@/common/setup/table/compose';
 import { ComposeOrderTableParam } from '@/common/setup/table/interface';
 import { expandIcon } from '@/common/setup/table/clolumn';
 import { BtnList as BtnListType } from '@/common/components/btnList/interface';
+import {getPickUpStatusName, getPickUpTypeName} from "@/common/constants/enumsName";
 
 export default defineComponent({
     name: enumOrderComponents.spot_warrant_in_and_out_warehouse,
@@ -74,6 +86,8 @@ export default defineComponent({
             tableList,
             expandIcon,
             handleBtnList,
+            getPickUpStatusName,
+            getPickUpTypeName
         };
     },
 });

+ 2 - 2
src/views/order/spot_warran/components/spot_warrant_inventory_summary/components/listing.vue

@@ -133,8 +133,8 @@ export default defineComponent({
             font-size: 14px;
             color: @m-blue0;
             &:hover {
-                background: rgba(@m-black7, 0.8);
-                color: rgba(@m-blue0, 0.8);
+                background: @m-black7-hover;
+                color: @m-blue0-hover;
             }
         }
         .conditionBtn + .conditionBtn {

+ 2 - 2
src/views/order/spot_warran/components/spot_warrant_inventory_summary/components/listing/index.vue

@@ -193,8 +193,8 @@ export default defineComponent({
             font-size: 14px;
             color: @m-blue0;
             &:hover {
-                background: rgba(@m-black7, 0.8);
-                color: rgba(@m-blue0, 0.8);
+                background: @m-black7-hover;
+                color: @m-blue0-hover;
             }
         }
         .conditionBtn + .conditionBtn {

+ 3 - 3
src/views/order/spot_warran/components/spot_warrant_spot_details/components/listing/index.vue

@@ -173,7 +173,7 @@
 </template>
 
 <script lang="ts">
-import { defineComponent, onMounted, PropType, ref } from 'vue';
+import { defineComponent, onBeforeUnmount, onMounted, onUnmounted, PropType, ref } from 'vue';
 import { enumOrderComponents } from '@/common/constants/enumOrderComponents';
 import Drawer from '@/common/components/drawer/index.vue';
 import { QueryWrPositionReq, WrHoldLB, WrPosition } from '@/services/go/wrtrade/interface';
@@ -352,8 +352,8 @@ export default defineComponent({
             font-size: 14px;
             color: @m-blue0;
             &:hover {
-                background: rgba(@m-black7, 0.8);
-                color: rgba(@m-blue0, 0.8);
+                background: @m-black7-hover;
+                color: @m-blue0-hover;
             }
         }
         .conditionBtn + .conditionBtn {

+ 7 - 3
src/views/order/spot_warran/components/spot_warrant_spot_details/components/listing/setup.ts

@@ -5,7 +5,7 @@ import { getRules } from '@/services/bus/rules';
 import { Goods } from "@/services/go/ermcp/goodsInfo/interface";
 import { WrHoldLB } from "@/services/go/wrtrade/interface";
 import { RuleObject } from 'ant-design-vue/lib/form/interface';
-import { reactive, ref, UnwrapRef } from "vue";
+import { onBeforeUnmount, reactive, ref, UnwrapRef } from "vue";
 import { ListingForm } from "./interface";
 
 const formState: UnwrapRef<ListingForm> = reactive({
@@ -47,6 +47,9 @@ export function handleForm(data: WrHoldLB) {
         PriceMove: [{ required: true, message: '请输入升贴水', trigger: 'blur', type: 'number', }],
         goodsid: [{ required: true, validator: v_group, }],
     }
+    onBeforeUnmount(() => {
+        formRef.value.resetFields();
+    });
     return { rules, formState, formRef }
 }
 
@@ -91,10 +94,11 @@ export function handleNumAndPrice() {
     // 履约保证金
     function getMargin() {
         if (hasRules()) {
-            const { sellmarginvalue } = getRules()[0]
+            const { sellmarginvalue, buymarginalgorithm } = getRules()[0]
             // 浮动价 履约保证金=估算总额*买方履约保证金比例
             // 一口价 履约保证金=挂牌金额*买方履约保证金比例
-            return Number((getMoney() * sellmarginvalue).toFixed(2))
+            const margin = buymarginalgorithm === 1 ? getMoney() * sellmarginvalue : getMoney() + sellmarginvalue
+            return Number(margin.toFixed(2))
         } else {
             return 0
         }

+ 2 - 2
src/views/order/spot_warran/components/spot_warrant_spot_details/components/pick_up/index.vue

@@ -201,8 +201,8 @@ export default defineComponent({
             font-size: 14px;
             color: @m-blue0;
             &:hover {
-                background: rgba(@m-black7, 0.8);
-                color: rgba(@m-blue0, 0.8);
+                background: @m-black7-hover;
+                color: @m-blue0-hover;
             }
         }
         .conditionBtn + .conditionBtn {

+ 2 - 1
src/views/order/spot_warran/components/spot_warrant_spot_details/index.vue

@@ -17,7 +17,8 @@
         <BtnList :btnList="btnList"
                  :record="record"
                  class="btn-list-sticky"
-                 @click="openComponent" />
+                 @click="openComponent"
+                 v-if="record.enableqty > 0" />
       </template>
     </a-table>
     <component :is="componentId"

+ 2 - 2
src/views/order/spot_warran/components/spot_warrant_spot_summary/components/index.vue

@@ -72,8 +72,8 @@ export default defineComponent({
             font-size: 14px;
             color: @m-blue0;
             &:hover {
-                background: rgba(@m-black7, 0.8);
-                color: rgba(@m-blue0, 0.8);
+                background: @m-black7-hover;
+                color: @m-blue0-hover;
             }
         }
         .conditionBtn + .conditionBtn {

+ 57 - 60
src/views/platinum/platinum_agreement/compoments/modify/index.vue

@@ -1,62 +1,59 @@
 <template>
-  <!-- 修改协议 -->
-  <a-modal class="commonModal modify-custom"
-           title="修改协议"
-           v-if="visible"
-           v-model:visible="visible"
-           centered
-           :maskClosable="false"
-           @cancel="cancel"
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit(2)">修改</a-button>
-    </template>
-    <a-form class="inlineForm"
-            ref="formRef"
-            :model="formState"
-            :rules="rules">
-      <a-row :gutter="24">
-        <a-col :span="12">
-          <a-form-item label="协议编号">
-            <span class="white">{{formState.agreementno}}</span>
-          </a-form-item>
-        </a-col>
-        <a-col :span="12">
-          <a-form-item label="协议名称"
-                       name="agreementname">
-            <a-input class="dialogInput"
-                     v-model:value="formState.agreementname"
-                     style="width: 200px"
-                     placeholder="请输入协议名称" />
-          </a-form-item>
-        </a-col>
-        <a-col :span="12">
-          <a-form-item label="协议类型">
-            <span class="white">{{getAgreementTypeName(formState.agreementtype)}}</span>
-          </a-form-item>
-        </a-col>
-        <a-col :span="12">
-          <a-form-item label="签署频率"
-                       name="agreementname">
-            <span class="white">{{getRate()}}</span>
-          </a-form-item>
-        </a-col>
-        <a-col :span="24">
-          <a-form-item label="协议内容"
-                       name="agreementcontent">
-            <a-textarea class="dialogInput"
-                        v-model:value="formState.agreementcontent"
-                        style="width: 635px"
-                        placeholder="请输入协议内容"
-                        :autosize="{ minRows: 8, maxRows: 24 }" />
-          </a-form-item>
-        </a-col>
-      </a-row>
-    </a-form>
-  </a-modal>
+    <!-- 修改协议 -->
+    <a-modal
+        class="commonModal modify-custom"
+        title="修改协议"
+        v-if="visible"
+        v-model:visible="visible"
+        centered
+        :maskClosable="false"
+        @cancel="cancel"
+        width="890px"
+    >
+        <template #footer>
+            <a-button key="submit" type="primary" :loading="loading" @click="submit(2)">修改</a-button>
+        </template>
+        <a-form class="inlineForm" ref="formRef" :model="formState" :rules="rules">
+            <a-row :gutter="24">
+                <a-col :span="12">
+                    <a-form-item label="协议编号">
+                        <span class="white">{{formState.agreementno}}</span>
+                    </a-form-item>
+                </a-col>
+                <a-col :span="12">
+                    <a-form-item label="协议名称" name="agreementname">
+                        <a-input
+                            class="dialogInput"
+                            v-model:value="formState.agreementname"
+                            style="width: 200px"
+                            placeholder="请输入协议名称"
+                        />
+                    </a-form-item>
+                </a-col>
+                <a-col :span="12">
+                    <a-form-item label="协议类型">
+                        <span class="white">{{getAgreementTypeName(formState.agreementtype)}}</span>
+                    </a-form-item>
+                </a-col>
+                <a-col :span="12">
+                    <a-form-item label="签署频率" name="agreementname">
+                        <span class="white">{{getRate()}}</span>
+                    </a-form-item>
+                </a-col>
+                <a-col :span="24">
+                    <a-form-item label="协议内容" name="agreementcontent">
+                        <a-textarea
+                            class="dialogInput"
+                            v-model:value="formState.agreementcontent"
+                            style="width: 635px"
+                            placeholder="请输入协议内容"
+                            :autosize="{ minRows: 8, maxRows: 24 }"
+                        />
+                    </a-form-item>
+                </a-col>
+            </a-row>
+        </a-form>
+    </a-modal>
 </template>
 
 <script lang="ts">
@@ -140,8 +137,8 @@ export default defineComponent({
             color: @m-white0;
             .rounded-corners(3px);
             &:hover {
-                background: rgba(@m-blue0, 0);
-                color: rgba(@m-white0, 0.8);
+                background: @m-blue0-hover;
+                color: @m-white0-hover;
             }
         }
         .look {

+ 298 - 276
src/views/platinum/platinum_customer_info/compoments/modify/index.vue

@@ -1,43 +1,40 @@
 <template>
-  <!-- 修改客户资料 -->
-  <a-modal class="commonModal modify-custom"
-           title="修改客户资料"
-           v-if="visible"
-           v-model:visible="visible"
-           centered
-           :maskClosable="false"
-           @cancel="cancel"
-           width="890px">
-    <template #footer>
-      <!-- <a-button key="submit"
+    <!-- 修改客户资料 -->
+    <a-modal
+        class="commonModal modify-custom"
+        title="修改客户资料"
+        v-if="visible"
+        v-model:visible="visible"
+        centered
+        :maskClosable="false"
+        @cancel="cancel"
+        width="890px"
+    >
+        <template #footer>
+            <!-- <a-button key="submit"
                 class="cancelBtn"
                 @click="submit(1)">保存草稿
-      </a-button> -->
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit(2)">提交修改</a-button>
-    </template>
-    <a-form class="inlineForm"
-            ref="formRef"
-            :model="formState"
-            :rules="rules">
-      <a-row :gutter="24">
-        <a-col :span="24">
-          <a-form-item label="所属机构"
-                       name="areaid">
-            <a-select class="typeSelect"
-                      style="width: 200px"
-                      v-model:value="formState.areaid"
-                      placeholder="请选择所属机构">
-              <a-select-option v-for="item in areaList"
-                               :key="item.userid">
-                {{item.accountname}}
-              </a-select-option>
-            </a-select>
-          </a-form-item>
-        </a-col>
-        <!-- <a-col :span="12">
+            </a-button>-->
+            <a-button key="submit" type="primary" :loading="loading" @click="submit(2)">提交修改</a-button>
+        </template>
+        <a-form class="inlineForm" ref="formRef" :model="formState" :rules="rules">
+            <a-row :gutter="24">
+                <a-col :span="24">
+                    <a-form-item label="所属机构" name="areaid">
+                        <a-select
+                            class="typeSelect"
+                            style="width: 200px"
+                            v-model:value="formState.areaid"
+                            placeholder="请选择所属机构"
+                        >
+                            <a-select-option
+                                v-for="item in areaList"
+                                :key="item.userid"
+                            >{{item.accountname}}</a-select-option>
+                        </a-select>
+                    </a-form-item>
+                </a-col>
+                <!-- <a-col :span="12">
           <a-form-item label="登录账号"
                        name="logincode">
             <a-input class="dialogInput"
@@ -54,243 +51,268 @@
                      style="width: 200px"
                      placeholder="请选择登录密码" />
           </a-form-item>
-        </a-col> -->
-        <a-col :span="12">
-          <a-form-item label="客户类型"
-                       name="userinfotype">
-            <a-select class="typeSelect"
-                      style="width: 200px"
-                      v-model:value="formState.userinfotype"
-                      placeholder="请选择客户类型">
-              <a-select-option v-for="item in userinfotypeList"
-                               :value="item.key"
-                               :key="item.key">
-                {{item.name}}
-              </a-select-option>
-            </a-select>
-          </a-form-item>
-        </a-col>
-        <template v-if="!isPersonal()">
-          <a-col :span="12">
-            <a-form-item label="企业名称"
-                         name="customername">
-              <a-input class="dialogInput"
-                       v-model:value="formState.customername"
-                       style="width: 200px"
-                       placeholder="请输入企业名称" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="企业简称"
-                         name="nickname">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.nickname"
-                       placeholder="请输入企业简称" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="证件类型"
-                         name="cardtype">
-              <a-select class="inlineFormSelect"
-                        v-model:value="formState.cardtype"
-                        style="width: 200px"
-                        placeholder="请选择证件类型">
-                <a-select-option :value="item.enumitemname"
-                                 v-for="item in cardTypeList"
-                                 :key="item.autoid">
-                  {{ item.enumdicname }}
-                </a-select-option>
-              </a-select>
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="法定代表人"
-                         name="legalpersonname">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.legalpersonname"
-                       placeholder="请输入法定代表人" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="证件号码"
-                         name="cardnum">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.cardnum"
-                       placeholder="请输入证件号码" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="纳税人识别号"
-                         name="taxpayernum">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.taxpayernum"
-                       placeholder="请输入纳税人识别号" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="营业执照">
-              <UploadImg :visible="visible"
-                         :imgList="attachmentImgList"
-                         @upload="attachmentUpload" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="联系人"
-                         name="contactname">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.contactname"
-                       placeholder="请输入联系人" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="联系人手机号"
-                         name="mobilephone">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.mobilephone"
-                       placeholder="请输入联系人手机号" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="联系电话"
-                         name="telphone">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.telphone"
-                       placeholder="请输入联系电话" />
-            </a-form-item>
-          </a-col>
-        </template>
-        <template v-else>
-          <a-col :span="12">
-            <a-form-item label="姓名"
-                         name="username">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.username"
-                       placeholder="请输入姓名" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="身份证号码"
-                         name="cardnum">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.cardnum"
-                       placeholder="请输入身份证号码" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="手机号码"
-                         name="mobilephone">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.mobilephone"
-                       placeholder="请输入手机号码" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="身份证正面照"
-                         name="cardbackphotourl">
-              <UploadImg :visible="visible"
-                         :imgList="cardfrontImgList"
-                         @upload="cardfrontUpload" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="邮箱"
-                         name="email">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.email"
-                       placeholder="请输入邮箱" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="24">
-            <a-form-item label="身份证反面照"
-                         name="cardfrontphotourl">
-              <UploadImg :visible="visible"
-                         :imgList="cardbackImgList"
-                         @upload="cardbackUpload" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item label="联系电话"
-                         name="telphone">
-              <a-input class="dialogInput"
-                       style="width: 200px"
-                       v-model:value="formState.telphone"
-                       placeholder="请输入联系电话" />
-            </a-form-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-item>
-              &nbsp;
-            </a-form-item>
-          </a-col>
-        </template>
-        <a-col :span="24">
-          <a-form-item label="通讯地址">
-            <a-select class="inlineFormSelect"
-                      style="width: 205px"
-                      v-model:value="formState.provinceid"
-                      @change="getCityList"
-                      placeholder="请选择省">
-              <a-select-option v-for="item in provinceList"
-                               :key="item.autoid"
-                               :value="item.autoid">
-                {{ item.divisionname }}
-              </a-select-option>
-            </a-select>
-            <a-select class="inlineFormSelect ml9"
-                      style="width: 205px"
-                      v-model:value="formState.cityid"
-                      @change="getDistrictList"
-                      placeholder="请选择市">
-              <a-select-option v-for="item in cityList"
-                               :key="item.autoid"
-                               :value="item.autoid">
-                {{ item.divisionname }}
-              </a-select-option>
-            </a-select>
-            <a-select class="inlineFormSelect ml9"
-                      v-model:value="formState.districtid"
-                      style="width: 205px"
-                      placeholder="请选择县(区)">
-              <a-select-option v-for="item in districtList"
-                               :key="item.autoid"
-                               :value="item.autoid">
-                {{ item.divisionname }}
-              </a-select-option>
-            </a-select>
-          </a-form-item>
-        </a-col>
-        <a-col :span="24">
-          <a-form-item label="&nbsp;"
-                       name="ipaddress">
-            <a-input class="dialogInput"
-                     style="width: 635px"
-                     v-model:value="formState.ipaddress"
-                     placeholder="请输入详细地址" />
-          </a-form-item>
-        </a-col>
-        <a-col :span="24">
-          <a-form-item label="备注"
-                       name="remark">
-            <a-input class="dialogInput"
-                     style="width: 635px"
-                     v-model:value="formState.remark"
-                     placeholder="请输入备注" />
-          </a-form-item>
-        </a-col>
-      </a-row>
-    </a-form>
-  </a-modal>
+                </a-col>-->
+                <a-col :span="12">
+                    <a-form-item label="客户类型" name="userinfotype">
+                        <a-select
+                            class="typeSelect"
+                            style="width: 200px"
+                            v-model:value="formState.userinfotype"
+                            placeholder="请选择客户类型"
+                        >
+                            <a-select-option
+                                v-for="item in userinfotypeList"
+                                :value="item.key"
+                                :key="item.key"
+                            >{{item.name}}</a-select-option>
+                        </a-select>
+                    </a-form-item>
+                </a-col>
+                <template v-if="!isPersonal()">
+                    <a-col :span="12">
+                        <a-form-item label="企业名称" name="customername">
+                            <a-input
+                                class="dialogInput"
+                                v-model:value="formState.customername"
+                                style="width: 200px"
+                                placeholder="请输入企业名称"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="企业简称" name="nickname">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.nickname"
+                                placeholder="请输入企业简称"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="证件类型" name="cardtype">
+                            <a-select
+                                class="inlineFormSelect"
+                                v-model:value="formState.cardtype"
+                                style="width: 200px"
+                                placeholder="请选择证件类型"
+                            >
+                                <a-select-option
+                                    :value="item.enumitemname"
+                                    v-for="item in cardTypeList"
+                                    :key="item.autoid"
+                                >{{ item.enumdicname }}</a-select-option>
+                            </a-select>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="法定代表人" name="legalpersonname">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.legalpersonname"
+                                placeholder="请输入法定代表人"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="证件号码" name="cardnum">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.cardnum"
+                                placeholder="请输入证件号码"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="纳税人识别号" name="taxpayernum">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.taxpayernum"
+                                placeholder="请输入纳税人识别号"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="营业执照">
+                            <UploadImg
+                                :visible="visible"
+                                :imgList="attachmentImgList"
+                                @upload="attachmentUpload"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="联系人" name="contactname">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.contactname"
+                                placeholder="请输入联系人"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="联系人手机号" name="mobilephone">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.mobilephone"
+                                placeholder="请输入联系人手机号"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="联系电话" name="telphone">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.telphone"
+                                placeholder="请输入联系电话"
+                            />
+                        </a-form-item>
+                    </a-col>
+                </template>
+                <template v-else>
+                    <a-col :span="12">
+                        <a-form-item label="姓名" name="username">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.username"
+                                placeholder="请输入姓名"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="身份证号码" name="cardnum">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.cardnum"
+                                placeholder="请输入身份证号码"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="手机号码" name="mobilephone">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.mobilephone"
+                                placeholder="请输入手机号码"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="身份证正面照" name="cardbackphotourl">
+                            <UploadImg
+                                :visible="visible"
+                                :imgList="cardfrontImgList"
+                                @upload="cardfrontUpload"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="邮箱" name="email">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.email"
+                                placeholder="请输入邮箱"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="24">
+                        <a-form-item label="身份证反面照" name="cardfrontphotourl">
+                            <UploadImg
+                                :visible="visible"
+                                :imgList="cardbackImgList"
+                                @upload="cardbackUpload"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="联系电话" name="telphone">
+                            <a-input
+                                class="dialogInput"
+                                style="width: 200px"
+                                v-model:value="formState.telphone"
+                                placeholder="请输入联系电话"
+                            />
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item>&nbsp;</a-form-item>
+                    </a-col>
+                </template>
+                <a-col :span="24">
+                    <a-form-item label="通讯地址">
+                        <a-select
+                            class="inlineFormSelect"
+                            style="width: 205px"
+                            v-model:value="formState.provinceid"
+                            @change="getCityList"
+                            placeholder="请选择省"
+                        >
+                            <a-select-option
+                                v-for="item in provinceList"
+                                :key="item.autoid"
+                                :value="item.autoid"
+                            >{{ item.divisionname }}</a-select-option>
+                        </a-select>
+                        <a-select
+                            class="inlineFormSelect ml9"
+                            style="width: 205px"
+                            v-model:value="formState.cityid"
+                            @change="getDistrictList"
+                            placeholder="请选择市"
+                        >
+                            <a-select-option
+                                v-for="item in cityList"
+                                :key="item.autoid"
+                                :value="item.autoid"
+                            >{{ item.divisionname }}</a-select-option>
+                        </a-select>
+                        <a-select
+                            class="inlineFormSelect ml9"
+                            v-model:value="formState.districtid"
+                            style="width: 205px"
+                            placeholder="请选择县(区)"
+                        >
+                            <a-select-option
+                                v-for="item in districtList"
+                                :key="item.autoid"
+                                :value="item.autoid"
+                            >{{ item.divisionname }}</a-select-option>
+                        </a-select>
+                    </a-form-item>
+                </a-col>
+                <a-col :span="24">
+                    <a-form-item label="&nbsp;" name="ipaddress">
+                        <a-input
+                            class="dialogInput"
+                            style="width: 635px"
+                            v-model:value="formState.ipaddress"
+                            placeholder="请输入详细地址"
+                        />
+                    </a-form-item>
+                </a-col>
+                <a-col :span="24">
+                    <a-form-item label="备注" name="remark">
+                        <a-input
+                            class="dialogInput"
+                            style="width: 635px"
+                            v-model:value="formState.remark"
+                            placeholder="请输入备注"
+                        />
+                    </a-form-item>
+                </a-col>
+            </a-row>
+        </a-form>
+    </a-modal>
 </template>
 
 <script lang="ts">
@@ -457,8 +479,8 @@ export default defineComponent({
             color: @m-white0;
             .rounded-corners(3px);
             &:hover {
-                background: rgba(@m-blue0, 0);
-                color: rgba(@m-white0, 0.8);
+                background: @m-blue0-hover;
+                color: @m-white0-hover;
             }
         }
         .look {

+ 1 - 0
src/views/platinum/platinum_document_query/list/waiting/index.vue

@@ -24,6 +24,7 @@
         <template #paylimitedtime="{ record }">
           <a>{{ isOverTime(record.paylimitedtime) }}</a>
         </template>
+
       </a-table>
     </contextMenu>
     <!-- <ControlModal :selectedRow="selectedRow" /> -->

+ 74 - 0
src/views/search/search_capital_flow/search_capital_flow_tab/index.vue

@@ -0,0 +1,74 @@
+<template>
+  <!-- 资金流水 -->
+  <section>
+    <a-table :columns="columns"
+             class="srcollYTable expandLeftTable"
+             :scroll="{ x: '100%', y: 'calc(100vh - 163px)'}"
+             :pagination="false"
+             :loading="loading"
+             :expandedRowKeys="expandedRowKeys"
+             :customRow="Rowclick"
+             :expandIcon="expandIcon"
+             :expandIconAsCell="false"
+             rowKey="key"
+             :data-source="tableList">
+      <template #createtime="{ record }">
+        <a>{{ formatTime(record.createtime) }}</a>
+      </template>
+    </a-table>
+  </section>
+</template>
+
+<script lang="ts">
+import { queryTableList, BtnList, defineComponent } from '@/common/export/commonTable';
+import { WrPerformancePlan } from '@/services/go/wrtrade/interface';
+import { getRecordItemTab } from '@/common/setup/order/orderData';
+import { handleComposeOrderTable } from '@/common/setup/table/compose';
+import { ComposeOrderTableParam } from '@/common/setup/table/interface';
+import { queryAmountLog } from '@/services/go/TaAccount';
+import { QueryAmountLogReq } from '@/services/go/TaAccount/interface';
+import { getSelectedAccountId } from '@/services/bus/account';
+import { formatTime } from '@/common/methods';
+import Bus from '@/utils/eventBus/index';
+import { expandIcon } from '@/common/setup/table/clolumn';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+
+export default defineComponent({
+    name: EnumRouterName.search_capital_flow_tab,
+    components: {
+        BtnList,
+    },
+    setup() {
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList<WrPerformancePlan>();
+        // 获取列表数据
+        const queryTableAction = () => {
+            const param: QueryAmountLogReq = {
+                accountID: getSelectedAccountId().toString(),
+            };
+
+            queryTable(queryAmountLog, param);
+        };
+        // 表格通用逻辑
+        const param: ComposeOrderTableParam = {
+            queryFn: queryTableAction,
+            tableName: 'table_pcweb_spot_trade_bottom_funding_info_log',
+            recordList: getRecordItemTab(),
+        };
+        // 资金变化,重新加载数据
+        Bus.$on('moneyChangedNtf_UI', () => {
+            queryTableAction();
+        });
+        return {
+            ...handleComposeOrderTable<WrPerformancePlan>(param),
+            loading,
+            tableList,
+            formatTime,
+            expandIcon,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+</style>;

+ 2 - 2
src/views/search/search_document_records/search_document_records/index.vue → src/views/search/search_document_records/search_commodity_contract/index.vue

@@ -16,12 +16,12 @@ import { EnumRouterName } from '@/common/constants/enumRouterName';
 import { handleMartketThirdRouter } from '@/common/setup/matket/router';
 
 export default defineComponent({
-    name: EnumRouterName.search_document_records,
+    name: EnumRouterName.search_commodity_contract,
     components: {
         ThridMenu,
     },
     setup() {
-        return { ...handleMartketThirdRouter(EnumRouterName.search_document_records) };
+        return { ...handleMartketThirdRouter(EnumRouterName.search_commodity_contract) };
     },
 });
 </script>

+ 1 - 2
src/views/search/search_document_records/search_document_records/search_spot_warrant_listing_record/index.vue → src/views/search/search_document_records/search_commodity_contract/search_document_records_commission_record/index.vue

@@ -22,7 +22,7 @@ import { queryOrderQuote } from '@/services/go/wrtrade';
 import { handleComposeTable } from '@/views/market/spot_trade/setup';
 
 export default defineComponent({
-    name: EnumRouterName.search_document_records,
+    name: EnumRouterName.search_document_records_commission_record,
     setup() {
         // 表格列表数据
         const { loading, tableList, queryTable } = queryTableList<WrOrderQuote>();
@@ -45,7 +45,6 @@ export default defineComponent({
 
         return {
             ...handleComposeTable<WrOrderQuote>(param),
-            name: EnumRouterName.warehouse_pre_sale_price,
             loading,
             tableList,
         };

+ 1 - 2
src/views/search/search_document_records/search_document_records/search_spot_warrant_protocol_specified_record/index.vue → src/views/search/search_document_records/search_commodity_contract/search_document_records_contract_summary/index.vue

@@ -22,7 +22,7 @@ import { queryOrderQuote } from '@/services/go/wrtrade';
 import { handleComposeTable } from '@/views/market/spot_trade/setup';
 
 export default defineComponent({
-    name: EnumRouterName.search_document_records,
+    name: EnumRouterName.search_document_records_contract_summary,
     setup() {
         // 表格列表数据
         const { loading, tableList, queryTable } = queryTableList<WrOrderQuote>();
@@ -45,7 +45,6 @@ export default defineComponent({
 
         return {
             ...handleComposeTable<WrOrderQuote>(param),
-            name: EnumRouterName.warehouse_pre_sale_price,
             loading,
             tableList,
         };

+ 1 - 2
src/views/search/search_document_records/search_document_records/search_spot_warrant_transaction_record/index.vue → src/views/search/search_document_records/search_commodity_contract/search_document_records_delivery_record/index.vue

@@ -22,7 +22,7 @@ import { queryOrderQuote } from '@/services/go/wrtrade';
 import { handleComposeTable } from '@/views/market/spot_trade/setup';
 
 export default defineComponent({
-    name: EnumRouterName.search_document_records,
+    name: EnumRouterName.search_document_records_delivery_record,
     setup() {
         // 表格列表数据
         const { loading, tableList, queryTable } = queryTableList<WrOrderQuote>();
@@ -45,7 +45,6 @@ export default defineComponent({
 
         return {
             ...handleComposeTable<WrOrderQuote>(param),
-            name: EnumRouterName.warehouse_pre_sale_price,
             loading,
             tableList,
         };

+ 55 - 0
src/views/search/search_document_records/search_commodity_contract/search_document_records_transaction_record/index.vue

@@ -0,0 +1,55 @@
+<template>
+  <!-- 单据记录 商品合约-->
+  <div class="topTableHeight">
+    <a-table :columns="columns"
+             class="srcollYTable"
+             :scroll="{ x: '100%', y: 'calc(100vh - 479px)' }"
+             :pagination="false"
+             :loading="loading"
+             :expandedRowKeys="expandedRowKeys"
+             :customRow="Rowclick"
+             rowKey="key"
+             :data-source="tableList">
+    </a-table>
+  </div>
+</template>
+
+<script lang="ts">
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+import { queryTableList, defineComponent, ComposeTableParam } from '@/common/export/commonTable';
+import { QueryOrderQuoteReq, WrOrderQuote } from '@/services/go/wrtrade/interface';
+import { queryOrderQuote } from '@/services/go/wrtrade';
+import { handleComposeTable } from '@/views/market/spot_trade/setup';
+
+export default defineComponent({
+    name: EnumRouterName.search_document_records_transaction_record,
+    setup() {
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList<WrOrderQuote>();
+        // 获取列表数据
+        const queryTableAction = () => {
+            const param: QueryOrderQuoteReq = {
+                wrpricetype: 1,
+                haswr: 0,
+            };
+            queryTable(queryOrderQuote, param);
+        };
+        // 表格通用逻辑
+        const param: ComposeTableParam = {
+            queryFn: queryTableAction,
+            menuType: EnumRouterName.warehouse_pre_sale_price,
+            tableName: 'table_pcweb_spot_trade_warehouse_sale_price',
+            tableFilterKey: [],
+            isDetail: false,
+        };
+
+        return {
+            ...handleComposeTable<WrOrderQuote>(param),
+            loading,
+            tableList,
+        };
+    },
+});
+</script>
+<style lang="less">
+</style>

+ 71 - 0
src/views/search/search_document_records/search_pre_sale_warehouse_receipt/search_pre_sale_warehouse_receipt_commission_record/index.vue

@@ -0,0 +1,71 @@
+<template>
+  <!--  单据记录 预售仓单 委托记录 -->
+  <div class="topTableHeight">
+    <a-table :columns="columns"
+             class="srcollYTable expandLeftTable"
+             :scroll="{ x: '100%', y: '227px' }"
+             :pagination="false"
+             :loading="loading"
+             :expandedRowKeys="expandedRowKeys"
+             :customRow="Rowclick"
+             :expandIcon="expandIcon"
+             :expandIconAsCell="false"
+             rowKey="key"
+             :data-source="tableList">
+      <!--  委托状态-->
+      <template #wrtradeorderstatus="{ record }">
+        <a>{{ getWrTradeOrderStatusName(record.wrtradeorderstatus) }}</a>
+      </template>
+      <!-- 挂牌类型 -->
+      <template #wrtradetype="{ record }">
+        <a>{{ getWrOrderTypeName(record.buyorsell, record.wrtradetype) }}</a>
+      </template>
+    </a-table>
+  </div>
+</template>
+
+<script lang="ts">
+import { enumOrderComponents } from '@/common/constants/enumOrderComponents';
+import { queryTableList, BtnList, defineAsyncComponent, defineComponent, ModalEnum } from '@/common/export/commonTable';
+import { queryWrOrderDetail } from '@/services/go/wrtrade';
+import { QueryWrOrderDetailReq, WrOrderDetail } from '@/services/go/wrtrade/interface';
+import { getRecordItemTab } from '@/common/setup/order/orderData';
+import { handleComposeOrderTable } from '@/common/setup/table/compose';
+import { ComposeOrderTableParam } from '@/common/setup/table/interface';
+import { getWrOrderTypeName, getWrTradeOrderStatusName } from '@/common/constants/enumsName';
+import { BtnList as btnType } from '@/common/components/btnList/interface';
+import { expandIcon } from '@/common/setup/table/clolumn';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+
+export default defineComponent({
+    name: EnumRouterName.search_pre_sale_warehouse_receipt_commission_record,
+    setup() {
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList<WrOrderDetail>();
+        // 获取列表数据
+        const queryTableAction = () => {
+            const param: QueryWrOrderDetailReq = {
+                haswr: 0,
+            };
+            queryTable(queryWrOrderDetail, param);
+        };
+        // 表格通用逻辑
+        const param: ComposeOrderTableParam = {
+            queryFn: queryTableAction,
+            tableName: 'table_pcweb_spot_trade_bottom_pre_sale_pending_order',
+            recordList: getRecordItemTab(),
+        };
+        return {
+            ...handleComposeOrderTable<WrOrderDetail>(param),
+            loading,
+            tableList,
+            expandIcon,
+            getWrTradeOrderStatusName,
+            getWrOrderTypeName,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+</style>;

+ 59 - 0
src/views/search/search_document_records/search_pre_sale_warehouse_receipt/search_pre_sale_warehouse_receipt_order_summary/index.vue

@@ -0,0 +1,59 @@
+<template>
+  <!-- 单据记录 预售仓单 订单汇总 -->
+  <div class="topTableHeight">
+    <a-table :columns="columns"
+             class="srcollYTable expandLeftTable"
+             :scroll="{ x: '100%', y: '227px' }"
+             :pagination="false"
+             :loading="loading"
+             :expandedRowKeys="expandedRowKeys"
+             :customRow="Rowclick"
+             :expandIcon="expandIcon"
+             :expandIconAsCell="false"
+             rowKey="key"
+             :data-source="tableList">
+    </a-table>
+  </div>
+</template>
+
+<script lang="ts">
+import { enumOrderComponents } from '@/common/constants/enumOrderComponents';
+import { queryTableList, BtnList, defineAsyncComponent, defineComponent, ModalEnum } from '@/common/export/commonTable';
+import { queryWrPosition } from '@/services/go/wrtrade';
+import { QueryWrPositionReq, WrPosition } from '@/services/go/wrtrade/interface';
+import { getRecordItemTab } from '@/common/setup/order/orderData';
+import { handleComposeOrderTable } from '@/common/setup/table/compose';
+import { ComposeOrderTableParam } from '@/common/setup/table/interface';
+import { expandIcon } from '@/common/setup/table/clolumn';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+export default defineComponent({
+    name: EnumRouterName.search_pre_sale_warehouse_receipt_order_summary,
+    setup() {
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList<WrPosition>();
+        // 获取列表数据
+        const queryTableAction = () => {
+            const param: QueryWrPositionReq = {
+                haswr: 0,
+                querytype: 2,
+            };
+            queryTable(queryWrPosition, param);
+        };
+        // 表格通用逻辑
+        const param: ComposeOrderTableParam = {
+            queryFn: queryTableAction,
+            tableName: 'table_pcweb_spot_trade_bottom_pre_sale_order_summary',
+            recordList: getRecordItemTab(),
+        };
+        return {
+            ...handleComposeOrderTable<WrPosition>(param),
+            loading,
+            tableList,
+            expandIcon,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+</style>;

+ 55 - 0
src/views/search/search_document_records/search_pre_sale_warehouse_receipt/search_pre_sale_warehouse_receipt_protocol_specified_record/index.vue

@@ -0,0 +1,55 @@
+<template>
+  <!-- 单据记录 商品合约-->
+  <div class="topTableHeight">
+    <a-table :columns="columns"
+             class="srcollYTable"
+             :scroll="{ x: '100%', y: 'calc(100vh - 479px)' }"
+             :pagination="false"
+             :loading="loading"
+             :expandedRowKeys="expandedRowKeys"
+             :customRow="Rowclick"
+             rowKey="key"
+             :data-source="tableList">
+    </a-table>
+  </div>
+</template>
+
+<script lang="ts">
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+import { queryTableList, defineComponent, ComposeTableParam } from '@/common/export/commonTable';
+import { QueryOrderQuoteReq, WrOrderQuote } from '@/services/go/wrtrade/interface';
+import { queryOrderQuote } from '@/services/go/wrtrade';
+import { handleComposeTable } from '@/views/market/spot_trade/setup';
+
+export default defineComponent({
+    name: EnumRouterName.search_pre_sale_warehouse_receipt_protocol_specified_record,
+    setup() {
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList<WrOrderQuote>();
+        // 获取列表数据
+        const queryTableAction = () => {
+            const param: QueryOrderQuoteReq = {
+                wrpricetype: 1,
+                haswr: 0,
+            };
+            queryTable(queryOrderQuote, param);
+        };
+        // 表格通用逻辑
+        const param: ComposeTableParam = {
+            queryFn: queryTableAction,
+            menuType: EnumRouterName.warehouse_pre_sale_price,
+            tableName: 'table_pcweb_spot_trade_warehouse_sale_price',
+            tableFilterKey: [],
+            isDetail: false,
+        };
+
+        return {
+            ...handleComposeTable<WrOrderQuote>(param),
+            loading,
+            tableList,
+        };
+    },
+});
+</script>
+<style lang="less">
+</style>

+ 60 - 0
src/views/search/search_document_records/search_pre_sale_warehouse_receipt/search_pre_sale_warehouse_receipt_transaction_record/index.vue

@@ -0,0 +1,60 @@
+<template>
+  <!--  单据记录 预售仓单 成交记录 -->
+  <div class="topTableHeight">
+    <a-table :columns="columns"
+             class="srcollYTable expandLeftTable"
+             :scroll="{ x: '100%', y: '227px' }"
+             :pagination="false"
+             :loading="loading"
+             :expandedRowKeys="expandedRowKeys"
+             :customRow="Rowclick"
+             :expandIcon="expandIcon"
+             :expandIconAsCell="false"
+             rowKey="key"
+             :data-source="tableList">
+
+    </a-table>
+  </div>
+</template>
+
+<script lang="ts">
+import { enumOrderComponents } from '@/common/constants/enumOrderComponents';
+import { queryTableList, BtnList, defineAsyncComponent, defineComponent } from '@/common/export/commonTable';
+import { queryWrTradeDetail } from '@/services/go/wrtrade';
+import { QueryWrSpecialMatchOrderReq, WrSpecialMatchOrder } from '@/services/go/wrtrade/interface';
+import { getRecordItemTab } from '@/common/setup/order/orderData';
+import { handleComposeOrderTable } from '@/common/setup/table/compose';
+import { ComposeOrderTableParam } from '@/common/setup/table/interface';
+import { expandIcon } from '@/common/setup/table/clolumn';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+
+export default defineComponent({
+    name: EnumRouterName.search_pre_sale_warehouse_receipt_transaction_record,
+    setup() {
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList<WrSpecialMatchOrder>();
+        // 获取列表数据
+        const queryTableAction = () => {
+            const param: QueryWrSpecialMatchOrderReq = {
+                haswr: 0,
+            };
+            queryTable(queryWrTradeDetail, param);
+        };
+        // 表格通用逻辑
+        const param: ComposeOrderTableParam = {
+            queryFn: queryTableAction,
+            tableName: 'table_pcweb_spot_trade_bottom_pre_sale_make_deal',
+            recordList: getRecordItemTab(),
+        };
+        return {
+            ...handleComposeOrderTable<WrSpecialMatchOrder>(param),
+            loading,
+            tableList,
+            expandIcon,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+</style>;

+ 73 - 0
src/views/search/search_document_records/search_spot_warrant/search_spot_warrant_listing_record/index.vue

@@ -0,0 +1,73 @@
+<template>
+  <!-- 单据记录 现货仓单 挂牌记录 -->
+  <div class="topTableHeight">
+    <a-table :columns="columns"
+             class="srcollYTable expandLeftTable"
+             :scroll="{ x: '100%', y: 'calc(100vh - 163px)' }"
+             :pagination="false"
+             :loading="loading"
+             :expandedRowKeys="expandedRowKeys"
+             :customRow="Rowclick"
+             :expandIcon="expandIcon"
+             :expandIconAsCell="false"
+             rowKey="key"
+             :data-source="tableList">
+      <!--  委托状态-->
+      <template #wrtradeorderstatus="{ record }">
+        <a>{{ getWrTradeOrderStatusName(record.wrtradeorderstatus) }}</a>
+      </template>
+      <!-- 挂牌类型 -->
+      <template #wrtradetype="{ record }">
+        <a>{{ getWrOrderTypeName(record.buyorsell, record.wrtradetype) }}</a>
+      </template>
+      <!-- 挂牌价格 -->
+    </a-table>
+  </div>
+</template>
+
+<script lang="ts">
+import { enumOrderComponents } from '@/common/constants/enumOrderComponents';
+import { queryTableList, BtnList, defineAsyncComponent, defineComponent, ModalEnum } from '@/common/export/commonTable';
+import { queryWrOrderDetail } from '@/services/go/wrtrade';
+import { QueryWrOrderDetailReq, WrOrderDetail } from '@/services/go/wrtrade/interface';
+import { getRecordItemTab } from '@/common/setup/order/orderData';
+import { handleComposeOrderTable } from '@/common/setup/table/compose';
+import { ComposeOrderTableParam } from '@/common/setup/table/interface';
+import { getWrOrderTypeName, getWrTradeOrderStatusName } from '@/common/constants/enumsName';
+import { BtnList as btnType } from '@/common/components/btnList/interface';
+import { expandIcon } from '@/common/setup/table/clolumn';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+
+export default defineComponent({
+    name: EnumRouterName.search_spot_warrant_listing_record,
+    setup() {
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList<WrOrderDetail>();
+        // 获取列表数据
+        const queryTableAction = () => {
+            const param: QueryWrOrderDetailReq = {
+                haswr: 1,
+            };
+            queryTable(queryWrOrderDetail, param);
+        };
+        // 表格通用逻辑
+        const param: ComposeOrderTableParam = {
+            queryFn: queryTableAction,
+            tableName: 'table_pcweb_spot_trade_bottom_spot_warrant_pending_order',
+            recordList: getRecordItemTab(),
+        };
+
+        return {
+            ...handleComposeOrderTable<WrOrderDetail>(param),
+            loading,
+            tableList,
+            getWrTradeOrderStatusName,
+            getWrOrderTypeName,
+            expandIcon,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+</style>;

+ 1 - 1
src/views/search/search_document_records/search_document_records/search_spot_warrant_warehouse_receipt_details/index.vue → src/views/search/search_document_records/search_spot_warrant/search_spot_warrant_protocol_specified_record/index.vue

@@ -22,7 +22,7 @@ import { queryOrderQuote } from '@/services/go/wrtrade';
 import { handleComposeTable } from '@/views/market/spot_trade/setup';
 
 export default defineComponent({
-    name: EnumRouterName.search_document_records,
+    name: EnumRouterName.search_spot_warrant_protocol_specified_record,
     setup() {
         // 表格列表数据
         const { loading, tableList, queryTable } = queryTableList<WrOrderQuote>();

+ 71 - 0
src/views/search/search_document_records/search_spot_warrant/search_spot_warrant_transaction_record/index.vue

@@ -0,0 +1,71 @@
+<template>
+  <!-- 单据记录 现货仓单 成交记录 -->
+  <div class="topTableHeight">
+    <a-table :columns="columns"
+             class="srcollYTable expandLeftTable"
+             :scroll="{ x: '100%', y:'calc(100vh - 163px)'}"
+             :pagination="false"
+             :loading="loading"
+             :expandedRowKeys="expandedRowKeys"
+             :customRow="Rowclick"
+             :expandIcon="expandIcon"
+             :expandIconAsCell="false"
+             rowKey="key"
+             :data-source="tableList">
+
+      <!-- 成交金额 -->
+      <template #amount="{ record }">
+        <a>{{ record.tradeqty * record.tradeprice }}</a>
+      </template>
+
+      <!-- 挂牌类型 -->
+      <template #wrtradetype="{ record }">
+        <a>{{ getWrOrderTypeName(record.buyorsell, record.wrtradetype) }}</a>
+      </template>
+    </a-table>
+  </div>
+</template>
+
+<script lang="ts">
+import { enumOrderComponents } from '@/common/constants/enumOrderComponents';
+import { queryTableList, BtnList, defineAsyncComponent, defineComponent } from '@/common/export/commonTable';
+import { queryWrTradeDetail } from '@/services/go/wrtrade';
+import { QueryWrSpecialMatchOrderReq, WrSpecialMatchOrder } from '@/services/go/wrtrade/interface';
+import { getRecordItemTab } from '@/common/setup/order/orderData';
+import { handleComposeOrderTable } from '@/common/setup/table/compose';
+import { ComposeOrderTableParam } from '@/common/setup/table/interface';
+import { expandIcon } from '@/common/setup/table/clolumn';
+import { getWrOrderTypeName } from '@/common/constants/enumsName';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+
+export default defineComponent({
+    name: EnumRouterName.search_spot_warrant_transaction_record,
+    setup() {
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList<WrSpecialMatchOrder>();
+        // 获取列表数据
+        const queryTableAction = () => {
+            const param: QueryWrSpecialMatchOrderReq = {
+                haswr: 1,
+            };
+            queryTable(queryWrTradeDetail, param);
+        };
+        // 表格通用逻辑
+        const param: ComposeOrderTableParam = {
+            queryFn: queryTableAction,
+            tableName: 'table_pcweb_spot_trade_bottom_spot_warrant_deal',
+            recordList: getRecordItemTab(),
+        };
+        return {
+            ...handleComposeOrderTable<WrSpecialMatchOrder>(param),
+            loading,
+            tableList,
+            expandIcon,
+            getWrOrderTypeName,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+</style>;

+ 55 - 0
src/views/search/search_document_records/search_spot_warrant/search_spot_warrant_warehouse_receipt_details/index.vue

@@ -0,0 +1,55 @@
+<template>
+  <!-- 单据记录 现货仓单 现货明细 -->
+  <div class="topTableHeight">
+    <a-table :columns="columns"
+             class="srcollYTable expandLeftTable"
+             :scroll="{ x: '100%', y: '227px' }"
+             :pagination="false"
+             :loading="loading"
+             :expandedRowKeys="expandedRowKeys"
+             :customRow="Rowclick"
+             :expandIcon="expandIcon"
+             :expandIconAsCell="false"
+             rowKey="key"
+             :data-source="tableList">
+    </a-table>
+  </div>
+</template>
+
+<script lang="ts">
+import { enumOrderComponents } from '@/common/constants/enumOrderComponents';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+import { queryTableList, BtnList, contextMenu, defineAsyncComponent, defineComponent, ModalEnum, ComposeTableParam, handleComposeTable } from '@/common/export/commonTable';
+import { queryHoldLB, queryWrOrderDetail, queryWrPosition } from '@/services/go/wrtrade';
+import { QueryHoldLBReq, QueryWrOrderDetailReq, QueryWrPositionReq, WrHoldLB, WrOrderDetail, WrPosition } from '@/services/go/wrtrade/interface';
+import { getRecordItemTab } from '@/common/setup/order/orderData';
+import { handleComposeOrderTable } from '@/common/setup/table/compose';
+import { ComposeOrderTableParam } from '@/common/setup/table/interface';
+import { expandIcon } from '@/common/setup/table/clolumn';
+export default defineComponent({
+    name: EnumRouterName.search_spot_warrant_warehouse_receipt_details,
+    setup() {
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList<WrHoldLB>();
+        // 获取列表数据
+        const queryTableAction = () => {
+            queryTable(queryHoldLB);
+        };
+        // 表格通用逻辑
+        const param: ComposeOrderTableParam = {
+            queryFn: queryTableAction,
+            tableName: 'table_pcweb_spot_trade_bottom_spot_warrant_spot_detail',
+            recordList: getRecordItemTab(),
+        };
+        return {
+            ...handleComposeOrderTable<WrHoldLB>(param),
+            loading,
+            tableList,
+            expandIcon,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+</style>;

+ 85 - 0
src/views/search/search_financing_inquiry/search_financing_inquiry_apply_order/index.vue

@@ -0,0 +1,85 @@
+<template>
+  <!-- 融资查询 申请单 -->
+  <section>
+    <a-table :columns="columns"
+             class="srcollYTable expandLeftTable"
+             :scroll="{ x: '100%', y: 'calc(100vh - 163px)' }"
+             :pagination="false"
+             :loading="loading"
+             :expandedRowKeys="expandedRowKeys"
+             :customRow="Rowclick"
+             :expandIcon="expandIcon"
+             :expandIconAsCell="false"
+             rowKey="key"
+             :data-source="tableList">
+      <!-- 类型 -->
+      <template #financetype="{ record }">
+        <a>{{ getFinanceTypeName(record.financetype) }}</a>
+      </template>
+
+      <!-- 状态 -->
+      <template #applystatus="{ text }">
+        <a>{{ getApplyStatusFinanceName(text) }}</a>
+      </template>
+
+      <template #createtime="{ record }">
+        <a>{{ formatTime(record.createtime) }}</a>
+      </template>
+
+      <!-- 结算方式 1:按日结息 3:按月结息-->
+      <template #interestsettlemode="{ record }">
+        <a>{{ getInterestSettleModeName(record.interestsettlemode) }}</a>
+      </template>
+      <!-- 费用 -->
+      <template #interestsettlevalue="{ record }">
+        <a>{{ getInterestrateModeName(record.interestratemode, record.interestrate) }}</a>
+      </template>
+
+    </a-table>
+  </section>
+</template>
+
+<script lang="ts">
+import { queryTableList, defineComponent } from '@/common/export/commonTable';
+import { queryWrFinanceBuyApply } from '@/services/go/wrtrade';
+import { WrFinanceBuyApply } from '@/services/go/wrtrade/interface';
+import { getRecordItemTab } from '@/common/setup/order/orderData';
+import { handleComposeOrderTable } from '@/common/setup/table/compose';
+import { ComposeOrderTableParam } from '@/common/setup/table/interface';
+import { formatTime } from '@/common/methods';
+import { expandIcon } from '@/common/setup/table/clolumn';
+import { getApplyStatusFinanceName, getFinanceTypeName, getInterestrateModeName, getInterestSettleModeName } from '@/common/constants/enumsName';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+
+export default defineComponent({
+    name: EnumRouterName.search_financing_inquiry_apply_order,
+    setup() {
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList<WrFinanceBuyApply>();
+        // 获取列表数据
+        const queryTableAction = () => {
+            queryTable(queryWrFinanceBuyApply);
+        };
+        // 表格通用逻辑
+        const param: ComposeOrderTableParam = {
+            queryFn: queryTableAction,
+            tableName: 'table_pcweb_financing_manage_bottom_apply_order',
+            recordList: getRecordItemTab(),
+        };
+        return {
+            ...handleComposeOrderTable<WrFinanceBuyApply>(param),
+            loading,
+            tableList,
+            formatTime,
+            expandIcon,
+            getFinanceTypeName,
+            getApplyStatusFinanceName,
+            getInterestrateModeName,
+            getInterestSettleModeName,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+</style>;

+ 77 - 0
src/views/search/search_financing_inquiry/search_financing_inquiry_contract/index.vue

@@ -0,0 +1,77 @@
+<template>
+  <!-- 融资查询 合同 -->
+  <section>
+    <a-table :columns="columns"
+             class="srcollYTable expandLeftTable"
+             :scroll="{ x: '100%', y: 'calc(100vh - 163px)'}"
+             :pagination="false"
+             :loading="loading"
+             :expandedRowKeys="expandedRowKeys"
+             :customRow="Rowclick"
+             :expandIcon="expandIcon"
+             :expandIconAsCell="false"
+             rowKey="key"
+             :data-source="tableList">
+      <!-- 类型 -->
+      <template #financetype="{ record }">
+        <a>{{ getFinanceTypeName(record.financetype) }}</a>
+      </template>
+
+      <!-- 状态 -->
+      <template #scfcontractstatus="{ text }">
+        <a>{{ getContractName(text) }}</a>
+      </template>
+      <template #createtime="{ record }">
+        <a>{{ formatTime(record.createtime) }}</a>
+      </template>
+      <template #scfcontracttype="{ record }">
+        <a>{{ getScfContractTypeName(record.scfcontracttype) }}</a>
+      </template>
+
+    </a-table>
+  </section>
+</template>
+
+<script lang="ts">
+import { queryTableList, defineComponent } from '@/common/export/commonTable';
+import { queryWrScfContract } from '@/services/go/wrtrade';
+import { WrScfContract } from '@/services/go/wrtrade/interface';
+import { getRecordItemTab } from '@/common/setup/order/orderData';
+import { handleComposeOrderTable } from '@/common/setup/table/compose';
+import { ComposeOrderTableParam } from '@/common/setup/table/interface';
+import { formatTime } from '@/common/methods';
+import { expandIcon } from '@/common/setup/table/clolumn';
+import { getContractName, getFinanceTypeName, getScfContractTypeName } from '@/common/constants/enumsName';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+
+export default defineComponent({
+    name: EnumRouterName.search_financing_inquiry_contract,
+    setup() {
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList<WrScfContract>();
+        // 获取列表数据
+        const queryTableAction = () => {
+            queryTable(queryWrScfContract);
+        };
+        // 表格通用逻辑
+        const param: ComposeOrderTableParam = {
+            queryFn: queryTableAction,
+            tableName: 'table_pcweb_financing_manage_bottom_contract',
+            recordList: getRecordItemTab(),
+        };
+        return {
+            ...handleComposeOrderTable<WrScfContract>(param),
+            loading,
+            tableList,
+            formatTime,
+            expandIcon,
+            getContractName,
+            getFinanceTypeName,
+            getScfContractTypeName,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+</style>;

+ 85 - 0
src/views/search/search_performance_query/search_performance_query_buy_performance/index.vue

@@ -0,0 +1,85 @@
+<template>
+  <!-- 履约查询 买履约 -->
+  <section>
+    <a-table :columns="columns"
+             class="srcollYTable expandLeftTable"
+             :scroll="{ x: '100%', y: 'calc(100vh - 163px)'}"
+             :pagination="false"
+             :loading="loading"
+             :expandedRowKeys="expandedRowKeys"
+             :customRow="Rowclick"
+             :expandIcon="expandIcon"
+             :expandIconAsCell="false"
+             rowKey="key"
+             :data-source="tableList">
+      <!-- 履约类型 -->
+      <template #performancetype="{ record }">
+        <a>{{ getPerformanceTypeName(record.performancetype) }}</a>
+      </template>
+
+      <!-- 付款方式 -->
+      <template #paymenttype="{ record }">
+        <a>{{ getPaymentTypeName(record.paymenttype) }}</a>
+      </template>
+
+      <!-- 履约状态 -->
+      <template #performancestatus="{ record }">
+        <a>{{ getPerformanceStatusName(record.performancestatus) }}</a>
+      </template>
+
+      <!-- 当前步骤 -->
+      <template #curstepname="{ record }">
+        <a>{{ record.curstepname }}</a>
+      </template>
+    </a-table>
+  </section>
+</template>
+
+<script lang="ts">
+import { queryTableList, defineComponent, ModalEnum } from '@/common/export/commonTable';
+import { QueryPerformancePlan } from '@/services/go/wrtrade';
+import { QueryPerformancePlanReq, WrPerformancePlan } from '@/services/go/wrtrade/interface';
+import { getRecordItemTab } from '@/common/setup/order/orderData';
+import { handleComposeOrderTable } from '@/common/setup/table/compose';
+import { ComposeOrderTableParam } from '@/common/setup/table/interface';
+import { expandIcon } from '@/common/setup/table/clolumn';
+import { BtnList as BtnListType } from '@/common/components/btnList/interface';
+import { BuyOrSell } from '@/common/constants/enumCommon';
+import { getPaymentTypeName, getPerformanceStatusName, getPerformanceTypeName } from '@/common/constants/enumsName';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+export default defineComponent({
+    name: EnumRouterName.search_performance_query_buy_performance,
+    setup() {
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList<WrPerformancePlan>();
+        // 获取列表数据
+        const queryTableAction = () => {
+            const param: QueryPerformancePlanReq = {
+                buyorsell: 0,
+            };
+            queryTable(QueryPerformancePlan, param);
+        };
+        // 表格通用逻辑
+        const param: ComposeOrderTableParam = {
+            queryFn: queryTableAction,
+            tableName: 'table_pcweb_spot_trade_bottom_performance_info_buy',
+            recordList: getRecordItemTab(),
+        };
+
+        return {
+            ...handleComposeOrderTable<WrPerformancePlan>(param),
+            loading,
+            tableList,
+            getPerformanceTypeName,
+            getPerformanceStatusName,
+            getPaymentTypeName,
+            expandIcon,
+            BuyOrSell,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+</style>;
+

+ 83 - 0
src/views/search/search_performance_query/search_performance_query_sell_performance/index.vue

@@ -0,0 +1,83 @@
+<template>
+  <!-- 履约查询 卖履约 -->
+  <section>
+    <a-table :columns="columns"
+             class="srcollYTable expandLeftTable"
+             :scroll="{ x: '100%', y: 'calc(100vh - 163px)'}"
+             :pagination="false"
+             :loading="loading"
+             :expandedRowKeys="expandedRowKeys"
+             :customRow="Rowclick"
+             :expandIcon="expandIcon"
+             :expandIconAsCell="false"
+             rowKey="key"
+             :data-source="tableList">
+      <!-- 履约类型 -->
+      <template #performancetype="{ record }">
+        <a>{{ getPerformanceTypeName(record.performancetype) }}</a>
+      </template>
+
+      <!-- 付款方式 -->
+      <template #paymenttype="{ record }">
+        <a>{{ getPaymentTypeName(record.paymenttype) }}</a>
+      </template>
+
+      <!-- 履约状态 -->
+      <template #performancestatus="{ record }">
+        <a>{{ getPerformanceStatusName(record.performancestatus) }}</a>
+      </template>
+
+      <!-- 当前步骤 -->
+      <template #curstepname="{ record }">
+        <a>{{ record.curstepname }}</a>
+      </template>
+    </a-table>
+  </section>
+</template>
+
+<script lang="ts">
+import { queryTableList, defineComponent } from '@/common/export/commonTable';
+import { QueryPerformancePlan } from '@/services/go/wrtrade';
+import { QueryPerformancePlanReq, WrPerformancePlan } from '@/services/go/wrtrade/interface';
+import { getRecordItemTab } from '@/common/setup/order/orderData';
+import { handleComposeOrderTable } from '@/common/setup/table/compose';
+import { expandIcon } from '@/common/setup/table/clolumn';
+import { ComposeOrderTableParam } from '@/common/setup/table/interface';
+import { BuyOrSell } from '@/common/constants/enumCommon';
+import { getPaymentTypeName, getPerformanceStatusName, getPerformanceTypeName } from '@/common/constants/enumsName';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+
+export default defineComponent({
+    name: EnumRouterName.search_performance_query_sell_performance,
+    setup() {
+        // 表格列表数据
+        const { loading, tableList, queryTable } = queryTableList<WrPerformancePlan>();
+        // 获取列表数据
+        const queryTableAction = () => {
+            const param: QueryPerformancePlanReq = {
+                buyorsell: 1,
+            };
+            queryTable(QueryPerformancePlan, param);
+        };
+        // 表格通用逻辑
+        const param: ComposeOrderTableParam = {
+            queryFn: queryTableAction,
+            tableName: 'table_pcweb_spot_trade_bottom_performance_info_sale',
+            recordList: getRecordItemTab(),
+        };
+        return {
+            ...handleComposeOrderTable<WrPerformancePlan>(param),
+            loading,
+            tableList,
+            getPerformanceTypeName,
+            getPaymentTypeName,
+            getPerformanceStatusName,
+            expandIcon,
+            BuyOrSell,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+</style>;

Kaikkia tiedostoja ei voida näyttää, sillä liian monta tiedostoa muuttui tässä diffissä