import{r as t,s as e,j as s}from"./app-2b14cdc4.js";import a from"./index-f4b36cf5.js";import i from"./index-c512d74e.js";import r from"./index-b15a20a8.js";import{g as n,i as o}from"./dom-ce105537.js";import{t as l,a as u,b as h}from"./trade-8bf27581.js";import c from"./index-0d5f47b8.js";import{w as p,i as d}from"./local-b2ec0571.js";import{C as m}from"./index-5f3ff9e6.js";import g from"./index-3fab5880.js";import"./index-7ed829cd.js";import"./index-73c7edf8.js";import"./auth-d886836e.js";import"./trade-281a8bb7.js";import"./multipleUse-edb2f3d8.js";import"./TradeService-893f32e2.js";import"./index-d3bc68b3.js";import"./index-47cbd1bd.js";import"./index-dd54d262.js";import"./submit-b45fde64.js";const b="contract-trade",j="start-trade";class f extends t.Component{constructor(t){super(t),this.changeTableStatus=t=>{const e=Object.keys(this.state.tableStatus);for(let s=0;s<e.length;s++){const a=e[s];if(a===t){this.state.tableStatus[a]||(this.state.tableStatus[a]=!0);break}}},this.changeGroupButton=t=>{this.changeTableStatus(t),this.setState({currentGroupButton:t});const e=this.tradeSelectRef.getFilterParams(t);this.setState({filter:e}),"1"===t?this.holdingPositionRef.getTableList(e):"2"===t?this.currentConsignment.getTableList(e):"3"===t&&this.historyTransaction.getTableList(e)},this.getTableHeight=()=>{const t=document.getElementById(b);if(t){const e=n(t),s=document.documentElement.clientHeight-e.top;this.setState({minHeight:s+"px"})}},this.storeChange=()=>{e.dispatch({type:"count",data:1})},this.onCancelEntrust=()=>{this.currentConsignment.tableContractRevoke()},this.FilterChange=t=>{this.setState({filter:t}),this.getChildTableList(t)},this.getChildTableList=t=>{"1"===this.state.currentGroupButton?this.holdingPositionRef.getTableList(t):"2"===this.state.currentGroupButton?this.currentConsignment.getTableList(t):"3"===this.state.currentGroupButton&&this.historyTransaction.getTableList(t)},this.updateTotal=t=>{this.setState({currentEntrustNum:t})},this.state={minHeight:"",currentEntrustNum:0,currentGroupButton:"4",tableStatus:{[j]:!0,[l]:!1,[u]:!1,[h]:!1},filter:{},HelpData:{}}}get ComputedGroupButtons(){return[{label:"开始交易",value:"4"},{label:"持有资产",value:"1"},{label:`当前委托(${this.state.currentEntrustNum})`,value:"2"},{label:"历史成交",value:"3"}]}async componentDidMount(){this.getTableHeight();const t=await p();this.setState({HelpData:t})}getTableClass(){return["spread-out-table",d()?"spread-out-table__mobile":""].join(" ")}currentExtensionButtons(){switch(this.state.currentGroupButton){case l:return"";case u:return s.jsx("div",{className:"hold-position-extension",children:s.jsx(m,{onClick:this.onCancelEntrust,children:"多选撤销"})});case h:return""}}render(){return e.getState(),s.jsxs("div",{className:"contract-trade-table",id:this.props.id,style:this.props.style,children:[s.jsx("div",{className:"contract-trade-label",children:"现货交易"}),s.jsx("div",{className:"contract-trade-group",children:this.ComputedGroupButtons.map(((t,e)=>s.jsx("div",{className:t.value===this.state.currentGroupButton?"group-active":"",onClick:this.changeGroupButton.bind(this,t.value),children:t.label},t.value)))}),s.jsx(c,{ref:t=>this.tradeSelectRef=t,FilterChange:this.FilterChange,currentGroupButton:this.state.currentGroupButton,children:this.currentExtensionButtons()}),s.jsxs("div",{className:["contract-trade-table-box",d()?"contract-trade-table__mobile":""].join(" "),id:b,style:{minHeight:this.state.minHeight},children:[s.jsx(g,{"v-if":this.state.tableStatus[j],className:this.getTableClass(),HelpData:this.state.HelpData,style:{display:o("4"===this.state.currentGroupButton)}}),s.jsx(a,{"v-if":this.state.tableStatus[l],className:this.getTableClass(),ref:t=>this.holdingPositionRef=t,style:{display:o(this.state.currentGroupButton===l)}}),s.jsx(i,{"v-if":this.state.tableStatus[u],className:this.getTableClass(),filterParams:this.state.filter,ref:t=>this.currentConsignment=t,style:{display:o(this.state.currentGroupButton===u)},updateTotal:this.updateTotal}),s.jsx(r,{"v-if":this.state.tableStatus[h],className:this.getTableClass(),ref:t=>this.historyTransaction=t,style:{display:o(this.state.currentGroupButton===h)}})]})]})}}export{f as default};
