st-comp 0.0.113 → 0.0.114
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 +950 -946
- package/es/style.css +1 -1
- package/lib/bundle.js +1 -1
- package/lib/bundle.umd.cjs +57 -57
- package/lib/{index-0a84b585.js → index-baf940eb.js} +2715 -2711
- package/lib/{python-023777fe.js → python-656f1fea.js} +1 -1
- package/lib/style.css +1 -1
- package/package.json +1 -1
- package/packages/VarietySearch/components/CommonIndicator/index.vue +5 -2
- package/packages/VarietySearch/index.vue +2 -6
package/es/VarietySearch.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const h=require("./base-adc4e34e.cjs"),D=require("./el-radio-button-5259a46b.cjs"),Y=require("./el-table-column-d636a7d6.cjs"),e=require("vue"),Q=require("./el-overlay-84e3cb6c.cjs"),X=require("./el-input-65ed0dba.cjs");require("./el-tag-a45bdd1e.cjs");const z=require("./el-select-4987a187.cjs"),W=require("./el-scrollbar-8cb3663b.cjs"),oe=require("./el-popper-4da22fdc.cjs");require("./el-tooltip-0ea8fbf8.cjs");const ee=require("./el-button-e389429d.cjs"),q=require("./use-form-common-props-96d2ea48.cjs"),J=require("./_plugin-vue_export-helper-f246444f.cjs"),ae=require("./typescript-b63f8e83.cjs"),re=require("./index-35665af5.cjs"),se=require("./index-f14354e6.cjs"),L=require("./config-provider-957c280a.cjs");require("./event-61f49698.cjs");require("./castArray-e6cd255c.cjs");require("./debounce-3ad03224.cjs");require("./raf-da075499.cjs");require("./vnode-562e063c.cjs");require("./refs-34a69f8c.cjs");require("./scroll-c7ef9180.cjs");require("./index-4090cb2c.cjs");require("./index-eea0bcb3.cjs");const ie=h.buildProps({value:{type:[String,Number],default:""},max:{type:Number,default:99},isDot:Boolean,hidden:Boolean,type:{type:String,values:["primary","success","warning","info","danger"],default:"danger"},showZero:{type:Boolean,default:!0},color:String,badgeStyle:{type:h.definePropType([String,Object,Array])},offset:{type:h.definePropType(Array),default:[0,0]},badgeClass:{type:String}}),ue=e.defineComponent({name:"ElBadge"}),ce=e.defineComponent({...ue,props:ie,setup(r,{expose:u}){const o=r,s=h.useNamespace("badge"),d=e.computed(()=>o.isDot?"":h.isNumber(o.value)&&h.isNumber(o.max)?o.max<o.value?`${o.max}+`:`${o.value}`:`${o.value}`),k=e.computed(()=>{var t,E,O,I,v;return[{backgroundColor:o.color,marginRight:h.addUnit(-((E=(t=o.offset)==null?void 0:t[0])!=null?E:0)),marginTop:h.addUnit((I=(O=o.offset)==null?void 0:O[1])!=null?I:0)},(v=o.badgeStyle)!=null?v:{}]});return u({content:d}),(t,E)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(s).b())},[e.renderSlot(t.$slots,"default"),e.createVNode(e.Transition,{name:`${e.unref(s).namespace.value}-zoom-in-center`,persisted:""},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("sup",{class:e.normalizeClass([e.unref(s).e("content"),e.unref(s).em("content",t.type),e.unref(s).is("fixed",!!t.$slots.default),e.unref(s).is("dot",t.isDot),e.unref(s).is("hide-zero",!t.showZero&&o.value===0),t.badgeClass]),style:e.normalizeStyle(e.unref(k))},[e.renderSlot(t.$slots,"content",{value:e.unref(d)},()=>[e.createTextVNode(e.toDisplayString(e.unref(d)),1)])],6),[[e.vShow,!t.hidden&&(e.unref(d)||t.isDot||t.$slots.content)]])]),_:3},8,["name"])],2))}});var de=h._export_sfc(ce,[["__file","badge.vue"]]);const pe=h.withInstall(de),me=h.buildProps({type:{type:String,values:["primary","success","info","warning","danger",""],default:""},size:{type:String,values:q.componentSizes,default:""},truncated:Boolean,lineClamp:{type:[String,Number]},tag:{type:String,default:"span"}}),fe=e.defineComponent({name:"ElText"}),ve=e.defineComponent({...fe,props:me,setup(r){const u=r,o=e.ref(),s=q.useFormSize(),d=h.useNamespace("text"),k=e.computed(()=>[d.b(),d.m(u.type),d.m(s.value),d.is("truncated",u.truncated),d.is("line-clamp",!h.isUndefined(u.lineClamp))]),t=e.useAttrs().title,E=()=>{var O,I,v,c,B;if(t)return;let m=!1;const n=((O=o.value)==null?void 0:O.textContent)||"";if(u.truncated){const i=(I=o.value)==null?void 0:I.offsetWidth,g=(v=o.value)==null?void 0:v.scrollWidth;i&&g&&g>i&&(m=!0)}else if(!h.isUndefined(u.lineClamp)){const i=(c=o.value)==null?void 0:c.offsetHeight,g=(B=o.value)==null?void 0:B.scrollHeight;i&&g&&g>i&&(m=!0)}m?o.value.setAttribute("title",n):o.value.removeAttribute("title")};return e.onMounted(E),e.onUpdated(E),(O,I)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(O.tag),{ref_key:"textRef",ref:o,class:e.normalizeClass(e.unref(k)),style:e.normalizeStyle({"-webkit-line-clamp":O.lineClamp})},{default:e.withCtx(()=>[e.renderSlot(O.$slots,"default")]),_:3},8,["class","style"]))}});var ge=h._export_sfc(ve,[["__file","text.vue"]]);const ye=h.withInstall(ge),te=["success","info","warning","error"],$=ae.mutable({customClass:"",center:!1,dangerouslyUseHTMLString:!1,duration:3e3,icon:void 0,id:"",message:"",onClose:void 0,showClose:!1,type:"info",plain:!1,offset:16,zIndex:0,grouping:!1,repeatNum:1,appendTo:h.isClient?document.body:void 0}),ke=h.buildProps({customClass:{type:String,default:$.customClass},center:{type:Boolean,default:$.center},dangerouslyUseHTMLString:{type:Boolean,default:$.dangerouslyUseHTMLString},duration:{type:Number,default:$.duration},icon:{type:q.iconPropType,default:$.icon},id:{type:String,default:$.id},message:{type:h.definePropType([String,Object,Function]),default:$.message},onClose:{type:h.definePropType(Function),default:$.onClose},showClose:{type:Boolean,default:$.showClose},type:{type:String,values:te,default:$.type},plain:{type:Boolean,default:$.plain},offset:{type:Number,default:$.offset},zIndex:{type:Number,default:$.zIndex},grouping:{type:Boolean,default:$.grouping},repeatNum:{type:Number,default:$.repeatNum}}),Ve={destroy:()=>!0},F=e.shallowReactive([]),be=r=>{const u=F.findIndex(d=>d.id===r),o=F[u];let s;return u>0&&(s=F[u-1]),{current:o,prev:s}},he=r=>{const{prev:u}=be(r);return u?u.vm.exposed.bottom.value:0},_e=(r,u)=>F.findIndex(s=>s.id===r)>0?16:u,xe=e.defineComponent({name:"ElMessage"}),Ce=e.defineComponent({...xe,props:ke,emits:Ve,setup(r,{expose:u}){const o=r,{Close:s}=q.TypeComponents,{ns:d,zIndex:k}=re.useGlobalComponentSettings("message"),{currentZIndex:t,nextZIndex:E}=k,O=e.ref(),I=e.ref(!1),v=e.ref(0);let c;const B=e.computed(()=>o.type?o.type==="error"?"danger":o.type:"info"),m=e.computed(()=>{const y=o.type;return{[d.bm("icon",y)]:y&&q.TypeComponentsMap[y]}}),n=e.computed(()=>o.icon||q.TypeComponentsMap[o.type]||""),i=e.computed(()=>he(o.id)),g=e.computed(()=>_e(o.id,o.offset)+i.value),p=e.computed(()=>v.value+g.value),f=e.computed(()=>({top:`${g.value}px`,zIndex:t.value}));function _(){o.duration!==0&&({stop:c}=h.useTimeoutFn(()=>{a()},o.duration))}function x(){c==null||c()}function a(){I.value=!1}function C({code:y}){y===se.EVENT_CODE.esc&&a()}return e.onMounted(()=>{_(),E(),I.value=!0}),e.watch(()=>o.repeatNum,()=>{x(),_()}),W.useEventListener(document,"keydown",C),W.useResizeObserver(O,()=>{v.value=O.value.getBoundingClientRect().height}),u({visible:I,bottom:p,close:a}),(y,w)=>(e.openBlock(),e.createBlock(e.Transition,{name:e.unref(d).b("fade"),onBeforeLeave:y.onClose,onAfterLeave:l=>y.$emit("destroy"),persisted:""},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",{id:y.id,ref_key:"messageRef",ref:O,class:e.normalizeClass([e.unref(d).b(),{[e.unref(d).m(y.type)]:y.type},e.unref(d).is("center",y.center),e.unref(d).is("closable",y.showClose),e.unref(d).is("plain",y.plain),y.customClass]),style:e.normalizeStyle(e.unref(f)),role:"alert",onMouseenter:x,onMouseleave:_},[y.repeatNum>1?(e.openBlock(),e.createBlock(e.unref(pe),{key:0,value:y.repeatNum,type:e.unref(B),class:e.normalizeClass(e.unref(d).e("badge"))},null,8,["value","type","class"])):e.createCommentVNode("v-if",!0),e.unref(n)?(e.openBlock(),e.createBlock(e.unref(q.ElIcon),{key:1,class:e.normalizeClass([e.unref(d).e("icon"),e.unref(m)])},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(n))))]),_:1},8,["class"])):e.createCommentVNode("v-if",!0),e.renderSlot(y.$slots,"default",{},()=>[y.dangerouslyUseHTMLString?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createCommentVNode(" Caution here, message could've been compromised, never use user's input as message "),e.createElementVNode("p",{class:e.normalizeClass(e.unref(d).e("content")),innerHTML:y.message},null,10,["innerHTML"])],2112)):(e.openBlock(),e.createElementBlock("p",{key:0,class:e.normalizeClass(e.unref(d).e("content"))},e.toDisplayString(y.message),3))]),y.showClose?(e.openBlock(),e.createBlock(e.unref(q.ElIcon),{key:2,class:e.normalizeClass(e.unref(d).e("closeBtn")),onClick:e.withModifiers(a,["stop"])},{default:e.withCtx(()=>[e.createVNode(e.unref(s))]),_:1},8,["class","onClick"])):e.createCommentVNode("v-if",!0)],46,["id"]),[[e.vShow,I.value]])]),_:3},8,["name","onBeforeLeave","onAfterLeave"]))}});var Ne=h._export_sfc(Ce,[["__file","message.vue"]]);let we=1;const le=r=>{const u=!r||h.isString(r)||e.isVNode(r)||h.isFunction(r)?{message:r}:r,o={...$,...u};if(!o.appendTo)o.appendTo=document.body;else if(h.isString(o.appendTo)){let s=document.querySelector(o.appendTo);h.isElement(s)||(h.debugWarn("ElMessage","the appendTo option is not an HTMLElement. Falling back to document.body."),s=document.body),o.appendTo=s}return h.isBoolean(L.messageConfig.grouping)&&!o.grouping&&(o.grouping=L.messageConfig.grouping),h.isNumber(L.messageConfig.duration)&&o.duration===3e3&&(o.duration=L.messageConfig.duration),h.isNumber(L.messageConfig.offset)&&o.offset===16&&(o.offset=L.messageConfig.offset),h.isBoolean(L.messageConfig.showClose)&&!o.showClose&&(o.showClose=L.messageConfig.showClose),o},Be=r=>{const u=F.indexOf(r);if(u===-1)return;F.splice(u,1);const{handler:o}=r;o.close()},Ee=({appendTo:r,...u},o)=>{const s=`message_${we++}`,d=u.onClose,k=document.createElement("div"),t={...u,id:s,onClose:()=>{d==null||d(),Be(v)},onDestroy:()=>{e.render(null,k)}},E=e.createVNode(Ne,t,h.isFunction(t.message)||e.isVNode(t.message)?{default:h.isFunction(t.message)?t.message:()=>t.message}:null);E.appContext=o||P._context,e.render(E,k),r.appendChild(k.firstElementChild);const O=E.component,v={id:s,vnode:E,vm:O,handler:{close:()=>{O.exposed.visible.value=!1}},props:E.component.props};return v},P=(r={},u)=>{if(!h.isClient)return{close:()=>{}};const o=le(r);if(o.grouping&&F.length){const d=F.find(({vnode:k})=>{var t;return((t=k.props)==null?void 0:t.message)===o.message});if(d)return d.props.repeatNum+=1,d.props.type=o.type,d.handler}if(h.isNumber(L.messageConfig.max)&&F.length>=L.messageConfig.max)return{close:()=>{}};const s=Ee(o,u);return F.push(s),s.handler};te.forEach(r=>{P[r]=(u={},o)=>{const s=le(u);return P({...s,type:r},o)}});function Oe(r){for(const u of F)(!r||r===u.props.type)&&u.handler.close()}P.closeAll=Oe;P._context=null;const U=h.withInstallFunction(P,"$message");const Z={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:[]}]}};const Te=(r,u,o)=>{!u[0]&&u[0]!==0&&!u[1]&&u[1]!==0?o(new Error("至少填写一个分数")):o()},K=r=>{const u=/(条件(\d+))/g;return r.match(u)||[]},Ie={__name:"FactorDescription",props:e.mergeModels({data:{type:Array,default:[]}},{visible:{default:!1},visibleModifiers:{}}),emits:["update:visible"],setup(r){const u=e.useModel(r,"visible");return(o,s)=>{const d=Y.ElTableColumn,k=Y.ElTable,t=Q.ElDialog;return e.openBlock(),e.createBlock(t,{modelValue:u.value,"onUpdate:modelValue":s[0]||(s[0]=E=>u.value=E),title:"因子使用说明",width:"1000","align-center":"","destroy-on-close":""},{default:e.withCtx(()=>[e.createVNode(k,{data:r.data,border:"",height:"500"},{default:e.withCtx(()=>[e.createVNode(d,{prop:"factorName",label:"因子名称",width:"200"}),e.createVNode(d,{prop:"factorDesc",label:"因子说明"}),e.createVNode(d,{prop:"factorScoreDefine",label:"分值定义"})]),_:1},8,["data"])]),_:1},8,["modelValue"])}}};const ne=r=>(e.pushScopeId("data-v-3cac46e2"),r=r(),e.popScopeId(),r),$e={class:"factor-screen"},Se={class:"custom-header"},qe=["id"],Me={class:"form-row"},Ue={class:"index"},De={style:{display:"flex","align-items":"center",width:"100%",height:"24px"}},Fe=ne(()=>e.createElementVNode("span",null,"~",-1)),Le=ne(()=>e.createElementVNode("span",null,"&&代表and,||代表or",-1)),Re={class:"dialog-footer"},ze={__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(r){const u=r,o=e.useModel(r,"data"),s=e.ref(!1),d=e.ref(!1),k=e.ref(null),t=e.ref({list:[{cycle:u.config.cycleDefault??null,factor:null,score:[null,null]}],sqlEnable:0,sqlValue:null}),E=()=>{const{list:n,sqlEnable:i,sqlValue:g}=o.value;t.value={list:JSON.parse(JSON.stringify(n)),sqlEnable:i,sqlValue:g},t.value.list.length||v(),s.value=!0},O=()=>{k.value.validate(n=>{const{list:i,sqlEnable:g,sqlValue:p}=t.value;if(n){if(g){if(!p)return U.error("SQL语句不能为空");const f=K(p),_=i.map((a,C)=>`条件${C+1}`),x=f.filter(a=>!_.includes(a));if(x.length)return U.error(`请检查SQL语句, 不存在[${x}]`)}o.value={list:JSON.parse(JSON.stringify(i)),sqlEnable:g,sqlValue:p},s.value=!1}})},I=n=>{t.value.list.splice(n,1)},v=n=>{switch(n){case"compare":{t.value.list.push({key:"compare",cycle:u.config.cycleDefault??null,factor:null,compareType:">",cycle2:u.config.cycleDefault??null,factor2:null});break}default:{t.value.list.push({cycle:u.config.cycleDefault??null,factor:null,score:[null,null]});break}}},c=()=>{k.value.validate(n=>{if(n)if(t.value.sqlValue){const i=K(t.value.sqlValue);t.value.sqlValue=t.value.list.reduce((g,p,f)=>(i.includes(`条件${f+1}`)||(g+=`&& 条件${f+1} `),g),t.value.sqlValue)}else t.value.sqlValue=t.value.list.reduce((i,g,p)=>(p===0?i+=`条件${p+1} `:i+=`&& 条件${p+1} `,i),"")})},B=n=>{switch(n.key){case"compare":{const{cycle:i,factor:g,compareType:p,cycle2:f,factor2:_}=n;let x="";return x+=` ${u.config.cycleOptions.find(({value:a})=>a===i).label}`,x+=` ${u.config.factorOptions.find(({value:a})=>a===g).label}`,x+=` ${p}`,x+=` ${u.config.cycleOptions.find(({value:a})=>a===f).label}`,x+=` ${u.config.factorOptions.find(({value:a})=>a===_).label}`,x}default:{const{cycle:i,factor:g,score:p}=n;let f="";return f+=` ${u.config.cycleOptions.find(({value:_})=>_===i).label}`,f+=` ${u.config.factorOptions.find(({value:_})=>_===g).label}`,f+=` ${p[0]||p[0]===0?`${p[0]}分`:"∞"}`,f+=" ~",f+=` ${p[1]||p[1]===0?`${p[1]}分`:"∞"}`,f}}},m=(n,i)=>{switch(n){case"sqlTag":{o.value={list:[],sqlEnable:0,sqlValue:null};break}case"factorTag":{o.value.list.splice(i,1);break}}};return(n,i)=>{const g=ye,p=z.ElTag,f=ee.ElButton,_=q.ElIcon,x=oe.ElTooltip,a=z.ElOption,C=z.ElSelect,y=D.ElFormItem,w=D.ElInputNumber,l=D.ElRadio,T=D.ElRadioGroup,R=X.ElInput,H=D.ElForm,A=Q.ElDialog;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",$e,[e.createElementVNode("div",null,[o.value.sqlEnable&&o.value.sqlValue?(e.openBlock(),e.createBlock(p,{key:0,closable:"",type:"info",title:o.value.sqlValue,onClose:i[0]||(i[0]=b=>m("sqlTag"))},{default:e.withCtx(()=>[e.createVNode(g,{type:"info",truncated:"",style:{"max-width":"500px"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.value.sqlValue),1)]),_:1})]),_:1},8,["title"])):e.createCommentVNode("",!0),!o.value.sqlEnable&&o.value.list.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(o.value.list,(b,S)=>(e.openBlock(),e.createBlock(p,{closable:"",type:"info",onClose:V=>m("factorTag",S)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(B(b)),1)]),_:2},1032,["onClose"]))),256)):e.createCommentVNode("",!0),e.createVNode(f,{class:"screen-btn",type:"primary",plain:"",size:"small",icon:e.unref(q.plus_default),onClick:E},{default:e.withCtx(()=>[e.createTextVNode(" 添加因子 ")]),_:1},8,["icon"])]),e.createVNode(A,{modelValue:s.value,"onUpdate:modelValue":i[5]||(i[5]=b=>s.value=b),width:"602","align-center":"","destroy-on-close":""},{header:e.withCtx(({titleId:b,titleClass:S})=>[e.createElementVNode("div",Se,[e.createElementVNode("span",{id:b,class:e.normalizeClass(S)}," 因子筛选 ",10,qe),e.createVNode(x,{effect:"dark",content:"点击查看: 因子使用说明",placement:"right"},{default:e.withCtx(()=>[e.createVNode(_,{onClick:i[1]||(i[1]=V=>d.value=!0)},{default:e.withCtx(()=>[e.createVNode(e.unref(q.info_filled_default))]),_:1})]),_:1})])]),footer:e.withCtx(()=>[e.createElementVNode("div",Re,[e.createVNode(f,{type:"primary",onClick:O},{default:e.withCtx(()=>[e.createTextVNode("确定")]),_:1})])]),default:e.withCtx(()=>[e.createVNode(H,{ref_key:"dialogFormRef",ref:k,model:t.value},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value.list,(b,S)=>(e.openBlock(),e.createElementBlock("div",Me,[e.createElementVNode("span",Ue,e.toDisplayString(`条件${S+1}`),1),b.key==="compare"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[r.config.cycleShow?(e.openBlock(),e.createBlock(y,{key:0,prop:"list."+S+".cycle",rules:{required:!0,message:"周期不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(C,{modelValue:b.cycle,"onUpdate:modelValue":V=>b.cycle=V,placeholder:"选择周期",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.config.cycleOptions,({label:V,value:N})=>(e.openBlock(),e.createBlock(a,{label:V,value:N,key:N},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])):e.createCommentVNode("",!0),e.createVNode(y,{prop:"list."+S+".factor",rules:{required:!0,message:"因子不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(C,{modelValue:b.factor,"onUpdate:modelValue":V=>b.factor=V,placeholder:"选择因子",filterable:"",size:"small","no-match-text":"无匹配数据"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.config.factorOptions,({label:V,value:N})=>(e.openBlock(),e.createBlock(a,{label:V,value:N,key:N},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"]),e.createVNode(y,{style:{width:"52px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(C,{modelValue:b.compareType,"onUpdate:modelValue":V=>b.compareType=V,size:"small"},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([">",">=","<","<="],V=>e.createVNode(a,{label:V,value:V,key:V},null,8,["label","value"])),64))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1024),r.config.cycleShow?(e.openBlock(),e.createBlock(y,{key:1,prop:"list."+S+".cycle2",rules:{required:!0,message:"周期不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(C,{modelValue:b.cycle2,"onUpdate:modelValue":V=>b.cycle2=V,placeholder:"选择周期",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.config.cycleOptions,({label:V,value:N})=>(e.openBlock(),e.createBlock(a,{label:V,value:N,key:N},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])):e.createCommentVNode("",!0),e.createVNode(y,{prop:"list."+S+".factor2",rules:{required:!0,message:"因子不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(C,{modelValue:b.factor2,"onUpdate:modelValue":V=>b.factor2=V,placeholder:"选择因子",filterable:"",size:"small","no-match-text":"无匹配数据"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.config.factorOptions,({label:V,value:N})=>(e.openBlock(),e.createBlock(a,{label:V,value:N,key:N},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[r.config.cycleShow?(e.openBlock(),e.createBlock(y,{key:0,prop:"list."+S+".cycle",rules:{required:!0,message:"周期不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(C,{modelValue:b.cycle,"onUpdate:modelValue":V=>b.cycle=V,placeholder:"选择周期",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.config.cycleOptions,({label:V,value:N})=>(e.openBlock(),e.createBlock(a,{label:V,value:N,key:N},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])):e.createCommentVNode("",!0),e.createVNode(y,{prop:"list."+S+".factor",rules:{required:!0,message:"因子不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(C,{modelValue:b.factor,"onUpdate:modelValue":V=>b.factor=V,placeholder:"选择因子",filterable:"",size:"small","no-match-text":"无匹配数据"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.config.factorOptions,({label:V,value:N})=>(e.openBlock(),e.createBlock(a,{label:V,value:N,key:N},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"]),e.createVNode(y,{prop:"list."+S+".score",rules:{validator:e.unref(Te),trigger:"blur"},style:{width:"200px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createElementVNode("div",De,[e.createVNode(w,{modelValue:b.score[0],"onUpdate:modelValue":V=>b.score[0]=V,size:"small","controls-position":"right"},null,8,["modelValue","onUpdate:modelValue"]),Fe,e.createVNode(w,{modelValue:b.score[1],"onUpdate:modelValue":V=>b.score[1]=V,size:"small","controls-position":"right"},null,8,["modelValue","onUpdate:modelValue"])])]),_:2},1032,["prop","rules"])],64)),e.createVNode(_,{onClick:V=>I(S)},{default:e.withCtx(()=>[e.createVNode(e.unref(q.circle_close_filled_default))]),_:2},1032,["onClick"])]))),256)),e.createVNode(f,{type:"primary",plain:"",size:"small",icon:e.unref(q.plus_default),onClick:v,style:{"margin-bottom":"10px"}},{default:e.withCtx(()=>[e.createTextVNode("添加因子")]),_:1},8,["icon"]),e.createVNode(f,{type:"primary",plain:"",size:"small",icon:e.unref(q.plus_default),onClick:i[2]||(i[2]=b=>v("compare")),style:{"margin-bottom":"10px"}},{default:e.withCtx(()=>[e.createTextVNode("添加因子对比")]),_:1},8,["icon"]),r.config.sqlShow?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(y,{label:"SQL功能: "},{default:e.withCtx(()=>[e.createVNode(T,{modelValue:t.value.sqlEnable,"onUpdate:modelValue":i[3]||(i[3]=b=>t.value.sqlEnable=b)},{default:e.withCtx(()=>[e.createVNode(l,{label:"关闭",value:0}),e.createVNode(l,{label:"启用",value:1})]),_:1},8,["modelValue"]),t.value.sqlEnable?(e.openBlock(),e.createBlock(f,{key:0,type:"primary",size:"small",onClick:c,style:{"margin-left":"auto"}},{default:e.withCtx(()=>[e.createTextVNode("生成SQL")]),_:1})):e.createCommentVNode("",!0)]),_:1}),t.value.sqlEnable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(R,{modelValue:t.value.sqlValue,"onUpdate:modelValue":i[4]||(i[4]=b=>t.value.sqlValue=b),autosize:{minRows:4},type:"textarea",style:{"margin-bottom":"10px"}},null,8,["modelValue"]),Le],64)):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)]),_:1},8,["model"])]),_:1},8,["modelValue"])]),e.createVNode(Ie,{visible:d.value,"onUpdate:visible":i[6]||(i[6]=b=>d.value=b),data:r.config.factorDescriptions},null,8,["visible","data"])],64)}}},Pe=J._export_sfc(ze,[["__scopeId","data-v-3cac46e2"]]);const G=r=>(e.pushScopeId("data-v-6e574a07"),r=r(),e.popScopeId(),r),je={key:0,class:"common-indicator"},Ae={class:"indicator"},Ye=G(()=>e.createElementVNode("div",{class:"title"},[e.createElementVNode("span",null,"常用指标: "),e.createElementVNode("span",null,"不限")],-1)),Ge={class:"options"},He=["onClick"],Qe={class:"tags"},Je=["onClick"],We={style:{"font-size":"18px"}},Ze={key:0,class:"out-box"},Ke=G(()=>e.createElementVNode("span",null,"自定义: ",-1)),Xe={key:0,class:"convenient-option-box"},et={class:"out-box"},tt=G(()=>e.createElementVNode("span",null,"自定义: ",-1)),lt={key:0},nt={key:0},ot={key:0},at={key:1},rt={class:"tFeaturelncomes-option-box"},st={class:"tFeaturelncomes-out-box"},it=G(()=>e.createElementVNode("span",null,"自定义: ",-1)),ut={key:2},ct={key:3},dt={key:4},pt={class:"dialog-footer"},mt={__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(r){const u=e.useModel(r,"data"),o=r,s=e.ref(!1),d=e.computed(()=>{let m=[];return o.varietyMarket===null&&!o.commonOption.length?m=o.config.options:(m=o.config.options,o.varietyMarket&&(m=m.filter(({parent:n})=>n.varietyMarketIds.includes(o.varietyMarket))),o.commonOption.length&&(m=m.filter(({parent:n})=>{const{commonOptionIds:i}=n;return[...new Set([...i,...o.commonOption])].length!==[...i,...o.commonOption].length}))),m}),k=e.ref({}),t=e.ref({}),E=m=>{k.value=m;const n={key:m.key,type:m.type,label:m.label};switch(m.key){case"st":{t.value={...n,st:null};break}case"tFeaturelncomes":{t.value={...n,rule:1,withFewYears:null,yearsCount:null,netProfit:null};break}case"priceLevels":{t.value={...n,priceLevels:null};break}case"peTtmLevels":{t.value={...n,peTtmLevels:null};break}case"optionsCpType":{t.value={...n,optionsCpType:null};break}default:t.value={...n,range:[null,null],unit:m.defaultUnit.length?[...m.defaultUnit]:[null,null],radioType:m.defaultRadioType,rankRange:m.defaultRankRange||[null,null]}}s.value=!0},O=()=>{switch(t.value.key){case"st":{const{label:n,st:i}=t.value;if(i===null)return U.warning("格式错误: 请至少选择一个值");t.value.tagText=`${n}: ${i?"是":"否"}`;break}case"tFeaturelncomes":{const{label:n,rule:i,withFewYears:g,yearsCount:p,netProfit:f}=t.value;if(["",null].includes(g)||["",null].includes(p)||["",null].includes(f))return U.warning("格式错误: 请填写完整");t.value.tagText=`${n}: ${g}年内${p}年以上盈利${i===1?"超":"跌"}过${f}亿`;break}case"priceLevels":{const{label:n,priceLevels:i}=t.value;if(!i||i.length===0)return U.warning("格式错误: 请至少选择一个值");t.value.tagText=`${n}: 已选${i}分位`;break}case"peTtmLevels":{const{label:n,peTtmLevels:i}=t.value;if(!i||i.length===0)return U.warning("格式错误: 请至少选择一个值");t.value.tagText=`${n}: 已选${i}分位`;break}case"optionsCpType":{const{label:n,optionsCpType:i}=t.value;if(i===null)return U.warning("格式错误: 请至少选择一个值");t.value.tagText=`${n}: ${i===1?"看涨":"看跌"}`;break}default:{const{label:n,unit:i,radioType:g}=t.value,p=g==="1"?t.value.rankRange:t.value.range;if(["",null].includes(p[0])&&["",null].includes(p[1]))return U.warning("格式错误: 请至少填写一个值");if(g==="1"){const x=Number(p[0]),a=Number(p[1]);if(isNaN(x)||isNaN(a))return U.warning("格式错误: 请填写数字");if(x<0||a<0)return U.warning("格式错误: 请填写大于0的数字");if(x>a)return U.warning("格式错误: 请填写正确的排名范围")}const f=g==="1"?"":i[0]??"",_=g==="1"?"":i[1]??"";!["",null].includes(p[0])&&!["",null].includes(p[1])?t.value.tagText=`${n}${g==="1"?"排名":""}: ${p[0]}${f} ~ ${p[1]}${_}`:["",null].includes(p[0])?t.value.tagText=`${n}${g==="1"?"排名":""}: ≤${p[1]}${_}`:t.value.tagText=`${n}${g==="1"?"排名":""}: ≥${p[0]}${f}`}}const m=u.value.findIndex(({key:n})=>n===t.value.key);m===-1?u.value.push(t.value):u.value.splice(m,1,t.value),s.value=!1},I=m=>{k.value=d.value.find(({key:n})=>n===m.key),t.value=JSON.parse(JSON.stringify(m)),s.value=!0},v=m=>{u.value.splice(m,1)},c=m=>{t.value.range=[...m.range],t.value.unit=[...m.unit]},B=m=>{switch(m){case"≤0":Object.assign(t.value,{rule:2,withFewYears:1,yearsCount:1,netProfit:0});break;case"≥0":Object.assign(t.value,{rule:1,withFewYears:1,yearsCount:1,netProfit:0});break;case"五年内有四年以上盈利超过5千万":Object.assign(t.value,{rule:1,withFewYears:5,yearsCount:4,netProfit:.5});break;case"≥10亿":Object.assign(t.value,{rule:1,withFewYears:1,yearsCount:1,netProfit:10});break;case"≥20亿":Object.assign(t.value,{rule:1,withFewYears:1,yearsCount:1,netProfit:20});break}};return e.watch(()=>d.value,()=>{u.value.length&&(u.value=u.value.filter(({key:m})=>d.value.find(n=>n.key===m)))}),(m,n)=>{const i=z.ElTag,g=D.ElRadioButton,p=D.ElRadioGroup,f=X.ElInput,_=ee.ElButton,x=z.ElOption,a=z.ElSelect,C=D.ElRadio,y=D.ElInputNumber,w=Q.ElDialog;return r.config.show&&d.value.length?(e.openBlock(),e.createElementBlock("div",je,[e.createElementVNode("div",Ae,[Ye,e.createElementVNode("div",Ge,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,l=>(e.openBlock(),e.createElementBlock("span",{key:l.key,onClick:T=>E(l)},e.toDisplayString(l.label),9,He))),128))])]),e.createElementVNode("div",Qe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,(l,T)=>(e.openBlock(),e.createBlock(i,{closable:"",type:"info",onClose:R=>v(T)},{default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(l.tagText),1),e.createElementVNode("span",{class:"edit",onClick:R=>I(l)},"编辑",8,Je)]),_:2},1032,["onClose"]))),256))]),e.createVNode(w,{modelValue:s.value,"onUpdate:modelValue":n[19]||(n[19]=l=>s.value=l),title:k.value.label,width:"600","align-center":"","destroy-on-close":""},e.createSlots({footer:e.withCtx(()=>[e.createElementVNode("div",pt,[e.createVNode(_,{type:"primary",onClick:O},{default:e.withCtx(()=>[e.createTextVNode("确定")]),_:1})])]),default:e.withCtx(()=>[k.value.type===void 0&&t.value.radioType==="1"?(e.openBlock(),e.createElementBlock("div",Ze,[Ke,e.createVNode(f,{modelValue:t.value.rankRange[0],"onUpdate:modelValue":n[1]||(n[1]=l=>t.value.rankRange[0]=l),style:{flex:"1"}},null,8,["modelValue"]),e.createTextVNode(" ~ "),e.createVNode(f,{modelValue:t.value.rankRange[1],"onUpdate:modelValue":n[2]||(n[2]=l=>t.value.rankRange[1]=l),style:{flex:"1"}},null,8,["modelValue"])])):k.value.type===void 0?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[k.value.convenientOptions.length?(e.openBlock(),e.createElementBlock("div",Xe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value.convenientOptions,l=>(e.openBlock(),e.createBlock(_,{key:l.text,onClick:T=>c(l)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(l.text),1)]),_:2},1032,["onClick"]))),128))])):e.createCommentVNode("",!0),e.createElementVNode("div",et,[tt,e.createVNode(f,{modelValue:t.value.range[0],"onUpdate:modelValue":n[4]||(n[4]=l=>t.value.range[0]=l),style:{flex:"1"}},e.createSlots({_:2},[k.value.unitOptions.length?{name:"append",fn:e.withCtx(()=>[k.value.unitOptions.length===1?(e.openBlock(),e.createElementBlock("span",lt,e.toDisplayString(t.value.unit[0]),1)):(e.openBlock(),e.createBlock(a,{key:1,modelValue:t.value.unit[0],"onUpdate:modelValue":n[3]||(n[3]=l=>t.value.unit[0]=l),style:{width:"72px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value.unitOptions,l=>(e.openBlock(),e.createBlock(x,{label:l,value:l},null,8,["label","value"]))),256))]),_:1},8,["modelValue"]))]),key:"0"}:void 0]),1032,["modelValue"]),e.createTextVNode(" ~ "),e.createVNode(f,{modelValue:t.value.range[1],"onUpdate:modelValue":n[6]||(n[6]=l=>t.value.range[1]=l),style:{flex:"1"}},e.createSlots({_:2},[k.value.unitOptions.length?{name:"append",fn:e.withCtx(()=>[k.value.unitOptions.length===1?(e.openBlock(),e.createElementBlock("span",nt,e.toDisplayString(t.value.unit[1]),1)):(e.openBlock(),e.createBlock(a,{key:1,modelValue:t.value.unit[1],"onUpdate:modelValue":n[5]||(n[5]=l=>t.value.unit[1]=l),style:{width:"72px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value.unitOptions,l=>(e.openBlock(),e.createBlock(x,{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},[k.value.key==="st"?(e.openBlock(),e.createElementBlock("div",ot,[e.createVNode(p,{modelValue:t.value.st,"onUpdate:modelValue":n[7]||(n[7]=l=>t.value.st=l)},{default:e.withCtx(()=>[e.createVNode(C,{label:"是",value:1}),e.createVNode(C,{label:"否",value:0})]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),k.value.key==="tFeaturelncomes"?(e.openBlock(),e.createElementBlock("div",at,[e.createElementVNode("div",rt,[e.createVNode(_,{onClick:n[8]||(n[8]=l=>B("≤0"))},{default:e.withCtx(()=>[e.createTextVNode("≤0")]),_:1}),e.createVNode(_,{onClick:n[9]||(n[9]=l=>B("≥0"))},{default:e.withCtx(()=>[e.createTextVNode("≥0")]),_:1}),e.createVNode(_,{onClick:n[10]||(n[10]=l=>B("五年内有四年以上盈利超过5千万"))},{default:e.withCtx(()=>[e.createTextVNode("五年内有四年以上盈利超过5千万")]),_:1}),e.createVNode(_,{onClick:n[11]||(n[11]=l=>B("≥10亿"))},{default:e.withCtx(()=>[e.createTextVNode("≥10亿")]),_:1}),e.createVNode(_,{onClick:n[12]||(n[12]=l=>B("≥20亿"))},{default:e.withCtx(()=>[e.createTextVNode("≥20亿")]),_:1})]),e.createElementVNode("div",st,[it,e.createElementVNode("div",null,[e.createVNode(y,{modelValue:t.value.withFewYears,"onUpdate:modelValue":n[13]||(n[13]=l=>t.value.withFewYears=l),"controls-position":"right"},null,8,["modelValue"]),e.createTextVNode(" 年内 "),e.createVNode(y,{modelValue:t.value.yearsCount,"onUpdate:modelValue":n[14]||(n[14]=l=>t.value.yearsCount=l),"controls-position":"right"},null,8,["modelValue"]),e.createTextVNode(" 年以上盈利"+e.toDisplayString(t.value.rule===1?"超":"跌")+"过 ",1),e.createVNode(y,{modelValue:t.value.netProfit,"onUpdate:modelValue":n[15]||(n[15]=l=>t.value.netProfit=l),"controls-position":"right"},null,8,["modelValue"]),e.createTextVNode(" 亿 ")])])])):e.createCommentVNode("",!0),k.value.key==="priceLevels"?(e.openBlock(),e.createElementBlock("div",ut,[e.createVNode(a,{modelValue:t.value.priceLevels,"onUpdate:modelValue":n[16]||(n[16]=l=>t.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(x,{key:l,label:`${l}分位`,value:l},null,8,["label","value"])),64))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),k.value.key==="peTtmLevels"?(e.openBlock(),e.createElementBlock("div",ct,[e.createVNode(a,{modelValue:t.value.peTtmLevels,"onUpdate:modelValue":n[17]||(n[17]=l=>t.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(x,{key:l,label:`${l}分位`,value:l},null,8,["label","value"])),64))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),k.value.key==="optionsCpType"?(e.openBlock(),e.createElementBlock("div",dt,[e.createVNode(p,{modelValue:t.value.optionsCpType,"onUpdate:modelValue":n[18]||(n[18]=l=>t.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},[k.value.showRankType?{name:"header",fn:e.withCtx(()=>[e.createElementVNode("span",We,e.toDisplayString(k.value.label),1),e.createVNode(p,{modelValue:t.value.radioType,"onUpdate:modelValue":n[0]||(n[0]=l=>t.value.radioType=l),style:{"vertical-align":"4px","margin-left":"12px"}},{default:e.withCtx(()=>[e.createVNode(g,{label:"数值",value:"0"}),e.createVNode(g,{label:"排名",value:"1"})]),_:1},8,["modelValue"])]),key:"0"}:void 0]),1032,["modelValue","title"])])):e.createCommentVNode("",!0)}}},ft=J._export_sfc(mt,[["__scopeId","data-v-6e574a07"]]);const j=r=>(e.pushScopeId("data-v-1be324b2"),r=r(),e.popScopeId(),r),vt={class:"variety-search"},gt={key:0,class:"variety-search-row"},yt={class:"title"},kt=j(()=>e.createElementVNode("span",null,"品种市场: ",-1)),Vt={key:1,class:"variety-search-row"},bt={class:"title"},ht=j(()=>e.createElementVNode("span",null,"常用选项: ",-1)),_t={key:2,class:"variety-search-row"},xt={class:"title"},Ct=j(()=>e.createElementVNode("span",null,"上市板块: ",-1)),Nt={key:3,class:"variety-search-row"},wt={class:"title"},Bt=j(()=>e.createElementVNode("span",null,"自定标签: ",-1)),Et={key:4,class:"variety-search-row"},Ot={class:"title"},Tt=j(()=>e.createElementVNode("span",null,"因子筛选: ",-1)),It={__name:"index",props:e.mergeModels({config:{type:Object,default:{}}},{searchData:{},searchDataModifiers:{}}),emits:["update:searchData"],setup(r,{expose:u}){const o=r,s=e.useModel(r,"searchData");s.value=Object.assign(s.value,{varietyMarket:null,commonOption:[],marketIds:[],customTag:[],factorScreen:{list:[],sqlEnable:0,sqlValue:null},commonIndicator:[]});const d=e.computed(()=>{const v={};return Object.keys(Z).forEach(c=>{const B=Z[c],m=o.config[c]??{},n={...B,...m};v[c]=n}),v}),k=e.computed(()=>d.value.varietyMarket.options),t=e.computed(()=>{const{varietyMarket:v}=s.value;if(v){const c=k.value.find(({value:B})=>B===v).memo;return d.value.commonOption.options.filter(({value:B})=>c.includes(B))}else return d.value.commonOption.options}),E=e.computed(()=>{const{varietyMarket:v}=s.value;return v?d.value.marketIds.options.filter(c=>c.varietyMarketIds.includes(v)):d.value.marketIds.options}),O=e.computed(()=>d.value.customTag.options),I=v=>{["commonOption","marketIds","customTag","factorScreen","commonIndicator"].includes(v)?s.value[v]=[]:s.value[v]=null};return e.watch(()=>t.value,v=>{var c;(c=s.value.commonOption)!=null&&c.length&&(s.value.commonOption=s.value.commonOption.filter(B=>v.find(({value:m})=>m===B)))}),e.watch(()=>E.value,v=>{var c;(c=s.value.marketIds)!=null&&c.length&&(s.value.marketIds=s.value.marketIds.filter(B=>v.find(({value:m})=>m===B)))}),u({formatData:v=>{var B,m,n,i,g;console.log("%c[st-varietySearch]: 正在生成接口传参结构的数据...","color: tomato");const c={};if(v.varietyMarket&&(c.exchangeId=String(v.varietyMarket)),(B=v.commonOption)!=null&&B.length&&(c.optionId=v.commonOption.join(",")),(m=v.marketIds)!=null&&m.length&&(c.marketIds=v.marketIds),(n=v.customTag)!=null&&n.length&&(c.tagIds=v.customTag),(i=d.value.factorScreen)!=null&&i.show){const{factorScreen:p}=v;if((g=p==null?void 0:p.list)!=null&&g.length&&(c.tbFeatureFactorScores=p.list.map(f=>{switch(f.key){case"compare":return{freqId:f.cycle,factorId:f.factor,compareType:f.compareType,freqId2:f.cycle2,factorId2:f.factor2};default:return{freqId:f.cycle,factorId:f.factor,startScore:f.score[0],endScore:f.score[1]}}})),p.sqlEnable){const f=p.list.reduce((x,a,C)=>{var w,l;const y=`条件${C+1}`;switch(a.key){case"compare":{let T="";(w=d.value.factorScreen)!=null&&w.cycleShow?T=`freq_id = ${a.cycle} and factor_id = ${a.factor} ${a.compareType} freq_id = ${a.cycle2} and factor_id = ${a.factor2}`:T=`factor_id = ${a.factor} ${a.compareType} factor_id = ${a.factor2}`,x.set(y,`(${T})`);break}default:{let T=`factor_id = ${a.factor} and `;(l=d.value.factorScreen)!=null&&l.cycleShow&&(T=`freq_id = ${a.cycle} and factor_id = ${a.factor} and `),(a.score[0]||a.score[0]===0)&&(a.score[1]||a.score[1]===0)?T+=`score >= ${a.score[0]} and score <= ${a.score[1]}`:a.score[0]||a.score[0]===0?T+=`score >= ${a.score[0]}`:(a.score[1]||a.score[1]===0)&&(T+=`score <= ${a.score[1]}`),x.set(y,`(${T})`)}}return x},new Map([]));let _=p.sqlValue;for(const[x,a]of f){const C=new RegExp(x,"g");_=_.replace(C,a)}c.sql=_}c.enableSql=p.sqlEnable===1?2:1}{const p=["expireDays","virtualRealDegree","yearProfitRate","impliedVolatility","levelMultiplier","turnover","volume","openInterest","optionsCpType","optionGear"],f=[],_=v.commonIndicator.reduce((l,T)=>{const{key:R,type:H,range:A,unit:b,radioType:S,rankRange:V}=T;if(S==="1")p.includes(R)?f.push({column:T.key,start:V[0]||null,end:V[1]||null}):l.push({column:T.key,type:"1",start:V[0]||null,end:V[1]||null});else if(R==="dividendYield"){let[N,M]=A;["",null].includes(N)||(N=N/100),["",null].includes(M)||(M=M/100),l.push({column:T.key,start:N,end:M})}else if(H===void 0&&!p.includes(R)){let[N,M]=A;if(!["",null].includes(N))switch(b[0]){case"亿":N=N*1e8;break;case"千万":N=N*1e7;break;default:N=N;break}if(!["",null].includes(M))switch(b[1]){case"亿":M=M*1e8;break;case"千万":M=M*1e7;break;default:M=M;break}l.push({column:T.key,start:N,end:M})}return l},[]);f.length&&(c.searchOptionDto={rangeDtoList:f}),_.length&&(c.query=_);const x=v.commonIndicator.find(({key:l})=>l==="st");x&&(c.st=x.st);const a=v.commonIndicator.find(({key:l})=>l==="tFeaturelncomes");a&&(c.netProfitQueryDto={...a,netProfit:a.netProfit*1e8});const C=v.commonIndicator.find(({key:l})=>l==="priceLevels");C&&(c.priceLevels=C.priceLevels);const y=v.commonIndicator.find(({key:l})=>l==="peTtmLevels");y&&(c.peTtmLevels=y.peTtmLevels);const w={};v.commonIndicator.forEach(l=>{const{key:T}=l;switch(T){case"expireDays":["",null].includes(l.range[0])||(w.minExpireDays=l.range[0]),["",null].includes(l.range[1])||(w.maxExpireDays=l.range[1]);break;case"virtualRealDegree":["",null].includes(l.range[0])||(w.minVirtualRealDegree=l.range[0]/100),["",null].includes(l.range[1])||(w.maxVirtualRealDegree=l.range[1]/100);break;case"yearProfitRate":["",null].includes(l.range[0])||(w.minYearProfitRate=l.range[0]/100),["",null].includes(l.range[1])||(w.maxYearProfitRate=l.range[1]/100);break;case"impliedVolatility":["",null].includes(l.range[0])||(w.minImpliedVolatility=l.range[0]/100),["",null].includes(l.range[1])||(w.maxImpliedVolatility=l.range[1]/100);break;case"levelMultiplier":["",null].includes(l.range[0])||(w.minLevelMultiplier=l.range[0]),["",null].includes(l.range[1])||(w.maxLevelMultiplier=l.range[1]);break;case"turnover":["",null].includes(l.range[0])||(w.minTurnover=l.range[0]*1e4),["",null].includes(l.range[1])||(w.maxTurnover=l.range[1]*1e4);break;case"volume":["",null].includes(l.range[0])||(w.minVolume=l.range[0]),["",null].includes(l.range[1])||(w.maxVolume=l.range[1]);break;case"openInterest":["",null].includes(l.range[0])||(w.minOpenInterest=l.range[0]),["",null].includes(l.range[1])||(w.maxOpenInterest=l.range[1]);break;case"optionsCpType":w.optionsCpType=l.optionsCpType;break;case"optionGear":["",null].includes(l.range[0])||(w.minOptionGear=l.range[0]),["",null].includes(l.range[1])||(w.maxOptionGear=l.range[1]);break}}),Object.keys(w).length&&(c.searchOptionDto={...c.searchOptionDto,...w})}return console.log("%c[st-varietySearch]: 接口传参数据生成完毕","color: green",c),c},reset:()=>{s.value={varietyMarket:null,commonOption:[],marketIds:[],customTag:[],factorScreen:{list:[],sqlEnable:0,sqlValue:null},commonIndicator:[]}}}),(v,c)=>{var g,p,f,_,x;const B=D.ElRadio,m=D.ElRadioGroup,n=Y.ElCheckbox,i=Y.ElCheckboxGroup;return e.openBlock(),e.createElementBlock("div",vt,[(g=d.value.varietyMarket)!=null&&g.show?(e.openBlock(),e.createElementBlock("div",gt,[e.createElementVNode("div",yt,[kt,e.createElementVNode("span",{onClick:c[0]||(c[0]=a=>I("varietyMarket"))},"不限")]),e.createVNode(m,{modelValue:s.value.varietyMarket,"onUpdate:modelValue":c[1]||(c[1]=a=>s.value.varietyMarket=a),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,({label:a,value:C})=>(e.openBlock(),e.createBlock(B,{label:a,value:C,key:C},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(p=d.value.commonOption)!=null&&p.show&&t.value.length?(e.openBlock(),e.createElementBlock("div",Vt,[e.createElementVNode("div",bt,[ht,e.createElementVNode("span",{onClick:c[2]||(c[2]=a=>I("commonOption"))},"不限")]),e.createVNode(i,{modelValue:s.value.commonOption,"onUpdate:modelValue":c[3]||(c[3]=a=>s.value.commonOption=a),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,({label:a,value:C})=>(e.openBlock(),e.createBlock(n,{label:a,value:C,key:C},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(f=d.value.marketIds)!=null&&f.show&&E.value.length?(e.openBlock(),e.createElementBlock("div",_t,[e.createElementVNode("div",xt,[Ct,e.createElementVNode("span",{onClick:c[4]||(c[4]=a=>I("marketIds"))},"不限")]),e.createVNode(i,{modelValue:s.value.marketIds,"onUpdate:modelValue":c[5]||(c[5]=a=>s.value.marketIds=a),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(E.value,({label:a,value:C})=>(e.openBlock(),e.createBlock(n,{label:a,value:C,key:C},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(_=d.value.customTag)!=null&&_.show&&O.value.length?(e.openBlock(),e.createElementBlock("div",Nt,[e.createElementVNode("div",wt,[Bt,e.createElementVNode("span",{onClick:c[6]||(c[6]=a=>I("customTag"))},"不限")]),e.createVNode(i,{modelValue:s.value.customTag,"onUpdate:modelValue":c[7]||(c[7]=a=>s.value.customTag=a),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(O.value,({label:a,value:C})=>(e.openBlock(),e.createBlock(n,{label:a,value:C,key:C},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(x=d.value.factorScreen)!=null&&x.show?(e.openBlock(),e.createElementBlock("div",Et,[e.createElementVNode("div",Ot,[Tt,e.createElementVNode("span",{onClick:c[8]||(c[8]=a=>I("factorScreen"))},"不限")]),e.createVNode(Pe,{data:s.value.factorScreen,"onUpdate:data":c[9]||(c[9]=a=>s.value.factorScreen=a),config:d.value.factorScreen},null,8,["data","config"])])):e.createCommentVNode("",!0),e.createVNode(ft,{data:s.value.commonIndicator,"onUpdate:data":c[10]||(c[10]=a=>s.value.commonIndicator=a),varietyMarket:s.value.varietyMarket,commonOption:s.value.commonOption,config:d.value.commonIndicator},null,8,["data","varietyMarket","commonOption","config"])])}}},$t=J._export_sfc(It,[["__scopeId","data-v-1be324b2"]]),St={install(r){r.component("st-varietySearch",$t)}};module.exports=St;
|
|
1
|
+
"use strict";const _=require("./base-adc4e34e.cjs"),U=require("./el-radio-button-5259a46b.cjs"),Y=require("./el-table-column-d636a7d6.cjs"),e=require("vue"),H=require("./el-overlay-84e3cb6c.cjs"),K=require("./el-input-65ed0dba.cjs");require("./el-tag-a45bdd1e.cjs");const z=require("./el-select-4987a187.cjs"),J=require("./el-scrollbar-8cb3663b.cjs"),ne=require("./el-popper-4da22fdc.cjs");require("./el-tooltip-0ea8fbf8.cjs");const X=require("./el-button-e389429d.cjs"),q=require("./use-form-common-props-96d2ea48.cjs"),Q=require("./_plugin-vue_export-helper-f246444f.cjs"),oe=require("./typescript-b63f8e83.cjs"),ae=require("./index-35665af5.cjs"),re=require("./index-f14354e6.cjs"),F=require("./config-provider-957c280a.cjs");require("./event-61f49698.cjs");require("./castArray-e6cd255c.cjs");require("./debounce-3ad03224.cjs");require("./raf-da075499.cjs");require("./vnode-562e063c.cjs");require("./refs-34a69f8c.cjs");require("./scroll-c7ef9180.cjs");require("./index-4090cb2c.cjs");require("./index-eea0bcb3.cjs");const se=_.buildProps({value:{type:[String,Number],default:""},max:{type:Number,default:99},isDot:Boolean,hidden:Boolean,type:{type:String,values:["primary","success","warning","info","danger"],default:"danger"},showZero:{type:Boolean,default:!0},color:String,badgeStyle:{type:_.definePropType([String,Object,Array])},offset:{type:_.definePropType(Array),default:[0,0]},badgeClass:{type:String}}),ie=e.defineComponent({name:"ElBadge"}),ue=e.defineComponent({...ie,props:se,setup(s,{expose:c}){const l=s,i=_.useNamespace("badge"),p=e.computed(()=>l.isDot?"":_.isNumber(l.value)&&_.isNumber(l.max)?l.max<l.value?`${l.max}+`:`${l.value}`:`${l.value}`),w=e.computed(()=>{var a,n,E,T,y;return[{backgroundColor:l.color,marginRight:_.addUnit(-((n=(a=l.offset)==null?void 0:a[0])!=null?n:0)),marginTop:_.addUnit((T=(E=l.offset)==null?void 0:E[1])!=null?T:0)},(y=l.badgeStyle)!=null?y:{}]});return c({content:p}),(a,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(i).b())},[e.renderSlot(a.$slots,"default"),e.createVNode(e.Transition,{name:`${e.unref(i).namespace.value}-zoom-in-center`,persisted:""},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("sup",{class:e.normalizeClass([e.unref(i).e("content"),e.unref(i).em("content",a.type),e.unref(i).is("fixed",!!a.$slots.default),e.unref(i).is("dot",a.isDot),e.unref(i).is("hide-zero",!a.showZero&&l.value===0),a.badgeClass]),style:e.normalizeStyle(e.unref(w))},[e.renderSlot(a.$slots,"content",{value:e.unref(p)},()=>[e.createTextVNode(e.toDisplayString(e.unref(p)),1)])],6),[[e.vShow,!a.hidden&&(e.unref(p)||a.isDot||a.$slots.content)]])]),_:3},8,["name"])],2))}});var ce=_._export_sfc(ue,[["__file","badge.vue"]]);const de=_.withInstall(ce),pe=_.buildProps({type:{type:String,values:["primary","success","info","warning","danger",""],default:""},size:{type:String,values:q.componentSizes,default:""},truncated:Boolean,lineClamp:{type:[String,Number]},tag:{type:String,default:"span"}}),me=e.defineComponent({name:"ElText"}),fe=e.defineComponent({...me,props:pe,setup(s){const c=s,l=e.ref(),i=q.useFormSize(),p=_.useNamespace("text"),w=e.computed(()=>[p.b(),p.m(c.type),p.m(i.value),p.is("truncated",c.truncated),p.is("line-clamp",!_.isUndefined(c.lineClamp))]),a=e.useAttrs().title,n=()=>{var E,T,y,d,O;if(a)return;let B=!1;const u=((E=l.value)==null?void 0:E.textContent)||"";if(c.truncated){const t=(T=l.value)==null?void 0:T.offsetWidth,g=(y=l.value)==null?void 0:y.scrollWidth;t&&g&&g>t&&(B=!0)}else if(!_.isUndefined(c.lineClamp)){const t=(d=l.value)==null?void 0:d.offsetHeight,g=(O=l.value)==null?void 0:O.scrollHeight;t&&g&&g>t&&(B=!0)}B?l.value.setAttribute("title",u):l.value.removeAttribute("title")};return e.onMounted(n),e.onUpdated(n),(E,T)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(E.tag),{ref_key:"textRef",ref:l,class:e.normalizeClass(e.unref(w)),style:e.normalizeStyle({"-webkit-line-clamp":E.lineClamp})},{default:e.withCtx(()=>[e.renderSlot(E.$slots,"default")]),_:3},8,["class","style"]))}});var ve=_._export_sfc(fe,[["__file","text.vue"]]);const ge=_.withInstall(ve),ee=["success","info","warning","error"],S=oe.mutable({customClass:"",center:!1,dangerouslyUseHTMLString:!1,duration:3e3,icon:void 0,id:"",message:"",onClose:void 0,showClose:!1,type:"info",plain:!1,offset:16,zIndex:0,grouping:!1,repeatNum:1,appendTo:_.isClient?document.body:void 0}),ye=_.buildProps({customClass:{type:String,default:S.customClass},center:{type:Boolean,default:S.center},dangerouslyUseHTMLString:{type:Boolean,default:S.dangerouslyUseHTMLString},duration:{type:Number,default:S.duration},icon:{type:q.iconPropType,default:S.icon},id:{type:String,default:S.id},message:{type:_.definePropType([String,Object,Function]),default:S.message},onClose:{type:_.definePropType(Function),default:S.onClose},showClose:{type:Boolean,default:S.showClose},type:{type:String,values:ee,default:S.type},plain:{type:Boolean,default:S.plain},offset:{type:Number,default:S.offset},zIndex:{type:Number,default:S.zIndex},grouping:{type:Boolean,default:S.grouping},repeatNum:{type:Number,default:S.repeatNum}}),ke={destroy:()=>!0},D=e.shallowReactive([]),Ve=s=>{const c=D.findIndex(p=>p.id===s),l=D[c];let i;return c>0&&(i=D[c-1]),{current:l,prev:i}},be=s=>{const{prev:c}=Ve(s);return c?c.vm.exposed.bottom.value:0},he=(s,c)=>D.findIndex(i=>i.id===s)>0?16:c,_e=e.defineComponent({name:"ElMessage"}),xe=e.defineComponent({..._e,props:ye,emits:ke,setup(s,{expose:c}){const l=s,{Close:i}=q.TypeComponents,{ns:p,zIndex:w}=ae.useGlobalComponentSettings("message"),{currentZIndex:a,nextZIndex:n}=w,E=e.ref(),T=e.ref(!1),y=e.ref(0);let d;const O=e.computed(()=>l.type?l.type==="error"?"danger":l.type:"info"),B=e.computed(()=>{const m=l.type;return{[p.bm("icon",m)]:m&&q.TypeComponentsMap[m]}}),u=e.computed(()=>l.icon||q.TypeComponentsMap[l.type]||""),t=e.computed(()=>be(l.id)),g=e.computed(()=>he(l.id,l.offset)+t.value),k=e.computed(()=>y.value+g.value),v=e.computed(()=>({top:`${g.value}px`,zIndex:a.value}));function x(){l.duration!==0&&({stop:d}=_.useTimeoutFn(()=>{o()},l.duration))}function h(){d==null||d()}function o(){T.value=!1}function b({code:m}){m===re.EVENT_CODE.esc&&o()}return e.onMounted(()=>{x(),n(),T.value=!0}),e.watch(()=>l.repeatNum,()=>{h(),x()}),J.useEventListener(document,"keydown",b),J.useResizeObserver(E,()=>{y.value=E.value.getBoundingClientRect().height}),c({visible:T,bottom:k,close:o}),(m,f)=>(e.openBlock(),e.createBlock(e.Transition,{name:e.unref(p).b("fade"),onBeforeLeave:m.onClose,onAfterLeave:$=>m.$emit("destroy"),persisted:""},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",{id:m.id,ref_key:"messageRef",ref:E,class:e.normalizeClass([e.unref(p).b(),{[e.unref(p).m(m.type)]:m.type},e.unref(p).is("center",m.center),e.unref(p).is("closable",m.showClose),e.unref(p).is("plain",m.plain),m.customClass]),style:e.normalizeStyle(e.unref(v)),role:"alert",onMouseenter:h,onMouseleave:x},[m.repeatNum>1?(e.openBlock(),e.createBlock(e.unref(de),{key:0,value:m.repeatNum,type:e.unref(O),class:e.normalizeClass(e.unref(p).e("badge"))},null,8,["value","type","class"])):e.createCommentVNode("v-if",!0),e.unref(u)?(e.openBlock(),e.createBlock(e.unref(q.ElIcon),{key:1,class:e.normalizeClass([e.unref(p).e("icon"),e.unref(B)])},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(u))))]),_:1},8,["class"])):e.createCommentVNode("v-if",!0),e.renderSlot(m.$slots,"default",{},()=>[m.dangerouslyUseHTMLString?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createCommentVNode(" Caution here, message could've been compromised, never use user's input as message "),e.createElementVNode("p",{class:e.normalizeClass(e.unref(p).e("content")),innerHTML:m.message},null,10,["innerHTML"])],2112)):(e.openBlock(),e.createElementBlock("p",{key:0,class:e.normalizeClass(e.unref(p).e("content"))},e.toDisplayString(m.message),3))]),m.showClose?(e.openBlock(),e.createBlock(e.unref(q.ElIcon),{key:2,class:e.normalizeClass(e.unref(p).e("closeBtn")),onClick:e.withModifiers(o,["stop"])},{default:e.withCtx(()=>[e.createVNode(e.unref(i))]),_:1},8,["class","onClick"])):e.createCommentVNode("v-if",!0)],46,["id"]),[[e.vShow,T.value]])]),_:3},8,["name","onBeforeLeave","onAfterLeave"]))}});var Ce=_._export_sfc(xe,[["__file","message.vue"]]);let Ne=1;const te=s=>{const c=!s||_.isString(s)||e.isVNode(s)||_.isFunction(s)?{message:s}:s,l={...S,...c};if(!l.appendTo)l.appendTo=document.body;else if(_.isString(l.appendTo)){let i=document.querySelector(l.appendTo);_.isElement(i)||(_.debugWarn("ElMessage","the appendTo option is not an HTMLElement. Falling back to document.body."),i=document.body),l.appendTo=i}return _.isBoolean(F.messageConfig.grouping)&&!l.grouping&&(l.grouping=F.messageConfig.grouping),_.isNumber(F.messageConfig.duration)&&l.duration===3e3&&(l.duration=F.messageConfig.duration),_.isNumber(F.messageConfig.offset)&&l.offset===16&&(l.offset=F.messageConfig.offset),_.isBoolean(F.messageConfig.showClose)&&!l.showClose&&(l.showClose=F.messageConfig.showClose),l},we=s=>{const c=D.indexOf(s);if(c===-1)return;D.splice(c,1);const{handler:l}=s;l.close()},Be=({appendTo:s,...c},l)=>{const i=`message_${Ne++}`,p=c.onClose,w=document.createElement("div"),a={...c,id:i,onClose:()=>{p==null||p(),we(y)},onDestroy:()=>{e.render(null,w)}},n=e.createVNode(Ce,a,_.isFunction(a.message)||e.isVNode(a.message)?{default:_.isFunction(a.message)?a.message:()=>a.message}:null);n.appContext=l||P._context,e.render(n,w),s.appendChild(w.firstElementChild);const E=n.component,y={id:i,vnode:n,vm:E,handler:{close:()=>{E.exposed.visible.value=!1}},props:n.component.props};return y},P=(s={},c)=>{if(!_.isClient)return{close:()=>{}};const l=te(s);if(l.grouping&&D.length){const p=D.find(({vnode:w})=>{var a;return((a=w.props)==null?void 0:a.message)===l.message});if(p)return p.props.repeatNum+=1,p.props.type=l.type,p.handler}if(_.isNumber(F.messageConfig.max)&&D.length>=F.messageConfig.max)return{close:()=>{}};const i=Be(l,c);return D.push(i),i.handler};ee.forEach(s=>{P[s]=(c={},l)=>{const i=te(c);return P({...i,type:s},l)}});function Ee(s){for(const c of D)(!s||s===c.props.type)&&c.handler.close()}P.closeAll=Ee;P._context=null;const M=_.withInstallFunction(P,"$message");const W={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:[]}]}};const Oe=(s,c,l)=>{!c[0]&&c[0]!==0&&!c[1]&&c[1]!==0?l(new Error("至少填写一个分数")):l()},Z=s=>{const c=/(条件(\d+))/g;return s.match(c)||[]},Te={__name:"FactorDescription",props:e.mergeModels({data:{type:Array,default:[]}},{visible:{default:!1},visibleModifiers:{}}),emits:["update:visible"],setup(s){const c=e.useModel(s,"visible");return(l,i)=>{const p=Y.ElTableColumn,w=Y.ElTable,a=H.ElDialog;return e.openBlock(),e.createBlock(a,{modelValue:c.value,"onUpdate:modelValue":i[0]||(i[0]=n=>c.value=n),title:"因子使用说明",width:"1000","align-center":"","destroy-on-close":""},{default:e.withCtx(()=>[e.createVNode(w,{data:s.data,border:"",height:"500"},{default:e.withCtx(()=>[e.createVNode(p,{prop:"factorName",label:"因子名称",width:"200"}),e.createVNode(p,{prop:"factorDesc",label:"因子说明"}),e.createVNode(p,{prop:"factorScoreDefine",label:"分值定义"})]),_:1},8,["data"])]),_:1},8,["modelValue"])}}};const le=s=>(e.pushScopeId("data-v-3cac46e2"),s=s(),e.popScopeId(),s),Ie={class:"factor-screen"},$e={class:"custom-header"},Se=["id"],qe={class:"form-row"},Me={class:"index"},Ue={style:{display:"flex","align-items":"center",width:"100%",height:"24px"}},De=le(()=>e.createElementVNode("span",null,"~",-1)),Fe=le(()=>e.createElementVNode("span",null,"&&代表and,||代表or",-1)),Le={class:"dialog-footer"},Re={__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 c=s,l=e.useModel(s,"data"),i=e.ref(!1),p=e.ref(!1),w=e.ref(null),a=e.ref({list:[{cycle:c.config.cycleDefault??null,factor:null,score:[null,null]}],sqlEnable:0,sqlValue:null}),n=()=>{const{list:u,sqlEnable:t,sqlValue:g}=l.value;a.value={list:JSON.parse(JSON.stringify(u)),sqlEnable:t,sqlValue:g},a.value.list.length||y(),i.value=!0},E=()=>{w.value.validate(u=>{const{list:t,sqlEnable:g,sqlValue:k}=a.value;if(u){if(g){if(!k)return M.error("SQL语句不能为空");const v=Z(k),x=t.map((o,b)=>`条件${b+1}`),h=v.filter(o=>!x.includes(o));if(h.length)return M.error(`请检查SQL语句, 不存在[${h}]`)}l.value={list:JSON.parse(JSON.stringify(t)),sqlEnable:g,sqlValue:k},i.value=!1}})},T=u=>{a.value.list.splice(u,1)},y=u=>{switch(u){case"compare":{a.value.list.push({key:"compare",cycle:c.config.cycleDefault??null,factor:null,compareType:">",cycle2:c.config.cycleDefault??null,factor2:null});break}default:{a.value.list.push({cycle:c.config.cycleDefault??null,factor:null,score:[null,null]});break}}},d=()=>{w.value.validate(u=>{if(u)if(a.value.sqlValue){const t=Z(a.value.sqlValue);a.value.sqlValue=a.value.list.reduce((g,k,v)=>(t.includes(`条件${v+1}`)||(g+=`&& 条件${v+1} `),g),a.value.sqlValue)}else a.value.sqlValue=a.value.list.reduce((t,g,k)=>(k===0?t+=`条件${k+1} `:t+=`&& 条件${k+1} `,t),"")})},O=u=>{switch(u.key){case"compare":{const{cycle:t,factor:g,compareType:k,cycle2:v,factor2:x}=u;let h="";return h+=` ${c.config.cycleOptions.find(({value:o})=>o===t).label}`,h+=` ${c.config.factorOptions.find(({value:o})=>o===g).label}`,h+=` ${k}`,h+=` ${c.config.cycleOptions.find(({value:o})=>o===v).label}`,h+=` ${c.config.factorOptions.find(({value:o})=>o===x).label}`,h}default:{const{cycle:t,factor:g,score:k}=u;let v="";return v+=` ${c.config.cycleOptions.find(({value:x})=>x===t).label}`,v+=` ${c.config.factorOptions.find(({value:x})=>x===g).label}`,v+=` ${k[0]||k[0]===0?`${k[0]}分`:"∞"}`,v+=" ~",v+=` ${k[1]||k[1]===0?`${k[1]}分`:"∞"}`,v}}},B=(u,t)=>{switch(u){case"sqlTag":{l.value={list:[],sqlEnable:0,sqlValue:null};break}case"factorTag":{l.value.list.splice(t,1);break}}};return(u,t)=>{const g=ge,k=z.ElTag,v=X.ElButton,x=q.ElIcon,h=ne.ElTooltip,o=z.ElOption,b=z.ElSelect,m=U.ElFormItem,f=U.ElInputNumber,$=U.ElRadio,r=U.ElRadioGroup,L=K.ElInput,R=U.ElForm,A=H.ElDialog;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Ie,[e.createElementVNode("div",null,[l.value.sqlEnable&&l.value.sqlValue?(e.openBlock(),e.createBlock(k,{key:0,closable:"",type:"info",title:l.value.sqlValue,onClose:t[0]||(t[0]=C=>B("sqlTag"))},{default:e.withCtx(()=>[e.createVNode(g,{type:"info",truncated:"",style:{"max-width":"500px"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(l.value.sqlValue),1)]),_:1})]),_:1},8,["title"])):e.createCommentVNode("",!0),!l.value.sqlEnable&&l.value.list.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(l.value.list,(C,I)=>(e.openBlock(),e.createBlock(k,{closable:"",type:"info",onClose:V=>B("factorTag",I)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(O(C)),1)]),_:2},1032,["onClose"]))),256)):e.createCommentVNode("",!0),e.createVNode(v,{class:"screen-btn",type:"primary",plain:"",size:"small",icon:e.unref(q.plus_default),onClick:n},{default:e.withCtx(()=>[e.createTextVNode(" 添加因子 ")]),_:1},8,["icon"])]),e.createVNode(A,{modelValue:i.value,"onUpdate:modelValue":t[5]||(t[5]=C=>i.value=C),width:"602","align-center":"","destroy-on-close":""},{header:e.withCtx(({titleId:C,titleClass:I})=>[e.createElementVNode("div",$e,[e.createElementVNode("span",{id:C,class:e.normalizeClass(I)}," 因子筛选 ",10,Se),e.createVNode(h,{effect:"dark",content:"点击查看: 因子使用说明",placement:"right"},{default:e.withCtx(()=>[e.createVNode(x,{onClick:t[1]||(t[1]=V=>p.value=!0)},{default:e.withCtx(()=>[e.createVNode(e.unref(q.info_filled_default))]),_:1})]),_:1})])]),footer:e.withCtx(()=>[e.createElementVNode("div",Le,[e.createVNode(v,{type:"primary",onClick:E},{default:e.withCtx(()=>[e.createTextVNode("确定")]),_:1})])]),default:e.withCtx(()=>[e.createVNode(R,{ref_key:"dialogFormRef",ref:w,model:a.value},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value.list,(C,I)=>(e.openBlock(),e.createElementBlock("div",qe,[e.createElementVNode("span",Me,e.toDisplayString(`条件${I+1}`),1),C.key==="compare"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[s.config.cycleShow?(e.openBlock(),e.createBlock(m,{key:0,prop:"list."+I+".cycle",rules:{required:!0,message:"周期不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(b,{modelValue:C.cycle,"onUpdate:modelValue":V=>C.cycle=V,placeholder:"选择周期",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.config.cycleOptions,({label:V,value:N})=>(e.openBlock(),e.createBlock(o,{label:V,value:N,key:N},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])):e.createCommentVNode("",!0),e.createVNode(m,{prop:"list."+I+".factor",rules:{required:!0,message:"因子不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(b,{modelValue:C.factor,"onUpdate:modelValue":V=>C.factor=V,placeholder:"选择因子",filterable:"",size:"small","no-match-text":"无匹配数据"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.config.factorOptions,({label:V,value:N})=>(e.openBlock(),e.createBlock(o,{label:V,value:N,key:N},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"]),e.createVNode(m,{style:{width:"52px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(b,{modelValue:C.compareType,"onUpdate:modelValue":V=>C.compareType=V,size:"small"},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([">",">=","<","<="],V=>e.createVNode(o,{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(m,{key:1,prop:"list."+I+".cycle2",rules:{required:!0,message:"周期不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(b,{modelValue:C.cycle2,"onUpdate:modelValue":V=>C.cycle2=V,placeholder:"选择周期",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.config.cycleOptions,({label:V,value:N})=>(e.openBlock(),e.createBlock(o,{label:V,value:N,key:N},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])):e.createCommentVNode("",!0),e.createVNode(m,{prop:"list."+I+".factor2",rules:{required:!0,message:"因子不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(b,{modelValue:C.factor2,"onUpdate:modelValue":V=>C.factor2=V,placeholder:"选择因子",filterable:"",size:"small","no-match-text":"无匹配数据"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.config.factorOptions,({label:V,value:N})=>(e.openBlock(),e.createBlock(o,{label:V,value:N,key:N},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(m,{key:0,prop:"list."+I+".cycle",rules:{required:!0,message:"周期不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(b,{modelValue:C.cycle,"onUpdate:modelValue":V=>C.cycle=V,placeholder:"选择周期",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.config.cycleOptions,({label:V,value:N})=>(e.openBlock(),e.createBlock(o,{label:V,value:N,key:N},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])):e.createCommentVNode("",!0),e.createVNode(m,{prop:"list."+I+".factor",rules:{required:!0,message:"因子不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(b,{modelValue:C.factor,"onUpdate:modelValue":V=>C.factor=V,placeholder:"选择因子",filterable:"",size:"small","no-match-text":"无匹配数据"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.config.factorOptions,({label:V,value:N})=>(e.openBlock(),e.createBlock(o,{label:V,value:N,key:N},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"]),e.createVNode(m,{prop:"list."+I+".score",rules:{validator:e.unref(Oe),trigger:"blur"},style:{width:"200px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createElementVNode("div",Ue,[e.createVNode(f,{modelValue:C.score[0],"onUpdate:modelValue":V=>C.score[0]=V,size:"small","controls-position":"right"},null,8,["modelValue","onUpdate:modelValue"]),De,e.createVNode(f,{modelValue:C.score[1],"onUpdate:modelValue":V=>C.score[1]=V,size:"small","controls-position":"right"},null,8,["modelValue","onUpdate:modelValue"])])]),_:2},1032,["prop","rules"])],64)),e.createVNode(x,{onClick:V=>T(I)},{default:e.withCtx(()=>[e.createVNode(e.unref(q.circle_close_filled_default))]),_:2},1032,["onClick"])]))),256)),e.createVNode(v,{type:"primary",plain:"",size:"small",icon:e.unref(q.plus_default),onClick:y,style:{"margin-bottom":"10px"}},{default:e.withCtx(()=>[e.createTextVNode("添加因子")]),_:1},8,["icon"]),e.createVNode(v,{type:"primary",plain:"",size:"small",icon:e.unref(q.plus_default),onClick:t[2]||(t[2]=C=>y("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(m,{label:"SQL功能: "},{default:e.withCtx(()=>[e.createVNode(r,{modelValue:a.value.sqlEnable,"onUpdate:modelValue":t[3]||(t[3]=C=>a.value.sqlEnable=C)},{default:e.withCtx(()=>[e.createVNode($,{label:"关闭",value:0}),e.createVNode($,{label:"启用",value:1})]),_:1},8,["modelValue"]),a.value.sqlEnable?(e.openBlock(),e.createBlock(v,{key:0,type:"primary",size:"small",onClick:d,style:{"margin-left":"auto"}},{default:e.withCtx(()=>[e.createTextVNode("生成SQL")]),_:1})):e.createCommentVNode("",!0)]),_:1}),a.value.sqlEnable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(L,{modelValue:a.value.sqlValue,"onUpdate:modelValue":t[4]||(t[4]=C=>a.value.sqlValue=C),autosize:{minRows:4},type:"textarea",style:{"margin-bottom":"10px"}},null,8,["modelValue"]),Fe],64)):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)]),_:1},8,["model"])]),_:1},8,["modelValue"])]),e.createVNode(Te,{visible:p.value,"onUpdate:visible":t[6]||(t[6]=C=>p.value=C),data:s.config.factorDescriptions},null,8,["visible","data"])],64)}}},ze=Q._export_sfc(Re,[["__scopeId","data-v-3cac46e2"]]);const G=s=>(e.pushScopeId("data-v-bdb03941"),s=s(),e.popScopeId(),s),Pe={key:0,class:"common-indicator"},je={class:"indicator"},Ae=G(()=>e.createElementVNode("div",{class:"title"},[e.createElementVNode("span",null,"常用指标: "),e.createElementVNode("span",null,"不限")],-1)),Ye={class:"options"},Ge=["onClick"],He={class:"tags"},Qe=["onClick"],Je={style:{"font-size":"18px"}},We={key:0,class:"out-box"},Ze=G(()=>e.createElementVNode("span",null,"自定义: ",-1)),Ke={key:0,class:"convenient-option-box"},Xe={class:"out-box"},et=G(()=>e.createElementVNode("span",null,"自定义: ",-1)),tt={key:0},lt={key:0},nt={key:0},ot={key:1},at={class:"tFeaturelncomes-option-box"},rt={class:"tFeaturelncomes-out-box"},st=G(()=>e.createElementVNode("span",null,"自定义: ",-1)),it={key:2},ut={key:3},ct={key:4},dt={class:"dialog-footer"},pt={__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 c=e.useModel(s,"data"),l=s,i=e.ref(!1),p=e.computed(()=>{var u;return(u=l.data.find(t=>t.radioType==="1"))==null?void 0:u.key}),w=e.computed(()=>{let u=[];return l.varietyMarket===null&&!l.commonOption.length?u=l.config.options:(u=l.config.options,l.varietyMarket&&(u=u.filter(({parent:t})=>t.varietyMarketIds.includes(l.varietyMarket))),l.commonOption.length&&(u=u.filter(({parent:t})=>{const{commonOptionIds:g}=t;return[...new Set([...g,...l.commonOption])].length!==[...g,...l.commonOption].length}))),u}),a=e.ref({}),n=e.ref({}),E=u=>{a.value=u;const t={key:u.key,type:u.type,label:u.label};switch(u.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:u.defaultUnit.length?[...u.defaultUnit]:[null,null],radioType:p.value&&p.value!==u.key?"0":u.defaultRadioType,rankRange:u.defaultRankRange||[null,null]}}i.value=!0},T=()=>{switch(n.value.key){case"st":{const{label:t,st:g}=n.value;if(g===null)return M.warning("格式错误: 请至少选择一个值");n.value.tagText=`${t}: ${g?"是":"否"}`;break}case"tFeaturelncomes":{const{label:t,rule:g,withFewYears:k,yearsCount:v,netProfit:x}=n.value;if(["",null].includes(k)||["",null].includes(v)||["",null].includes(x))return M.warning("格式错误: 请填写完整");n.value.tagText=`${t}: ${k}年内${v}年以上盈利${g===1?"超":"跌"}过${x}亿`;break}case"priceLevels":{const{label:t,priceLevels:g}=n.value;if(!g||g.length===0)return M.warning("格式错误: 请至少选择一个值");n.value.tagText=`${t}: 已选${g}分位`;break}case"peTtmLevels":{const{label:t,peTtmLevels:g}=n.value;if(!g||g.length===0)return M.warning("格式错误: 请至少选择一个值");n.value.tagText=`${t}: 已选${g}分位`;break}case"optionsCpType":{const{label:t,optionsCpType:g}=n.value;if(g===null)return M.warning("格式错误: 请至少选择一个值");n.value.tagText=`${t}: ${g===1?"看涨":"看跌"}`;break}default:{const{label:t,unit:g,radioType:k}=n.value,v=k==="1"?n.value.rankRange:n.value.range;if(["",null].includes(v[0])&&["",null].includes(v[1]))return M.warning("格式错误: 请至少填写一个值");if(k==="1"){const o=Number(v[0]),b=Number(v[1]);if(isNaN(o)||isNaN(b))return M.warning("格式错误: 请填写数字");if(o<0||b<0)return M.warning("格式错误: 请填写大于0的数字");if(o>b)return M.warning("格式错误: 请填写正确的排名范围")}const x=k==="1"?"":g[0]??"",h=k==="1"?"":g[1]??"";!["",null].includes(v[0])&&!["",null].includes(v[1])?n.value.tagText=`${t}${k==="1"?"排名":""}: ${v[0]}${x} ~ ${v[1]}${h}`:["",null].includes(v[0])?n.value.tagText=`${t}${k==="1"?"排名":""}: ≤${v[1]}${h}`:n.value.tagText=`${t}${k==="1"?"排名":""}: ≥${v[0]}${x}`}}const u=c.value.findIndex(({key:t})=>t===n.value.key);u===-1?c.value.push(n.value):c.value.splice(u,1,n.value),i.value=!1},y=u=>{a.value=w.value.find(({key:t})=>t===u.key),n.value=JSON.parse(JSON.stringify(u)),i.value=!0},d=u=>{c.value.splice(u,1)},O=u=>{n.value.range=[...u.range],n.value.unit=[...u.unit]},B=u=>{switch(u){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(()=>w.value,()=>{c.value.length&&(c.value=c.value.filter(({key:u})=>w.value.find(t=>t.key===u)))}),(u,t)=>{const g=z.ElTag,k=U.ElRadioButton,v=U.ElRadioGroup,x=K.ElInput,h=X.ElButton,o=z.ElOption,b=z.ElSelect,m=U.ElRadio,f=U.ElInputNumber,$=H.ElDialog;return s.config.show&&w.value.length?(e.openBlock(),e.createElementBlock("div",Pe,[e.createElementVNode("div",je,[Ae,e.createElementVNode("div",Ye,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value,r=>(e.openBlock(),e.createElementBlock("span",{key:r.key,onClick:L=>E(r)},e.toDisplayString(r.label),9,Ge))),128))])]),e.createElementVNode("div",He,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(r,L)=>(e.openBlock(),e.createBlock(g,{closable:"",type:"info",onClose:R=>d(L)},{default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(r.tagText),1),e.createElementVNode("span",{class:"edit",onClick:R=>y(r)},"编辑",8,Qe)]),_:2},1032,["onClose"]))),256))]),e.createVNode($,{modelValue:i.value,"onUpdate:modelValue":t[19]||(t[19]=r=>i.value=r),title:a.value.label,width:"600","align-center":"","destroy-on-close":""},e.createSlots({footer:e.withCtx(()=>[e.createElementVNode("div",dt,[e.createVNode(h,{type:"primary",onClick:T},{default:e.withCtx(()=>[e.createTextVNode("确定")]),_:1})])]),default:e.withCtx(()=>[a.value.type===void 0&&n.value.radioType==="1"?(e.openBlock(),e.createElementBlock("div",We,[Ze,e.createVNode(x,{modelValue:n.value.rankRange[0],"onUpdate:modelValue":t[1]||(t[1]=r=>n.value.rankRange[0]=r),style:{flex:"1"}},null,8,["modelValue"]),e.createTextVNode(" ~ "),e.createVNode(x,{modelValue:n.value.rankRange[1],"onUpdate:modelValue":t[2]||(t[2]=r=>n.value.rankRange[1]=r),style:{flex:"1"}},null,8,["modelValue"])])):a.value.type===void 0?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[a.value.convenientOptions.length?(e.openBlock(),e.createElementBlock("div",Ke,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value.convenientOptions,r=>(e.openBlock(),e.createBlock(h,{key:r.text,onClick:L=>O(r)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(r.text),1)]),_:2},1032,["onClick"]))),128))])):e.createCommentVNode("",!0),e.createElementVNode("div",Xe,[et,e.createVNode(x,{modelValue:n.value.range[0],"onUpdate:modelValue":t[4]||(t[4]=r=>n.value.range[0]=r),style:{flex:"1"}},e.createSlots({_:2},[a.value.unitOptions.length?{name:"append",fn:e.withCtx(()=>[a.value.unitOptions.length===1?(e.openBlock(),e.createElementBlock("span",tt,e.toDisplayString(n.value.unit[0]),1)):(e.openBlock(),e.createBlock(b,{key:1,modelValue:n.value.unit[0],"onUpdate:modelValue":t[3]||(t[3]=r=>n.value.unit[0]=r),style:{width:"72px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value.unitOptions,r=>(e.openBlock(),e.createBlock(o,{label:r,value:r},null,8,["label","value"]))),256))]),_:1},8,["modelValue"]))]),key:"0"}:void 0]),1032,["modelValue"]),e.createTextVNode(" ~ "),e.createVNode(x,{modelValue:n.value.range[1],"onUpdate:modelValue":t[6]||(t[6]=r=>n.value.range[1]=r),style:{flex:"1"}},e.createSlots({_:2},[a.value.unitOptions.length?{name:"append",fn:e.withCtx(()=>[a.value.unitOptions.length===1?(e.openBlock(),e.createElementBlock("span",lt,e.toDisplayString(n.value.unit[1]),1)):(e.openBlock(),e.createBlock(b,{key:1,modelValue:n.value.unit[1],"onUpdate:modelValue":t[5]||(t[5]=r=>n.value.unit[1]=r),style:{width:"72px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value.unitOptions,r=>(e.openBlock(),e.createBlock(o,{label:r,value:r},null,8,["label","value"]))),256))]),_:1},8,["modelValue"]))]),key:"0"}:void 0]),1032,["modelValue"])])],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[a.value.key==="st"?(e.openBlock(),e.createElementBlock("div",nt,[e.createVNode(v,{modelValue:n.value.st,"onUpdate:modelValue":t[7]||(t[7]=r=>n.value.st=r)},{default:e.withCtx(()=>[e.createVNode(m,{label:"是",value:1}),e.createVNode(m,{label:"否",value:0})]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),a.value.key==="tFeaturelncomes"?(e.openBlock(),e.createElementBlock("div",ot,[e.createElementVNode("div",at,[e.createVNode(h,{onClick:t[8]||(t[8]=r=>B("≤0"))},{default:e.withCtx(()=>[e.createTextVNode("≤0")]),_:1}),e.createVNode(h,{onClick:t[9]||(t[9]=r=>B("≥0"))},{default:e.withCtx(()=>[e.createTextVNode("≥0")]),_:1}),e.createVNode(h,{onClick:t[10]||(t[10]=r=>B("五年内有四年以上盈利超过5千万"))},{default:e.withCtx(()=>[e.createTextVNode("五年内有四年以上盈利超过5千万")]),_:1}),e.createVNode(h,{onClick:t[11]||(t[11]=r=>B("≥10亿"))},{default:e.withCtx(()=>[e.createTextVNode("≥10亿")]),_:1}),e.createVNode(h,{onClick:t[12]||(t[12]=r=>B("≥20亿"))},{default:e.withCtx(()=>[e.createTextVNode("≥20亿")]),_:1})]),e.createElementVNode("div",rt,[st,e.createElementVNode("div",null,[e.createVNode(f,{modelValue:n.value.withFewYears,"onUpdate:modelValue":t[13]||(t[13]=r=>n.value.withFewYears=r),"controls-position":"right"},null,8,["modelValue"]),e.createTextVNode(" 年内 "),e.createVNode(f,{modelValue:n.value.yearsCount,"onUpdate:modelValue":t[14]||(t[14]=r=>n.value.yearsCount=r),"controls-position":"right"},null,8,["modelValue"]),e.createTextVNode(" 年以上盈利"+e.toDisplayString(n.value.rule===1?"超":"跌")+"过 ",1),e.createVNode(f,{modelValue:n.value.netProfit,"onUpdate:modelValue":t[15]||(t[15]=r=>n.value.netProfit=r),"controls-position":"right"},null,8,["modelValue"]),e.createTextVNode(" 亿 ")])])])):e.createCommentVNode("",!0),a.value.key==="priceLevels"?(e.openBlock(),e.createElementBlock("div",it,[e.createVNode(b,{modelValue:n.value.priceLevels,"onUpdate:modelValue":t[16]||(t[16]=r=>n.value.priceLevels=r),multiple:"",clearable:"",placeholder:"请选择",style:{width:"420px"}},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([1,2,3,4,5],r=>e.createVNode(o,{key:r,label:`${r}分位`,value:r},null,8,["label","value"])),64))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),a.value.key==="peTtmLevels"?(e.openBlock(),e.createElementBlock("div",ut,[e.createVNode(b,{modelValue:n.value.peTtmLevels,"onUpdate:modelValue":t[17]||(t[17]=r=>n.value.peTtmLevels=r),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],r=>e.createVNode(o,{key:r,label:`${r}分位`,value:r},null,8,["label","value"])),64))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),a.value.key==="optionsCpType"?(e.openBlock(),e.createElementBlock("div",ct,[e.createVNode(v,{modelValue:n.value.optionsCpType,"onUpdate:modelValue":t[18]||(t[18]=r=>n.value.optionsCpType=r)},{default:e.withCtx(()=>[e.createVNode(m,{label:"看涨",value:1}),e.createVNode(m,{label:"看跌",value:2})]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0)],64))]),_:2},[a.value.showRankType?{name:"header",fn:e.withCtx(()=>[e.createElementVNode("span",Je,e.toDisplayString(a.value.label),1),e.createVNode(v,{modelValue:n.value.radioType,"onUpdate:modelValue":t[0]||(t[0]=r=>n.value.radioType=r),style:{"vertical-align":"4px","margin-left":"12px"}},{default:e.withCtx(()=>[e.createVNode(k,{label:"数值",value:"0"}),e.createVNode(k,{disabled:p.value&&p.value!==a.value.key,label:"排名",value:"1"},null,8,["disabled"])]),_:1},8,["modelValue"])]),key:"0"}:void 0]),1032,["modelValue","title"])])):e.createCommentVNode("",!0)}}},mt=Q._export_sfc(pt,[["__scopeId","data-v-bdb03941"]]);const j=s=>(e.pushScopeId("data-v-25e1c57e"),s=s(),e.popScopeId(),s),ft={class:"variety-search"},vt={key:0,class:"variety-search-row"},gt={class:"title"},yt=j(()=>e.createElementVNode("span",null,"品种市场: ",-1)),kt={key:1,class:"variety-search-row"},Vt={class:"title"},bt=j(()=>e.createElementVNode("span",null,"常用选项: ",-1)),ht={key:2,class:"variety-search-row"},_t={class:"title"},xt=j(()=>e.createElementVNode("span",null,"上市板块: ",-1)),Ct={key:3,class:"variety-search-row"},Nt={class:"title"},wt=j(()=>e.createElementVNode("span",null,"自定标签: ",-1)),Bt={key:4,class:"variety-search-row"},Et={class:"title"},Ot=j(()=>e.createElementVNode("span",null,"因子筛选: ",-1)),Tt={__name:"index",props:e.mergeModels({config:{type:Object,default:{}}},{searchData:{},searchDataModifiers:{}}),emits:["update:searchData"],setup(s,{expose:c}){const l=s,i=e.useModel(s,"searchData");i.value=Object.assign(i.value,{varietyMarket:null,commonOption:[],marketIds:[],customTag:[],factorScreen:{list:[],sqlEnable:0,sqlValue:null},commonIndicator:[]});const p=e.computed(()=>{const y={};return Object.keys(W).forEach(d=>{const O=W[d],B=l.config[d]??{},u={...O,...B};y[d]=u}),y}),w=e.computed(()=>p.value.varietyMarket.options),a=e.computed(()=>{const{varietyMarket:y}=i.value;if(y){const d=w.value.find(({value:O})=>O===y).memo;return p.value.commonOption.options.filter(({value:O})=>d.includes(O))}else return p.value.commonOption.options}),n=e.computed(()=>{const{varietyMarket:y}=i.value;return y?p.value.marketIds.options.filter(d=>d.varietyMarketIds.includes(y)):p.value.marketIds.options}),E=e.computed(()=>p.value.customTag.options),T=y=>{["commonOption","marketIds","customTag","factorScreen","commonIndicator"].includes(y)?i.value[y]=[]:i.value[y]=null};return e.watch(()=>a.value,y=>{var d;(d=i.value.commonOption)!=null&&d.length&&(i.value.commonOption=i.value.commonOption.filter(O=>y.find(({value:B})=>B===O)))}),e.watch(()=>n.value,y=>{var d;(d=i.value.marketIds)!=null&&d.length&&(i.value.marketIds=i.value.marketIds.filter(O=>y.find(({value:B})=>B===O)))}),c({formatData:y=>{var O,B,u,t,g;console.log("%c[st-varietySearch]: 正在生成接口传参结构的数据...","color: tomato");const d={};if(y.varietyMarket&&(d.exchangeId=String(y.varietyMarket)),(O=y.commonOption)!=null&&O.length&&(d.optionId=y.commonOption.join(",")),(B=y.marketIds)!=null&&B.length&&(d.marketIds=y.marketIds),(u=y.customTag)!=null&&u.length&&(d.tagIds=y.customTag),(t=p.value.factorScreen)!=null&&t.show){const{factorScreen:k}=y;if((g=k==null?void 0:k.list)!=null&&g.length&&(d.tbFeatureFactorScores=k.list.map(v=>{switch(v.key){case"compare":return{freqId:v.cycle,factorId:v.factor,compareType:v.compareType,freqId2:v.cycle2,factorId2:v.factor2};default:return{freqId:v.cycle,factorId:v.factor,startScore:v.score[0],endScore:v.score[1]}}})),k.sqlEnable){const v=k.list.reduce((h,o,b)=>{var f,$;const m=`条件${b+1}`;switch(o.key){case"compare":{let r="";(f=p.value.factorScreen)!=null&&f.cycleShow?r=`freq_id = ${o.cycle} and factor_id = ${o.factor} ${o.compareType} freq_id = ${o.cycle2} and factor_id = ${o.factor2}`:r=`factor_id = ${o.factor} ${o.compareType} factor_id = ${o.factor2}`,h.set(m,`(${r})`);break}default:{let r=`factor_id = ${o.factor} and `;($=p.value.factorScreen)!=null&&$.cycleShow&&(r=`freq_id = ${o.cycle} and factor_id = ${o.factor} and `),(o.score[0]||o.score[0]===0)&&(o.score[1]||o.score[1]===0)?r+=`score >= ${o.score[0]} and score <= ${o.score[1]}`:o.score[0]||o.score[0]===0?r+=`score >= ${o.score[0]}`:(o.score[1]||o.score[1]===0)&&(r+=`score <= ${o.score[1]}`),h.set(m,`(${r})`)}}return h},new Map([]));let x=k.sqlValue;for(const[h,o]of v){const b=new RegExp(h,"g");x=x.replace(b,o)}d.sql=x}d.enableSql=k.sqlEnable===1?2:1}{const k=["expireDays","virtualRealDegree","yearProfitRate","impliedVolatility","levelMultiplier","turnover","volume","openInterest","optionsCpType","optionGear"],v=y.commonIndicator.reduce((f,$)=>{const{key:r,type:L,range:R,unit:A,radioType:C,rankRange:I}=$;if(C==="1")k.includes(r)?d.sortBy={column:$.key,start:I[0]||null,end:I[1]||null}:f.push({column:$.key,type:"1",start:I[0]||null,end:I[1]||null});else if(r==="dividendYield"){let[V,N]=R;["",null].includes(V)||(V=V/100),["",null].includes(N)||(N=N/100),f.push({column:$.key,start:V,end:N})}else if(L===void 0&&!k.includes(r)){let[V,N]=R;if(!["",null].includes(V))switch(A[0]){case"亿":V=V*1e8;break;case"千万":V=V*1e7;break;default:V=V;break}if(!["",null].includes(N))switch(A[1]){case"亿":N=N*1e8;break;case"千万":N=N*1e7;break;default:N=N;break}f.push({column:$.key,start:V,end:N})}return f},[]);v.length&&(d.query=v);const x=y.commonIndicator.find(({key:f})=>f==="st");x&&(d.st=x.st);const h=y.commonIndicator.find(({key:f})=>f==="tFeaturelncomes");h&&(d.netProfitQueryDto={...h,netProfit:h.netProfit*1e8});const o=y.commonIndicator.find(({key:f})=>f==="priceLevels");o&&(d.priceLevels=o.priceLevels);const b=y.commonIndicator.find(({key:f})=>f==="peTtmLevels");b&&(d.peTtmLevels=b.peTtmLevels);const m={};y.commonIndicator.forEach(f=>{const{key:$}=f;switch($){case"expireDays":["",null].includes(f.range[0])||(m.minExpireDays=f.range[0]),["",null].includes(f.range[1])||(m.maxExpireDays=f.range[1]);break;case"virtualRealDegree":["",null].includes(f.range[0])||(m.minVirtualRealDegree=f.range[0]/100),["",null].includes(f.range[1])||(m.maxVirtualRealDegree=f.range[1]/100);break;case"yearProfitRate":["",null].includes(f.range[0])||(m.minYearProfitRate=f.range[0]/100),["",null].includes(f.range[1])||(m.maxYearProfitRate=f.range[1]/100);break;case"impliedVolatility":["",null].includes(f.range[0])||(m.minImpliedVolatility=f.range[0]/100),["",null].includes(f.range[1])||(m.maxImpliedVolatility=f.range[1]/100);break;case"levelMultiplier":["",null].includes(f.range[0])||(m.minLevelMultiplier=f.range[0]),["",null].includes(f.range[1])||(m.maxLevelMultiplier=f.range[1]);break;case"turnover":["",null].includes(f.range[0])||(m.minTurnover=f.range[0]*1e4),["",null].includes(f.range[1])||(m.maxTurnover=f.range[1]*1e4);break;case"volume":["",null].includes(f.range[0])||(m.minVolume=f.range[0]),["",null].includes(f.range[1])||(m.maxVolume=f.range[1]);break;case"openInterest":["",null].includes(f.range[0])||(m.minOpenInterest=f.range[0]),["",null].includes(f.range[1])||(m.maxOpenInterest=f.range[1]);break;case"optionsCpType":m.optionsCpType=f.optionsCpType;break;case"optionGear":["",null].includes(f.range[0])||(m.minOptionGear=f.range[0]),["",null].includes(f.range[1])||(m.maxOptionGear=f.range[1]);break}}),Object.keys(m).length&&(d.searchOptionDto={...d.searchOptionDto,...m})}return console.log("%c[st-varietySearch]: 接口传参数据生成完毕","color: green",d),d},reset:()=>{i.value={varietyMarket:null,commonOption:[],marketIds:[],customTag:[],factorScreen:{list:[],sqlEnable:0,sqlValue:null},commonIndicator:[]}}}),(y,d)=>{var g,k,v,x,h;const O=U.ElRadio,B=U.ElRadioGroup,u=Y.ElCheckbox,t=Y.ElCheckboxGroup;return e.openBlock(),e.createElementBlock("div",ft,[(g=p.value.varietyMarket)!=null&&g.show?(e.openBlock(),e.createElementBlock("div",vt,[e.createElementVNode("div",gt,[yt,e.createElementVNode("span",{onClick:d[0]||(d[0]=o=>T("varietyMarket"))},"不限")]),e.createVNode(B,{modelValue:i.value.varietyMarket,"onUpdate:modelValue":d[1]||(d[1]=o=>i.value.varietyMarket=o),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value,({label:o,value:b})=>(e.openBlock(),e.createBlock(O,{label:o,value:b,key:b},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(k=p.value.commonOption)!=null&&k.show&&a.value.length?(e.openBlock(),e.createElementBlock("div",kt,[e.createElementVNode("div",Vt,[bt,e.createElementVNode("span",{onClick:d[2]||(d[2]=o=>T("commonOption"))},"不限")]),e.createVNode(t,{modelValue:i.value.commonOption,"onUpdate:modelValue":d[3]||(d[3]=o=>i.value.commonOption=o),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,({label:o,value:b})=>(e.openBlock(),e.createBlock(u,{label:o,value:b,key:b},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(v=p.value.marketIds)!=null&&v.show&&n.value.length?(e.openBlock(),e.createElementBlock("div",ht,[e.createElementVNode("div",_t,[xt,e.createElementVNode("span",{onClick:d[4]||(d[4]=o=>T("marketIds"))},"不限")]),e.createVNode(t,{modelValue:i.value.marketIds,"onUpdate:modelValue":d[5]||(d[5]=o=>i.value.marketIds=o),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,({label:o,value:b})=>(e.openBlock(),e.createBlock(u,{label:o,value:b,key:b},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(x=p.value.customTag)!=null&&x.show&&E.value.length?(e.openBlock(),e.createElementBlock("div",Ct,[e.createElementVNode("div",Nt,[wt,e.createElementVNode("span",{onClick:d[6]||(d[6]=o=>T("customTag"))},"不限")]),e.createVNode(t,{modelValue:i.value.customTag,"onUpdate:modelValue":d[7]||(d[7]=o=>i.value.customTag=o),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(E.value,({label:o,value:b})=>(e.openBlock(),e.createBlock(u,{label:o,value:b,key:b},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(h=p.value.factorScreen)!=null&&h.show?(e.openBlock(),e.createElementBlock("div",Bt,[e.createElementVNode("div",Et,[Ot,e.createElementVNode("span",{onClick:d[8]||(d[8]=o=>T("factorScreen"))},"不限")]),e.createVNode(ze,{data:i.value.factorScreen,"onUpdate:data":d[9]||(d[9]=o=>i.value.factorScreen=o),config:p.value.factorScreen},null,8,["data","config"])])):e.createCommentVNode("",!0),e.createVNode(mt,{data:i.value.commonIndicator,"onUpdate:data":d[10]||(d[10]=o=>i.value.commonIndicator=o),varietyMarket:i.value.varietyMarket,commonOption:i.value.commonOption,config:p.value.commonIndicator},null,8,["data","varietyMarket","commonOption","config"])])}}},It=Q._export_sfc(Tt,[["__scopeId","data-v-25e1c57e"]]),$t={install(s){s.component("st-varietySearch",It)}};module.exports=$t;
|