st-comp 0.0.129 → 0.0.130
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/VarietySearch.cjs +1 -1
- package/es/VarietySearch.js +998 -875
- package/es/style.css +1 -1
- package/lib/bundle.js +1 -1
- package/lib/bundle.umd.cjs +149 -149
- package/lib/{index-46222655.js → index-e645ca49.js} +12554 -12431
- package/lib/{python-477921cb.js → python-4970eb41.js} +1 -1
- package/lib/style.css +1 -1
- package/package.json +1 -1
- package/packages/VarietySearch/config.js +16 -4
- package/packages/VarietySearch/index.vue +111 -7
- package/src/pages/VarietySearch/index.vue +5 -1
package/es/VarietySearch.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const I=require("./base-ec05f348.cjs"),A=require("./el-form-item-7d32befa.cjs"),z=require("./el-table-column-dd8b62aa.cjs"),e=require("vue"),Y=require("./el-overlay-891dcc40.cjs"),X=require("./el-input-6c6f5bda.cjs"),Z=require("./el-input-number-0524d787.cjs");require("./el-tag-3b03d13e.cjs");const P=require("./el-select-928f8c19.cjs");require("./el-scrollbar-d1c3e7f7.cjs");const ee=require("./el-popper-f62316cd.cjs");require("./el-tooltip-0ea8fbf8.cjs");const te=require("./el-button-196807af.cjs"),S=require("./use-form-common-props-1b84d8f4.cjs"),q=require("./el-message-562e923d.cjs"),K=require("./_plugin-vue_export-helper-f246444f.cjs"),le=require("./index-80a2b137.cjs"),G=require("./event-61f49698.cjs"),ce=require("./index-8a0b1c53.cjs");require("./castArray-a45823fe.cjs");require("./debounce-b2ff12bd.cjs");require("./raf-8fc301fd.cjs");require("./vnode-7fbc61e1.cjs");require("./index-e1e83173.cjs");require("./refs-d00b710b.cjs");require("./scroll-41224831.cjs");require("./typescript-b63f8e83.cjs");require("./index-eea0bcb3.cjs");require("./config-provider-7cdfca4d.cjs");const ne=I.buildProps({modelValue:{type:[String,Number,Boolean],default:void 0},size:S.useSizeProp,disabled:Boolean,label:{type:[String,Number,Boolean],default:void 0},value:{type:[String,Number,Boolean],default:void 0},name:{type:String,default:void 0}}),de=I.buildProps({...ne,border:Boolean}),oe={[G.UPDATE_MODEL_EVENT]:s=>I.isString(s)||I.isNumber(s)||I.isBoolean(s),[G.CHANGE_EVENT]:s=>I.isString(s)||I.isNumber(s)||I.isBoolean(s)},ae=Symbol("radioGroupKey"),re=(s,y)=>{const v=e.ref(),u=e.inject(ae,void 0),k=e.computed(()=>!!u),C=e.computed(()=>I.isPropAbsent(s.value)?s.label:s.value),i=e.computed({get(){return k.value?u.modelValue:s.modelValue},set(o){k.value?u.changeEvent(o):y&&y(G.UPDATE_MODEL_EVENT,o),v.value.checked=s.modelValue===C.value}}),l=S.useFormSize(e.computed(()=>u==null?void 0:u.size)),E=S.useFormDisabled(e.computed(()=>u==null?void 0:u.disabled)),B=e.ref(!1),m=e.computed(()=>E.value||k.value&&i.value!==C.value?-1:0);return ce.useDeprecated({from:"label act as value",replacement:"value",version:"3.0.0",scope:"el-radio",ref:"https://element-plus.org/en-US/component/radio.html"},e.computed(()=>k.value&&I.isPropAbsent(s.value))),{radioRef:v,isGroup:k,radioGroup:u,focus:B,size:l,disabled:E,tabIndex:m,modelValue:i,actualValue:C}},pe=e.defineComponent({name:"ElRadio"}),me=e.defineComponent({...pe,props:de,emits:oe,setup(s,{emit:y}){const v=s,u=I.useNamespace("radio"),{radioRef:k,radioGroup:C,focus:i,size:l,disabled:E,modelValue:B,actualValue:m}=re(v,y);function o(){e.nextTick(()=>y("change",B.value))}return(N,O)=>{var r;return e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass([e.unref(u).b(),e.unref(u).is("disabled",e.unref(E)),e.unref(u).is("focus",e.unref(i)),e.unref(u).is("bordered",N.border),e.unref(u).is("checked",e.unref(B)===e.unref(m)),e.unref(u).m(e.unref(l))])},[e.createElementVNode("span",{class:e.normalizeClass([e.unref(u).e("input"),e.unref(u).is("disabled",e.unref(E)),e.unref(u).is("checked",e.unref(B)===e.unref(m))])},[e.withDirectives(e.createElementVNode("input",{ref_key:"radioRef",ref:k,"onUpdate:modelValue":t=>e.isRef(B)?B.value=t:null,class:e.normalizeClass(e.unref(u).e("original")),value:e.unref(m),name:N.name||((r=e.unref(C))==null?void 0:r.name),disabled:e.unref(E),checked:e.unref(B)===e.unref(m),type:"radio",onFocus:t=>i.value=!0,onBlur:t=>i.value=!1,onChange:o,onClick:e.withModifiers(()=>{},["stop"])},null,42,["onUpdate:modelValue","value","name","disabled","checked","onFocus","onBlur","onClick"]),[[e.vModelRadio,e.unref(B)]]),e.createElementVNode("span",{class:e.normalizeClass(e.unref(u).e("inner"))},null,2)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(u).e("label")),onKeydown:e.withModifiers(()=>{},["stop"])},[e.renderSlot(N.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(N.label),1)])],42,["onKeydown"])],2)}}});var fe=I._export_sfc(me,[["__file","radio.vue"]]);const ve=I.buildProps({...ne}),ge=e.defineComponent({name:"ElRadioButton"}),ke=e.defineComponent({...ge,props:ve,setup(s){const y=s,v=I.useNamespace("radio"),{radioRef:u,focus:k,size:C,disabled:i,modelValue:l,radioGroup:E,actualValue:B}=re(y),m=e.computed(()=>({backgroundColor:(E==null?void 0:E.fill)||"",borderColor:(E==null?void 0:E.fill)||"",boxShadow:E!=null&&E.fill?`-1px 0 0 0 ${E.fill}`:"",color:(E==null?void 0:E.textColor)||""}));return(o,N)=>{var O;return e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass([e.unref(v).b("button"),e.unref(v).is("active",e.unref(l)===e.unref(B)),e.unref(v).is("disabled",e.unref(i)),e.unref(v).is("focus",e.unref(k)),e.unref(v).bm("button",e.unref(C))])},[e.withDirectives(e.createElementVNode("input",{ref_key:"radioRef",ref:u,"onUpdate:modelValue":r=>e.isRef(l)?l.value=r:null,class:e.normalizeClass(e.unref(v).be("button","original-radio")),value:e.unref(B),type:"radio",name:o.name||((O=e.unref(E))==null?void 0:O.name),disabled:e.unref(i),onFocus:r=>k.value=!0,onBlur:r=>k.value=!1,onClick:e.withModifiers(()=>{},["stop"])},null,42,["onUpdate:modelValue","value","name","disabled","onFocus","onBlur","onClick"]),[[e.vModelRadio,e.unref(l)]]),e.createElementVNode("span",{class:e.normalizeClass(e.unref(v).be("button","inner")),style:e.normalizeStyle(e.unref(l)===e.unref(B)?e.unref(m):{}),onKeydown:e.withModifiers(()=>{},["stop"])},[e.renderSlot(o.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(o.label),1)])],46,["onKeydown"])],2)}}});var ue=I._export_sfc(ke,[["__file","radio-button.vue"]]);const ye=I.buildProps({id:{type:String,default:void 0},size:S.useSizeProp,disabled:Boolean,modelValue:{type:[String,Number,Boolean],default:void 0},fill:{type:String,default:""},textColor:{type:String,default:""},name:{type:String,default:void 0},validateEvent:{type:Boolean,default:!0},...ee.useAriaProps(["ariaLabel"])}),Ve=oe,be=e.defineComponent({name:"ElRadioGroup"}),_e=e.defineComponent({...be,props:ye,emits:Ve,setup(s,{emit:y}){const v=s,u=I.useNamespace("radio"),k=I.useId(),C=e.ref(),{formItem:i}=S.useFormItem(),{inputId:l,isLabeledByFormItem:E}=S.useFormItemInputId(v,{formItemContext:i}),B=o=>{y(G.UPDATE_MODEL_EVENT,o),e.nextTick(()=>y("change",o))};e.onMounted(()=>{const o=C.value.querySelectorAll("[type=radio]"),N=o[0];!Array.from(o).some(O=>O.checked)&&N&&(N.tabIndex=0)});const m=e.computed(()=>v.name||k.value);return e.provide(ae,e.reactive({...e.toRefs(v),changeEvent:B,name:m})),e.watch(()=>v.modelValue,()=>{v.validateEvent&&(i==null||i.validate("change").catch(o=>I.debugWarn(o)))}),(o,N)=>(e.openBlock(),e.createElementBlock("div",{id:e.unref(l),ref_key:"radioGroupRef",ref:C,class:e.normalizeClass(e.unref(u).b("group")),role:"radiogroup","aria-label":e.unref(E)?void 0:o.ariaLabel||"radio-group","aria-labelledby":e.unref(E)?e.unref(i).labelId:void 0},[e.renderSlot(o.$slots,"default")],10,["id","aria-label","aria-labelledby"]))}});var ie=I._export_sfc(_e,[["__file","radio-group.vue"]]);const Q=I.withInstall(fe,{RadioButton:ue,RadioGroup:ie}),J=I.withNoopInstall(ie),he=I.withNoopInstall(ue);const H={varietyMarket:{show:!0,options:[{label:"ETF",value:2,memo:[]},{label:"A股",value:3,memo:[4,6,12,14,15]},{label:"期货",value:4,memo:[1,2,3,5,7,8,9,10]},{label:"港股",value:5,memo:[4,6,14]},{label:"外盘",value:6,memo:[1,2,3,5,7,8,9,10]},{label:"美股",value:7,memo:[4,6,14]},{label:"期权",value:8,memo:[11]}]},commonOption:{show:!0,options:[{label:"个股",value:14},{label:"期货主连",value:1},{label:"期货主力",value:2},{label:"期货加权",value:3},{label:"常用股票指数",value:4},{label:"期货收益率指数",value:5},{label:"行业板块指数",value:6},{label:"期货次主连",value:7},{label:"期货次主力",value:8},{label:"期货板块收益率指数",value:9},{label:"期货板块加权指数",value:10},{label:"期权",value:11},{label:"价差板块指数",value:12},{label:"概念板块指数",value:15}]},marketIds:{show:!0,options:[]},customTag:{show:!0,options:[]},factorScreen:{show:!0,sqlShow:!1,cycleShow:!0,cycleDefault:null,cycleOptions:[],factorOptions:[],factorDescriptions:[]},commonIndicator:{show:!0,options:[{key:"marketCapital",label:"总市值",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[null,10],unit:["亿","亿"],text:"≤10亿"},{range:[null,25],unit:["亿","亿"],text:"≤25亿"},{range:[null,50],unit:["亿","亿"],text:"≤50亿"},{range:[20,50],unit:["亿","亿"],text:"20亿~50亿"},{range:[100,null],unit:["亿","亿"],text:"≥100亿"},{range:[200,null],unit:["亿","亿"],text:"≥200亿"},{range:[500,null],unit:["亿","亿"],text:"≥500亿"},{range:[1e3,null],unit:["亿","亿"],text:"≥1000亿"}],defaultUnit:["亿","亿"],unitOptions:["元","千万","亿"]},{key:"floatMarketCapital",label:"流通市值",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[null,5],unit:["亿","亿"],text:"≤5亿"},{range:[null,20],unit:["亿","亿"],text:"≤20亿"},{range:[null,50],unit:["亿","亿"],text:"≤50亿"},{range:[null,100],unit:["亿","亿"],text:"≤100亿"},{range:[100,null],unit:["亿","亿"],text:"≥100亿"},{range:[200,null],unit:["亿","亿"],text:"≥200亿"},{range:[500,null],unit:["亿","亿"],text:"≥500亿"},{range:[1e3,null],unit:["亿","亿"],text:"≥1000亿"}],defaultUnit:["亿","亿"],unitOptions:["元","千万","亿"]},{key:"totalShares",label:"总股本",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[null,5],unit:["亿","亿"],text:"≤5亿"},{range:[null,10],unit:["亿","亿"],text:"≤10亿"},{range:[null,75],unit:["亿","亿"],text:"≤75亿"},{range:[10,75],unit:["亿","亿"],text:"10亿~75亿"},{range:[100,null],unit:["亿","亿"],text:"≥100亿"}],defaultUnit:["亿","亿"],unitOptions:["元","千万","亿"]},{key:"freeFloatShares",label:"流通股本",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[null,5],unit:["千万","千万"],text:"≤5千万"},{range:[5,3],unit:["千万","亿"],text:"5千万~3亿"},{range:[null,5],unit:["亿","亿"],text:"≤5亿"},{range:[null,10],unit:["亿","亿"],text:"≤10亿"},{range:[8,30],unit:["亿","亿"],text:"8亿~30亿"},{range:[30,null],unit:["亿","亿"],text:"≥30亿"}],defaultUnit:["亿","亿"],unitOptions:["元","千万","亿"]},{key:"turnoverRate",label:"换手率(实)",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[null,1],unit:["%","%"],text:"≤1%"},{range:[1,5],unit:["%","%"],text:"1%~5%"},{range:[5,10],unit:["%","%"],text:"5%~10%"},{range:[10,null],unit:["%","%"],text:"≥10%"}],defaultUnit:["%","%"],unitOptions:["%"]},{key:"peTtm",label:"市盈率",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[null,0],unit:[],text:"亏损"},{range:[0,null],unit:[],text:"≥0"},{range:[0,20],unit:[],text:"0~20"},{range:[20,40],unit:[],text:"20~40"},{range:[40,100],unit:[],text:"40~100"},{range:[100,null],unit:[],text:"≥100"}],defaultUnit:[],unitOptions:[]},{key:"eps",label:"每股净收益",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[null,0],unit:["元","元"],text:"≤0"},{range:[0,null],unit:["元","元"],text:"≥0"},{range:[.2,null],unit:["元","元"],text:"≥0.2元"},{range:[.5,null],unit:["元","元"],text:"≥0.5元"},{range:[1,null],unit:["元","元"],text:"≥1元"},{range:[2,null],unit:["元","元"],text:"≥2元"}],defaultUnit:["元","元"],unitOptions:["元"]},{key:"st",label:"是否ST",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},type:"custom"},{key:"pb",label:"市净率",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[0,null],unit:[],text:"≥0"},{range:[0,1],unit:[],text:"0~1"},{range:[1,2],unit:[],text:"1~2"},{range:[0,3],unit:[],text:"0~3"},{range:[3,null],unit:[],text:"≥3"}],defaultUnit:[],unitOptions:[]},{key:"mnShr",label:"成交额",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[0,1],unit:["亿","亿"],text:"0~1亿"},{range:[0,5],unit:["亿","亿"],text:"0~5亿"},{range:[0,10],unit:["亿","亿"],text:"0~10亿"},{range:[10,null],unit:["亿","亿"],text:"≥10亿"},{range:[50,null],unit:["亿","亿"],text:"≥50亿"},{range:[100,null],unit:["亿","亿"],text:"≥100亿"}],defaultUnit:["亿","亿"],unitOptions:["元","千万","亿"],showRankType:!0,defaultRadioType:"1",defaultRankRange:[0,25]},{key:"roe",label:"净资产收益率roe",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[null,0],unit:["%","%"],text:"<0"},{range:[0,null],unit:["%","%"],text:">0"},{range:[10,null],unit:["%","%"],text:">10%"},{range:[15,null],unit:["%","%"],text:">15%"},{range:[20,null],unit:["%","%"],text:">20%"},{range:[30,null],unit:["%","%"],text:">30%"}],defaultUnit:["%","%"],unitOptions:["%"]},{key:"tFeaturelncomes",label:"净利润",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},type:"custom"},{key:"dividendYield",label:"股息率",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[null,1],unit:["%","%"],text:"≤1%"},{range:[1,5],unit:["%","%"],text:"1%~5%"},{range:[5,10],unit:["%","%"],text:"5%~10%"},{range:[10,null],unit:["%","%"],text:"≥10%"}],defaultUnit:["%","%"],unitOptions:["%"]},{key:"priceLevels",label:"股价分位",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},type:"custom"},{key:"peTtmLevels",label:"市盈率分位",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},type:"custom"},{key:"expireDays",label:"过期天数",parent:{varietyMarketIds:[8],commonOptionIds:[11]},convenientOptions:[],defaultUnit:["天","天"],unitOptions:["天"]},{key:"virtualRealDegree",label:"虚实度",parent:{varietyMarketIds:[8],commonOptionIds:[11]},convenientOptions:[],defaultUnit:["%","%"],unitOptions:["%"]},{key:"yearProfitRate",label:"年化收益率",parent:{varietyMarketIds:[8],commonOptionIds:[11]},convenientOptions:[],defaultUnit:["%","%"],unitOptions:["%"]},{key:"impliedVolatility",label:"隐含波动率",parent:{varietyMarketIds:[8],commonOptionIds:[11]},convenientOptions:[],defaultUnit:["%","%"],unitOptions:["%"]},{key:"levelMultiplier",label:"杠杆率",parent:{varietyMarketIds:[8],commonOptionIds:[11]},convenientOptions:[],defaultUnit:[],unitOptions:[]},{key:"turnover",label:"成交额(期权)",parent:{varietyMarketIds:[8],commonOptionIds:[11]},convenientOptions:[],defaultUnit:["万","万"],unitOptions:["万"],showRankType:!0,defaultRadioType:"1",defaultRankRange:[0,25]},{key:"volume",label:"成交量",parent:{varietyMarketIds:[8],commonOptionIds:[11]},convenientOptions:[],defaultUnit:[],unitOptions:[],showRankType:!0,defaultRadioType:"1",defaultRankRange:[0,25]},{key:"openInterest",label:"持仓量",parent:{varietyMarketIds:[8],commonOptionIds:[11]},convenientOptions:[],defaultUnit:[],unitOptions:[],showRankType:!0,defaultRadioType:"1",defaultRankRange:[0,25]},{key:"optionsCpType",label:"认沽认购",parent:{varietyMarketIds:[8],commonOptionIds:[11]},type:"custom"},{key:"optionGear",label:"期权档位",parent:{varietyMarketIds:[8],commonOptionIds:[11]},convenientOptions:[],defaultUnit:[],unitOptions:[]}]}},xe=(s,y,v)=>{!y[0]&&y[0]!==0&&!y[1]&&y[1]!==0?v(new Error("至少填写一个分数")):v()},W=s=>{const y=/(条件(\d+))/g;return s.match(y)||[]},Ne={__name:"FactorDescription",props:e.mergeModels({data:{type:Array,default:[]}},{visible:{default:!1},visibleModifiers:{}}),emits:["update:visible"],setup(s){const y=e.useModel(s,"visible");return(v,u)=>{const k=z.ElTableColumn,C=z.ElTable,i=Y.ElDialog;return e.openBlock(),e.createBlock(i,{modelValue:y.value,"onUpdate:modelValue":u[0]||(u[0]=l=>y.value=l),title:"因子使用说明",width:"1000","align-center":"","destroy-on-close":""},{default:e.withCtx(()=>[e.createVNode(C,{data:s.data,border:"",height:"500"},{default:e.withCtx(()=>[e.createVNode(k,{prop:"factorName",label:"因子名称",width:"200"}),e.createVNode(k,{prop:"factorDesc",label:"因子说明"}),e.createVNode(k,{prop:"factorScoreDefine",label:"分值定义"})]),_:1},8,["data"])]),_:1},8,["modelValue"])}}};const se=s=>(e.pushScopeId("data-v-ef576faa"),s=s(),e.popScopeId(),s),Ee={class:"factor-screen"},we={class:"custom-header"},Ce=["id"],Be={class:"form-row"},Oe={class:"index"},Ie={style:{display:"flex","align-items":"center",width:"100%",height:"24px"}},$e=se(()=>e.createElementVNode("span",null,"~",-1)),Te=se(()=>e.createElementVNode("span",null,"&&代表and,||代表or",-1)),Se={class:"dialog-footer"},qe={__name:"index",props:e.mergeModels({config:{type:Object,default:{sqlShow:!1,cycleShow:!0,cycleDefault:null,cycleOptions:[],factorOptions:[],factorDescriptions:[]}}},{data:{default:{list:[],sqlEnable:0,sqlValue:null}},dataModifiers:{}}),emits:["update:data"],setup(s){const y=s,v=e.useModel(s,"data"),u=e.ref(!1),k=e.ref(!1),C=e.ref(null),i=e.ref({list:[{cycle:y.config.cycleDefault??null,factor:null,score:[null,null]}],sqlEnable:0,sqlValue:null}),l=()=>{const{list:r,sqlEnable:t,sqlValue:g}=v.value;i.value={list:JSON.parse(JSON.stringify(r)),sqlEnable:t,sqlValue:g},i.value.list.length||m(),u.value=!0},E=()=>{C.value.validate(r=>{const{list:t,sqlEnable:g,sqlValue:f}=i.value;if(r){if(g){if(!f)return q.ElMessage.error("SQL语句不能为空");const d=W(f),x=t.map((n,_)=>`条件${_+1}`),h=d.filter(n=>!x.includes(n));if(h.length)return q.ElMessage.error(`请检查SQL语句, 不存在[${h}]`)}v.value={list:JSON.parse(JSON.stringify(t)),sqlEnable:g,sqlValue:f},u.value=!1}})},B=r=>{i.value.list.splice(r,1)},m=r=>{switch(r){case"compare":{i.value.list.push({key:"compare",cycle:y.config.cycleDefault??null,factor:null,compareType:">",cycle2:y.config.cycleDefault??null,factor2:null});break}default:{i.value.list.push({cycle:y.config.cycleDefault??null,factor:null,score:[null,null]});break}}},o=()=>{C.value.validate(r=>{if(r)if(i.value.sqlValue){const t=W(i.value.sqlValue);i.value.sqlValue=i.value.list.reduce((g,f,d)=>(t.includes(`条件${d+1}`)||(g+=`&& 条件${d+1} `),g),i.value.sqlValue)}else i.value.sqlValue=i.value.list.reduce((t,g,f)=>(f===0?t+=`条件${f+1} `:t+=`&& 条件${f+1} `,t),"")})},N=r=>{switch(r.key){case"compare":{const{cycle:t,factor:g,compareType:f,cycle2:d,factor2:x}=r;let h="";return h+=` ${y.config.cycleOptions.find(({value:n})=>n===t).label}`,h+=` ${y.config.factorOptions.find(({value:n})=>n===g).label}`,h+=` ${f}`,h+=` ${y.config.cycleOptions.find(({value:n})=>n===d).label}`,h+=` ${y.config.factorOptions.find(({value:n})=>n===x).label}`,h}default:{const{cycle:t,factor:g,score:f}=r;let d="";return d+=` ${y.config.cycleOptions.find(({value:x})=>x===t).label}`,d+=` ${y.config.factorOptions.find(({value:x})=>x===g).label}`,d+=` ${f[0]||f[0]===0?`${f[0]}分`:"∞"}`,d+=" ~",d+=` ${f[1]||f[1]===0?`${f[1]}分`:"∞"}`,d}}},O=(r,t)=>{switch(r){case"sqlTag":{v.value={list:[],sqlEnable:0,sqlValue:null};break}case"factorTag":{v.value.list.splice(t,1);break}}};return(r,t)=>{var L;const g=A.ElText,f=le.ElTag,d=te.ElButton,x=S.ElIcon,h=ee.ElTooltip,n=P.ElOption,_=P.ElSelect,V=A.ElFormItem,c=Z.ElInputNumber,T=Q,a=J,U=X.ElInput,R=A.ElForm,D=Y.ElDialog;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Ee,[e.createElementVNode("div",null,[v.value.sqlEnable&&v.value.sqlValue?(e.openBlock(),e.createBlock(f,{key:0,closable:"",type:"info",title:v.value.sqlValue,onClose:t[0]||(t[0]=b=>O("sqlTag"))},{default:e.withCtx(()=>[e.createVNode(g,{type:"info",truncated:"",style:{"max-width":"500px"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(v.value.sqlValue),1)]),_:1})]),_:1},8,["title"])):e.createCommentVNode("",!0),!v.value.sqlEnable&&v.value.list.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(v.value.list,(b,w)=>(e.openBlock(),e.createBlock(f,{closable:"",type:"info",onClose:p=>O("factorTag",w)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(N(b)),1)]),_:2},1032,["onClose"]))),256)):e.createCommentVNode("",!0),e.createVNode(d,{class:"screen-btn",type:"primary",plain:"",size:"small",icon:e.unref(S.plus_default),onClick:l},{default:e.withCtx(()=>[e.createTextVNode(" 添加因子 ")]),_:1},8,["icon"])]),e.createVNode(D,{modelValue:u.value,"onUpdate:modelValue":t[5]||(t[5]=b=>u.value=b),width:"602","align-center":"","destroy-on-close":""},{header:e.withCtx(({titleId:b,titleClass:w})=>[e.createElementVNode("div",we,[e.createElementVNode("span",{id:b,class:e.normalizeClass(w)}," 因子筛选 ",10,Ce),e.createVNode(h,{effect:"dark",content:"点击查看: 因子使用说明",placement:"right"},{default:e.withCtx(()=>[e.createVNode(x,{onClick:t[1]||(t[1]=p=>k.value=!0)},{default:e.withCtx(()=>[e.createVNode(e.unref(S.info_filled_default))]),_:1})]),_:1})])]),footer:e.withCtx(()=>[e.createElementVNode("div",Se,[e.createVNode(d,{type:"primary",onClick:E},{default:e.withCtx(()=>[e.createTextVNode("确定")]),_:1})])]),default:e.withCtx(()=>[e.createVNode(R,{ref_key:"dialogFormRef",ref:C,model:i.value},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value.list,(b,w)=>(e.openBlock(),e.createElementBlock("div",Be,[e.createElementVNode("span",Oe,e.toDisplayString(`条件${w+1}`),1),b.key==="compare"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[s.config.cycleShow?(e.openBlock(),e.createBlock(V,{key:0,prop:"list."+w+".cycle",rules:{required:!0,message:"周期不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(_,{modelValue:b.cycle,"onUpdate:modelValue":p=>b.cycle=p,placeholder:"选择周期",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.config.cycleOptions,({label:p,value:$})=>(e.openBlock(),e.createBlock(n,{label:p,value:$,key:$},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])):e.createCommentVNode("",!0),e.createVNode(V,{prop:"list."+w+".factor",rules:{required:!0,message:"因子不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(_,{modelValue:b.factor,"onUpdate:modelValue":p=>b.factor=p,placeholder:"选择因子",filterable:"",size:"small","no-match-text":"无匹配数据"},{default:e.withCtx(()=>{var p;return[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((p=s.config.factorOptions)==null?void 0:p.filter($=>[4].includes($.type)),({label:$,value:M})=>(e.openBlock(),e.createBlock(n,{label:$,value:M,key:M},null,8,["label","value"]))),128))]}),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"]),e.createVNode(V,{style:{width:"52px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(_,{modelValue:b.compareType,"onUpdate:modelValue":p=>b.compareType=p,size:"small"},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([">",">=","<","<="],p=>e.createVNode(n,{label:p,value:p,key:p},null,8,["label","value"])),64))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1024),s.config.cycleShow?(e.openBlock(),e.createBlock(V,{key:1,prop:"list."+w+".cycle2",rules:{required:!0,message:"周期不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(_,{modelValue:b.cycle2,"onUpdate:modelValue":p=>b.cycle2=p,placeholder:"选择周期",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.config.cycleOptions,({label:p,value:$})=>(e.openBlock(),e.createBlock(n,{label:p,value:$,key:$},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])):e.createCommentVNode("",!0),e.createVNode(V,{prop:"list."+w+".factor2",rules:{required:!0,message:"因子不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(_,{modelValue:b.factor2,"onUpdate:modelValue":p=>b.factor2=p,placeholder:"选择因子",filterable:"",size:"small","no-match-text":"无匹配数据"},{default:e.withCtx(()=>{var p;return[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((p=s.config.factorOptions)==null?void 0:p.filter($=>[4].includes($.type)),({label:$,value:M})=>(e.openBlock(),e.createBlock(n,{label:$,value:M,key:M},null,8,["label","value"]))),128))]}),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[s.config.cycleShow?(e.openBlock(),e.createBlock(V,{key:0,prop:"list."+w+".cycle",rules:{required:!0,message:"周期不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(_,{modelValue:b.cycle,"onUpdate:modelValue":p=>b.cycle=p,placeholder:"选择周期",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.config.cycleOptions,({label:p,value:$})=>(e.openBlock(),e.createBlock(n,{label:p,value:$,key:$},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])):e.createCommentVNode("",!0),e.createVNode(V,{prop:"list."+w+".factor",rules:{required:!0,message:"因子不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(_,{modelValue:b.factor,"onUpdate:modelValue":p=>b.factor=p,placeholder:"选择因子",filterable:"",size:"small","no-match-text":"无匹配数据"},{default:e.withCtx(()=>{var p;return[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((p=s.config.factorOptions)==null?void 0:p.filter($=>[1,3].includes($.type)),({label:$,value:M})=>(e.openBlock(),e.createBlock(n,{label:$,value:M,key:M},null,8,["label","value"]))),128))]}),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"]),e.createVNode(V,{prop:"list."+w+".score",rules:{validator:e.unref(xe),trigger:"blur"},style:{width:"200px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createElementVNode("div",Ie,[e.createVNode(c,{modelValue:b.score[0],"onUpdate:modelValue":p=>b.score[0]=p,size:"small","controls-position":"right"},null,8,["modelValue","onUpdate:modelValue"]),$e,e.createVNode(c,{modelValue:b.score[1],"onUpdate:modelValue":p=>b.score[1]=p,size:"small","controls-position":"right"},null,8,["modelValue","onUpdate:modelValue"])])]),_:2},1032,["prop","rules"])],64)),e.createVNode(x,{onClick:p=>B(w)},{default:e.withCtx(()=>[e.createVNode(e.unref(S.circle_close_filled_default))]),_:2},1032,["onClick"])]))),256)),e.createVNode(d,{type:"primary",plain:"",size:"small",icon:e.unref(S.plus_default),onClick:m,style:{"margin-bottom":"10px"}},{default:e.withCtx(()=>[e.createTextVNode("添加因子")]),_:1},8,["icon"]),e.createVNode(d,{type:"primary",plain:"",size:"small",icon:e.unref(S.plus_default),onClick:t[2]||(t[2]=b=>m("compare")),style:{"margin-bottom":"10px"}},{default:e.withCtx(()=>[e.createTextVNode("添加因子对比")]),_:1},8,["icon"]),s.config.sqlShow?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(V,{label:"SQL功能: "},{default:e.withCtx(()=>[e.createVNode(a,{modelValue:i.value.sqlEnable,"onUpdate:modelValue":t[3]||(t[3]=b=>i.value.sqlEnable=b)},{default:e.withCtx(()=>[e.createVNode(T,{label:"关闭",value:0}),e.createVNode(T,{label:"启用",value:1})]),_:1},8,["modelValue"]),i.value.sqlEnable?(e.openBlock(),e.createBlock(d,{key:0,type:"primary",size:"small",onClick:o,style:{"margin-left":"auto"}},{default:e.withCtx(()=>[e.createTextVNode("生成SQL")]),_:1})):e.createCommentVNode("",!0)]),_:1}),i.value.sqlEnable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(U,{modelValue:i.value.sqlValue,"onUpdate:modelValue":t[4]||(t[4]=b=>i.value.sqlValue=b),autosize:{minRows:4},type:"textarea",style:{"margin-bottom":"10px"}},null,8,["modelValue"]),Te],64)):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)]),_:1},8,["model"])]),_:1},8,["modelValue"])]),e.createVNode(Ne,{visible:k.value,"onUpdate:visible":t[6]||(t[6]=b=>k.value=b),data:(L=s.config.factorDescriptions)==null?void 0:L.filter(b=>[1,3].includes(b.type))},null,8,["visible","data"])],64)}}},Me=K._export_sfc(qe,[["__scopeId","data-v-ef576faa"]]);const j=s=>(e.pushScopeId("data-v-bdb03941"),s=s(),e.popScopeId(),s),Ue={key:0,class:"common-indicator"},Re={class:"indicator"},Fe=j(()=>e.createElementVNode("div",{class:"title"},[e.createElementVNode("span",null,"常用指标: "),e.createElementVNode("span",null,"不限")],-1)),De={class:"options"},Le=["onClick"],ze={class:"tags"},Pe=["onClick"],Ge={style:{"font-size":"18px"}},je={key:0,class:"out-box"},Ae=j(()=>e.createElementVNode("span",null,"自定义: ",-1)),Ye={key:0,class:"convenient-option-box"},Ke={class:"out-box"},Qe=j(()=>e.createElementVNode("span",null,"自定义: ",-1)),Je={key:0},He={key:0},We={key:0},Xe={key:1},Ze={class:"tFeaturelncomes-option-box"},et={class:"tFeaturelncomes-out-box"},tt=j(()=>e.createElementVNode("span",null,"自定义: ",-1)),lt={key:2},nt={key:3},ot={key:4},at={class:"dialog-footer"},rt={__name:"index",props:e.mergeModels({config:{type:Object,default:()=>{}},varietyMarket:{type:Number,default:()=>null},commonOption:{type:Array,default:()=>[]}},{data:{default:[]},dataModifiers:{}}),emits:["update:data"],setup(s){const y=e.useModel(s,"data"),v=s,u=e.ref(!1),k=e.computed(()=>{var r;return(r=v.data.find(t=>t.radioType==="1"))==null?void 0:r.key}),C=e.computed(()=>{let r=[];return v.varietyMarket===null&&!v.commonOption.length?r=v.config.options:(r=v.config.options,v.varietyMarket&&(r=r.filter(({parent:t})=>t.varietyMarketIds.includes(v.varietyMarket))),v.commonOption.length&&(r=r.filter(({parent:t})=>{const{commonOptionIds:g}=t;return[...new Set([...g,...v.commonOption])].length!==[...g,...v.commonOption].length}))),r}),i=e.ref({}),l=e.ref({}),E=r=>{i.value=r;const t={key:r.key,type:r.type,label:r.label};switch(r.key){case"st":{l.value={...t,st:null};break}case"tFeaturelncomes":{l.value={...t,rule:1,withFewYears:null,yearsCount:null,netProfit:null};break}case"priceLevels":{l.value={...t,priceLevels:null};break}case"peTtmLevels":{l.value={...t,peTtmLevels:null};break}case"optionsCpType":{l.value={...t,optionsCpType:null};break}default:l.value={...t,range:[null,null],unit:r.defaultUnit.length?[...r.defaultUnit]:[null,null],radioType:k.value&&k.value!==r.key?"0":r.defaultRadioType,rankRange:r.defaultRankRange||[null,null]}}u.value=!0},B=()=>{switch(l.value.key){case"st":{const{label:t,st:g}=l.value;if(g===null)return q.ElMessage.warning("格式错误: 请至少选择一个值");l.value.tagText=`${t}: ${g?"是":"否"}`;break}case"tFeaturelncomes":{const{label:t,rule:g,withFewYears:f,yearsCount:d,netProfit:x}=l.value;if(["",null].includes(f)||["",null].includes(d)||["",null].includes(x))return q.ElMessage.warning("格式错误: 请填写完整");l.value.tagText=`${t}: ${f}年内${d}年以上盈利${g===1?"超":"跌"}过${x}亿`;break}case"priceLevels":{const{label:t,priceLevels:g}=l.value;if(!g||g.length===0)return q.ElMessage.warning("格式错误: 请至少选择一个值");l.value.tagText=`${t}: 已选${g}分位`;break}case"peTtmLevels":{const{label:t,peTtmLevels:g}=l.value;if(!g||g.length===0)return q.ElMessage.warning("格式错误: 请至少选择一个值");l.value.tagText=`${t}: 已选${g}分位`;break}case"optionsCpType":{const{label:t,optionsCpType:g}=l.value;if(g===null)return q.ElMessage.warning("格式错误: 请至少选择一个值");l.value.tagText=`${t}: ${g===1?"看涨":"看跌"}`;break}default:{const{label:t,unit:g,radioType:f}=l.value,d=f==="1"?l.value.rankRange:l.value.range;if(["",null].includes(d[0])&&["",null].includes(d[1]))return q.ElMessage.warning("格式错误: 请至少填写一个值");if(f==="1"){const n=Number(d[0]),_=Number(d[1]);if(isNaN(n)||isNaN(_))return q.ElMessage.warning("格式错误: 请填写数字");if(n<0||_<0)return q.ElMessage.warning("格式错误: 请填写大于0的数字");if(n>_)return q.ElMessage.warning("格式错误: 请填写正确的排名范围")}const x=f==="1"?"":g[0]??"",h=f==="1"?"":g[1]??"";!["",null].includes(d[0])&&!["",null].includes(d[1])?l.value.tagText=`${t}${f==="1"?"排名":""}: ${d[0]}${x} ~ ${d[1]}${h}`:["",null].includes(d[0])?l.value.tagText=`${t}${f==="1"?"排名":""}: ≤${d[1]}${h}`:l.value.tagText=`${t}${f==="1"?"排名":""}: ≥${d[0]}${x}`}}const r=y.value.findIndex(({key:t})=>t===l.value.key);r===-1?y.value.push(l.value):y.value.splice(r,1,l.value),u.value=!1},m=r=>{i.value=C.value.find(({key:t})=>t===r.key),l.value=JSON.parse(JSON.stringify(r)),u.value=!0},o=r=>{y.value.splice(r,1)},N=r=>{l.value.range=[...r.range],l.value.unit=[...r.unit]},O=r=>{switch(r){case"≤0":Object.assign(l.value,{rule:2,withFewYears:1,yearsCount:1,netProfit:0});break;case"≥0":Object.assign(l.value,{rule:1,withFewYears:1,yearsCount:1,netProfit:0});break;case"五年内有四年以上盈利超过5千万":Object.assign(l.value,{rule:1,withFewYears:5,yearsCount:4,netProfit:.5});break;case"≥10亿":Object.assign(l.value,{rule:1,withFewYears:1,yearsCount:1,netProfit:10});break;case"≥20亿":Object.assign(l.value,{rule:1,withFewYears:1,yearsCount:1,netProfit:20});break}};return e.watch(()=>C.value,()=>{y.value.length&&(y.value=y.value.filter(({key:r})=>C.value.find(t=>t.key===r)))}),(r,t)=>{const g=le.ElTag,f=he,d=J,x=X.ElInput,h=te.ElButton,n=P.ElOption,_=P.ElSelect,V=Q,c=Z.ElInputNumber,T=Y.ElDialog;return s.config.show&&C.value.length?(e.openBlock(),e.createElementBlock("div",Ue,[e.createElementVNode("div",Re,[Fe,e.createElementVNode("div",De,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,a=>(e.openBlock(),e.createElementBlock("span",{key:a.key,onClick:U=>E(a)},e.toDisplayString(a.label),9,Le))),128))])]),e.createElementVNode("div",ze,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.value,(a,U)=>(e.openBlock(),e.createBlock(g,{closable:"",type:"info",onClose:R=>o(U)},{default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(a.tagText),1),e.createElementVNode("span",{class:"edit",onClick:R=>m(a)},"编辑",8,Pe)]),_:2},1032,["onClose"]))),256))]),e.createVNode(T,{modelValue:u.value,"onUpdate:modelValue":t[19]||(t[19]=a=>u.value=a),title:i.value.label,width:"600","align-center":"","destroy-on-close":""},e.createSlots({footer:e.withCtx(()=>[e.createElementVNode("div",at,[e.createVNode(h,{type:"primary",onClick:B},{default:e.withCtx(()=>[e.createTextVNode("确定")]),_:1})])]),default:e.withCtx(()=>[i.value.type===void 0&&l.value.radioType==="1"?(e.openBlock(),e.createElementBlock("div",je,[Ae,e.createVNode(x,{modelValue:l.value.rankRange[0],"onUpdate:modelValue":t[1]||(t[1]=a=>l.value.rankRange[0]=a),style:{flex:"1"}},null,8,["modelValue"]),e.createTextVNode(" ~ "),e.createVNode(x,{modelValue:l.value.rankRange[1],"onUpdate:modelValue":t[2]||(t[2]=a=>l.value.rankRange[1]=a),style:{flex:"1"}},null,8,["modelValue"])])):i.value.type===void 0?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[i.value.convenientOptions.length?(e.openBlock(),e.createElementBlock("div",Ye,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value.convenientOptions,a=>(e.openBlock(),e.createBlock(h,{key:a.text,onClick:U=>N(a)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.text),1)]),_:2},1032,["onClick"]))),128))])):e.createCommentVNode("",!0),e.createElementVNode("div",Ke,[Qe,e.createVNode(x,{modelValue:l.value.range[0],"onUpdate:modelValue":t[4]||(t[4]=a=>l.value.range[0]=a),style:{flex:"1"}},e.createSlots({_:2},[i.value.unitOptions.length?{name:"append",fn:e.withCtx(()=>[i.value.unitOptions.length===1?(e.openBlock(),e.createElementBlock("span",Je,e.toDisplayString(l.value.unit[0]),1)):(e.openBlock(),e.createBlock(_,{key:1,modelValue:l.value.unit[0],"onUpdate:modelValue":t[3]||(t[3]=a=>l.value.unit[0]=a),style:{width:"72px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value.unitOptions,a=>(e.openBlock(),e.createBlock(n,{label:a,value:a},null,8,["label","value"]))),256))]),_:1},8,["modelValue"]))]),key:"0"}:void 0]),1032,["modelValue"]),e.createTextVNode(" ~ "),e.createVNode(x,{modelValue:l.value.range[1],"onUpdate:modelValue":t[6]||(t[6]=a=>l.value.range[1]=a),style:{flex:"1"}},e.createSlots({_:2},[i.value.unitOptions.length?{name:"append",fn:e.withCtx(()=>[i.value.unitOptions.length===1?(e.openBlock(),e.createElementBlock("span",He,e.toDisplayString(l.value.unit[1]),1)):(e.openBlock(),e.createBlock(_,{key:1,modelValue:l.value.unit[1],"onUpdate:modelValue":t[5]||(t[5]=a=>l.value.unit[1]=a),style:{width:"72px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value.unitOptions,a=>(e.openBlock(),e.createBlock(n,{label:a,value:a},null,8,["label","value"]))),256))]),_:1},8,["modelValue"]))]),key:"0"}:void 0]),1032,["modelValue"])])],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[i.value.key==="st"?(e.openBlock(),e.createElementBlock("div",We,[e.createVNode(d,{modelValue:l.value.st,"onUpdate:modelValue":t[7]||(t[7]=a=>l.value.st=a)},{default:e.withCtx(()=>[e.createVNode(V,{label:"是",value:1}),e.createVNode(V,{label:"否",value:0})]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),i.value.key==="tFeaturelncomes"?(e.openBlock(),e.createElementBlock("div",Xe,[e.createElementVNode("div",Ze,[e.createVNode(h,{onClick:t[8]||(t[8]=a=>O("≤0"))},{default:e.withCtx(()=>[e.createTextVNode("≤0")]),_:1}),e.createVNode(h,{onClick:t[9]||(t[9]=a=>O("≥0"))},{default:e.withCtx(()=>[e.createTextVNode("≥0")]),_:1}),e.createVNode(h,{onClick:t[10]||(t[10]=a=>O("五年内有四年以上盈利超过5千万"))},{default:e.withCtx(()=>[e.createTextVNode("五年内有四年以上盈利超过5千万")]),_:1}),e.createVNode(h,{onClick:t[11]||(t[11]=a=>O("≥10亿"))},{default:e.withCtx(()=>[e.createTextVNode("≥10亿")]),_:1}),e.createVNode(h,{onClick:t[12]||(t[12]=a=>O("≥20亿"))},{default:e.withCtx(()=>[e.createTextVNode("≥20亿")]),_:1})]),e.createElementVNode("div",et,[tt,e.createElementVNode("div",null,[e.createVNode(c,{modelValue:l.value.withFewYears,"onUpdate:modelValue":t[13]||(t[13]=a=>l.value.withFewYears=a),"controls-position":"right"},null,8,["modelValue"]),e.createTextVNode(" 年内 "),e.createVNode(c,{modelValue:l.value.yearsCount,"onUpdate:modelValue":t[14]||(t[14]=a=>l.value.yearsCount=a),"controls-position":"right"},null,8,["modelValue"]),e.createTextVNode(" 年以上盈利"+e.toDisplayString(l.value.rule===1?"超":"跌")+"过 ",1),e.createVNode(c,{modelValue:l.value.netProfit,"onUpdate:modelValue":t[15]||(t[15]=a=>l.value.netProfit=a),"controls-position":"right"},null,8,["modelValue"]),e.createTextVNode(" 亿 ")])])])):e.createCommentVNode("",!0),i.value.key==="priceLevels"?(e.openBlock(),e.createElementBlock("div",lt,[e.createVNode(_,{modelValue:l.value.priceLevels,"onUpdate:modelValue":t[16]||(t[16]=a=>l.value.priceLevels=a),multiple:"",clearable:"",placeholder:"请选择",style:{width:"420px"}},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([1,2,3,4,5],a=>e.createVNode(n,{key:a,label:`${a}分位`,value:a},null,8,["label","value"])),64))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),i.value.key==="peTtmLevels"?(e.openBlock(),e.createElementBlock("div",nt,[e.createVNode(_,{modelValue:l.value.peTtmLevels,"onUpdate:modelValue":t[17]||(t[17]=a=>l.value.peTtmLevels=a),multiple:"",clearable:"",placeholder:"请选择",style:{width:"420px"}},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([1,2,3,4,5,6,7,8,9,10],a=>e.createVNode(n,{key:a,label:`${a}分位`,value:a},null,8,["label","value"])),64))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),i.value.key==="optionsCpType"?(e.openBlock(),e.createElementBlock("div",ot,[e.createVNode(d,{modelValue:l.value.optionsCpType,"onUpdate:modelValue":t[18]||(t[18]=a=>l.value.optionsCpType=a)},{default:e.withCtx(()=>[e.createVNode(V,{label:"看涨",value:1}),e.createVNode(V,{label:"看跌",value:2})]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0)],64))]),_:2},[i.value.showRankType?{name:"header",fn:e.withCtx(()=>[e.createElementVNode("span",Ge,e.toDisplayString(i.value.label),1),e.createVNode(d,{modelValue:l.value.radioType,"onUpdate:modelValue":t[0]||(t[0]=a=>l.value.radioType=a),style:{"vertical-align":"4px","margin-left":"12px"}},{default:e.withCtx(()=>[e.createVNode(f,{label:"数值",value:"0"}),e.createVNode(f,{disabled:k.value&&k.value!==i.value.key,label:"排名",value:"1"},null,8,["disabled"])]),_:1},8,["modelValue"])]),key:"0"}:void 0]),1032,["modelValue","title"])])):e.createCommentVNode("",!0)}}},ut=K._export_sfc(rt,[["__scopeId","data-v-bdb03941"]]);const F=s=>(e.pushScopeId("data-v-5d0d1a7a"),s=s(),e.popScopeId(),s),it={class:"variety-search"},st={key:0,class:"variety-search-row"},ct={class:"title"},dt=F(()=>e.createElementVNode("span",null,"品种市场: ",-1)),pt={key:1,class:"variety-search-row"},mt={class:"title"},ft=F(()=>e.createElementVNode("span",null,"常用选项: ",-1)),vt={key:2,class:"variety-search-row"},gt={class:"title"},kt=F(()=>e.createElementVNode("span",null,"上市板块: ",-1)),yt={key:3,class:"variety-search-row"},Vt={class:"title"},bt=F(()=>e.createElementVNode("span",null,"自定标签: ",-1)),_t={key:4,class:"variety-search-row"},ht={class:"title"},xt=F(()=>e.createElementVNode("span",null,"因子筛选: ",-1)),Nt={__name:"index",props:e.mergeModels({config:{type:Object,default:{}}},{searchData:{},searchDataModifiers:{}}),emits:["update:searchData"],setup(s,{expose:y}){const v=s,u=e.useModel(s,"searchData");u.value=Object.assign(u.value,{varietyMarket:null,commonOption:[],marketIds:[],customTag:[],factorScreen:{list:[],sqlEnable:0,sqlValue:null},commonIndicator:[]});const k=e.computed(()=>{const m={};return Object.keys(H).forEach(o=>{const N=H[o],O=v.config[o]??{},r={...N,...O};m[o]=r}),m}),C=e.computed(()=>k.value.varietyMarket.options),i=e.computed(()=>{const{varietyMarket:m}=u.value;if(m){const o=C.value.find(({value:N})=>N===m).memo;return k.value.commonOption.options.filter(({value:N})=>o.includes(N))}else return k.value.commonOption.options}),l=e.computed(()=>{const{varietyMarket:m}=u.value;return m?k.value.marketIds.options.filter(o=>o.varietyMarketIds.includes(m)):k.value.marketIds.options}),E=e.computed(()=>k.value.customTag.options),B=m=>{["commonOption","marketIds","customTag","factorScreen","commonIndicator"].includes(m)?u.value[m]=[]:u.value[m]=null};return e.watch(()=>i.value,m=>{var o;(o=u.value.commonOption)!=null&&o.length&&(u.value.commonOption=u.value.commonOption.filter(N=>m.find(({value:O})=>O===N)))}),e.watch(()=>l.value,m=>{var o;(o=u.value.marketIds)!=null&&o.length&&(u.value.marketIds=u.value.marketIds.filter(N=>m.find(({value:O})=>O===N)))}),y({formatData:m=>{var N,O,r,t,g;console.log("%c[st-varietySearch]: 正在生成接口传参结构的数据...","color: tomato");const o={};if(m.varietyMarket&&(o.exchangeId=String(m.varietyMarket)),(N=m.commonOption)!=null&&N.length&&(o.optionId=m.commonOption.join(",")),(O=m.marketIds)!=null&&O.length&&(o.marketIds=m.marketIds),(r=m.customTag)!=null&&r.length&&(o.tagIds=m.customTag),(t=k.value.factorScreen)!=null&&t.show){const{factorScreen:f}=m;if((g=f==null?void 0:f.list)!=null&&g.length&&(o.tbFeatureFactorScores=f.list.map(d=>{switch(d.key){case"compare":return{freqId:d.cycle,factorId:d.factor,compareType:d.compareType,freqId2:d.cycle2,factorId2:d.factor2};default:return{freqId:d.cycle,factorId:d.factor,startScore:d.score[0],endScore:d.score[1]}}})),f.sqlEnable){const d=f.list.reduce((h,n,_)=>{var c,T;const V=`条件${_+1}`;switch(n.key){case"compare":{let a="";(c=k.value.factorScreen)!=null&&c.cycleShow?a=`freq_id = ${n.cycle} and factor_id = ${n.factor} ${n.compareType} freq_id = ${n.cycle2} and factor_id = ${n.factor2}`:a=`factor_id = ${n.factor} ${n.compareType} factor_id = ${n.factor2}`,h.set(V,`(${a})`);break}default:{let a=`factor_id = ${n.factor} and `;(T=k.value.factorScreen)!=null&&T.cycleShow&&(a=`freq_id = ${n.cycle} and factor_id = ${n.factor} and `),(n.score[0]||n.score[0]===0)&&(n.score[1]||n.score[1]===0)?a+=`score >= ${n.score[0]} and score <= ${n.score[1]}`:n.score[0]||n.score[0]===0?a+=`score >= ${n.score[0]}`:(n.score[1]||n.score[1]===0)&&(a+=`score <= ${n.score[1]}`),h.set(V,`(${a})`)}}return h},new Map([]));let x=f.sqlValue;for(const[h,n]of d){const _=new RegExp(h,"g");x=x.replace(_,n)}o.sql=x,o.sqlExpression=f.sqlValue}o.enableSql=f.sqlEnable===1?2:1}{const f=["expireDays","virtualRealDegree","yearProfitRate","impliedVolatility","levelMultiplier","turnover","volume","openInterest","optionsCpType","optionGear"],d=m.commonIndicator.reduce((c,T)=>{const{key:a,type:U,range:R,unit:D,radioType:L,rankRange:b}=T;if(L==="1")o.sortBy={column:T.key,start:b[0]||null,end:b[1]||null};else if(a==="dividendYield"){let[w,p]=R;["",null].includes(w)||(w=w/100),["",null].includes(p)||(p=p/100),c.push({column:T.key,start:w,end:p})}else if(U===void 0&&!f.includes(a)){let[w,p]=R;if(!["",null].includes(w))switch(D[0]){case"亿":w=w*1e8;break;case"千万":w=w*1e7;break;default:w=w;break}if(!["",null].includes(p))switch(D[1]){case"亿":p=p*1e8;break;case"千万":p=p*1e7;break;default:p=p;break}c.push({column:T.key,start:w,end:p})}return c},[]);d.length&&(o.query=d);const x=m.commonIndicator.find(({key:c})=>c==="st");x&&(o.st=x.st);const h=m.commonIndicator.find(({key:c})=>c==="tFeaturelncomes");h&&(o.netProfitQueryDto={...h,netProfit:h.netProfit*1e8});const n=m.commonIndicator.find(({key:c})=>c==="priceLevels");n&&(o.priceLevels=n.priceLevels);const _=m.commonIndicator.find(({key:c})=>c==="peTtmLevels");_&&(o.peTtmLevels=_.peTtmLevels);const V={};m.commonIndicator.forEach(c=>{const{key:T}=c;switch(T){case"expireDays":["",null].includes(c.range[0])||(V.minExpireDays=c.range[0]),["",null].includes(c.range[1])||(V.maxExpireDays=c.range[1]);break;case"virtualRealDegree":["",null].includes(c.range[0])||(V.minVirtualRealDegree=c.range[0]/100),["",null].includes(c.range[1])||(V.maxVirtualRealDegree=c.range[1]/100);break;case"yearProfitRate":["",null].includes(c.range[0])||(V.minYearProfitRate=c.range[0]/100),["",null].includes(c.range[1])||(V.maxYearProfitRate=c.range[1]/100);break;case"impliedVolatility":["",null].includes(c.range[0])||(V.minImpliedVolatility=c.range[0]/100),["",null].includes(c.range[1])||(V.maxImpliedVolatility=c.range[1]/100);break;case"levelMultiplier":["",null].includes(c.range[0])||(V.minLevelMultiplier=c.range[0]),["",null].includes(c.range[1])||(V.maxLevelMultiplier=c.range[1]);break;case"turnover":["",null].includes(c.range[0])||(V.minTurnover=c.range[0]*1e4),["",null].includes(c.range[1])||(V.maxTurnover=c.range[1]*1e4);break;case"volume":["",null].includes(c.range[0])||(V.minVolume=c.range[0]),["",null].includes(c.range[1])||(V.maxVolume=c.range[1]);break;case"openInterest":["",null].includes(c.range[0])||(V.minOpenInterest=c.range[0]),["",null].includes(c.range[1])||(V.maxOpenInterest=c.range[1]);break;case"optionsCpType":V.optionsCpType=c.optionsCpType;break;case"optionGear":["",null].includes(c.range[0])||(V.minOptionGear=c.range[0]),["",null].includes(c.range[1])||(V.maxOptionGear=c.range[1]);break}}),Object.keys(V).length&&(o.searchOptionDto={...o.searchOptionDto,...V})}return console.log("%c[st-varietySearch]: 接口传参数据生成完毕","color: green",o),o},reset:()=>{u.value={varietyMarket:null,commonOption:[],marketIds:[],customTag:[],factorScreen:{list:[],sqlEnable:0,sqlValue:null},commonIndicator:[]}}}),(m,o)=>{var g,f,d,x,h;const N=Q,O=J,r=z.ElCheckbox,t=z.ElCheckboxGroup;return e.openBlock(),e.createElementBlock("div",it,[(g=k.value.varietyMarket)!=null&&g.show?(e.openBlock(),e.createElementBlock("div",st,[e.createElementVNode("div",ct,[dt,e.createElementVNode("span",{onClick:o[0]||(o[0]=n=>B("varietyMarket"))},"不限")]),e.createVNode(O,{modelValue:u.value.varietyMarket,"onUpdate:modelValue":o[1]||(o[1]=n=>u.value.varietyMarket=n),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,({label:n,value:_})=>(e.openBlock(),e.createBlock(N,{label:n,value:_,key:_},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(f=k.value.commonOption)!=null&&f.show&&i.value.length?(e.openBlock(),e.createElementBlock("div",pt,[e.createElementVNode("div",mt,[ft,e.createElementVNode("span",{onClick:o[2]||(o[2]=n=>B("commonOption"))},"不限")]),e.createVNode(t,{modelValue:u.value.commonOption,"onUpdate:modelValue":o[3]||(o[3]=n=>u.value.commonOption=n),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,({label:n,value:_})=>(e.openBlock(),e.createBlock(r,{label:n,value:_,key:_},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(d=k.value.marketIds)!=null&&d.show&&l.value.length?(e.openBlock(),e.createElementBlock("div",vt,[e.createElementVNode("div",gt,[kt,e.createElementVNode("span",{onClick:o[4]||(o[4]=n=>B("marketIds"))},"不限")]),e.createVNode(t,{modelValue:u.value.marketIds,"onUpdate:modelValue":o[5]||(o[5]=n=>u.value.marketIds=n),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,({label:n,value:_})=>(e.openBlock(),e.createBlock(r,{label:n,value:_,key:_},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(x=k.value.customTag)!=null&&x.show&&E.value.length?(e.openBlock(),e.createElementBlock("div",yt,[e.createElementVNode("div",Vt,[bt,e.createElementVNode("span",{onClick:o[6]||(o[6]=n=>B("customTag"))},"不限")]),e.createVNode(t,{modelValue:u.value.customTag,"onUpdate:modelValue":o[7]||(o[7]=n=>u.value.customTag=n),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(E.value,({label:n,value:_})=>(e.openBlock(),e.createBlock(r,{label:n,value:_,key:_},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(h=k.value.factorScreen)!=null&&h.show?(e.openBlock(),e.createElementBlock("div",_t,[e.createElementVNode("div",ht,[xt,e.createElementVNode("span",{onClick:o[8]||(o[8]=n=>B("factorScreen"))},"不限")]),e.createVNode(Me,{data:u.value.factorScreen,"onUpdate:data":o[9]||(o[9]=n=>u.value.factorScreen=n),config:k.value.factorScreen},null,8,["data","config"])])):e.createCommentVNode("",!0),e.createVNode(ut,{data:u.value.commonIndicator,"onUpdate:data":o[10]||(o[10]=n=>u.value.commonIndicator=n),varietyMarket:u.value.varietyMarket,commonOption:u.value.commonOption,config:k.value.commonIndicator},null,8,["data","varietyMarket","commonOption","config"])])}}},Et=K._export_sfc(Nt,[["__scopeId","data-v-5d0d1a7a"]]),wt={install(s){s.component("st-varietySearch",Et)}};module.exports=wt;
|
|
1
|
+
"use strict";const T=require("./base-ec05f348.cjs");require("./el-tag-3b03d13e.cjs");const L=require("./el-select-928f8c19.cjs");require("./el-scrollbar-d1c3e7f7.cjs");const X=require("./el-popper-f62316cd.cjs"),Y=require("./el-form-item-7d32befa.cjs"),P=require("./el-table-column-dd8b62aa.cjs"),e=require("vue"),J=require("./el-overlay-891dcc40.cjs"),ee=require("./el-input-6c6f5bda.cjs"),te=require("./el-input-number-0524d787.cjs");require("./el-tooltip-0ea8fbf8.cjs");const le=require("./el-button-196807af.cjs"),D=require("./use-form-common-props-1b84d8f4.cjs"),R=require("./el-message-562e923d.cjs"),K=require("./_plugin-vue_export-helper-f246444f.cjs"),ne=require("./index-80a2b137.cjs"),G=require("./event-61f49698.cjs"),de=require("./index-8a0b1c53.cjs");require("./castArray-a45823fe.cjs");require("./index-e1e83173.cjs");require("./scroll-41224831.cjs");require("./debounce-b2ff12bd.cjs");require("./raf-8fc301fd.cjs");require("./vnode-7fbc61e1.cjs");require("./refs-d00b710b.cjs");require("./typescript-b63f8e83.cjs");require("./index-eea0bcb3.cjs");require("./config-provider-7cdfca4d.cjs");const ae=T.buildProps({modelValue:{type:[String,Number,Boolean],default:void 0},size:D.useSizeProp,disabled:Boolean,label:{type:[String,Number,Boolean],default:void 0},value:{type:[String,Number,Boolean],default:void 0},name:{type:String,default:void 0}}),pe=T.buildProps({...ae,border:Boolean}),oe={[G.UPDATE_MODEL_EVENT]:s=>T.isString(s)||T.isNumber(s)||T.isBoolean(s),[G.CHANGE_EVENT]:s=>T.isString(s)||T.isNumber(s)||T.isBoolean(s)},re=Symbol("radioGroupKey"),ue=(s,y)=>{const m=e.ref(),a=e.inject(re,void 0),f=e.computed(()=>!!a),B=e.computed(()=>T.isPropAbsent(s.value)?s.label:s.value),r=e.computed({get(){return f.value?a.modelValue:s.modelValue},set(u){f.value?a.changeEvent(u):y&&y(G.UPDATE_MODEL_EVENT,u),m.value.checked=s.modelValue===B.value}}),n=D.useFormSize(e.computed(()=>a==null?void 0:a.size)),w=D.useFormDisabled(e.computed(()=>a==null?void 0:a.disabled)),S=e.ref(!1),O=e.computed(()=>w.value||f.value&&r.value!==B.value?-1:0);return de.useDeprecated({from:"label act as value",replacement:"value",version:"3.0.0",scope:"el-radio",ref:"https://element-plus.org/en-US/component/radio.html"},e.computed(()=>f.value&&T.isPropAbsent(s.value))),{radioRef:m,isGroup:f,radioGroup:a,focus:S,size:n,disabled:w,tabIndex:O,modelValue:r,actualValue:B}},me=e.defineComponent({name:"ElRadio"}),fe=e.defineComponent({...me,props:pe,emits:oe,setup(s,{emit:y}){const m=s,a=T.useNamespace("radio"),{radioRef:f,radioGroup:B,focus:r,size:n,disabled:w,modelValue:S,actualValue:O}=ue(m,y);function u(){e.nextTick(()=>y("change",S.value))}return(i,d)=>{var o;return e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass([e.unref(a).b(),e.unref(a).is("disabled",e.unref(w)),e.unref(a).is("focus",e.unref(r)),e.unref(a).is("bordered",i.border),e.unref(a).is("checked",e.unref(S)===e.unref(O)),e.unref(a).m(e.unref(n))])},[e.createElementVNode("span",{class:e.normalizeClass([e.unref(a).e("input"),e.unref(a).is("disabled",e.unref(w)),e.unref(a).is("checked",e.unref(S)===e.unref(O))])},[e.withDirectives(e.createElementVNode("input",{ref_key:"radioRef",ref:f,"onUpdate:modelValue":t=>e.isRef(S)?S.value=t:null,class:e.normalizeClass(e.unref(a).e("original")),value:e.unref(O),name:i.name||((o=e.unref(B))==null?void 0:o.name),disabled:e.unref(w),checked:e.unref(S)===e.unref(O),type:"radio",onFocus:t=>r.value=!0,onBlur:t=>r.value=!1,onChange:u,onClick:e.withModifiers(()=>{},["stop"])},null,42,["onUpdate:modelValue","value","name","disabled","checked","onFocus","onBlur","onClick"]),[[e.vModelRadio,e.unref(S)]]),e.createElementVNode("span",{class:e.normalizeClass(e.unref(a).e("inner"))},null,2)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(a).e("label")),onKeydown:e.withModifiers(()=>{},["stop"])},[e.renderSlot(i.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(i.label),1)])],42,["onKeydown"])],2)}}});var ve=T._export_sfc(fe,[["__file","radio.vue"]]);const ke=T.buildProps({...ae}),ge=e.defineComponent({name:"ElRadioButton"}),ye=e.defineComponent({...ge,props:ke,setup(s){const y=s,m=T.useNamespace("radio"),{radioRef:a,focus:f,size:B,disabled:r,modelValue:n,radioGroup:w,actualValue:S}=ue(y),O=e.computed(()=>({backgroundColor:(w==null?void 0:w.fill)||"",borderColor:(w==null?void 0:w.fill)||"",boxShadow:w!=null&&w.fill?`-1px 0 0 0 ${w.fill}`:"",color:(w==null?void 0:w.textColor)||""}));return(u,i)=>{var d;return e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass([e.unref(m).b("button"),e.unref(m).is("active",e.unref(n)===e.unref(S)),e.unref(m).is("disabled",e.unref(r)),e.unref(m).is("focus",e.unref(f)),e.unref(m).bm("button",e.unref(B))])},[e.withDirectives(e.createElementVNode("input",{ref_key:"radioRef",ref:a,"onUpdate:modelValue":o=>e.isRef(n)?n.value=o:null,class:e.normalizeClass(e.unref(m).be("button","original-radio")),value:e.unref(S),type:"radio",name:u.name||((d=e.unref(w))==null?void 0:d.name),disabled:e.unref(r),onFocus:o=>f.value=!0,onBlur:o=>f.value=!1,onClick:e.withModifiers(()=>{},["stop"])},null,42,["onUpdate:modelValue","value","name","disabled","onFocus","onBlur","onClick"]),[[e.vModelRadio,e.unref(n)]]),e.createElementVNode("span",{class:e.normalizeClass(e.unref(m).be("button","inner")),style:e.normalizeStyle(e.unref(n)===e.unref(S)?e.unref(O):{}),onKeydown:e.withModifiers(()=>{},["stop"])},[e.renderSlot(u.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(u.label),1)])],46,["onKeydown"])],2)}}});var se=T._export_sfc(ye,[["__file","radio-button.vue"]]);const Ve=T.buildProps({id:{type:String,default:void 0},size:D.useSizeProp,disabled:Boolean,modelValue:{type:[String,Number,Boolean],default:void 0},fill:{type:String,default:""},textColor:{type:String,default:""},name:{type:String,default:void 0},validateEvent:{type:Boolean,default:!0},...X.useAriaProps(["ariaLabel"])}),be=oe,_e=e.defineComponent({name:"ElRadioGroup"}),he=e.defineComponent({..._e,props:Ve,emits:be,setup(s,{emit:y}){const m=s,a=T.useNamespace("radio"),f=T.useId(),B=e.ref(),{formItem:r}=D.useFormItem(),{inputId:n,isLabeledByFormItem:w}=D.useFormItemInputId(m,{formItemContext:r}),S=u=>{y(G.UPDATE_MODEL_EVENT,u),e.nextTick(()=>y("change",u))};e.onMounted(()=>{const u=B.value.querySelectorAll("[type=radio]"),i=u[0];!Array.from(u).some(d=>d.checked)&&i&&(i.tabIndex=0)});const O=e.computed(()=>m.name||f.value);return e.provide(re,e.reactive({...e.toRefs(m),changeEvent:S,name:O})),e.watch(()=>m.modelValue,()=>{m.validateEvent&&(r==null||r.validate("change").catch(u=>T.debugWarn(u)))}),(u,i)=>(e.openBlock(),e.createElementBlock("div",{id:e.unref(n),ref_key:"radioGroupRef",ref:B,class:e.normalizeClass(e.unref(a).b("group")),role:"radiogroup","aria-label":e.unref(w)?void 0:u.ariaLabel||"radio-group","aria-labelledby":e.unref(w)?e.unref(r).labelId:void 0},[e.renderSlot(u.$slots,"default")],10,["id","aria-label","aria-labelledby"]))}});var ie=T._export_sfc(he,[["__file","radio-group.vue"]]);const Q=T.withInstall(ve,{RadioButton:se,RadioGroup:ie}),Z=T.withNoopInstall(ie),xe=T.withNoopInstall(se);const H={varietyMarket:{show:!0,options:[{label:"ETF",value:2,memo:[]},{label:"A股",value:3,memo:[4,6,12,14,15]},{label:"期货",value:4,memo:[1,2,3,5,7,8,9,10]},{label:"港股",value:5,memo:[4,6,14]},{label:"外盘",value:6,memo:[1,2,3,5,7,8,9,10]},{label:"美股",value:7,memo:[4,6,14]},{label:"期权",value:8,memo:[11]}]},commonOption:{show:!0,options:[{label:"个股",value:14},{label:"期货主连",value:1},{label:"期货主力",value:2},{label:"期货加权",value:3},{label:"常用股票指数",value:4},{label:"期货收益率指数",value:5},{label:"行业板块指数",value:6},{label:"期货次主连",value:7},{label:"期货次主力",value:8},{label:"期货板块收益率指数",value:9},{label:"期货板块加权指数",value:10},{label:"期权",value:11},{label:"价差板块指数",value:12},{label:"概念板块指数",value:15}]},marketIds:{show:!0,options:[]},customTag:{show:!0,options:[]},jcTranslate:{show:!0,jcOptions:[{label:"恒指",value:"HZCFJC"},{label:"恒生科技",value:"HSKJJC"},{label:"上证50",value:"SZ50CFJC"},{label:"沪深300",value:"HS300CFJC"},{label:"中证500",value:"ZZ500CFJC"},{label:"中证1000",value:"ZZ1000JC"}]},factorScreen:{show:!0,sqlShow:!1,cycleShow:!0,cycleDefault:null,cycleOptions:[],factorOptions:[],factorDescriptions:[]},commonIndicator:{show:!0,options:[{key:"marketCapital",label:"总市值",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[null,10],unit:["亿","亿"],text:"≤10亿"},{range:[null,25],unit:["亿","亿"],text:"≤25亿"},{range:[null,50],unit:["亿","亿"],text:"≤50亿"},{range:[20,50],unit:["亿","亿"],text:"20亿~50亿"},{range:[100,null],unit:["亿","亿"],text:"≥100亿"},{range:[200,null],unit:["亿","亿"],text:"≥200亿"},{range:[500,null],unit:["亿","亿"],text:"≥500亿"},{range:[1e3,null],unit:["亿","亿"],text:"≥1000亿"}],defaultUnit:["亿","亿"],unitOptions:["元","千万","亿"]},{key:"floatMarketCapital",label:"流通市值",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[null,5],unit:["亿","亿"],text:"≤5亿"},{range:[null,20],unit:["亿","亿"],text:"≤20亿"},{range:[null,50],unit:["亿","亿"],text:"≤50亿"},{range:[null,100],unit:["亿","亿"],text:"≤100亿"},{range:[100,null],unit:["亿","亿"],text:"≥100亿"},{range:[200,null],unit:["亿","亿"],text:"≥200亿"},{range:[500,null],unit:["亿","亿"],text:"≥500亿"},{range:[1e3,null],unit:["亿","亿"],text:"≥1000亿"}],defaultUnit:["亿","亿"],unitOptions:["元","千万","亿"]},{key:"totalShares",label:"总股本",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[null,5],unit:["亿","亿"],text:"≤5亿"},{range:[null,10],unit:["亿","亿"],text:"≤10亿"},{range:[null,75],unit:["亿","亿"],text:"≤75亿"},{range:[10,75],unit:["亿","亿"],text:"10亿~75亿"},{range:[100,null],unit:["亿","亿"],text:"≥100亿"}],defaultUnit:["亿","亿"],unitOptions:["元","千万","亿"]},{key:"freeFloatShares",label:"流通股本",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[null,5],unit:["千万","千万"],text:"≤5千万"},{range:[5,3],unit:["千万","亿"],text:"5千万~3亿"},{range:[null,5],unit:["亿","亿"],text:"≤5亿"},{range:[null,10],unit:["亿","亿"],text:"≤10亿"},{range:[8,30],unit:["亿","亿"],text:"8亿~30亿"},{range:[30,null],unit:["亿","亿"],text:"≥30亿"}],defaultUnit:["亿","亿"],unitOptions:["元","千万","亿"]},{key:"turnoverRate",label:"换手率(实)",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[null,1],unit:["%","%"],text:"≤1%"},{range:[1,5],unit:["%","%"],text:"1%~5%"},{range:[5,10],unit:["%","%"],text:"5%~10%"},{range:[10,null],unit:["%","%"],text:"≥10%"}],defaultUnit:["%","%"],unitOptions:["%"]},{key:"peTtm",label:"市盈率",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[null,0],unit:[],text:"亏损"},{range:[0,null],unit:[],text:"≥0"},{range:[0,20],unit:[],text:"0~20"},{range:[20,40],unit:[],text:"20~40"},{range:[40,100],unit:[],text:"40~100"},{range:[100,null],unit:[],text:"≥100"}],defaultUnit:[],unitOptions:[]},{key:"eps",label:"每股净收益",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[null,0],unit:["元","元"],text:"≤0"},{range:[0,null],unit:["元","元"],text:"≥0"},{range:[.2,null],unit:["元","元"],text:"≥0.2元"},{range:[.5,null],unit:["元","元"],text:"≥0.5元"},{range:[1,null],unit:["元","元"],text:"≥1元"},{range:[2,null],unit:["元","元"],text:"≥2元"}],defaultUnit:["元","元"],unitOptions:["元"]},{key:"st",label:"是否ST",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},type:"custom"},{key:"pb",label:"市净率",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[0,null],unit:[],text:"≥0"},{range:[0,1],unit:[],text:"0~1"},{range:[1,2],unit:[],text:"1~2"},{range:[0,3],unit:[],text:"0~3"},{range:[3,null],unit:[],text:"≥3"}],defaultUnit:[],unitOptions:[]},{key:"mnShr",label:"成交额",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[0,1],unit:["亿","亿"],text:"0~1亿"},{range:[0,5],unit:["亿","亿"],text:"0~5亿"},{range:[0,10],unit:["亿","亿"],text:"0~10亿"},{range:[10,null],unit:["亿","亿"],text:"≥10亿"},{range:[50,null],unit:["亿","亿"],text:"≥50亿"},{range:[100,null],unit:["亿","亿"],text:"≥100亿"}],defaultUnit:["亿","亿"],unitOptions:["元","千万","亿"],showRankType:!0,defaultRadioType:"1",defaultRankRange:[0,25]},{key:"roe",label:"净资产收益率roe",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[null,0],unit:["%","%"],text:"<0"},{range:[0,null],unit:["%","%"],text:">0"},{range:[10,null],unit:["%","%"],text:">10%"},{range:[15,null],unit:["%","%"],text:">15%"},{range:[20,null],unit:["%","%"],text:">20%"},{range:[30,null],unit:["%","%"],text:">30%"}],defaultUnit:["%","%"],unitOptions:["%"]},{key:"tFeaturelncomes",label:"净利润",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},type:"custom"},{key:"dividendYield",label:"股息率",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},convenientOptions:[{range:[null,1],unit:["%","%"],text:"≤1%"},{range:[1,5],unit:["%","%"],text:"1%~5%"},{range:[5,10],unit:["%","%"],text:"5%~10%"},{range:[10,null],unit:["%","%"],text:"≥10%"}],defaultUnit:["%","%"],unitOptions:["%"]},{key:"priceLevels",label:"股价分位",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},type:"custom"},{key:"peTtmLevels",label:"市盈率分位",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15]},type:"custom"},{key:"expireDays",label:"过期天数",parent:{varietyMarketIds:[8],commonOptionIds:[11]},convenientOptions:[],defaultUnit:["天","天"],unitOptions:["天"]},{key:"virtualRealDegree",label:"虚实度",parent:{varietyMarketIds:[8],commonOptionIds:[11]},convenientOptions:[],defaultUnit:["%","%"],unitOptions:["%"]},{key:"yearProfitRate",label:"年化收益率",parent:{varietyMarketIds:[8],commonOptionIds:[11]},convenientOptions:[],defaultUnit:["%","%"],unitOptions:["%"]},{key:"impliedVolatility",label:"隐含波动率",parent:{varietyMarketIds:[8],commonOptionIds:[11]},convenientOptions:[],defaultUnit:["%","%"],unitOptions:["%"]},{key:"levelMultiplier",label:"杠杆率",parent:{varietyMarketIds:[8],commonOptionIds:[11]},convenientOptions:[],defaultUnit:[],unitOptions:[]},{key:"turnover",label:"成交额(期权)",parent:{varietyMarketIds:[8],commonOptionIds:[11]},convenientOptions:[],defaultUnit:["万","万"],unitOptions:["万"],showRankType:!0,defaultRadioType:"1",defaultRankRange:[0,25]},{key:"volume",label:"成交量",parent:{varietyMarketIds:[8],commonOptionIds:[11]},convenientOptions:[],defaultUnit:[],unitOptions:[],showRankType:!0,defaultRadioType:"1",defaultRankRange:[0,25]},{key:"openInterest",label:"持仓量",parent:{varietyMarketIds:[8],commonOptionIds:[11]},convenientOptions:[],defaultUnit:[],unitOptions:[],showRankType:!0,defaultRadioType:"1",defaultRankRange:[0,25]},{key:"optionsCpType",label:"认沽认购",parent:{varietyMarketIds:[8],commonOptionIds:[11]},type:"custom"},{key:"optionGear",label:"期权档位",parent:{varietyMarketIds:[8],commonOptionIds:[11]},convenientOptions:[],defaultUnit:[],unitOptions:[]}]}},Ne=(s,y,m)=>{!y[0]&&y[0]!==0&&!y[1]&&y[1]!==0?m(new Error("至少填写一个分数")):m()},W=s=>{const y=/(条件(\d+))/g;return s.match(y)||[]},we={__name:"FactorDescription",props:e.mergeModels({data:{type:Array,default:[]}},{visible:{default:!1},visibleModifiers:{}}),emits:["update:visible"],setup(s){const y=e.useModel(s,"visible");return(m,a)=>{const f=P.ElTableColumn,B=P.ElTable,r=J.ElDialog;return e.openBlock(),e.createBlock(r,{modelValue:y.value,"onUpdate:modelValue":a[0]||(a[0]=n=>y.value=n),title:"因子使用说明",width:"1000","align-center":"","destroy-on-close":""},{default:e.withCtx(()=>[e.createVNode(B,{data:s.data,border:"",height:"500"},{default:e.withCtx(()=>[e.createVNode(f,{prop:"factorName",label:"因子名称",width:"200"}),e.createVNode(f,{prop:"factorDesc",label:"因子说明"}),e.createVNode(f,{prop:"factorScoreDefine",label:"分值定义"})]),_:1},8,["data"])]),_:1},8,["modelValue"])}}};const ce=s=>(e.pushScopeId("data-v-ef576faa"),s=s(),e.popScopeId(),s),Ee={class:"factor-screen"},Ce={class:"custom-header"},Be=["id"],Oe={class:"form-row"},Ie={class:"index"},Te={style:{display:"flex","align-items":"center",width:"100%",height:"24px"}},$e=ce(()=>e.createElementVNode("span",null,"~",-1)),Se=ce(()=>e.createElementVNode("span",null,"&&代表and,||代表or",-1)),qe={class:"dialog-footer"},Me={__name:"index",props:e.mergeModels({config:{type:Object,default:{sqlShow:!1,cycleShow:!0,cycleDefault:null,cycleOptions:[],factorOptions:[],factorDescriptions:[]}}},{data:{default:{list:[],sqlEnable:0,sqlValue:null}},dataModifiers:{}}),emits:["update:data"],setup(s){const y=s,m=e.useModel(s,"data"),a=e.ref(!1),f=e.ref(!1),B=e.ref(null),r=e.ref({list:[{cycle:y.config.cycleDefault??null,factor:null,score:[null,null]}],sqlEnable:0,sqlValue:null}),n=()=>{const{list:o,sqlEnable:t,sqlValue:v}=m.value;r.value={list:JSON.parse(JSON.stringify(o)),sqlEnable:t,sqlValue:v},r.value.list.length||O(),a.value=!0},w=()=>{B.value.validate(o=>{const{list:t,sqlEnable:v,sqlValue:b}=r.value;if(o){if(v){if(!b)return R.ElMessage.error("SQL语句不能为空");const g=W(b),E=t.map((p,N)=>`条件${N+1}`),_=g.filter(p=>!E.includes(p));if(_.length)return R.ElMessage.error(`请检查SQL语句, 不存在[${_}]`)}m.value={list:JSON.parse(JSON.stringify(t)),sqlEnable:v,sqlValue:b},a.value=!1}})},S=o=>{r.value.list.splice(o,1)},O=o=>{switch(o){case"compare":{r.value.list.push({key:"compare",cycle:y.config.cycleDefault??null,factor:null,compareType:">",cycle2:y.config.cycleDefault??null,factor2:null});break}default:{r.value.list.push({cycle:y.config.cycleDefault??null,factor:null,score:[null,null]});break}}},u=()=>{B.value.validate(o=>{if(o)if(r.value.sqlValue){const t=W(r.value.sqlValue);r.value.sqlValue=r.value.list.reduce((v,b,g)=>(t.includes(`条件${g+1}`)||(v+=`&& 条件${g+1} `),v),r.value.sqlValue)}else r.value.sqlValue=r.value.list.reduce((t,v,b)=>(b===0?t+=`条件${b+1} `:t+=`&& 条件${b+1} `,t),"")})},i=o=>{switch(o.key){case"compare":{const{cycle:t,factor:v,compareType:b,cycle2:g,factor2:E}=o;let _="";return _+=` ${y.config.cycleOptions.find(({value:p})=>p===t).label}`,_+=` ${y.config.factorOptions.find(({value:p})=>p===v).label}`,_+=` ${b}`,_+=` ${y.config.cycleOptions.find(({value:p})=>p===g).label}`,_+=` ${y.config.factorOptions.find(({value:p})=>p===E).label}`,_}default:{const{cycle:t,factor:v,score:b}=o;let g="";return g+=` ${y.config.cycleOptions.find(({value:E})=>E===t).label}`,g+=` ${y.config.factorOptions.find(({value:E})=>E===v).label}`,g+=` ${b[0]||b[0]===0?`${b[0]}分`:"∞"}`,g+=" ~",g+=` ${b[1]||b[1]===0?`${b[1]}分`:"∞"}`,g}}},d=(o,t)=>{switch(o){case"sqlTag":{m.value={list:[],sqlEnable:0,sqlValue:null};break}case"factorTag":{m.value.list.splice(t,1);break}}};return(o,t)=>{var z;const v=Y.ElText,b=ne.ElTag,g=le.ElButton,E=D.ElIcon,_=X.ElTooltip,p=L.ElOption,N=L.ElSelect,C=Y.ElFormItem,h=te.ElInputNumber,k=Q,l=Z,c=ee.ElInput,U=Y.ElForm,M=J.ElDialog;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Ee,[e.createElementVNode("div",null,[m.value.sqlEnable&&m.value.sqlValue?(e.openBlock(),e.createBlock(b,{key:0,closable:"",type:"info",title:m.value.sqlValue,onClose:t[0]||(t[0]=x=>d("sqlTag"))},{default:e.withCtx(()=>[e.createVNode(v,{type:"info",truncated:"",style:{"max-width":"500px"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(m.value.sqlValue),1)]),_:1})]),_:1},8,["title"])):e.createCommentVNode("",!0),!m.value.sqlEnable&&m.value.list.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(m.value.list,(x,q)=>(e.openBlock(),e.createBlock(b,{closable:"",type:"info",onClose:V=>d("factorTag",q)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i(x)),1)]),_:2},1032,["onClose"]))),256)):e.createCommentVNode("",!0),e.createVNode(g,{class:"screen-btn",type:"primary",plain:"",size:"small",icon:e.unref(D.plus_default),onClick:n},{default:e.withCtx(()=>[e.createTextVNode(" 添加因子 ")]),_:1},8,["icon"])]),e.createVNode(M,{modelValue:a.value,"onUpdate:modelValue":t[5]||(t[5]=x=>a.value=x),width:"602","align-center":"","destroy-on-close":""},{header:e.withCtx(({titleId:x,titleClass:q})=>[e.createElementVNode("div",Ce,[e.createElementVNode("span",{id:x,class:e.normalizeClass(q)}," 因子筛选 ",10,Be),e.createVNode(_,{effect:"dark",content:"点击查看: 因子使用说明",placement:"right"},{default:e.withCtx(()=>[e.createVNode(E,{onClick:t[1]||(t[1]=V=>f.value=!0)},{default:e.withCtx(()=>[e.createVNode(e.unref(D.info_filled_default))]),_:1})]),_:1})])]),footer:e.withCtx(()=>[e.createElementVNode("div",qe,[e.createVNode(g,{type:"primary",onClick:w},{default:e.withCtx(()=>[e.createTextVNode("确定")]),_:1})])]),default:e.withCtx(()=>[e.createVNode(U,{ref_key:"dialogFormRef",ref:B,model:r.value},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value.list,(x,q)=>(e.openBlock(),e.createElementBlock("div",Oe,[e.createElementVNode("span",Ie,e.toDisplayString(`条件${q+1}`),1),x.key==="compare"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[s.config.cycleShow?(e.openBlock(),e.createBlock(C,{key:0,prop:"list."+q+".cycle",rules:{required:!0,message:"周期不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(N,{modelValue:x.cycle,"onUpdate:modelValue":V=>x.cycle=V,placeholder:"选择周期",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.config.cycleOptions,({label:V,value:I})=>(e.openBlock(),e.createBlock(p,{label:V,value:I,key:I},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])):e.createCommentVNode("",!0),e.createVNode(C,{prop:"list."+q+".factor",rules:{required:!0,message:"因子不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(N,{modelValue:x.factor,"onUpdate:modelValue":V=>x.factor=V,placeholder:"选择因子",filterable:"",size:"small","no-match-text":"无匹配数据"},{default:e.withCtx(()=>{var V;return[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((V=s.config.factorOptions)==null?void 0:V.filter(I=>[4].includes(I.type)),({label:I,value:$})=>(e.openBlock(),e.createBlock(p,{label:I,value:$,key:$},null,8,["label","value"]))),128))]}),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"]),e.createVNode(C,{style:{width:"52px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(N,{modelValue:x.compareType,"onUpdate:modelValue":V=>x.compareType=V,size:"small"},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([">",">=","<","<="],V=>e.createVNode(p,{label:V,value:V,key:V},null,8,["label","value"])),64))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1024),s.config.cycleShow?(e.openBlock(),e.createBlock(C,{key:1,prop:"list."+q+".cycle2",rules:{required:!0,message:"周期不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(N,{modelValue:x.cycle2,"onUpdate:modelValue":V=>x.cycle2=V,placeholder:"选择周期",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.config.cycleOptions,({label:V,value:I})=>(e.openBlock(),e.createBlock(p,{label:V,value:I,key:I},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])):e.createCommentVNode("",!0),e.createVNode(C,{prop:"list."+q+".factor2",rules:{required:!0,message:"因子不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(N,{modelValue:x.factor2,"onUpdate:modelValue":V=>x.factor2=V,placeholder:"选择因子",filterable:"",size:"small","no-match-text":"无匹配数据"},{default:e.withCtx(()=>{var V;return[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((V=s.config.factorOptions)==null?void 0:V.filter(I=>[4].includes(I.type)),({label:I,value:$})=>(e.openBlock(),e.createBlock(p,{label:I,value:$,key:$},null,8,["label","value"]))),128))]}),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[s.config.cycleShow?(e.openBlock(),e.createBlock(C,{key:0,prop:"list."+q+".cycle",rules:{required:!0,message:"周期不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(N,{modelValue:x.cycle,"onUpdate:modelValue":V=>x.cycle=V,placeholder:"选择周期",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.config.cycleOptions,({label:V,value:I})=>(e.openBlock(),e.createBlock(p,{label:V,value:I,key:I},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])):e.createCommentVNode("",!0),e.createVNode(C,{prop:"list."+q+".factor",rules:{required:!0,message:"因子不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(N,{modelValue:x.factor,"onUpdate:modelValue":V=>x.factor=V,placeholder:"选择因子",filterable:"",size:"small","no-match-text":"无匹配数据"},{default:e.withCtx(()=>{var V;return[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((V=s.config.factorOptions)==null?void 0:V.filter(I=>[1,3].includes(I.type)),({label:I,value:$})=>(e.openBlock(),e.createBlock(p,{label:I,value:$,key:$},null,8,["label","value"]))),128))]}),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"]),e.createVNode(C,{prop:"list."+q+".score",rules:{validator:e.unref(Ne),trigger:"blur"},style:{width:"200px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createElementVNode("div",Te,[e.createVNode(h,{modelValue:x.score[0],"onUpdate:modelValue":V=>x.score[0]=V,size:"small","controls-position":"right"},null,8,["modelValue","onUpdate:modelValue"]),$e,e.createVNode(h,{modelValue:x.score[1],"onUpdate:modelValue":V=>x.score[1]=V,size:"small","controls-position":"right"},null,8,["modelValue","onUpdate:modelValue"])])]),_:2},1032,["prop","rules"])],64)),e.createVNode(E,{onClick:V=>S(q)},{default:e.withCtx(()=>[e.createVNode(e.unref(D.circle_close_filled_default))]),_:2},1032,["onClick"])]))),256)),e.createVNode(g,{type:"primary",plain:"",size:"small",icon:e.unref(D.plus_default),onClick:O,style:{"margin-bottom":"10px"}},{default:e.withCtx(()=>[e.createTextVNode("添加因子")]),_:1},8,["icon"]),e.createVNode(g,{type:"primary",plain:"",size:"small",icon:e.unref(D.plus_default),onClick:t[2]||(t[2]=x=>O("compare")),style:{"margin-bottom":"10px"}},{default:e.withCtx(()=>[e.createTextVNode("添加因子对比")]),_:1},8,["icon"]),s.config.sqlShow?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(C,{label:"SQL功能: "},{default:e.withCtx(()=>[e.createVNode(l,{modelValue:r.value.sqlEnable,"onUpdate:modelValue":t[3]||(t[3]=x=>r.value.sqlEnable=x)},{default:e.withCtx(()=>[e.createVNode(k,{label:"关闭",value:0}),e.createVNode(k,{label:"启用",value:1})]),_:1},8,["modelValue"]),r.value.sqlEnable?(e.openBlock(),e.createBlock(g,{key:0,type:"primary",size:"small",onClick:u,style:{"margin-left":"auto"}},{default:e.withCtx(()=>[e.createTextVNode("生成SQL")]),_:1})):e.createCommentVNode("",!0)]),_:1}),r.value.sqlEnable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(c,{modelValue:r.value.sqlValue,"onUpdate:modelValue":t[4]||(t[4]=x=>r.value.sqlValue=x),autosize:{minRows:4},type:"textarea",style:{"margin-bottom":"10px"}},null,8,["modelValue"]),Se],64)):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)]),_:1},8,["model"])]),_:1},8,["modelValue"])]),e.createVNode(we,{visible:f.value,"onUpdate:visible":t[6]||(t[6]=x=>f.value=x),data:(z=s.config.factorDescriptions)==null?void 0:z.filter(x=>[1,3].includes(x.type))},null,8,["visible","data"])],64)}}},Ue=K._export_sfc(Me,[["__scopeId","data-v-ef576faa"]]);const A=s=>(e.pushScopeId("data-v-bdb03941"),s=s(),e.popScopeId(),s),Fe={key:0,class:"common-indicator"},Re={class:"indicator"},De=A(()=>e.createElementVNode("div",{class:"title"},[e.createElementVNode("span",null,"常用指标: "),e.createElementVNode("span",null,"不限")],-1)),Le={class:"options"},je=["onClick"],ze={class:"tags"},Pe=["onClick"],Ge={style:{"font-size":"18px"}},Ae={key:0,class:"out-box"},Ye=A(()=>e.createElementVNode("span",null,"自定义: ",-1)),Je={key:0,class:"convenient-option-box"},Ke={class:"out-box"},Qe=A(()=>e.createElementVNode("span",null,"自定义: ",-1)),Ze={key:0},He={key:0},We={key:0},Xe={key:1},et={class:"tFeaturelncomes-option-box"},tt={class:"tFeaturelncomes-out-box"},lt=A(()=>e.createElementVNode("span",null,"自定义: ",-1)),nt={key:2},at={key:3},ot={key:4},rt={class:"dialog-footer"},ut={__name:"index",props:e.mergeModels({config:{type:Object,default:()=>{}},varietyMarket:{type:Number,default:()=>null},commonOption:{type:Array,default:()=>[]}},{data:{default:[]},dataModifiers:{}}),emits:["update:data"],setup(s){const y=e.useModel(s,"data"),m=s,a=e.ref(!1),f=e.computed(()=>{var o;return(o=m.data.find(t=>t.radioType==="1"))==null?void 0:o.key}),B=e.computed(()=>{let o=[];return m.varietyMarket===null&&!m.commonOption.length?o=m.config.options:(o=m.config.options,m.varietyMarket&&(o=o.filter(({parent:t})=>t.varietyMarketIds.includes(m.varietyMarket))),m.commonOption.length&&(o=o.filter(({parent:t})=>{const{commonOptionIds:v}=t;return[...new Set([...v,...m.commonOption])].length!==[...v,...m.commonOption].length}))),o}),r=e.ref({}),n=e.ref({}),w=o=>{r.value=o;const t={key:o.key,type:o.type,label:o.label};switch(o.key){case"st":{n.value={...t,st:null};break}case"tFeaturelncomes":{n.value={...t,rule:1,withFewYears:null,yearsCount:null,netProfit:null};break}case"priceLevels":{n.value={...t,priceLevels:null};break}case"peTtmLevels":{n.value={...t,peTtmLevels:null};break}case"optionsCpType":{n.value={...t,optionsCpType:null};break}default:n.value={...t,range:[null,null],unit:o.defaultUnit.length?[...o.defaultUnit]:[null,null],radioType:f.value&&f.value!==o.key?"0":o.defaultRadioType,rankRange:o.defaultRankRange||[null,null]}}a.value=!0},S=()=>{switch(n.value.key){case"st":{const{label:t,st:v}=n.value;if(v===null)return R.ElMessage.warning("格式错误: 请至少选择一个值");n.value.tagText=`${t}: ${v?"是":"否"}`;break}case"tFeaturelncomes":{const{label:t,rule:v,withFewYears:b,yearsCount:g,netProfit:E}=n.value;if(["",null].includes(b)||["",null].includes(g)||["",null].includes(E))return R.ElMessage.warning("格式错误: 请填写完整");n.value.tagText=`${t}: ${b}年内${g}年以上盈利${v===1?"超":"跌"}过${E}亿`;break}case"priceLevels":{const{label:t,priceLevels:v}=n.value;if(!v||v.length===0)return R.ElMessage.warning("格式错误: 请至少选择一个值");n.value.tagText=`${t}: 已选${v}分位`;break}case"peTtmLevels":{const{label:t,peTtmLevels:v}=n.value;if(!v||v.length===0)return R.ElMessage.warning("格式错误: 请至少选择一个值");n.value.tagText=`${t}: 已选${v}分位`;break}case"optionsCpType":{const{label:t,optionsCpType:v}=n.value;if(v===null)return R.ElMessage.warning("格式错误: 请至少选择一个值");n.value.tagText=`${t}: ${v===1?"看涨":"看跌"}`;break}default:{const{label:t,unit:v,radioType:b}=n.value,g=b==="1"?n.value.rankRange:n.value.range;if(["",null].includes(g[0])&&["",null].includes(g[1]))return R.ElMessage.warning("格式错误: 请至少填写一个值");if(b==="1"){const p=Number(g[0]),N=Number(g[1]);if(isNaN(p)||isNaN(N))return R.ElMessage.warning("格式错误: 请填写数字");if(p<0||N<0)return R.ElMessage.warning("格式错误: 请填写大于0的数字");if(p>N)return R.ElMessage.warning("格式错误: 请填写正确的排名范围")}const E=b==="1"?"":v[0]??"",_=b==="1"?"":v[1]??"";!["",null].includes(g[0])&&!["",null].includes(g[1])?n.value.tagText=`${t}${b==="1"?"排名":""}: ${g[0]}${E} ~ ${g[1]}${_}`:["",null].includes(g[0])?n.value.tagText=`${t}${b==="1"?"排名":""}: ≤${g[1]}${_}`:n.value.tagText=`${t}${b==="1"?"排名":""}: ≥${g[0]}${E}`}}const o=y.value.findIndex(({key:t})=>t===n.value.key);o===-1?y.value.push(n.value):y.value.splice(o,1,n.value),a.value=!1},O=o=>{r.value=B.value.find(({key:t})=>t===o.key),n.value=JSON.parse(JSON.stringify(o)),a.value=!0},u=o=>{y.value.splice(o,1)},i=o=>{n.value.range=[...o.range],n.value.unit=[...o.unit]},d=o=>{switch(o){case"≤0":Object.assign(n.value,{rule:2,withFewYears:1,yearsCount:1,netProfit:0});break;case"≥0":Object.assign(n.value,{rule:1,withFewYears:1,yearsCount:1,netProfit:0});break;case"五年内有四年以上盈利超过5千万":Object.assign(n.value,{rule:1,withFewYears:5,yearsCount:4,netProfit:.5});break;case"≥10亿":Object.assign(n.value,{rule:1,withFewYears:1,yearsCount:1,netProfit:10});break;case"≥20亿":Object.assign(n.value,{rule:1,withFewYears:1,yearsCount:1,netProfit:20});break}};return e.watch(()=>B.value,()=>{y.value.length&&(y.value=y.value.filter(({key:o})=>B.value.find(t=>t.key===o)))}),(o,t)=>{const v=ne.ElTag,b=xe,g=Z,E=ee.ElInput,_=le.ElButton,p=L.ElOption,N=L.ElSelect,C=Q,h=te.ElInputNumber,k=J.ElDialog;return s.config.show&&B.value.length?(e.openBlock(),e.createElementBlock("div",Fe,[e.createElementVNode("div",Re,[De,e.createElementVNode("div",Le,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.value,l=>(e.openBlock(),e.createElementBlock("span",{key:l.key,onClick:c=>w(l)},e.toDisplayString(l.label),9,je))),128))])]),e.createElementVNode("div",ze,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.value,(l,c)=>(e.openBlock(),e.createBlock(v,{closable:"",type:"info",onClose:U=>u(c)},{default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(l.tagText),1),e.createElementVNode("span",{class:"edit",onClick:U=>O(l)},"编辑",8,Pe)]),_:2},1032,["onClose"]))),256))]),e.createVNode(k,{modelValue:a.value,"onUpdate:modelValue":t[19]||(t[19]=l=>a.value=l),title:r.value.label,width:"600","align-center":"","destroy-on-close":""},e.createSlots({footer:e.withCtx(()=>[e.createElementVNode("div",rt,[e.createVNode(_,{type:"primary",onClick:S},{default:e.withCtx(()=>[e.createTextVNode("确定")]),_:1})])]),default:e.withCtx(()=>[r.value.type===void 0&&n.value.radioType==="1"?(e.openBlock(),e.createElementBlock("div",Ae,[Ye,e.createVNode(E,{modelValue:n.value.rankRange[0],"onUpdate:modelValue":t[1]||(t[1]=l=>n.value.rankRange[0]=l),style:{flex:"1"}},null,8,["modelValue"]),e.createTextVNode(" ~ "),e.createVNode(E,{modelValue:n.value.rankRange[1],"onUpdate:modelValue":t[2]||(t[2]=l=>n.value.rankRange[1]=l),style:{flex:"1"}},null,8,["modelValue"])])):r.value.type===void 0?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[r.value.convenientOptions.length?(e.openBlock(),e.createElementBlock("div",Je,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value.convenientOptions,l=>(e.openBlock(),e.createBlock(_,{key:l.text,onClick:c=>i(l)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(l.text),1)]),_:2},1032,["onClick"]))),128))])):e.createCommentVNode("",!0),e.createElementVNode("div",Ke,[Qe,e.createVNode(E,{modelValue:n.value.range[0],"onUpdate:modelValue":t[4]||(t[4]=l=>n.value.range[0]=l),style:{flex:"1"}},e.createSlots({_:2},[r.value.unitOptions.length?{name:"append",fn:e.withCtx(()=>[r.value.unitOptions.length===1?(e.openBlock(),e.createElementBlock("span",Ze,e.toDisplayString(n.value.unit[0]),1)):(e.openBlock(),e.createBlock(N,{key:1,modelValue:n.value.unit[0],"onUpdate:modelValue":t[3]||(t[3]=l=>n.value.unit[0]=l),style:{width:"72px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value.unitOptions,l=>(e.openBlock(),e.createBlock(p,{label:l,value:l},null,8,["label","value"]))),256))]),_:1},8,["modelValue"]))]),key:"0"}:void 0]),1032,["modelValue"]),e.createTextVNode(" ~ "),e.createVNode(E,{modelValue:n.value.range[1],"onUpdate:modelValue":t[6]||(t[6]=l=>n.value.range[1]=l),style:{flex:"1"}},e.createSlots({_:2},[r.value.unitOptions.length?{name:"append",fn:e.withCtx(()=>[r.value.unitOptions.length===1?(e.openBlock(),e.createElementBlock("span",He,e.toDisplayString(n.value.unit[1]),1)):(e.openBlock(),e.createBlock(N,{key:1,modelValue:n.value.unit[1],"onUpdate:modelValue":t[5]||(t[5]=l=>n.value.unit[1]=l),style:{width:"72px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value.unitOptions,l=>(e.openBlock(),e.createBlock(p,{label:l,value:l},null,8,["label","value"]))),256))]),_:1},8,["modelValue"]))]),key:"0"}:void 0]),1032,["modelValue"])])],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[r.value.key==="st"?(e.openBlock(),e.createElementBlock("div",We,[e.createVNode(g,{modelValue:n.value.st,"onUpdate:modelValue":t[7]||(t[7]=l=>n.value.st=l)},{default:e.withCtx(()=>[e.createVNode(C,{label:"是",value:1}),e.createVNode(C,{label:"否",value:0})]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),r.value.key==="tFeaturelncomes"?(e.openBlock(),e.createElementBlock("div",Xe,[e.createElementVNode("div",et,[e.createVNode(_,{onClick:t[8]||(t[8]=l=>d("≤0"))},{default:e.withCtx(()=>[e.createTextVNode("≤0")]),_:1}),e.createVNode(_,{onClick:t[9]||(t[9]=l=>d("≥0"))},{default:e.withCtx(()=>[e.createTextVNode("≥0")]),_:1}),e.createVNode(_,{onClick:t[10]||(t[10]=l=>d("五年内有四年以上盈利超过5千万"))},{default:e.withCtx(()=>[e.createTextVNode("五年内有四年以上盈利超过5千万")]),_:1}),e.createVNode(_,{onClick:t[11]||(t[11]=l=>d("≥10亿"))},{default:e.withCtx(()=>[e.createTextVNode("≥10亿")]),_:1}),e.createVNode(_,{onClick:t[12]||(t[12]=l=>d("≥20亿"))},{default:e.withCtx(()=>[e.createTextVNode("≥20亿")]),_:1})]),e.createElementVNode("div",tt,[lt,e.createElementVNode("div",null,[e.createVNode(h,{modelValue:n.value.withFewYears,"onUpdate:modelValue":t[13]||(t[13]=l=>n.value.withFewYears=l),"controls-position":"right"},null,8,["modelValue"]),e.createTextVNode(" 年内 "),e.createVNode(h,{modelValue:n.value.yearsCount,"onUpdate:modelValue":t[14]||(t[14]=l=>n.value.yearsCount=l),"controls-position":"right"},null,8,["modelValue"]),e.createTextVNode(" 年以上盈利"+e.toDisplayString(n.value.rule===1?"超":"跌")+"过 ",1),e.createVNode(h,{modelValue:n.value.netProfit,"onUpdate:modelValue":t[15]||(t[15]=l=>n.value.netProfit=l),"controls-position":"right"},null,8,["modelValue"]),e.createTextVNode(" 亿 ")])])])):e.createCommentVNode("",!0),r.value.key==="priceLevels"?(e.openBlock(),e.createElementBlock("div",nt,[e.createVNode(N,{modelValue:n.value.priceLevels,"onUpdate:modelValue":t[16]||(t[16]=l=>n.value.priceLevels=l),multiple:"",clearable:"",placeholder:"请选择",style:{width:"420px"}},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([1,2,3,4,5],l=>e.createVNode(p,{key:l,label:`${l}分位`,value:l},null,8,["label","value"])),64))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),r.value.key==="peTtmLevels"?(e.openBlock(),e.createElementBlock("div",at,[e.createVNode(N,{modelValue:n.value.peTtmLevels,"onUpdate:modelValue":t[17]||(t[17]=l=>n.value.peTtmLevels=l),multiple:"",clearable:"",placeholder:"请选择",style:{width:"420px"}},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([1,2,3,4,5,6,7,8,9,10],l=>e.createVNode(p,{key:l,label:`${l}分位`,value:l},null,8,["label","value"])),64))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),r.value.key==="optionsCpType"?(e.openBlock(),e.createElementBlock("div",ot,[e.createVNode(g,{modelValue:n.value.optionsCpType,"onUpdate:modelValue":t[18]||(t[18]=l=>n.value.optionsCpType=l)},{default:e.withCtx(()=>[e.createVNode(C,{label:"看涨",value:1}),e.createVNode(C,{label:"看跌",value:2})]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0)],64))]),_:2},[r.value.showRankType?{name:"header",fn:e.withCtx(()=>[e.createElementVNode("span",Ge,e.toDisplayString(r.value.label),1),e.createVNode(g,{modelValue:n.value.radioType,"onUpdate:modelValue":t[0]||(t[0]=l=>n.value.radioType=l),style:{"vertical-align":"4px","margin-left":"12px"}},{default:e.withCtx(()=>[e.createVNode(b,{label:"数值",value:"0"}),e.createVNode(b,{disabled:f.value&&f.value!==r.value.key,label:"排名",value:"1"},null,8,["disabled"])]),_:1},8,["modelValue"])]),key:"0"}:void 0]),1032,["modelValue","title"])])):e.createCommentVNode("",!0)}}},st=K._export_sfc(ut,[["__scopeId","data-v-bdb03941"]]);const j=s=>(e.pushScopeId("data-v-6a2ba7cb"),s=s(),e.popScopeId(),s),it={class:"variety-search"},ct={key:0,class:"variety-search-row"},dt={class:"title"},pt=j(()=>e.createElementVNode("span",null,"品种市场: ",-1)),mt={key:1,class:"variety-search-row"},ft={class:"title"},vt=j(()=>e.createElementVNode("span",null,"常用选项: ",-1)),kt={key:2,class:"variety-search-row"},gt={class:"title"},yt=j(()=>e.createElementVNode("span",null,"上市板块: ",-1)),Vt={key:3,class:"variety-search-row"},bt={class:"title"},_t=j(()=>e.createElementVNode("span",null,"自定标签: ",-1)),ht={key:4,class:"variety-search-row"},xt={class:"title"},Nt=j(()=>e.createElementVNode("span",null,"价差转换: ",-1)),wt={key:5,class:"variety-search-row"},Et={class:"title"},Ct=j(()=>e.createElementVNode("span",null,"因子筛选: ",-1)),Bt={__name:"index",props:e.mergeModels({config:{type:Object,default:{}}},{searchData:{},searchDataModifiers:{}}),emits:["update:searchData"],setup(s,{expose:y}){const m=s,a=e.useModel(s,"searchData");a.value=Object.assign(a.value,{varietyMarket:null,commonOption:[],marketIds:[],customTag:[],jcTranslate:{type:null,jcList:[]},factorScreen:{list:[],sqlEnable:0,sqlValue:null},commonIndicator:[]});const f=e.computed(()=>{const u={};return Object.keys(H).forEach(i=>{const d=H[i],o=m.config[i]??{},t={...d,...o};u[i]=t}),u}),B=e.computed(()=>f.value.varietyMarket.options),r=e.computed(()=>{const{varietyMarket:u}=a.value;if(u){const i=B.value.find(({value:d})=>d===u).memo;return f.value.commonOption.options.filter(({value:d})=>i.includes(d))}else return f.value.commonOption.options}),n=e.computed(()=>{const{varietyMarket:u}=a.value;return u?f.value.marketIds.options.filter(i=>i.varietyMarketIds.includes(u)):f.value.marketIds.options}),w=e.computed(()=>f.value.customTag.options),S=e.computed(()=>f.value.jcTranslate.jcOptions),O=u=>{switch(u){case"commonOption":{a.value[u]=[];break}case"marketIds":{a.value[u]=[];break}case"customTag":{a.value[u]=[];break}case"jcTranslate":{a.value[u]={type:null,jcList:[]};break}case"factorScreen":{a.value[u]={list:[],sqlEnable:0,sqlValue:null};break}case"commonIndicator":{a.value[u]=[];break}default:{a.value[u]=null;break}}};return e.watch(()=>r.value,u=>{var i;(i=a.value.commonOption)!=null&&i.length&&(a.value.commonOption=a.value.commonOption.filter(d=>u.find(({value:o})=>o===d)))}),e.watch(()=>n.value,u=>{var i;(i=a.value.marketIds)!=null&&i.length&&(a.value.marketIds=a.value.marketIds.filter(d=>u.find(({value:o})=>o===d)))}),y({formatData:u=>{var o,t,v,b,g,E;console.log("%c[品种池搜索聚合组件]: 正在校验并生成接口传参...","color: tomato");let i=!0;const d={};if(u.varietyMarket&&(d.exchangeId=String(u.varietyMarket)),(o=u.commonOption)!=null&&o.length&&(d.optionId=u.commonOption.join(",")),(t=u.marketIds)!=null&&t.length&&(d.marketIds=u.marketIds),(v=u.customTag)!=null&&v.length&&(d.tagIds=u.customTag),(b=f.value.jcTranslate)!=null&&b.show){const{jcTranslate:_}=u,{type:p,jcList:N}=_;switch(p){case 1:{!N||N.length===0?(R.ElMessage.warning("启用品种转价差功能时, 请至少选择一项价差品种"),i=!1):(d.translateType=1,d.jcType=N.join(","));break}case 2:d.translateType=2}}if((g=f.value.factorScreen)!=null&&g.show){const{factorScreen:_}=u;if((E=_==null?void 0:_.list)!=null&&E.length&&(d.tbFeatureFactorScores=_.list.map(p=>{switch(p.key){case"compare":return{freqId:p.cycle,factorId:p.factor,compareType:p.compareType,freqId2:p.cycle2,factorId2:p.factor2};default:return{freqId:p.cycle,factorId:p.factor,startScore:p.score[0],endScore:p.score[1]}}})),_.sqlEnable){const p=_.list.reduce((C,h,k)=>{var c,U;const l=`条件${k+1}`;switch(h.key){case"compare":{let M="";(c=f.value.factorScreen)!=null&&c.cycleShow?M=`freq_id = ${h.cycle} and factor_id = ${h.factor} ${h.compareType} freq_id = ${h.cycle2} and factor_id = ${h.factor2}`:M=`factor_id = ${h.factor} ${h.compareType} factor_id = ${h.factor2}`,C.set(l,`(${M})`);break}default:{let M=`factor_id = ${h.factor} and `;(U=f.value.factorScreen)!=null&&U.cycleShow&&(M=`freq_id = ${h.cycle} and factor_id = ${h.factor} and `),(h.score[0]||h.score[0]===0)&&(h.score[1]||h.score[1]===0)?M+=`score >= ${h.score[0]} and score <= ${h.score[1]}`:h.score[0]||h.score[0]===0?M+=`score >= ${h.score[0]}`:(h.score[1]||h.score[1]===0)&&(M+=`score <= ${h.score[1]}`),C.set(l,`(${M})`)}}return C},new Map([]));let N=_.sqlValue;for(const[C,h]of p){const k=new RegExp(C,"g");N=N.replace(k,h)}d.sql=N,d.sqlExpression=_.sqlValue}d.enableSql=_.sqlEnable===1?2:1}{const _=["expireDays","virtualRealDegree","yearProfitRate","impliedVolatility","levelMultiplier","turnover","volume","openInterest","optionsCpType","optionGear"],p=u.commonIndicator.reduce((c,U)=>{const{key:M,type:z,range:x,unit:q,radioType:V,rankRange:I}=U;if(V==="1")d.sortBy={column:U.key,start:I[0]||null,end:I[1]||null};else if(M==="dividendYield"){let[$,F]=x;["",null].includes($)||($=$/100),["",null].includes(F)||(F=F/100),c.push({column:U.key,start:$,end:F})}else if(z===void 0&&!_.includes(M)){let[$,F]=x;if(!["",null].includes($))switch(q[0]){case"亿":$=$*1e8;break;case"千万":$=$*1e7;break;default:$=$;break}if(!["",null].includes(F))switch(q[1]){case"亿":F=F*1e8;break;case"千万":F=F*1e7;break;default:F=F;break}c.push({column:U.key,start:$,end:F})}return c},[]);p.length&&(d.query=p);const N=u.commonIndicator.find(({key:c})=>c==="st");N&&(d.st=N.st);const C=u.commonIndicator.find(({key:c})=>c==="tFeaturelncomes");C&&(d.netProfitQueryDto={...C,netProfit:C.netProfit*1e8});const h=u.commonIndicator.find(({key:c})=>c==="priceLevels");h&&(d.priceLevels=h.priceLevels);const k=u.commonIndicator.find(({key:c})=>c==="peTtmLevels");k&&(d.peTtmLevels=k.peTtmLevels);const l={};u.commonIndicator.forEach(c=>{const{key:U}=c;switch(U){case"expireDays":["",null].includes(c.range[0])||(l.minExpireDays=c.range[0]),["",null].includes(c.range[1])||(l.maxExpireDays=c.range[1]);break;case"virtualRealDegree":["",null].includes(c.range[0])||(l.minVirtualRealDegree=c.range[0]/100),["",null].includes(c.range[1])||(l.maxVirtualRealDegree=c.range[1]/100);break;case"yearProfitRate":["",null].includes(c.range[0])||(l.minYearProfitRate=c.range[0]/100),["",null].includes(c.range[1])||(l.maxYearProfitRate=c.range[1]/100);break;case"impliedVolatility":["",null].includes(c.range[0])||(l.minImpliedVolatility=c.range[0]/100),["",null].includes(c.range[1])||(l.maxImpliedVolatility=c.range[1]/100);break;case"levelMultiplier":["",null].includes(c.range[0])||(l.minLevelMultiplier=c.range[0]),["",null].includes(c.range[1])||(l.maxLevelMultiplier=c.range[1]);break;case"turnover":["",null].includes(c.range[0])||(l.minTurnover=c.range[0]*1e4),["",null].includes(c.range[1])||(l.maxTurnover=c.range[1]*1e4);break;case"volume":["",null].includes(c.range[0])||(l.minVolume=c.range[0]),["",null].includes(c.range[1])||(l.maxVolume=c.range[1]);break;case"openInterest":["",null].includes(c.range[0])||(l.minOpenInterest=c.range[0]),["",null].includes(c.range[1])||(l.maxOpenInterest=c.range[1]);break;case"optionsCpType":l.optionsCpType=c.optionsCpType;break;case"optionGear":["",null].includes(c.range[0])||(l.minOptionGear=c.range[0]),["",null].includes(c.range[1])||(l.maxOptionGear=c.range[1]);break}}),Object.keys(l).length&&(d.searchOptionDto={...d.searchOptionDto,...l})}return console.log("%c[品种池搜索聚合组件]: 接口传参数据生成完毕","color: green",d),{validateFlag:i,params:d}},reset:()=>{a.value={varietyMarket:null,commonOption:[],marketIds:[],customTag:[],jcTranslate:{type:null,jcList:[]},factorScreen:{list:[],sqlEnable:0,sqlValue:null},commonIndicator:[]}}}),(u,i)=>{var E,_,p,N,C,h;const d=Q,o=Z,t=P.ElCheckbox,v=P.ElCheckboxGroup,b=L.ElOption,g=L.ElSelect;return e.openBlock(),e.createElementBlock("div",it,[(E=f.value.varietyMarket)!=null&&E.show?(e.openBlock(),e.createElementBlock("div",ct,[e.createElementVNode("div",dt,[pt,e.createElementVNode("span",{onClick:i[0]||(i[0]=k=>O("varietyMarket"))},"不限")]),e.createVNode(o,{modelValue:a.value.varietyMarket,"onUpdate:modelValue":i[1]||(i[1]=k=>a.value.varietyMarket=k),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.value,({label:k,value:l})=>(e.openBlock(),e.createBlock(d,{label:k,value:l,key:l},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(_=f.value.commonOption)!=null&&_.show&&r.value.length?(e.openBlock(),e.createElementBlock("div",mt,[e.createElementVNode("div",ft,[vt,e.createElementVNode("span",{onClick:i[2]||(i[2]=k=>O("commonOption"))},"不限")]),e.createVNode(v,{modelValue:a.value.commonOption,"onUpdate:modelValue":i[3]||(i[3]=k=>a.value.commonOption=k),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,({label:k,value:l})=>(e.openBlock(),e.createBlock(t,{label:k,value:l,key:l},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(p=f.value.marketIds)!=null&&p.show&&n.value.length?(e.openBlock(),e.createElementBlock("div",kt,[e.createElementVNode("div",gt,[yt,e.createElementVNode("span",{onClick:i[4]||(i[4]=k=>O("marketIds"))},"不限")]),e.createVNode(v,{modelValue:a.value.marketIds,"onUpdate:modelValue":i[5]||(i[5]=k=>a.value.marketIds=k),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,({label:k,value:l})=>(e.openBlock(),e.createBlock(t,{label:k,value:l,key:l},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(N=f.value.customTag)!=null&&N.show&&w.value.length?(e.openBlock(),e.createElementBlock("div",Vt,[e.createElementVNode("div",bt,[_t,e.createElementVNode("span",{onClick:i[6]||(i[6]=k=>O("customTag"))},"不限")]),e.createVNode(v,{modelValue:a.value.customTag,"onUpdate:modelValue":i[7]||(i[7]=k=>a.value.customTag=k),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value,({label:k,value:l})=>(e.openBlock(),e.createBlock(t,{label:k,value:l,key:l},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(C=f.value.jcTranslate)!=null&&C.show?(e.openBlock(),e.createElementBlock("div",ht,[e.createElementVNode("div",xt,[Nt,e.createElementVNode("span",{onClick:i[8]||(i[8]=k=>O("jcTranslate"))},"不限")]),e.createVNode(o,{modelValue:a.value.jcTranslate.type,"onUpdate:modelValue":i[9]||(i[9]=k=>a.value.jcTranslate.type=k),size:"small"},{default:e.withCtx(()=>[e.createVNode(d,{value:2},{default:e.withCtx(()=>[e.createTextVNode("价差转品种")]),_:1}),e.createVNode(d,{value:1},{default:e.withCtx(()=>[e.createTextVNode("品种转价差")]),_:1})]),_:1},8,["modelValue"]),e.withDirectives(e.createVNode(g,{modelValue:a.value.jcTranslate.jcList,"onUpdate:modelValue":i[10]||(i[10]=k=>a.value.jcTranslate.jcList=k),size:"small",multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:"请选择价差品种",style:{width:"140px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(S.value,k=>(e.openBlock(),e.createBlock(b,{key:k.value,label:k.label,value:k.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),[[e.vShow,a.value.jcTranslate.type===1]])])):e.createCommentVNode("",!0),(h=f.value.factorScreen)!=null&&h.show?(e.openBlock(),e.createElementBlock("div",wt,[e.createElementVNode("div",Et,[Ct,e.createElementVNode("span",{onClick:i[11]||(i[11]=k=>O("factorScreen"))},"不限")]),e.createVNode(Ue,{data:a.value.factorScreen,"onUpdate:data":i[12]||(i[12]=k=>a.value.factorScreen=k),config:f.value.factorScreen},null,8,["data","config"])])):e.createCommentVNode("",!0),e.createVNode(st,{data:a.value.commonIndicator,"onUpdate:data":i[13]||(i[13]=k=>a.value.commonIndicator=k),varietyMarket:a.value.varietyMarket,commonOption:a.value.commonOption,config:f.value.commonIndicator},null,8,["data","varietyMarket","commonOption","config"])])}}},Ot=K._export_sfc(Bt,[["__scopeId","data-v-6a2ba7cb"]]),It={install(s){s.component("st-varietySearch",Ot)}};module.exports=It;
|