st-comp 0.0.166 → 0.0.167
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/VarSelectDialog.cjs +3 -3
- package/es/VarSelectDialog.js +2906 -163
- package/es/VarietySearch.cjs +1 -3
- package/es/VarietySearch.js +895 -1152
- package/es/style.css +1 -1
- package/lib/bundle.js +1 -1
- package/lib/bundle.umd.cjs +186 -188
- package/lib/{index-80531492.js → index-6c539dc9.js} +21774 -22028
- package/lib/{python-20a1a5fc.js → python-b2c12764.js} +1 -1
- package/lib/style.css +1 -1
- package/package.json +1 -1
- package/packages/VarietySearch/components/FactorScreen/index.vue +4 -5
- package/es/el-autocomplete-5064d466.js +0 -2759
- package/es/el-autocomplete-814993af.cjs +0 -1
- package/packages/VarietySearch/components/FactorScreen/ScriptSelect.vue +0 -303
- package/packages/VarietySearch/components/FactorScreen/VarietySelect.vue +0 -78
package/es/VarietySearch.cjs
CHANGED
|
@@ -1,3 +1 @@
|
|
|
1
|
-
"use strict";const q=require("./base-bdc10baa.cjs");require("./el-tag-8d49d4d2.cjs");const j=require("./el-select-1d2309a1.cjs");require("./el-scrollbar-8bf765f2.cjs");const ee=require("./el-popper-14a9d493.cjs"),Ve=require("./el-checkbox-group-020b49f5.cjs"),H=require("./el-table-column-be9a76bb.cjs"),e=require("vue"),te=require("./el-dialog-cd484c1f.cjs");require("./el-overlay-e5d318c3.cjs");const re=require("./el-form-item-e1c3104b.cjs"),le=require("./el-input-5163bda3.cjs"),ie=require("./el-input-number-eb54cde4.cjs");require("./el-tooltip-0ea8fbf8.cjs");const ne=require("./el-button-960edd49.cjs"),D=require("./index-19fa1fcf.cjs"),X=require("./el-autocomplete-814993af.cjs"),_e=require("./index-8901a38c.cjs"),J=require("./_plugin-vue_export-helper-f246444f.cjs"),U=require("./el-message-ad87b9dd.cjs"),be=require("./index.vue_vue_type_script_setup_true_lang-4024853c.cjs"),ce=require("./index-a99a5307.cjs"),xe=require("./index-b90c746b.cjs"),P=require("./use-form-common-props-592797e2.cjs"),Z=require("./index-d94bae37.cjs"),he=require("./index-8d3c5e96.cjs"),Ne=require("./index-02ca0096.cjs");require("./castArray-37eb9980.cjs");require("./index-5b81f4da.cjs");require("./scroll-4769a65d.cjs");require("./debounce-9e323221.cjs");require("./use-global-config-584b62f1.cjs");require("./_initCloneObject-9ccbb113.cjs");require("./raf-07cb6953.cjs");require("./vnode-1b827c99.cjs");require("./typescript-b63f8e83.cjs");require("./index-eea0bcb3.cjs");require("./_commonjsHelpers-87b0abe8.cjs");require("./config-provider-ec6b09df.cjs");require("./dropdown-b2dab5bb.cjs");const de=q.buildProps({modelValue:{type:[String,Number,Boolean],default:void 0},size:P.useSizeProp,disabled:Boolean,label:{type:[String,Number,Boolean],default:void 0},value:{type:[String,Number,Boolean],default:void 0},name:{type:String,default:void 0}}),Ee=q.buildProps({...de,border:Boolean}),pe={[Z.UPDATE_MODEL_EVENT]:v=>q.isString(v)||q.isNumber(v)||q.isBoolean(v),[Z.CHANGE_EVENT]:v=>q.isString(v)||q.isNumber(v)||q.isBoolean(v)},me=Symbol("radioGroupKey"),ve=(v,N)=>{const b=e.ref(),u=e.inject(me,void 0),k=e.computed(()=>!!u),B=e.computed(()=>q.isPropAbsent(v.value)?v.label:v.value),C=e.computed({get(){return k.value?u.modelValue:v.modelValue},set(d){k.value?u.changeEvent(d):N&&N(Z.UPDATE_MODEL_EVENT,d),b.value.checked=v.modelValue===B.value}}),x=P.useFormSize(e.computed(()=>u==null?void 0:u.size)),f=P.useFormDisabled(e.computed(()=>u==null?void 0:u.disabled)),t=e.ref(!1),$=e.computed(()=>f.value||k.value&&C.value!==B.value?-1:0);return he.useDeprecated({from:"label act as value",replacement:"value",version:"3.0.0",scope:"el-radio",ref:"https://element-plus.org/en-US/component/radio.html"},e.computed(()=>k.value&&q.isPropAbsent(v.value))),{radioRef:b,isGroup:k,radioGroup:u,focus:t,size:x,disabled:f,tabIndex:$,modelValue:C,actualValue:B}},we=e.defineComponent({name:"ElRadio"}),Ce=e.defineComponent({...we,props:Ee,emits:pe,setup(v,{emit:N}){const b=v,u=q.useNamespace("radio"),{radioRef:k,radioGroup:B,focus:C,size:x,disabled:f,modelValue:t,actualValue:$}=ve(b,N);function d(){e.nextTick(()=>N("change",t.value))}return(r,I)=>{var E;return e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass([e.unref(u).b(),e.unref(u).is("disabled",e.unref(f)),e.unref(u).is("focus",e.unref(C)),e.unref(u).is("bordered",r.border),e.unref(u).is("checked",e.unref(t)===e.unref($)),e.unref(u).m(e.unref(x))])},[e.createElementVNode("span",{class:e.normalizeClass([e.unref(u).e("input"),e.unref(u).is("disabled",e.unref(f)),e.unref(u).is("checked",e.unref(t)===e.unref($))])},[e.withDirectives(e.createElementVNode("input",{ref_key:"radioRef",ref:k,"onUpdate:modelValue":w=>e.isRef(t)?t.value=w:null,class:e.normalizeClass(e.unref(u).e("original")),value:e.unref($),name:r.name||((E=e.unref(B))==null?void 0:E.name),disabled:e.unref(f),checked:e.unref(t)===e.unref($),type:"radio",onFocus:w=>C.value=!0,onBlur:w=>C.value=!1,onChange:d,onClick:e.withModifiers(()=>{},["stop"])},null,42,["onUpdate:modelValue","value","name","disabled","checked","onFocus","onBlur","onClick"]),[[e.vModelRadio,e.unref(t)]]),e.createElementVNode("span",{class:e.normalizeClass(e.unref(u).e("inner"))},null,2)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(u).e("label")),onKeydown:e.withModifiers(()=>{},["stop"])},[e.renderSlot(r.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(r.label),1)])],42,["onKeydown"])],2)}}});var Be=q._export_sfc(Ce,[["__file","radio.vue"]]);const $e=q.buildProps({...de}),Ie=e.defineComponent({name:"ElRadioButton"}),Te=e.defineComponent({...Ie,props:$e,setup(v){const N=v,b=q.useNamespace("radio"),{radioRef:u,focus:k,size:B,disabled:C,modelValue:x,radioGroup:f,actualValue:t}=ve(N),$=e.computed(()=>({backgroundColor:(f==null?void 0:f.fill)||"",borderColor:(f==null?void 0:f.fill)||"",boxShadow:f!=null&&f.fill?`-1px 0 0 0 ${f.fill}`:"",color:(f==null?void 0:f.textColor)||""}));return(d,r)=>{var I;return e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass([e.unref(b).b("button"),e.unref(b).is("active",e.unref(x)===e.unref(t)),e.unref(b).is("disabled",e.unref(C)),e.unref(b).is("focus",e.unref(k)),e.unref(b).bm("button",e.unref(B))])},[e.withDirectives(e.createElementVNode("input",{ref_key:"radioRef",ref:u,"onUpdate:modelValue":E=>e.isRef(x)?x.value=E:null,class:e.normalizeClass(e.unref(b).be("button","original-radio")),value:e.unref(t),type:"radio",name:d.name||((I=e.unref(f))==null?void 0:I.name),disabled:e.unref(C),onFocus:E=>k.value=!0,onBlur:E=>k.value=!1,onClick:e.withModifiers(()=>{},["stop"])},null,42,["onUpdate:modelValue","value","name","disabled","onFocus","onBlur","onClick"]),[[e.vModelRadio,e.unref(x)]]),e.createElementVNode("span",{class:e.normalizeClass(e.unref(b).be("button","inner")),style:e.normalizeStyle(e.unref(x)===e.unref(t)?e.unref($):{}),onKeydown:e.withModifiers(()=>{},["stop"])},[e.renderSlot(d.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(d.label),1)])],46,["onKeydown"])],2)}}});var fe=q._export_sfc(Te,[["__file","radio-button.vue"]]);const Oe=q.buildProps({id:{type:String,default:void 0},size:P.useSizeProp,disabled:Boolean,modelValue:{type:[String,Number,Boolean],default:void 0},fill:{type:String,default:""},textColor:{type:String,default:""},name:{type:String,default:void 0},validateEvent:{type:Boolean,default:!0},...ee.useAriaProps(["ariaLabel"])}),Se=pe,qe=e.defineComponent({name:"ElRadioGroup"}),Me=e.defineComponent({...qe,props:Oe,emits:Se,setup(v,{emit:N}){const b=v,u=q.useNamespace("radio"),k=Ne.useId(),B=e.ref(),{formItem:C}=P.useFormItem(),{inputId:x,isLabeledByFormItem:f}=P.useFormItemInputId(b,{formItemContext:C}),t=d=>{N(Z.UPDATE_MODEL_EVENT,d),e.nextTick(()=>N("change",d))};e.onMounted(()=>{const d=B.value.querySelectorAll("[type=radio]"),r=d[0];!Array.from(d).some(I=>I.checked)&&r&&(r.tabIndex=0)});const $=e.computed(()=>b.name||k.value);return e.provide(me,e.reactive({...e.toRefs(b),changeEvent:t,name:$})),e.watch(()=>b.modelValue,()=>{b.validateEvent&&(C==null||C.validate("change").catch(d=>q.debugWarn(d)))}),(d,r)=>(e.openBlock(),e.createElementBlock("div",{id:e.unref(x),ref_key:"radioGroupRef",ref:B,class:e.normalizeClass(e.unref(u).b("group")),role:"radiogroup","aria-label":e.unref(f)?void 0:d.ariaLabel||"radio-group","aria-labelledby":e.unref(f)?e.unref(C).labelId:void 0},[e.renderSlot(d.$slots,"default")],10,["id","aria-label","aria-labelledby"]))}});var ke=q._export_sfc(Me,[["__file","radio-group.vue"]]);const ae=q.withInstall(Be,{RadioButton:fe,RadioGroup:ke}),oe=q.withNoopInstall(ke),ye=q.withNoopInstall(fe);const ue={varietyMarket:{show:!0,options:[]},commonOption:{show:!0,options:[]},marketIds:{show:!0,options:[]},customTag:{show:!0,options:[]},jcTranslate:{show:!0,jcOptions:[{label:"恒指",value:"HZCFJC"},{label:"恒生科技",value:"HSKJJC"},{label:"上证50",value:"SZ50CFJC"},{label:"沪深300",value:"HS300CFJC"},{label:"中证500",value:"ZZ500CFJC"},{label:"中证1000",value:"ZZ1000JC"}]},factorScreen:{show:!0,sqlShow:!1,cycleShow:!0,cycleDefault:null,cycleOptions:[],factorOptions:[],factorDescriptions:[]},commonIndicator:{show:!0,options:[{key:"marketCapital",label:"总市值",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]},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,16]},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,16]},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,16]},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,16]},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,16]},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,16]},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,16]},type:"custom"},{key:"pb",label:"市净率",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]},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,16]},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:"perVolumn",label:"成交量",type:"custom",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]}},{key:"roe",label:"净资产收益率roe",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]},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,16]},type:"custom"},{key:"dividendYield",label:"股息率",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]},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,16]},type:"custom"},{key:"peTtmLevels",label:"市盈率分位",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]},type:"custom"},{key:"mainFlow",label:"主力净流入资金",type:"custom",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]}},{key:"incrementRevenueLyr",label:"营业收入增长率",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]},defaultUnit:["%","%"],unitOptions:["%"]},{key:"netProfitGrowthRatioLyr",label:"净利润增长率",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]},defaultUnit:["%","%"],unitOptions:["%"]},{key:"fiveYearRoe",label:"5年净资产收益率",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]},defaultUnit:["%","%"],unitOptions:["%"]},{key:"auditOpinionType",label:"年报审计意见",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]},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 Re=(v,N,b)=>{!N[0]&&N[0]!==0&&!N[1]&&N[1]!==0?b(new Error("至少填写一个分数")):b()},se=v=>{const N=/(条件(\d+))/g;return v.match(N)||[]},Ue={__name:"FactorDescription",props:e.mergeModels({data:{type:Array,default:[]}},{visible:{default:!1},visibleModifiers:{}}),emits:["update:visible"],setup(v){const N=e.useModel(v,"visible");return(b,u)=>{const k=H.ElTableColumn,B=H.ElTable,C=te.ElDialog;return e.openBlock(),e.createBlock(C,{modelValue:N.value,"onUpdate:modelValue":u[0]||(u[0]=x=>N.value=x),title:"因子使用说明",width:"1000","align-center":"","destroy-on-close":""},{default:e.withCtx(()=>[e.createVNode(B,{data:v.data,border:"",height:"500"},{default:e.withCtx(()=>[e.createVNode(k,{prop:"factorName",label:"因子名称",width:"200"}),e.createVNode(k,{prop:"factorDesc",label:"因子说明"}),e.createVNode(k,{prop:"factorScoreDefine",label:"分值定义"})]),_:1},8,["data"])]),_:1},8,["modelValue"])}}};const Fe={class:"variety-auto-complete"},Le={key:0},De={class:"label"},ze={__name:"VarietySelect",props:{size:{type:String,default:"default"},placeholder:{type:String,default:"请输入品种名称或代码"},labelShowEnable:{type:Boolean,default:!0},selectClearEnable:{type:Boolean,default:!0}},emits:["select","change"],setup(v,{emit:N}){const b=e.inject("stConfig"),u=N,k=v,B=e.ref(""),C=async(t,$)=>{if(t===""||t==="null")$([]);else{const d={keyWord:t,pageNum:1,pageSize:999,userId:_e.V("id"),hotSearchFlag:1},{body:r}=await b.request.post("/common/qt/getFeatureInfosByPage",d),I=r.list.map(({code:E,featureName:w})=>({label:`${E} ${w}`,value:E}));$(I)}},x=({label:t,value:$})=>{const d=t.split(" ").at(-1);u("select",{name:d,code:$}),k.selectClearEnable&&(B.value="")},f=t=>{u("change",t)};return(t,$)=>{const d=X.ElAutocomplete;return e.openBlock(),e.createElementBlock("div",Fe,[v.labelShowEnable?(e.openBlock(),e.createElementBlock("span",Le,"品种搜索:")):e.createCommentVNode("",!0),e.createVNode(d,{modelValue:B.value,"onUpdate:modelValue":$[0]||($[0]=r=>B.value=r),clearable:"",size:k.size,placeholder:k.placeholder,"fetch-suggestions":C,onSelect:x,onChange:f},{default:e.withCtx(({item:r})=>[e.createElementVNode("div",De,e.toDisplayString(r.label),1)]),_:1},8,["modelValue","size","placeholder"])])}}},je=J._export_sfc(ze,[["__scopeId","data-v-32166a24"]]);const Pe=v=>(e.pushScopeId("data-v-4089bd1f"),v=v(),e.popScopeId(),v),Ge={class:"custom-header"},Ae={class:"left"},Ye=Pe(()=>e.createElementVNode("span",null," 选择变量 ",-1)),Je={class:"right"},Ke={class:"custom-body"},Qe={class:"config-list"},He={class:"config-item"},Ze={key:0},We={key:0},Xe={key:0},et={__name:"ScriptSelect",setup(v,{expose:N}){const b=e.inject("stConfig"),u=e.ref(null),k=e.ref((window.innerHeight-542)/2-220>0?(window.innerHeight-542)/2-220:0),B=e.ref((window.innerWidth-1e3)/2>0?(window.innerWidth-1e3)/2:0),C=e.ref(null),x=e.ref(!1),f=e.ref(0),t=e.ref(null),$=e.ref([]),d=e.computed(()=>{var E;return((E=$.value.find(w=>w.varName===t.value))==null?void 0:E.formatList)??[]}),r=E=>E.replace(/^\[|\]$/g,"").split("],[").map(g=>{const l=g.replace(/\[|\]/g,""),[p,c]=l.split(",");return{label:p.trim(),value:c.trim()}}),I=E=>{const w=[];for(let n=0;n<E.length;n++){const i=E[n];switch(console.log(i),i.vtype){case"text":{w.push(i.param);break}default:{if(!i.modelValue)return U.ElMessage.error("请检查插入格式内是否填写完整");w.push(i.suffix?`${i.modelValue}${i.suffix}`:`${i.modelValue}`);break}}}const S=w.join("_"),g=C.value.getInstance(),l=g.getPosition(),c=C.value.getValue().split(`
|
|
2
|
-
`);if(l.lineNumber<=c.length){const n=l.lineNumber-1,i=c[n],a=i.substring(0,l.column-1)+S+i.substring(l.column-1);c[n]=a;const y=c.join(`
|
|
3
|
-
`);C.value.setValue(y);const o=l.column+S.length;g.setPosition({lineNumber:l.lineNumber,column:o}),g.focus()}};return e.onMounted(async()=>{const{body:E}=await b.request.post("/common/conf/queryAllBackVariables",{useCase:"1"});$.value=E}),N({open:(E,w)=>{C.value=E,f.value=w,x.value=!0;const S=document.querySelector("body");X.interact(u.value).draggable({allowFrom:".custom-header",modifiers:[X.interact.modifiers.restrictRect({restriction:S,endOnly:!1})],listeners:{move(g){B.value-=g.dx,k.value+=g.dy}}})},close:()=>{x.value=!1}}),(E,w)=>{const S=j.ElOption,g=j.ElSelect,l=D.ElIcon,p=le.ElInput,c=ne.ElButton,n=ee.ElTooltip;return e.withDirectives((e.openBlock(),e.createElementBlock("div",{class:"var-select-dialog",ref_key:"dialogRef",ref:u,style:e.normalizeStyle({right:`${B.value}px`,top:`${k.value}px`,zIndex:f.value})},[e.createElementVNode("div",Ge,[e.createElementVNode("div",Ae,[Ye,e.createVNode(g,{modelValue:t.value,"onUpdate:modelValue":w[0]||(w[0]=i=>t.value=i),placeholder:"选择变量",filterable:"",clearable:""},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList($.value,(i,a)=>(e.openBlock(),e.createBlock(S,{key:a,label:i.varName,value:i.varName},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),e.createElementVNode("div",Je,[e.createVNode(l,{class:"el-icon--left",onClick:w[1]||(w[1]=i=>x.value=!1)},{default:e.withCtx(()=>[e.createVNode(e.unref(D.close_default))]),_:1})])]),e.createElementVNode("div",Ke,[d.value.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(d.value,(i,a)=>(e.openBlock(),e.createElementBlock("div",{class:"format-item",key:a},[e.createElementVNode("span",null,"格式"+e.toDisplayString(a+1)+":",1),e.createElementVNode("div",Qe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.configList,(y,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",He,[y.vtype==="text"?(e.openBlock(),e.createElementBlock("span",Ze,e.toDisplayString(y.param),1)):e.createCommentVNode("",!0),y.vtype==="inputVariety"?(e.openBlock(),e.createBlock(je,{key:1,size:"small",placeholder:y.param,selectClearEnable:!1,labelShowEnable:!1,onSelect:({name:_,code:m})=>y.modelValue=m,onChange:_=>y.modelValue=_,style:{width:"100px"}},null,8,["placeholder","onSelect","onChange"])):e.createCommentVNode("",!0),y.vtype==="input"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[e.createVNode(p,{modelValue:y.modelValue,"onUpdate:modelValue":_=>y.modelValue=_,placeholder:y.param,size:"small"},null,8,["modelValue","onUpdate:modelValue","placeholder"]),y.suffix?(e.openBlock(),e.createElementBlock("span",We,e.toDisplayString(y.suffix),1)):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),y.vtype==="select"?(e.openBlock(),e.createBlock(g,{key:3,modelValue:y.modelValue,"onUpdate:modelValue":_=>y.modelValue=_,placeholder:y.param,clearable:"",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r(y.optionsStr),_=>(e.openBlock(),e.createBlock(S,{key:_.value,label:_.label,value:_.value},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue","placeholder"])):e.createCommentVNode("",!0)]),o!==i.configList.length-1?(e.openBlock(),e.createElementBlock("span",Xe,"_")):e.createCommentVNode("",!0)],64))),256))]),e.createVNode(c,{type:"primary",plain:"",size:"small",onClick:y=>I(i.configList)},{default:e.withCtx(()=>[e.createTextVNode(" 插入变量 ")]),_:2},1032,["onClick"]),e.createVNode(n,{effect:"dark",content:i.tip,placement:"top-start"},{default:e.withCtx(()=>[e.createVNode(l,null,{default:e.withCtx(()=>[e.createVNode(e.unref(D.info_filled_default))]),_:1})]),_:2},1032,["content"])]))),128)):e.createCommentVNode("",!0)])],4)),[[e.vShow,x.value]])}}},tt=J._export_sfc(et,[["__scopeId","data-v-4089bd1f"]]);const ge=v=>(e.pushScopeId("data-v-4af31cc3"),v=v(),e.popScopeId(),v),lt={class:"factor-screen"},nt={style:{"white-space":"pre-line"}},at={class:"custom-header"},ot=["id"],rt={key:0,style:{flex:"1","text-align":"right"}},ut={class:"form-row"},st={class:"index"},it={style:{display:"flex","align-items":"center",width:"100%",height:"24px"}},ct=ge(()=>e.createElementVNode("span",null,"~",-1)),dt=ge(()=>e.createElementVNode("span",null,"&&代表and,||代表or",-1)),pt={class:"dialog-footer"},mt={__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(v){const N=v,b=e.useModel(v,"data"),u=e.ref(),k=e.ref(),B=e.ref(!1),C=e.ref(!1),x=e.ref("模版"),f=e.ref(null),t=e.ref({list:[{cycle:N.config.cycleDefault??null,factor:null,score:[null,null]}],sqlEnable:0,sqlValue:null,factorSelectExpr:""});e.watch(()=>[x.value,B.value],()=>{(x.value==="模版"||B.value===!1)&&k.value.close()},{deep:!0});const $=()=>{const{list:l,sqlEnable:p,sqlValue:c,factorSelectExpr:n}=b.value;t.value={list:JSON.parse(JSON.stringify(l)),sqlEnable:p,sqlValue:c,factorSelectExpr:n},t.value.list.length||I(),B.value=!0,e.nextTick(()=>{n?(x.value="脚本",u.value.setValue(n)):x.value="模版",u.value.resize()})},d=()=>{if(x.value==="模版")f.value.validate(l=>{const{list:p,sqlEnable:c,sqlValue:n}=t.value;if(l){if(c){if(!n)return U.ElMessage.error("SQL语句不能为空");const i=se(n),a=p.map((o,_)=>`条件${_+1}`),y=i.filter(o=>!a.includes(o));if(y.length)return U.ElMessage.error(`请检查SQL语句, 不存在[${y}]`)}b.value={list:JSON.parse(JSON.stringify(p)),sqlEnable:c,sqlValue:n,factorSelectExpr:""},B.value=!1}});else{const l=u.value.getValue();if(!l)return U.ElMessage.error("请输入脚本语句");b.value={list:[],sqlEnable:0,sqlValue:null,factorSelectExpr:l},B.value=!1}},r=l=>{t.value.list.splice(l,1)},I=l=>{switch(l){case"compare":{t.value.list.push({key:"compare",cycle:N.config.cycleDefault??null,factor:null,compareType:">",cycle2:N.config.cycleDefault??null,factor2:null});break}default:{t.value.list.push({cycle:N.config.cycleDefault??null,factor:null,score:[null,null]});break}}},E=()=>{f.value.validate(l=>{if(l)if(t.value.sqlValue){const p=se(t.value.sqlValue);t.value.sqlValue=t.value.list.reduce((c,n,i)=>(p.includes(`条件${i+1}`)||(c+=`&& 条件${i+1} `),c),t.value.sqlValue)}else t.value.sqlValue=t.value.list.reduce((p,c,n)=>(n===0?p+=`条件${n+1} `:p+=`&& 条件${n+1} `,p),"")})},w=l=>{switch(l.key){case"compare":{const{cycle:p,factor:c,compareType:n,cycle2:i,factor2:a}=l;let y="";return y+=` ${N.config.cycleOptions.find(({value:o})=>o===p).label}`,y+=` ${N.config.factorOptions.find(({value:o})=>o===c).label}`,y+=` ${n}`,y+=` ${N.config.cycleOptions.find(({value:o})=>o===i).label}`,y+=` ${N.config.factorOptions.find(({value:o})=>o===a).label}`,y}default:{const{cycle:p,factor:c,score:n}=l;let i="";return i+=` ${N.config.cycleOptions.find(({value:a})=>a===p).label}`,i+=` ${N.config.factorOptions.find(({value:a})=>a===c).label}`,i+=` ${n[0]||n[0]===0?`${n[0]}分`:"∞"}`,i+=" ~",i+=` ${n[1]||n[1]===0?`${n[1]}分`:"∞"}`,i}}},S=(l,p)=>{switch(l){case"sqlTag":{b.value={list:[],sqlEnable:0,sqlValue:null};break}case"factorTag":{b.value.list.splice(p,1);break}case"scriptTag":{b.value={list:[],sqlEnable:0,sqlValue:null,factorSelectExpr:""};break}}},g=()=>{var p,c,n;const l=(n=(c=(p=document.getElementsByClassName("factor-dialog"))==null?void 0:p[0])==null?void 0:c.style)==null?void 0:n.zIndex;console.log(l),k.value.open(u.value,l)};return(l,p)=>{var R;const c=Ve.ElText,n=ce.ElTag,i=xe.ElPopover,a=ne.ElButton,y=D.ElIcon,o=ee.ElTooltip,_=ye,m=oe,T=j.ElOption,O=j.ElSelect,s=re.ElFormItem,L=ie.ElInputNumber,A=ae,K=le.ElInput,Q=re.ElForm,Y=te.ElDialog;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",lt,[e.createElementVNode("div",null,[b.value.sqlEnable&&b.value.sqlValue?(e.openBlock(),e.createBlock(n,{key:0,closable:"",type:"info",title:b.value.sqlValue,onClose:p[0]||(p[0]=V=>S("sqlTag"))},{default:e.withCtx(()=>[e.createVNode(c,{type:"info",truncated:"",style:{"max-width":"500px"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(b.value.sqlValue),1)]),_:1})]),_:1},8,["title"])):e.createCommentVNode("",!0),!b.value.sqlEnable&&b.value.list.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(b.value.list,(V,F)=>(e.openBlock(),e.createBlock(n,{closable:"",type:"info",onClose:h=>S("factorTag",F)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(w(V)),1)]),_:2},1032,["onClose"]))),256)):e.createCommentVNode("",!0),b.value.factorSelectExpr?(e.openBlock(),e.createBlock(i,{key:2,width:"500",placement:"bottom-start"},{reference:e.withCtx(()=>[e.createVNode(n,{closable:"",type:"info",onClose:p[1]||(p[1]=V=>S("scriptTag"))},{default:e.withCtx(()=>[e.createTextVNode(" 脚本模式 ")]),_:1})]),default:e.withCtx(()=>[e.createElementVNode("div",nt,e.toDisplayString(b.value.factorSelectExpr),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(a,{class:"screen-btn",type:"primary",plain:"",size:"small",icon:e.unref(D.plus_default),onClick:$},{default:e.withCtx(()=>[e.createTextVNode(" 添加因子 ")]),_:1},8,["icon"])]),e.createVNode(Y,{"modal-class":"factor-dialog",modelValue:B.value,"onUpdate:modelValue":p[7]||(p[7]=V=>B.value=V),width:"1000","align-center":"","destroy-on-close":""},{header:e.withCtx(({titleId:V,titleClass:F})=>[e.createElementVNode("div",at,[e.createElementVNode("span",{id:V,class:e.normalizeClass(F)}," 因子筛选 ",10,ot),e.createVNode(o,{effect:"dark",content:"点击查看: 因子使用说明",placement:"right"},{default:e.withCtx(()=>[e.createVNode(y,{onClick:p[2]||(p[2]=h=>C.value=!0)},{default:e.withCtx(()=>[e.createVNode(e.unref(D.info_filled_default))]),_:1})]),_:1}),e.createVNode(m,{modelValue:x.value,"onUpdate:modelValue":p[3]||(p[3]=h=>x.value=h),size:"small",style:{"margin-left":"12px"}},{default:e.withCtx(()=>[e.createVNode(_,{label:"模版",value:"模版"}),e.createVNode(_,{label:"脚本",value:"脚本"})]),_:1},8,["modelValue"]),x.value==="脚本"?(e.openBlock(),e.createElementBlock("div",rt,[e.createVNode(a,{size:"small",type:"primary",onClick:g},{default:e.withCtx(()=>[e.createTextVNode("变量选择器")]),_:1})])):e.createCommentVNode("",!0)])]),footer:e.withCtx(()=>[e.createElementVNode("div",pt,[e.createVNode(a,{type:"primary",onClick:d},{default:e.withCtx(()=>[e.createTextVNode("确定")]),_:1})])]),default:e.withCtx(()=>[x.value==="模版"?(e.openBlock(),e.createBlock(Q,{key:0,ref_key:"dialogFormRef",ref:f,model:t.value},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value.list,(V,F)=>(e.openBlock(),e.createElementBlock("div",ut,[e.createElementVNode("span",st,e.toDisplayString(`条件${F+1}`),1),V.key==="compare"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[v.config.cycleShow?(e.openBlock(),e.createBlock(s,{key:0,prop:"list."+F+".cycle",rules:{required:!0,message:"周期不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(O,{modelValue:V.cycle,"onUpdate:modelValue":h=>V.cycle=h,placeholder:"选择周期",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(v.config.cycleOptions,({label:h,value:M})=>(e.openBlock(),e.createBlock(T,{label:h,value:M,key:M},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])):e.createCommentVNode("",!0),e.createVNode(s,{prop:"list."+F+".factor",rules:{required:!0,message:"因子不能为空",trigger:"blur"},style:{width:"132px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(O,{modelValue:V.factor,"onUpdate:modelValue":h=>V.factor=h,placeholder:"选择因子",filterable:"",size:"small","no-match-text":"无匹配数据"},{default:e.withCtx(()=>{var h;return[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((h=v.config.factorOptions)==null?void 0:h.filter(M=>[4].includes(M.type)),({label:M,value:z})=>(e.openBlock(),e.createBlock(T,{label:M,value:z,key:z},null,8,["label","value"]))),128))]}),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"]),e.createVNode(s,{style:{width:"52px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(O,{modelValue:V.compareType,"onUpdate:modelValue":h=>V.compareType=h,size:"small"},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([">",">=","<","<="],h=>e.createVNode(T,{label:h,value:h,key:h},null,8,["label","value"])),64))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1024),v.config.cycleShow?(e.openBlock(),e.createBlock(s,{key:1,prop:"list."+F+".cycle2",rules:{required:!0,message:"周期不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(O,{modelValue:V.cycle2,"onUpdate:modelValue":h=>V.cycle2=h,placeholder:"选择周期",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(v.config.cycleOptions,({label:h,value:M})=>(e.openBlock(),e.createBlock(T,{label:h,value:M,key:M},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])):e.createCommentVNode("",!0),e.createVNode(s,{prop:"list."+F+".factor2",rules:{required:!0,message:"因子不能为空",trigger:"blur"},style:{width:"132px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(O,{modelValue:V.factor2,"onUpdate:modelValue":h=>V.factor2=h,placeholder:"选择因子",filterable:"",size:"small","no-match-text":"无匹配数据"},{default:e.withCtx(()=>{var h;return[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((h=v.config.factorOptions)==null?void 0:h.filter(M=>[4].includes(M.type)),({label:M,value:z})=>(e.openBlock(),e.createBlock(T,{label:M,value:z,key:z},null,8,["label","value"]))),128))]}),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[v.config.cycleShow?(e.openBlock(),e.createBlock(s,{key:0,prop:"list."+F+".cycle",rules:{required:!0,message:"周期不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(O,{modelValue:V.cycle,"onUpdate:modelValue":h=>V.cycle=h,placeholder:"选择周期",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(v.config.cycleOptions,({label:h,value:M})=>(e.openBlock(),e.createBlock(T,{label:h,value:M,key:M},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])):e.createCommentVNode("",!0),e.createVNode(s,{prop:"list."+F+".factor",rules:{required:!0,message:"因子不能为空",trigger:"blur"},style:{width:"194px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(O,{modelValue:V.factor,"onUpdate:modelValue":h=>V.factor=h,placeholder:"选择因子",filterable:"",size:"small","no-match-text":"无匹配数据"},{default:e.withCtx(()=>{var h;return[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((h=v.config.factorOptions)==null?void 0:h.filter(M=>[1,3].includes(M.type)),({label:M,value:z})=>(e.openBlock(),e.createBlock(T,{label:M,value:z,key:z},null,8,["label","value"]))),128))]}),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"]),e.createVNode(s,{prop:"list."+F+".score",rules:{validator:e.unref(Re),trigger:"blur"},style:{width:"200px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createElementVNode("div",it,[e.createVNode(L,{modelValue:V.score[0],"onUpdate:modelValue":h=>V.score[0]=h,size:"small","controls-position":"right"},null,8,["modelValue","onUpdate:modelValue"]),ct,e.createVNode(L,{modelValue:V.score[1],"onUpdate:modelValue":h=>V.score[1]=h,size:"small","controls-position":"right"},null,8,["modelValue","onUpdate:modelValue"])])]),_:2},1032,["prop","rules"])],64)),e.createVNode(y,{onClick:h=>r(F)},{default:e.withCtx(()=>[e.createVNode(e.unref(D.circle_close_filled_default))]),_:2},1032,["onClick"])]))),256)),e.createVNode(a,{type:"primary",plain:"",size:"small",icon:e.unref(D.plus_default),onClick:I,style:{"margin-bottom":"10px"}},{default:e.withCtx(()=>[e.createTextVNode("添加因子")]),_:1},8,["icon"]),e.createVNode(a,{type:"primary",plain:"",size:"small",icon:e.unref(D.plus_default),onClick:p[4]||(p[4]=V=>I("compare")),style:{"margin-bottom":"10px"}},{default:e.withCtx(()=>[e.createTextVNode("添加因子对比")]),_:1},8,["icon"]),v.config.sqlShow?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(s,{label:"SQL功能: "},{default:e.withCtx(()=>[e.createVNode(m,{modelValue:t.value.sqlEnable,"onUpdate:modelValue":p[5]||(p[5]=V=>t.value.sqlEnable=V)},{default:e.withCtx(()=>[e.createVNode(A,{label:"关闭",value:0}),e.createVNode(A,{label:"启用",value:1})]),_:1},8,["modelValue"]),t.value.sqlEnable?(e.openBlock(),e.createBlock(a,{key:0,type:"primary",size:"small",onClick:E,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(K,{modelValue:t.value.sqlValue,"onUpdate:modelValue":p[6]||(p[6]=V=>t.value.sqlValue=V),autosize:{minRows:4},type:"textarea",style:{"margin-bottom":"10px"}},null,8,["modelValue"]),dt],64)):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)]),_:1},8,["model"])):e.createCommentVNode("",!0),e.createElementVNode("div",{style:e.normalizeStyle([{width:"968px",height:"400px"},x.value==="脚本"?null:{position:"fixed",top:"-400px",zIndex:-1}])},[e.createVNode(be._sfc_main,{ref_key:"monacoEditorRef",ref:u,language:"lua"},null,512)],4)]),_:1},8,["modelValue"])]),e.createVNode(Ue,{visible:C.value,"onUpdate:visible":p[8]||(p[8]=V=>C.value=V),data:(R=v.config.factorDescriptions)==null?void 0:R.filter(V=>[1,3].includes(V.type))},null,8,["visible","data"]),e.createVNode(tt,{ref_key:"scriptSelectRef",ref:k},null,512)],64)}}},vt=J._export_sfc(mt,[["__scopeId","data-v-4af31cc3"]]);const W=v=>(e.pushScopeId("data-v-3e69da40"),v=v(),e.popScopeId(),v),ft={key:0,class:"common-indicator"},kt={class:"indicator"},yt=W(()=>e.createElementVNode("div",{class:"title"},[e.createElementVNode("span",null,"常用指标: "),e.createElementVNode("span",null,"不限")],-1)),gt={class:"options"},Vt=["onClick"],_t={class:"tags"},bt=["onClick"],xt={style:{"font-size":"18px"}},ht={key:0,class:"out-box"},Nt=W(()=>e.createElementVNode("span",null,"自定义: ",-1)),Et={key:0,class:"convenient-option-box"},wt={class:"out-box"},Ct=W(()=>e.createElementVNode("span",null,"自定义: ",-1)),Bt={key:0},$t={key:0},It={key:0},Tt={key:1},Ot={class:"tFeaturelncomes-option-box"},St={class:"tFeaturelncomes-out-box"},qt=W(()=>e.createElementVNode("span",null,"自定义: ",-1)),Mt={key:2},Rt={key:3},Ut={key:4},Ft={key:5},Lt={key:6},Dt={style:{display:"flex","align-items":"center"}},zt={key:7},jt={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(v){const N=[{label:"近2周",value:"1"},{label:"近1个月",value:"2"},{label:"近3个月",value:"3"},{label:"近6个月",value:"4"},{label:"近1年",value:"5"}],b=[{label:"无保留意见",value:1},{label:"保留意见",value:2},{label:"否定意见",value:3},{label:"无法表示意见",value:4}],u=e.useModel(v,"data"),k=v,B=e.ref(!1),C=e.computed(()=>{var g;return(g=k.data.find(l=>l.radioType==="1"))==null?void 0:g.key}),x=e.computed(()=>{let g=[];return k.varietyMarket===null&&!k.commonOption.length?g=k.config.options:(g=k.config.options,k.varietyMarket&&(g=g.filter(({parent:l})=>l.varietyMarketIds.includes(k.varietyMarket))),k.commonOption.length&&(g=g.filter(({parent:l})=>{const{commonOptionIds:p}=l;return[...new Set([...p,...k.commonOption])].length!==[...p,...k.commonOption].length}))),g}),f=e.ref({}),t=e.ref({}),$=g=>{f.value=g;const l={key:g.key,type:g.type,label:g.label};switch(g.key){case"st":{t.value={...l,st:null};break}case"tFeaturelncomes":{t.value={...l,rule:1,withFewYears:null,yearsCount:null,netProfit:null};break}case"priceLevels":{t.value={...l,priceLevels:null};break}case"peTtmLevels":{t.value={...l,peTtmLevels:null};break}case"optionsCpType":{t.value={...l,optionsCpType:null};break}case"perVolumn":{t.value={...l,radio:null,levels:[]};break}case"mainFlow":{t.value={...l,radioType:"0",rankRange:[null,null]};break}case"auditOpinionType":{t.value={...l,enumType:null};break}default:t.value={...l,range:[null,null],unit:g.defaultUnit.length?[...g.defaultUnit]:[null,null],radioType:C.value&&C.value!==g.key?"0":g.defaultRadioType,rankRange:g.defaultRankRange||[null,null]}}B.value=!0},d=()=>{var l,p;switch(t.value.key){case"st":{const{label:c,st:n}=t.value;if(n===null)return U.ElMessage.warning("格式错误: 请至少选择一个值");t.value.tagText=`${c}: ${n?"是":"否"}`;break}case"tFeaturelncomes":{const{label:c,rule:n,withFewYears:i,yearsCount:a,netProfit:y}=t.value;if(["",null].includes(i)||["",null].includes(a)||["",null].includes(y))return U.ElMessage.warning("格式错误: 请填写完整");t.value.tagText=`${c}: ${i}年内${a}年以上盈利${n===1?"超":"跌"}过${y}亿`;break}case"priceLevels":{const{label:c,priceLevels:n}=t.value;if(!n||n.length===0)return U.ElMessage.warning("格式错误: 请至少选择一个值");t.value.tagText=`${c}: 已选${n}分位`;break}case"peTtmLevels":{const{label:c,peTtmLevels:n}=t.value;if(!n||n.length===0)return U.ElMessage.warning("格式错误: 请至少选择一个值");t.value.tagText=`${c}: 已选${n}分位`;break}case"optionsCpType":{const{label:c,optionsCpType:n}=t.value;if(n===null)return U.ElMessage.warning("格式错误: 请至少选择一个值");t.value.tagText=`${c}: ${n===1?"看涨":"看跌"}`;break}case"perVolumn":{const{label:c,radio:n,levels:i}=t.value;if(!n)return U.ElMessage.warning("格式错误: 请选择时间");if(!(i!=null&&i.length))return U.ElMessage.warning("格式错误: 请选择分位");t.value.tagText=`${c}: ${(l=N.find(a=>a.value===n))==null?void 0:l.label}${i.map(a=>`${a}分位`).join("、")}`;break}case"mainFlow":{const{label:c,radioType:n,radio:i,rankRange:a}=t.value,y=o=>{if(o===""||o===null||o===void 0)return!1;const _=Number(o);return!isNaN(_)};if(!i)return U.ElMessage.warning("格式错误: 请选择时间");if(!y(a[0])&&!y(a[1]))return U.ElMessage.warning(`格式错误: 请填写${n==="0"?"涨幅范围":"排名范围"}`);!["",null].includes(a[0])&&!["",null].includes(a[1])?t.value.tagText=`${c}: ${i}日${n==="0"?"涨幅范围":"排名范围"}: ${a[0]}${n==="0"?"%":""} ~ ${a[1]}${n==="0"?"%":""}`:["",null].includes(a[0])?t.value.tagText=`${c}: ${i}日${n==="0"?"涨幅范围":"排名范围"}: ≤${a[1]}${n==="0"?"%":""}`:t.value.tagText=`${c}: ${i}日${n==="0"?"涨幅范围":"排名范围"}: ≥${a[0]}${n==="0"?"%":""}`;break}case"auditOpinionType":{const{label:c,enumType:n}=t.value;if(n===null)return U.ElMessage.warning("格式错误: 请至少选择一个值");t.value.tagText=`${c}: ${(p=b.find(i=>i.value===n))==null?void 0:p.label}`;break}default:{const{label:c,unit:n,radioType:i}=t.value,a=i==="1"?t.value.rankRange:t.value.range;if(["",null].includes(a[0])&&["",null].includes(a[1]))return U.ElMessage.warning("格式错误: 请至少填写一个值");if(i==="1"){const _=Number(a[0]),m=Number(a[1]);if(isNaN(_)||isNaN(m))return U.ElMessage.warning("格式错误: 请填写数字");if(_<0||m<0)return U.ElMessage.warning("格式错误: 请填写大于0的数字");if(_>m)return U.ElMessage.warning("格式错误: 请填写正确的排名范围")}const y=i==="1"?"":n[0]??"",o=i==="1"?"":n[1]??"";!["",null].includes(a[0])&&!["",null].includes(a[1])?t.value.tagText=`${c}${i==="1"?"排名":""}: ${a[0]}${y} ~ ${a[1]}${o}`:["",null].includes(a[0])?t.value.tagText=`${c}${i==="1"?"排名":""}: ≤${a[1]}${o}`:t.value.tagText=`${c}${i==="1"?"排名":""}: ≥${a[0]}${y}`}}const g=u.value.findIndex(({key:c})=>c===t.value.key);g===-1?u.value.push(t.value):u.value.splice(g,1,t.value),B.value=!1},r=g=>{f.value=x.value.find(({key:l})=>l===g.key),t.value=JSON.parse(JSON.stringify(g)),B.value=!0},I=g=>{u.value.splice(g,1)},E=g=>{t.value.range=[...g.range],t.value.unit=[...g.unit]},w=g=>{switch(g){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}};e.watch(()=>x.value,()=>{u.value.length&&(u.value=u.value.filter(({key:g})=>x.value.find(l=>l.key===g)))});const S=()=>{t.value.radio=null,t.value.rankRange=[null,null]};return(g,l)=>{const p=ce.ElTag,c=ye,n=oe,i=le.ElInput,a=ne.ElButton,y=j.ElOption,o=j.ElSelect,_=ae,m=ie.ElInputNumber,T=te.ElDialog;return v.config.show&&x.value.length?(e.openBlock(),e.createElementBlock("div",ft,[e.createElementVNode("div",kt,[yt,e.createElementVNode("div",gt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(x.value,O=>(e.openBlock(),e.createElementBlock("span",{key:O.key,onClick:s=>$(O)},e.toDisplayString(O.label),9,Vt))),128))])]),e.createElementVNode("div",_t,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,(O,s)=>(e.openBlock(),e.createBlock(p,{closable:"",type:"info",onClose:L=>I(s)},{default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(O.tagText),1),e.createElementVNode("span",{class:"edit",onClick:L=>r(O)},"编辑",8,bt)]),_:2},1032,["onClose"]))),256))]),e.createVNode(T,{modelValue:B.value,"onUpdate:modelValue":l[26]||(l[26]=O=>B.value=O),title:f.value.label,width:"600","align-center":"","destroy-on-close":""},e.createSlots({footer:e.withCtx(()=>[e.createElementVNode("div",jt,[e.createVNode(a,{type:"primary",onClick:d},{default:e.withCtx(()=>[e.createTextVNode("确定")]),_:1})])]),default:e.withCtx(()=>{var O;return[f.value.type===void 0&&t.value.radioType==="1"?(e.openBlock(),e.createElementBlock("div",ht,[Nt,e.createVNode(i,{modelValue:t.value.rankRange[0],"onUpdate:modelValue":l[2]||(l[2]=s=>t.value.rankRange[0]=s),style:{flex:"1"}},null,8,["modelValue"]),e.createTextVNode(" ~ "),e.createVNode(i,{modelValue:t.value.rankRange[1],"onUpdate:modelValue":l[3]||(l[3]=s=>t.value.rankRange[1]=s),style:{flex:"1"}},null,8,["modelValue"])])):f.value.type===void 0?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[(O=f.value.convenientOptions)!=null&&O.length?(e.openBlock(),e.createElementBlock("div",Et,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value.convenientOptions,s=>(e.openBlock(),e.createBlock(a,{key:s.text,onClick:L=>E(s)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.text),1)]),_:2},1032,["onClick"]))),128))])):e.createCommentVNode("",!0),e.createElementVNode("div",wt,[Ct,e.createVNode(i,{modelValue:t.value.range[0],"onUpdate:modelValue":l[5]||(l[5]=s=>t.value.range[0]=s),style:{flex:"1"}},e.createSlots({_:2},[f.value.unitOptions.length?{name:"append",fn:e.withCtx(()=>[f.value.unitOptions.length===1?(e.openBlock(),e.createElementBlock("span",Bt,e.toDisplayString(t.value.unit[0]),1)):(e.openBlock(),e.createBlock(o,{key:1,modelValue:t.value.unit[0],"onUpdate:modelValue":l[4]||(l[4]=s=>t.value.unit[0]=s),style:{width:"72px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value.unitOptions,s=>(e.openBlock(),e.createBlock(y,{label:s,value:s},null,8,["label","value"]))),256))]),_:1},8,["modelValue"]))]),key:"0"}:void 0]),1032,["modelValue"]),e.createTextVNode(" ~ "),e.createVNode(i,{modelValue:t.value.range[1],"onUpdate:modelValue":l[7]||(l[7]=s=>t.value.range[1]=s),style:{flex:"1"}},e.createSlots({_:2},[f.value.unitOptions.length?{name:"append",fn:e.withCtx(()=>[f.value.unitOptions.length===1?(e.openBlock(),e.createElementBlock("span",$t,e.toDisplayString(t.value.unit[1]),1)):(e.openBlock(),e.createBlock(o,{key:1,modelValue:t.value.unit[1],"onUpdate:modelValue":l[6]||(l[6]=s=>t.value.unit[1]=s),style:{width:"72px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value.unitOptions,s=>(e.openBlock(),e.createBlock(y,{label:s,value:s},null,8,["label","value"]))),256))]),_:1},8,["modelValue"]))]),key:"0"}:void 0]),1032,["modelValue"])])],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[f.value.key==="st"?(e.openBlock(),e.createElementBlock("div",It,[e.createVNode(n,{modelValue:t.value.st,"onUpdate:modelValue":l[8]||(l[8]=s=>t.value.st=s)},{default:e.withCtx(()=>[e.createVNode(_,{label:"是",value:1}),e.createVNode(_,{label:"否",value:0})]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),f.value.key==="tFeaturelncomes"?(e.openBlock(),e.createElementBlock("div",Tt,[e.createElementVNode("div",Ot,[e.createVNode(a,{onClick:l[9]||(l[9]=s=>w("≤0"))},{default:e.withCtx(()=>[e.createTextVNode("≤0")]),_:1}),e.createVNode(a,{onClick:l[10]||(l[10]=s=>w("≥0"))},{default:e.withCtx(()=>[e.createTextVNode("≥0")]),_:1}),e.createVNode(a,{onClick:l[11]||(l[11]=s=>w("五年内有四年以上盈利超过5千万"))},{default:e.withCtx(()=>[e.createTextVNode("五年内有四年以上盈利超过5千万")]),_:1}),e.createVNode(a,{onClick:l[12]||(l[12]=s=>w("≥10亿"))},{default:e.withCtx(()=>[e.createTextVNode("≥10亿")]),_:1}),e.createVNode(a,{onClick:l[13]||(l[13]=s=>w("≥20亿"))},{default:e.withCtx(()=>[e.createTextVNode("≥20亿")]),_:1})]),e.createElementVNode("div",St,[qt,e.createElementVNode("div",null,[e.createVNode(m,{modelValue:t.value.withFewYears,"onUpdate:modelValue":l[14]||(l[14]=s=>t.value.withFewYears=s),"controls-position":"right"},null,8,["modelValue"]),e.createTextVNode(" 年内 "),e.createVNode(m,{modelValue:t.value.yearsCount,"onUpdate:modelValue":l[15]||(l[15]=s=>t.value.yearsCount=s),"controls-position":"right"},null,8,["modelValue"]),e.createTextVNode(" 年以上盈利"+e.toDisplayString(t.value.rule===1?"超":"跌")+"过 ",1),e.createVNode(m,{modelValue:t.value.netProfit,"onUpdate:modelValue":l[16]||(l[16]=s=>t.value.netProfit=s),"controls-position":"right"},null,8,["modelValue"]),e.createTextVNode(" 亿 ")])])])):e.createCommentVNode("",!0),f.value.key==="priceLevels"?(e.openBlock(),e.createElementBlock("div",Mt,[e.createVNode(o,{modelValue:t.value.priceLevels,"onUpdate:modelValue":l[17]||(l[17]=s=>t.value.priceLevels=s),multiple:"",clearable:"",placeholder:"请选择",style:{width:"420px"}},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([1,2,3,4,5],s=>e.createVNode(y,{key:s,label:`${s}分位`,value:s},null,8,["label","value"])),64))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),f.value.key==="peTtmLevels"?(e.openBlock(),e.createElementBlock("div",Rt,[e.createVNode(o,{modelValue:t.value.peTtmLevels,"onUpdate:modelValue":l[18]||(l[18]=s=>t.value.peTtmLevels=s),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],s=>e.createVNode(y,{key:s,label:`${s}分位`,value:s},null,8,["label","value"])),64))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),f.value.key==="optionsCpType"?(e.openBlock(),e.createElementBlock("div",Ut,[e.createVNode(n,{modelValue:t.value.optionsCpType,"onUpdate:modelValue":l[19]||(l[19]=s=>t.value.optionsCpType=s)},{default:e.withCtx(()=>[e.createVNode(_,{label:"看涨",value:1}),e.createVNode(_,{label:"看跌",value:2})]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),f.value.key==="perVolumn"?(e.openBlock(),e.createElementBlock("div",Ft,[e.createVNode(n,{modelValue:t.value.radio,"onUpdate:modelValue":l[20]||(l[20]=s=>t.value.radio=s)},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(N,s=>e.createVNode(_,{key:s.value,value:s.value},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.label),1)]),_:2},1032,["value"])),64))]),_:1},8,["modelValue"]),e.createVNode(o,{modelValue:t.value.levels,"onUpdate:modelValue":l[21]||(l[21]=s=>t.value.levels=s),multiple:"",clearable:"",placeholder:"请选择",style:{width:"420px"}},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([1,2,3,4,5],s=>e.createVNode(y,{key:s,label:`${s}分位`,value:s},null,8,["label","value"])),64))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),f.value.key==="mainFlow"?(e.openBlock(),e.createElementBlock("div",Lt,[e.createVNode(n,{modelValue:t.value.radio,"onUpdate:modelValue":l[22]||(l[22]=s=>t.value.radio=s)},{default:e.withCtx(()=>[e.createVNode(_,{value:"3"},{default:e.withCtx(()=>[e.createTextVNode("3日")]),_:1}),e.createVNode(_,{value:"5"},{default:e.withCtx(()=>[e.createTextVNode("5日")]),_:1}),e.createVNode(_,{value:"10"},{default:e.withCtx(()=>[e.createTextVNode("10日")]),_:1}),e.createVNode(_,{value:"20"},{default:e.withCtx(()=>[e.createTextVNode("20日")]),_:1})]),_:1},8,["modelValue"]),e.createElementVNode("div",Dt,[e.createElementVNode("span",null,e.toDisplayString(t.value.radioType==="0"?"涨幅范围":"排名范围")+": ",1),e.createVNode(i,{modelValue:t.value.rankRange[0],"onUpdate:modelValue":l[23]||(l[23]=s=>t.value.rankRange[0]=s),style:{flex:"1"}},null,8,["modelValue"]),e.createTextVNode(" ~ "),e.createVNode(i,{modelValue:t.value.rankRange[1],"onUpdate:modelValue":l[24]||(l[24]=s=>t.value.rankRange[1]=s),style:{flex:"1"}},null,8,["modelValue"])])])):e.createCommentVNode("",!0),f.value.key==="auditOpinionType"?(e.openBlock(),e.createElementBlock("div",zt,[e.createVNode(n,{modelValue:t.value.enumType,"onUpdate:modelValue":l[25]||(l[25]=s=>t.value.enumType=s)},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(b,(s,L)=>e.createVNode(_,{key:L,label:s.label,value:s.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0)],64))]}),_:2},[f.value.showRankType?{name:"header",fn:e.withCtx(()=>[e.createElementVNode("span",xt,e.toDisplayString(f.value.label),1),e.createVNode(n,{modelValue:t.value.radioType,"onUpdate:modelValue":l[0]||(l[0]=O=>t.value.radioType=O),style:{"vertical-align":"4px","margin-left":"12px"}},{default:e.withCtx(()=>[e.createVNode(c,{label:"数值",value:"0"}),e.createVNode(c,{disabled:C.value&&C.value!==f.value.key,label:"排名",value:"1"},null,8,["disabled"])]),_:1},8,["modelValue"])]),key:"0"}:f.value.key==="mainFlow"?{name:"header",fn:e.withCtx(()=>[e.createElementVNode("span",{style:{"font-size":"18px"}},e.toDisplayString(f.value.label),1),e.createVNode(n,{modelValue:t.value.radioType,"onUpdate:modelValue":l[1]||(l[1]=O=>t.value.radioType=O),style:{"vertical-align":"4px","margin-left":"12px"},onChange:S},{default:e.withCtx(()=>[e.createVNode(c,{label:"涨幅范围",value:"0"}),e.createVNode(c,{disabled:C.value&&C.value!==f.value.key,label:"排名范围",value:"1"},null,8,["disabled"])]),_:1},8,["modelValue"])]),key:"1"}:void 0]),1032,["modelValue","title"])])):e.createCommentVNode("",!0)}}},Gt=J._export_sfc(Pt,[["__scopeId","data-v-3e69da40"]]);const G=v=>(e.pushScopeId("data-v-efd872de"),v=v(),e.popScopeId(),v),At={class:"variety-search"},Yt={key:0,class:"variety-search-row"},Jt={class:"title"},Kt=G(()=>e.createElementVNode("span",null,"品种市场: ",-1)),Qt={key:1,class:"variety-search-row"},Ht={class:"title"},Zt=G(()=>e.createElementVNode("span",null,"常用选项: ",-1)),Wt={key:2,class:"variety-search-row"},Xt={class:"title"},el=G(()=>e.createElementVNode("span",null,"上市板块: ",-1)),tl={key:3,class:"variety-search-row"},ll={class:"title"},nl=G(()=>e.createElementVNode("span",null,"自定标签: ",-1)),al={key:4,class:"variety-search-row"},ol={class:"title"},rl=G(()=>e.createElementVNode("span",null,"价差转换: ",-1)),ul={key:5,class:"variety-search-row"},sl={class:"title"},il=G(()=>e.createElementVNode("span",null,"因子筛选: ",-1)),cl={__name:"index",props:e.mergeModels({config:{type:Object,default:{}}},{searchData:{},searchDataModifiers:{}}),emits:["update:searchData"],setup(v,{expose:N}){const b=v,u=e.useModel(v,"searchData");u.value=Object.assign(u.value,{varietyMarket:null,commonOption:[],marketIds:[],customTag:[],jcTranslate:{type:null,jcList:[]},factorScreen:{list:[],sqlEnable:0,sqlValue:null,factorSelectExpr:""},commonIndicator:[]});const k=e.computed(()=>{const d={};return Object.keys(ue).forEach(r=>{const I=ue[r],E=b.config[r]??{},w={...I,...E};d[r]=w}),d}),B=e.computed(()=>k.value.varietyMarket.options),C=e.computed(()=>{const{varietyMarket:d}=u.value;return d?B.value.find(({value:I})=>I===d).memo.reduce((I,E)=>{const w=k.value.commonOption.options.find(S=>S.value===E);return w&&I.push(w),I},[]):k.value.commonOption.options}),x=e.computed(()=>{const{varietyMarket:d}=u.value;return d?k.value.marketIds.options.filter(r=>r.varietyMarketIds.includes(d)):k.value.marketIds.options}),f=e.computed(()=>k.value.customTag.options),t=e.computed(()=>k.value.jcTranslate.jcOptions),$=d=>{switch(d){case"commonOption":{u.value[d]=[];break}case"marketIds":{u.value[d]=[];break}case"customTag":{u.value[d]=[];break}case"jcTranslate":{u.value[d]={type:null,jcList:[]};break}case"factorScreen":{u.value[d]={list:[],sqlEnable:0,sqlValue:null,factorSelectExpr:""};break}case"commonIndicator":{u.value[d]=[];break}default:{u.value[d]=null;break}}};return e.watch(()=>C.value,d=>{var r;(r=u.value.commonOption)!=null&&r.length&&(u.value.commonOption=u.value.commonOption.filter(I=>d.find(({value:E})=>E===I)))}),e.watch(()=>x.value,d=>{var r;(r=u.value.marketIds)!=null&&r.length&&(u.value.marketIds=u.value.marketIds.filter(I=>d.find(({value:E})=>E===I)))}),N({formatData:d=>{var I,E,w,S,g,l;console.log("%c[st-varietySearch]: 正在生成接口传参...","color: tomato");const r={};if(d.varietyMarket&&(r.exchangeId=String(d.varietyMarket)),(I=d.commonOption)!=null&&I.length&&(r.optionId=d.commonOption.join(",")),(E=d.marketIds)!=null&&E.length&&(r.marketIds=d.marketIds),(w=d.customTag)!=null&&w.length&&(r.tagIds=d.customTag),(S=k.value.jcTranslate)!=null&&S.show){const{jcTranslate:p}=d,{type:c,jcList:n}=p;switch(c){case 1:{r.translateType=1,r.jcType=n.join(",");break}case 2:r.translateType=2}}if((g=k.value.factorScreen)!=null&&g.show){const{factorScreen:p}=d;if((l=p==null?void 0:p.list)!=null&&l.length&&(r.tbFeatureFactorScores=p.list.map(c=>{switch(c.key){case"compare":return{freqId:c.cycle,factorId:c.factor,compareType:c.compareType,freqId2:c.cycle2,factorId2:c.factor2};default:return{freqId:c.cycle,factorId:c.factor,startScore:c.score[0],endScore:c.score[1]}}})),p.sqlEnable){const c=p.list.reduce((i,a,y)=>{var _,m;const o=`条件${y+1}`;switch(a.key){case"compare":{let T="";(_=k.value.factorScreen)!=null&&_.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}`,i.set(o,`(${T})`);break}default:{let T=`factor_id = ${a.factor} and `;(m=k.value.factorScreen)!=null&&m.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]}`),i.set(o,`(${T})`)}}return i},new Map([]));let n=p.sqlValue;for(const[i,a]of c){const y=new RegExp(i,"g");n=n.replace(y,a)}r.sql=n,r.sqlExpression=p.sqlValue}r.enableSql=p.sqlEnable===1?2:1,p.factorSelectExpr&&(r.factorSelectExpr=p.factorSelectExpr)}{const p=["expireDays","virtualRealDegree","yearProfitRate","impliedVolatility","levelMultiplier","turnover","volume","openInterest","optionsCpType","optionGear"],c=d.commonIndicator.reduce((m,T)=>{const{key:O,type:s,range:L,unit:A,radioType:K,radio:Q,rankRange:Y}=T;if(O==="mainFlow"){let[R,V]=Y,F=K==="0"?`netInfow${Q}d`:`last${Q}DayMainFlowRank`;m.push({column:F,start:R,end:V})}if(O==="auditOpinionType")m.push({column:T.key,enumType:T.enumType});else if(K==="1")r.sortBy={column:T.key,start:Y[0]||null,end:Y[1]||null};else if(["dividendYield","incrementRevenueLyr","netProfitGrowthRatioLyr","fiveYearRoe"].includes(O)){let[R,V]=L;["",null].includes(R)||(R=R/100),["",null].includes(V)||(V=V/100),m.push({column:T.key,start:R,end:V})}else if(s===void 0&&!p.includes(O)){let[R,V]=L;if(!["",null].includes(R))switch(A[0]){case"亿":R=R*1e8;break;case"千万":R=R*1e7;break;default:R=R;break}if(!["",null].includes(V))switch(A[1]){case"亿":V=V*1e8;break;case"千万":V=V*1e7;break;default:V=V;break}m.push({column:T.key,start:R,end:V})}return m},[]);c.length&&(r.query=c);const n=d.commonIndicator.find(({key:m})=>m==="st");n&&(r.st=n.st);const i=d.commonIndicator.find(({key:m})=>m==="tFeaturelncomes");i&&(r.netProfitQueryDto={...i,netProfit:i.netProfit*1e8});const a=d.commonIndicator.find(({key:m})=>m==="priceLevels");a&&(r.priceLevels=a.priceLevels);const y=d.commonIndicator.find(({key:m})=>m==="peTtmLevels");y&&(r.peTtmLevels=y.peTtmLevels);const o={};d.commonIndicator.forEach(m=>{const{key:T}=m;switch(T){case"expireDays":["",null].includes(m.range[0])||(o.minExpireDays=m.range[0]),["",null].includes(m.range[1])||(o.maxExpireDays=m.range[1]);break;case"virtualRealDegree":["",null].includes(m.range[0])||(o.minVirtualRealDegree=m.range[0]/100),["",null].includes(m.range[1])||(o.maxVirtualRealDegree=m.range[1]/100);break;case"yearProfitRate":["",null].includes(m.range[0])||(o.minYearProfitRate=m.range[0]/100),["",null].includes(m.range[1])||(o.maxYearProfitRate=m.range[1]/100);break;case"impliedVolatility":["",null].includes(m.range[0])||(o.minImpliedVolatility=m.range[0]/100),["",null].includes(m.range[1])||(o.maxImpliedVolatility=m.range[1]/100);break;case"levelMultiplier":["",null].includes(m.range[0])||(o.minLevelMultiplier=m.range[0]),["",null].includes(m.range[1])||(o.maxLevelMultiplier=m.range[1]);break;case"turnover":["",null].includes(m.range[0])||(o.minTurnover=m.range[0]*1e4),["",null].includes(m.range[1])||(o.maxTurnover=m.range[1]*1e4);break;case"volume":["",null].includes(m.range[0])||(o.minVolume=m.range[0]),["",null].includes(m.range[1])||(o.maxVolume=m.range[1]);break;case"openInterest":["",null].includes(m.range[0])||(o.minOpenInterest=m.range[0]),["",null].includes(m.range[1])||(o.maxOpenInterest=m.range[1]);break;case"optionsCpType":o.optionsCpType=m.optionsCpType;break;case"optionGear":["",null].includes(m.range[0])||(o.minOptionGear=m.range[0]),["",null].includes(m.range[1])||(o.maxOptionGear=m.range[1]);break}});const _=d.commonIndicator.find(({key:m})=>m==="perVolumn");_&&(r.perVolumn={type:_.radio,value:_.levels}),Object.keys(o).length&&(r.searchOptionDto={...r.searchOptionDto,...o})}return console.log("%c[st-varietySearch]: 接口传参数据生成完毕","color: green",r),r},reset:()=>{u.value={varietyMarket:null,commonOption:[],marketIds:[],customTag:[],jcTranslate:{type:null,jcList:[]},factorScreen:{list:[],sqlEnable:0,sqlValue:null,factorSelectExpr:""},commonIndicator:[]}}}),(d,r)=>{var p,c,n,i,a,y;const I=ae,E=oe,w=H.ElCheckbox,S=H.ElCheckboxGroup,g=j.ElOption,l=j.ElSelect;return e.openBlock(),e.createElementBlock("div",At,[(p=k.value.varietyMarket)!=null&&p.show?(e.openBlock(),e.createElementBlock("div",Yt,[e.createElementVNode("div",Jt,[Kt,e.createElementVNode("span",{onClick:r[0]||(r[0]=o=>$("varietyMarket"))},"不限")]),e.createVNode(E,{modelValue:u.value.varietyMarket,"onUpdate:modelValue":r[1]||(r[1]=o=>u.value.varietyMarket=o),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.value,({label:o,value:_})=>(e.openBlock(),e.createBlock(I,{label:o,value:_,key:_},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(c=k.value.commonOption)!=null&&c.show&&C.value.length?(e.openBlock(),e.createElementBlock("div",Qt,[e.createElementVNode("div",Ht,[Zt,e.createElementVNode("span",{onClick:r[2]||(r[2]=o=>$("commonOption"))},"不限")]),e.createVNode(S,{modelValue:u.value.commonOption,"onUpdate:modelValue":r[3]||(r[3]=o=>u.value.commonOption=o),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,({label:o,value:_})=>(e.openBlock(),e.createBlock(w,{label:o,value:_,key:_},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(n=k.value.marketIds)!=null&&n.show&&x.value.length?(e.openBlock(),e.createElementBlock("div",Wt,[e.createElementVNode("div",Xt,[el,e.createElementVNode("span",{onClick:r[4]||(r[4]=o=>$("marketIds"))},"不限")]),e.createVNode(S,{modelValue:u.value.marketIds,"onUpdate:modelValue":r[5]||(r[5]=o=>u.value.marketIds=o),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(x.value,({label:o,value:_})=>(e.openBlock(),e.createBlock(w,{label:o,value:_,key:_},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(i=k.value.customTag)!=null&&i.show&&f.value.length?(e.openBlock(),e.createElementBlock("div",tl,[e.createElementVNode("div",ll,[nl,e.createElementVNode("span",{onClick:r[6]||(r[6]=o=>$("customTag"))},"不限")]),e.createVNode(S,{modelValue:u.value.customTag,"onUpdate:modelValue":r[7]||(r[7]=o=>u.value.customTag=o),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,({label:o,value:_})=>(e.openBlock(),e.createBlock(w,{label:o,value:_,key:_},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(a=k.value.jcTranslate)!=null&&a.show?(e.openBlock(),e.createElementBlock("div",al,[e.createElementVNode("div",ol,[rl,e.createElementVNode("span",{onClick:r[8]||(r[8]=o=>$("jcTranslate"))},"不限")]),e.createVNode(E,{modelValue:u.value.jcTranslate.type,"onUpdate:modelValue":r[9]||(r[9]=o=>u.value.jcTranslate.type=o),size:"small"},{default:e.withCtx(()=>[e.createVNode(I,{value:2},{default:e.withCtx(()=>[e.createTextVNode("价差转品种")]),_:1}),e.createVNode(I,{value:1},{default:e.withCtx(()=>[e.createTextVNode("品种转价差")]),_:1})]),_:1},8,["modelValue"]),e.withDirectives(e.createVNode(l,{modelValue:u.value.jcTranslate.jcList,"onUpdate:modelValue":r[10]||(r[10]=o=>u.value.jcTranslate.jcList=o),size:"small",multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:"请选择价差品种",style:{width:"140px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,o=>(e.openBlock(),e.createBlock(g,{key:o.value,label:o.label,value:o.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),[[e.vShow,u.value.jcTranslate.type===1]])])):e.createCommentVNode("",!0),(y=k.value.factorScreen)!=null&&y.show?(e.openBlock(),e.createElementBlock("div",ul,[e.createElementVNode("div",sl,[il,e.createElementVNode("span",{onClick:r[11]||(r[11]=o=>$("factorScreen"))},"不限")]),e.createVNode(vt,{data:u.value.factorScreen,"onUpdate:data":r[12]||(r[12]=o=>u.value.factorScreen=o),config:k.value.factorScreen},null,8,["data","config"])])):e.createCommentVNode("",!0),e.createVNode(Gt,{data:u.value.commonIndicator,"onUpdate:data":r[13]||(r[13]=o=>u.value.commonIndicator=o),varietyMarket:u.value.varietyMarket,commonOption:u.value.commonOption,config:k.value.commonIndicator},null,8,["data","varietyMarket","commonOption","config"])])}}},dl=J._export_sfc(cl,[["__scopeId","data-v-efd872de"]]),pl={install(v){v.component("st-varietySearch",dl)}};module.exports=pl;
|
|
1
|
+
"use strict";const I=require("./base-bdc10baa.cjs");require("./el-tag-8d49d4d2.cjs");const P=require("./el-select-1d2309a1.cjs");require("./el-scrollbar-8bf765f2.cjs");const re=require("./el-popper-14a9d493.cjs"),Ve=require("./el-checkbox-group-020b49f5.cjs"),Z=require("./el-table-column-be9a76bb.cjs"),e=require("vue"),X=require("./el-dialog-cd484c1f.cjs");require("./el-overlay-e5d318c3.cjs");const ae=require("./el-form-item-e1c3104b.cjs"),ue=require("./el-input-5163bda3.cjs"),ie=require("./el-input-number-eb54cde4.cjs");require("./el-tooltip-0ea8fbf8.cjs");const se=require("./el-button-960edd49.cjs"),j=require("./index-19fa1fcf.cjs"),be=require("./index.vue_vue_type_script_setup_true_lang-4024853c.cjs"),U=require("./el-message-ad87b9dd.cjs"),ee=require("./_plugin-vue_export-helper-f246444f.cjs"),ce=require("./index-a99a5307.cjs"),xe=require("./index-b90c746b.cjs"),G=require("./use-form-common-props-592797e2.cjs"),H=require("./index-d94bae37.cjs"),_e=require("./index-8d3c5e96.cjs"),he=require("./index-02ca0096.cjs");require("./castArray-37eb9980.cjs");require("./index-5b81f4da.cjs");require("./scroll-4769a65d.cjs");require("./debounce-9e323221.cjs");require("./use-global-config-584b62f1.cjs");require("./_initCloneObject-9ccbb113.cjs");require("./raf-07cb6953.cjs");require("./vnode-1b827c99.cjs");require("./typescript-b63f8e83.cjs");require("./index-eea0bcb3.cjs");require("./config-provider-ec6b09df.cjs");require("./dropdown-b2dab5bb.cjs");const de=I.buildProps({modelValue:{type:[String,Number,Boolean],default:void 0},size:G.useSizeProp,disabled:Boolean,label:{type:[String,Number,Boolean],default:void 0},value:{type:[String,Number,Boolean],default:void 0},name:{type:String,default:void 0}}),Ne=I.buildProps({...de,border:Boolean}),pe={[H.UPDATE_MODEL_EVENT]:m=>I.isString(m)||I.isNumber(m)||I.isBoolean(m),[H.CHANGE_EVENT]:m=>I.isString(m)||I.isNumber(m)||I.isBoolean(m)},me=Symbol("radioGroupKey"),ve=(m,h)=>{const g=e.ref(),u=e.inject(me,void 0),k=e.computed(()=>!!u),E=e.computed(()=>I.isPropAbsent(m.value)?m.label:m.value),w=e.computed({get(){return k.value?u.modelValue:m.modelValue},set(p){k.value?u.changeEvent(p):h&&h(H.UPDATE_MODEL_EVENT,p),g.value.checked=m.modelValue===E.value}}),N=G.useFormSize(e.computed(()=>u==null?void 0:u.size)),f=G.useFormDisabled(e.computed(()=>u==null?void 0:u.disabled)),t=e.ref(!1),S=e.computed(()=>f.value||k.value&&w.value!==E.value?-1:0);return _e.useDeprecated({from:"label act as value",replacement:"value",version:"3.0.0",scope:"el-radio",ref:"https://element-plus.org/en-US/component/radio.html"},e.computed(()=>k.value&&I.isPropAbsent(m.value))),{radioRef:g,isGroup:k,radioGroup:u,focus:t,size:N,disabled:f,tabIndex:S,modelValue:w,actualValue:E}},we=e.defineComponent({name:"ElRadio"}),Ee=e.defineComponent({...we,props:Ne,emits:pe,setup(m,{emit:h}){const g=m,u=I.useNamespace("radio"),{radioRef:k,radioGroup:E,focus:w,size:N,disabled:f,modelValue:t,actualValue:S}=ve(g,h);function p(){e.nextTick(()=>h("change",t.value))}return(i,C)=>{var O;return e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass([e.unref(u).b(),e.unref(u).is("disabled",e.unref(f)),e.unref(u).is("focus",e.unref(w)),e.unref(u).is("bordered",i.border),e.unref(u).is("checked",e.unref(t)===e.unref(S)),e.unref(u).m(e.unref(N))])},[e.createElementVNode("span",{class:e.normalizeClass([e.unref(u).e("input"),e.unref(u).is("disabled",e.unref(f)),e.unref(u).is("checked",e.unref(t)===e.unref(S))])},[e.withDirectives(e.createElementVNode("input",{ref_key:"radioRef",ref:k,"onUpdate:modelValue":$=>e.isRef(t)?t.value=$:null,class:e.normalizeClass(e.unref(u).e("original")),value:e.unref(S),name:i.name||((O=e.unref(E))==null?void 0:O.name),disabled:e.unref(f),checked:e.unref(t)===e.unref(S),type:"radio",onFocus:$=>w.value=!0,onBlur:$=>w.value=!1,onChange:p,onClick:e.withModifiers(()=>{},["stop"])},null,42,["onUpdate:modelValue","value","name","disabled","checked","onFocus","onBlur","onClick"]),[[e.vModelRadio,e.unref(t)]]),e.createElementVNode("span",{class:e.normalizeClass(e.unref(u).e("inner"))},null,2)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(u).e("label")),onKeydown:e.withModifiers(()=>{},["stop"])},[e.renderSlot(i.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(i.label),1)])],42,["onKeydown"])],2)}}});var Ce=I._export_sfc(Ee,[["__file","radio.vue"]]);const Be=I.buildProps({...de}),Te=e.defineComponent({name:"ElRadioButton"}),Oe=e.defineComponent({...Te,props:Be,setup(m){const h=m,g=I.useNamespace("radio"),{radioRef:u,focus:k,size:E,disabled:w,modelValue:N,radioGroup:f,actualValue:t}=ve(h),S=e.computed(()=>({backgroundColor:(f==null?void 0:f.fill)||"",borderColor:(f==null?void 0:f.fill)||"",boxShadow:f!=null&&f.fill?`-1px 0 0 0 ${f.fill}`:"",color:(f==null?void 0:f.textColor)||""}));return(p,i)=>{var C;return e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass([e.unref(g).b("button"),e.unref(g).is("active",e.unref(N)===e.unref(t)),e.unref(g).is("disabled",e.unref(w)),e.unref(g).is("focus",e.unref(k)),e.unref(g).bm("button",e.unref(E))])},[e.withDirectives(e.createElementVNode("input",{ref_key:"radioRef",ref:u,"onUpdate:modelValue":O=>e.isRef(N)?N.value=O:null,class:e.normalizeClass(e.unref(g).be("button","original-radio")),value:e.unref(t),type:"radio",name:p.name||((C=e.unref(f))==null?void 0:C.name),disabled:e.unref(w),onFocus:O=>k.value=!0,onBlur:O=>k.value=!1,onClick:e.withModifiers(()=>{},["stop"])},null,42,["onUpdate:modelValue","value","name","disabled","onFocus","onBlur","onClick"]),[[e.vModelRadio,e.unref(N)]]),e.createElementVNode("span",{class:e.normalizeClass(e.unref(g).be("button","inner")),style:e.normalizeStyle(e.unref(N)===e.unref(t)?e.unref(S):{}),onKeydown:e.withModifiers(()=>{},["stop"])},[e.renderSlot(p.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(p.label),1)])],46,["onKeydown"])],2)}}});var fe=I._export_sfc(Oe,[["__file","radio-button.vue"]]);const $e=I.buildProps({id:{type:String,default:void 0},size:G.useSizeProp,disabled:Boolean,modelValue:{type:[String,Number,Boolean],default:void 0},fill:{type:String,default:""},textColor:{type:String,default:""},name:{type:String,default:void 0},validateEvent:{type:Boolean,default:!0},...re.useAriaProps(["ariaLabel"])}),Ie=pe,Se=e.defineComponent({name:"ElRadioGroup"}),qe=e.defineComponent({...Se,props:$e,emits:Ie,setup(m,{emit:h}){const g=m,u=I.useNamespace("radio"),k=he.useId(),E=e.ref(),{formItem:w}=G.useFormItem(),{inputId:N,isLabeledByFormItem:f}=G.useFormItemInputId(g,{formItemContext:w}),t=p=>{h(H.UPDATE_MODEL_EVENT,p),e.nextTick(()=>h("change",p))};e.onMounted(()=>{const p=E.value.querySelectorAll("[type=radio]"),i=p[0];!Array.from(p).some(C=>C.checked)&&i&&(i.tabIndex=0)});const S=e.computed(()=>g.name||k.value);return e.provide(me,e.reactive({...e.toRefs(g),changeEvent:t,name:S})),e.watch(()=>g.modelValue,()=>{g.validateEvent&&(w==null||w.validate("change").catch(p=>I.debugWarn(p)))}),(p,i)=>(e.openBlock(),e.createElementBlock("div",{id:e.unref(N),ref_key:"radioGroupRef",ref:E,class:e.normalizeClass(e.unref(u).b("group")),role:"radiogroup","aria-label":e.unref(f)?void 0:p.ariaLabel||"radio-group","aria-labelledby":e.unref(f)?e.unref(w).labelId:void 0},[e.renderSlot(p.$slots,"default")],10,["id","aria-label","aria-labelledby"]))}});var ke=I._export_sfc(qe,[["__file","radio-group.vue"]]);const te=I.withInstall(Ce,{RadioButton:fe,RadioGroup:ke}),le=I.withNoopInstall(ke),ye=I.withNoopInstall(fe);const ne={varietyMarket:{show:!0,options:[]},commonOption:{show:!0,options:[]},marketIds:{show:!0,options:[]},customTag:{show:!0,options:[]},jcTranslate:{show:!0,jcOptions:[{label:"恒指",value:"HZCFJC"},{label:"恒生科技",value:"HSKJJC"},{label:"上证50",value:"SZ50CFJC"},{label:"沪深300",value:"HS300CFJC"},{label:"中证500",value:"ZZ500CFJC"},{label:"中证1000",value:"ZZ1000JC"}]},factorScreen:{show:!0,sqlShow:!1,cycleShow:!0,cycleDefault:null,cycleOptions:[],factorOptions:[],factorDescriptions:[]},commonIndicator:{show:!0,options:[{key:"marketCapital",label:"总市值",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]},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,16]},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,16]},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,16]},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,16]},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,16]},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,16]},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,16]},type:"custom"},{key:"pb",label:"市净率",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]},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,16]},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:"perVolumn",label:"成交量",type:"custom",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]}},{key:"roe",label:"净资产收益率roe",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]},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,16]},type:"custom"},{key:"dividendYield",label:"股息率",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]},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,16]},type:"custom"},{key:"peTtmLevels",label:"市盈率分位",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]},type:"custom"},{key:"mainFlow",label:"主力净流入资金",type:"custom",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]}},{key:"incrementRevenueLyr",label:"营业收入增长率",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]},defaultUnit:["%","%"],unitOptions:["%"]},{key:"netProfitGrowthRatioLyr",label:"净利润增长率",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]},defaultUnit:["%","%"],unitOptions:["%"]},{key:"fiveYearRoe",label:"5年净资产收益率",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]},defaultUnit:["%","%"],unitOptions:["%"]},{key:"auditOpinionType",label:"年报审计意见",parent:{varietyMarketIds:[3,5,7],commonOptionIds:[4,6,12,14,15,16]},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 Me=(m,h,g)=>{!h[0]&&h[0]!==0&&!h[1]&&h[1]!==0?g(new Error("至少填写一个分数")):g()},oe=m=>{const h=/(条件(\d+))/g;return m.match(h)||[]},Re={__name:"FactorDescription",props:e.mergeModels({data:{type:Array,default:[]}},{visible:{default:!1},visibleModifiers:{}}),emits:["update:visible"],setup(m){const h=e.useModel(m,"visible");return(g,u)=>{const k=Z.ElTableColumn,E=Z.ElTable,w=X.ElDialog;return e.openBlock(),e.createBlock(w,{modelValue:h.value,"onUpdate:modelValue":u[0]||(u[0]=N=>h.value=N),title:"因子使用说明",width:"1000","align-center":"","destroy-on-close":""},{default:e.withCtx(()=>[e.createVNode(E,{data:m.data,border:"",height:"500"},{default:e.withCtx(()=>[e.createVNode(k,{prop:"factorName",label:"因子名称",width:"200"}),e.createVNode(k,{prop:"factorDesc",label:"因子说明"}),e.createVNode(k,{prop:"factorScoreDefine",label:"分值定义"})]),_:1},8,["data"])]),_:1},8,["modelValue"])}}};const ge=m=>(e.pushScopeId("data-v-28dc31e2"),m=m(),e.popScopeId(),m),Ue={class:"factor-screen"},Fe={style:{"white-space":"pre-line"}},De={class:"custom-header"},Le=["id"],ze={key:0,style:{flex:"1","text-align":"right"}},je={class:"form-row"},Pe={class:"index"},Ge={style:{display:"flex","align-items":"center",width:"100%",height:"24px"}},Ye=ge(()=>e.createElementVNode("span",null,"~",-1)),Ae=ge(()=>e.createElementVNode("span",null,"&&代表and,||代表or",-1)),Je={class:"dialog-footer"},Ke={__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(m){const h=m,g=e.useModel(m,"data"),u=e.ref(),k=e.ref(),E=e.ref(!1),w=e.ref(!1),N=e.ref("模版"),f=e.ref(null),t=e.ref({list:[{cycle:h.config.cycleDefault??null,factor:null,score:[null,null]}],sqlEnable:0,sqlValue:null,factorSelectExpr:""});e.watch(()=>[N.value,E.value],()=>{(N.value==="模版"||E.value===!1)&&k.value.close()},{deep:!0});const S=()=>{const{list:l,sqlEnable:d,sqlValue:c,factorSelectExpr:r}=g.value;t.value={list:JSON.parse(JSON.stringify(l)),sqlEnable:d,sqlValue:c,factorSelectExpr:r},t.value.list.length||C(),E.value=!0,e.nextTick(()=>{r?(N.value="脚本",u.value.setValue(r)):N.value="模版",u.value.resize()})},p=()=>{if(N.value==="模版")f.value.validate(l=>{const{list:d,sqlEnable:c,sqlValue:r}=t.value;if(l){if(c){if(!r)return U.ElMessage.error("SQL语句不能为空");const v=oe(r),o=d.map((n,b)=>`条件${b+1}`),_=v.filter(n=>!o.includes(n));if(_.length)return U.ElMessage.error(`请检查SQL语句, 不存在[${_}]`)}g.value={list:JSON.parse(JSON.stringify(d)),sqlEnable:c,sqlValue:r,factorSelectExpr:""},E.value=!1}});else{const l=u.value.getValue();if(!l)return U.ElMessage.error("请输入脚本语句");g.value={list:[],sqlEnable:0,sqlValue:null,factorSelectExpr:l},E.value=!1}},i=l=>{t.value.list.splice(l,1)},C=l=>{switch(l){case"compare":{t.value.list.push({key:"compare",cycle:h.config.cycleDefault??null,factor:null,compareType:">",cycle2:h.config.cycleDefault??null,factor2:null});break}default:{t.value.list.push({cycle:h.config.cycleDefault??null,factor:null,score:[null,null]});break}}},O=()=>{f.value.validate(l=>{if(l)if(t.value.sqlValue){const d=oe(t.value.sqlValue);t.value.sqlValue=t.value.list.reduce((c,r,v)=>(d.includes(`条件${v+1}`)||(c+=`&& 条件${v+1} `),c),t.value.sqlValue)}else t.value.sqlValue=t.value.list.reduce((d,c,r)=>(r===0?d+=`条件${r+1} `:d+=`&& 条件${r+1} `,d),"")})},$=l=>{switch(l.key){case"compare":{const{cycle:d,factor:c,compareType:r,cycle2:v,factor2:o}=l;let _="";return _+=` ${h.config.cycleOptions.find(({value:n})=>n===d).label}`,_+=` ${h.config.factorOptions.find(({value:n})=>n===c).label}`,_+=` ${r}`,_+=` ${h.config.cycleOptions.find(({value:n})=>n===v).label}`,_+=` ${h.config.factorOptions.find(({value:n})=>n===o).label}`,_}default:{const{cycle:d,factor:c,score:r}=l;let v="";return v+=` ${h.config.cycleOptions.find(({value:o})=>o===d).label}`,v+=` ${h.config.factorOptions.find(({value:o})=>o===c).label}`,v+=` ${r[0]||r[0]===0?`${r[0]}分`:"∞"}`,v+=" ~",v+=` ${r[1]||r[1]===0?`${r[1]}分`:"∞"}`,v}}},F=(l,d)=>{switch(l){case"sqlTag":{g.value={list:[],sqlEnable:0,sqlValue:null};break}case"factorTag":{g.value.list.splice(d,1);break}case"scriptTag":{g.value={list:[],sqlEnable:0,sqlValue:null,factorSelectExpr:""};break}}},y=()=>{var d,c,r;const l=(r=(c=(d=document.getElementsByClassName("factor-dialog"))==null?void 0:d[0])==null?void 0:c.style)==null?void 0:r.zIndex;console.log(l),k.value.open(u.value,l)};return(l,d)=>{var M;const c=Ve.ElText,r=ce.ElTag,v=xe.ElPopover,o=se.ElButton,_=j.ElIcon,n=re.ElTooltip,b=ye,s=le,B=P.ElOption,T=P.ElSelect,a=ae.ElFormItem,L=ie.ElInputNumber,A=te,K=ue.ElInput,Q=ae.ElForm,J=X.ElDialog,R=e.resolveComponent("st-varSelectDialog");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Ue,[e.createElementVNode("div",null,[g.value.sqlEnable&&g.value.sqlValue?(e.openBlock(),e.createBlock(r,{key:0,closable:"",type:"info",title:g.value.sqlValue,onClose:d[0]||(d[0]=x=>F("sqlTag"))},{default:e.withCtx(()=>[e.createVNode(c,{type:"info",truncated:"",style:{"max-width":"500px"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(g.value.sqlValue),1)]),_:1})]),_:1},8,["title"])):e.createCommentVNode("",!0),!g.value.sqlEnable&&g.value.list.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(g.value.list,(x,D)=>(e.openBlock(),e.createBlock(r,{closable:"",type:"info",onClose:V=>F("factorTag",D)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString($(x)),1)]),_:2},1032,["onClose"]))),256)):e.createCommentVNode("",!0),g.value.factorSelectExpr?(e.openBlock(),e.createBlock(v,{key:2,width:"500",placement:"bottom-start"},{reference:e.withCtx(()=>[e.createVNode(r,{closable:"",type:"info",onClose:d[1]||(d[1]=x=>F("scriptTag"))},{default:e.withCtx(()=>[e.createTextVNode(" 脚本模式 ")]),_:1})]),default:e.withCtx(()=>[e.createElementVNode("div",Fe,e.toDisplayString(g.value.factorSelectExpr),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(o,{class:"screen-btn",type:"primary",plain:"",size:"small",icon:e.unref(j.plus_default),onClick:S},{default:e.withCtx(()=>[e.createTextVNode(" 添加因子 ")]),_:1},8,["icon"])]),e.createVNode(J,{"modal-class":"factor-dialog",modelValue:E.value,"onUpdate:modelValue":d[7]||(d[7]=x=>E.value=x),width:"1000","align-center":"","destroy-on-close":""},{header:e.withCtx(({titleId:x,titleClass:D})=>[e.createElementVNode("div",De,[e.createElementVNode("span",{id:x,class:e.normalizeClass(D)}," 因子筛选 ",10,Le),e.createVNode(n,{effect:"dark",content:"点击查看: 因子使用说明",placement:"right"},{default:e.withCtx(()=>[e.createVNode(_,{onClick:d[2]||(d[2]=V=>w.value=!0)},{default:e.withCtx(()=>[e.createVNode(e.unref(j.info_filled_default))]),_:1})]),_:1}),e.createVNode(s,{modelValue:N.value,"onUpdate:modelValue":d[3]||(d[3]=V=>N.value=V),size:"small",style:{"margin-left":"12px"}},{default:e.withCtx(()=>[e.createVNode(b,{label:"模版",value:"模版"}),e.createVNode(b,{label:"脚本",value:"脚本"})]),_:1},8,["modelValue"]),N.value==="脚本"?(e.openBlock(),e.createElementBlock("div",ze,[e.createVNode(o,{size:"small",type:"primary",onClick:y},{default:e.withCtx(()=>[e.createTextVNode("变量选择器")]),_:1})])):e.createCommentVNode("",!0)])]),footer:e.withCtx(()=>[e.createElementVNode("div",Je,[e.createVNode(o,{type:"primary",onClick:p},{default:e.withCtx(()=>[e.createTextVNode("确定")]),_:1})])]),default:e.withCtx(()=>[N.value==="模版"?(e.openBlock(),e.createBlock(Q,{key:0,ref_key:"dialogFormRef",ref:f,model:t.value},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value.list,(x,D)=>(e.openBlock(),e.createElementBlock("div",je,[e.createElementVNode("span",Pe,e.toDisplayString(`条件${D+1}`),1),x.key==="compare"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[m.config.cycleShow?(e.openBlock(),e.createBlock(a,{key:0,prop:"list."+D+".cycle",rules:{required:!0,message:"周期不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(T,{modelValue:x.cycle,"onUpdate:modelValue":V=>x.cycle=V,placeholder:"选择周期",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.config.cycleOptions,({label:V,value:q})=>(e.openBlock(),e.createBlock(B,{label:V,value:q,key:q},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])):e.createCommentVNode("",!0),e.createVNode(a,{prop:"list."+D+".factor",rules:{required:!0,message:"因子不能为空",trigger:"blur"},style:{width:"132px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(T,{modelValue:x.factor,"onUpdate:modelValue":V=>x.factor=V,placeholder:"选择因子",filterable:"",size:"small","no-match-text":"无匹配数据"},{default:e.withCtx(()=>{var V;return[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((V=m.config.factorOptions)==null?void 0:V.filter(q=>[4].includes(q.type)),({label:q,value:z})=>(e.openBlock(),e.createBlock(B,{label:q,value:z,key:z},null,8,["label","value"]))),128))]}),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"]),e.createVNode(a,{style:{width:"52px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(T,{modelValue:x.compareType,"onUpdate:modelValue":V=>x.compareType=V,size:"small"},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([">",">=","<","<="],V=>e.createVNode(B,{label:V,value:V,key:V},null,8,["label","value"])),64))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1024),m.config.cycleShow?(e.openBlock(),e.createBlock(a,{key:1,prop:"list."+D+".cycle2",rules:{required:!0,message:"周期不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(T,{modelValue:x.cycle2,"onUpdate:modelValue":V=>x.cycle2=V,placeholder:"选择周期",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.config.cycleOptions,({label:V,value:q})=>(e.openBlock(),e.createBlock(B,{label:V,value:q,key:q},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])):e.createCommentVNode("",!0),e.createVNode(a,{prop:"list."+D+".factor2",rules:{required:!0,message:"因子不能为空",trigger:"blur"},style:{width:"132px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(T,{modelValue:x.factor2,"onUpdate:modelValue":V=>x.factor2=V,placeholder:"选择因子",filterable:"",size:"small","no-match-text":"无匹配数据"},{default:e.withCtx(()=>{var V;return[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((V=m.config.factorOptions)==null?void 0:V.filter(q=>[4].includes(q.type)),({label:q,value:z})=>(e.openBlock(),e.createBlock(B,{label:q,value:z,key:z},null,8,["label","value"]))),128))]}),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[m.config.cycleShow?(e.openBlock(),e.createBlock(a,{key:0,prop:"list."+D+".cycle",rules:{required:!0,message:"周期不能为空",trigger:"blur"},style:{width:"100px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(T,{modelValue:x.cycle,"onUpdate:modelValue":V=>x.cycle=V,placeholder:"选择周期",size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.config.cycleOptions,({label:V,value:q})=>(e.openBlock(),e.createBlock(B,{label:V,value:q,key:q},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"])):e.createCommentVNode("",!0),e.createVNode(a,{prop:"list."+D+".factor",rules:{required:!0,message:"因子不能为空",trigger:"blur"},style:{width:"194px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createVNode(T,{modelValue:x.factor,"onUpdate:modelValue":V=>x.factor=V,placeholder:"选择因子",filterable:"",size:"small","no-match-text":"无匹配数据"},{default:e.withCtx(()=>{var V;return[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((V=m.config.factorOptions)==null?void 0:V.filter(q=>[1,3].includes(q.type)),({label:q,value:z})=>(e.openBlock(),e.createBlock(B,{label:q,value:z,key:z},null,8,["label","value"]))),128))]}),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop"]),e.createVNode(a,{prop:"list."+D+".score",rules:{validator:e.unref(Me),trigger:"blur"},style:{width:"200px","margin-right":"10px"}},{default:e.withCtx(()=>[e.createElementVNode("div",Ge,[e.createVNode(L,{modelValue:x.score[0],"onUpdate:modelValue":V=>x.score[0]=V,size:"small","controls-position":"right"},null,8,["modelValue","onUpdate:modelValue"]),Ye,e.createVNode(L,{modelValue:x.score[1],"onUpdate:modelValue":V=>x.score[1]=V,size:"small","controls-position":"right"},null,8,["modelValue","onUpdate:modelValue"])])]),_:2},1032,["prop","rules"])],64)),e.createVNode(_,{onClick:V=>i(D)},{default:e.withCtx(()=>[e.createVNode(e.unref(j.circle_close_filled_default))]),_:2},1032,["onClick"])]))),256)),e.createVNode(o,{type:"primary",plain:"",size:"small",icon:e.unref(j.plus_default),onClick:C,style:{"margin-bottom":"10px"}},{default:e.withCtx(()=>[e.createTextVNode("添加因子")]),_:1},8,["icon"]),e.createVNode(o,{type:"primary",plain:"",size:"small",icon:e.unref(j.plus_default),onClick:d[4]||(d[4]=x=>C("compare")),style:{"margin-bottom":"10px"}},{default:e.withCtx(()=>[e.createTextVNode("添加因子对比")]),_:1},8,["icon"]),m.config.sqlShow?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(a,{label:"SQL功能: "},{default:e.withCtx(()=>[e.createVNode(s,{modelValue:t.value.sqlEnable,"onUpdate:modelValue":d[5]||(d[5]=x=>t.value.sqlEnable=x)},{default:e.withCtx(()=>[e.createVNode(A,{label:"关闭",value:0}),e.createVNode(A,{label:"启用",value:1})]),_:1},8,["modelValue"]),t.value.sqlEnable?(e.openBlock(),e.createBlock(o,{key:0,type:"primary",size:"small",onClick:O,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(K,{modelValue:t.value.sqlValue,"onUpdate:modelValue":d[6]||(d[6]=x=>t.value.sqlValue=x),autosize:{minRows:4},type:"textarea",style:{"margin-bottom":"10px"}},null,8,["modelValue"]),Ae],64)):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)]),_:1},8,["model"])):e.createCommentVNode("",!0),e.createElementVNode("div",{style:e.normalizeStyle([{width:"968px",height:"400px"},N.value==="脚本"?null:{position:"fixed",top:"-400px",zIndex:-1}])},[e.createVNode(be._sfc_main,{ref_key:"monacoEditorRef",ref:u,language:"lua"},null,512)],4)]),_:1},8,["modelValue"])]),e.createVNode(Re,{visible:w.value,"onUpdate:visible":d[8]||(d[8]=x=>w.value=x),data:(M=m.config.factorDescriptions)==null?void 0:M.filter(x=>[1,3].includes(x.type))},null,8,["visible","data"]),e.createVNode(R,{ref_key:"stVarSelectDialogRef",ref:k},null,512)],64)}}},Qe=ee._export_sfc(Ke,[["__scopeId","data-v-28dc31e2"]]);const W=m=>(e.pushScopeId("data-v-3e69da40"),m=m(),e.popScopeId(),m),Ze={key:0,class:"common-indicator"},He={class:"indicator"},We=W(()=>e.createElementVNode("div",{class:"title"},[e.createElementVNode("span",null,"常用指标: "),e.createElementVNode("span",null,"不限")],-1)),Xe={class:"options"},et=["onClick"],tt={class:"tags"},lt=["onClick"],at={style:{"font-size":"18px"}},nt={key:0,class:"out-box"},ot=W(()=>e.createElementVNode("span",null,"自定义: ",-1)),rt={key:0,class:"convenient-option-box"},ut={class:"out-box"},it=W(()=>e.createElementVNode("span",null,"自定义: ",-1)),st={key:0},ct={key:0},dt={key:0},pt={key:1},mt={class:"tFeaturelncomes-option-box"},vt={class:"tFeaturelncomes-out-box"},ft=W(()=>e.createElementVNode("span",null,"自定义: ",-1)),kt={key:2},yt={key:3},gt={key:4},Vt={key:5},bt={key:6},xt={style:{display:"flex","align-items":"center"}},_t={key:7},ht={class:"dialog-footer"},Nt={__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(m){const h=[{label:"近2周",value:"1"},{label:"近1个月",value:"2"},{label:"近3个月",value:"3"},{label:"近6个月",value:"4"},{label:"近1年",value:"5"}],g=[{label:"无保留意见",value:1},{label:"保留意见",value:2},{label:"否定意见",value:3},{label:"无法表示意见",value:4}],u=e.useModel(m,"data"),k=m,E=e.ref(!1),w=e.computed(()=>{var y;return(y=k.data.find(l=>l.radioType==="1"))==null?void 0:y.key}),N=e.computed(()=>{let y=[];return k.varietyMarket===null&&!k.commonOption.length?y=k.config.options:(y=k.config.options,k.varietyMarket&&(y=y.filter(({parent:l})=>l.varietyMarketIds.includes(k.varietyMarket))),k.commonOption.length&&(y=y.filter(({parent:l})=>{const{commonOptionIds:d}=l;return[...new Set([...d,...k.commonOption])].length!==[...d,...k.commonOption].length}))),y}),f=e.ref({}),t=e.ref({}),S=y=>{f.value=y;const l={key:y.key,type:y.type,label:y.label};switch(y.key){case"st":{t.value={...l,st:null};break}case"tFeaturelncomes":{t.value={...l,rule:1,withFewYears:null,yearsCount:null,netProfit:null};break}case"priceLevels":{t.value={...l,priceLevels:null};break}case"peTtmLevels":{t.value={...l,peTtmLevels:null};break}case"optionsCpType":{t.value={...l,optionsCpType:null};break}case"perVolumn":{t.value={...l,radio:null,levels:[]};break}case"mainFlow":{t.value={...l,radioType:"0",rankRange:[null,null]};break}case"auditOpinionType":{t.value={...l,enumType:null};break}default:t.value={...l,range:[null,null],unit:y.defaultUnit.length?[...y.defaultUnit]:[null,null],radioType:w.value&&w.value!==y.key?"0":y.defaultRadioType,rankRange:y.defaultRankRange||[null,null]}}E.value=!0},p=()=>{var l,d;switch(t.value.key){case"st":{const{label:c,st:r}=t.value;if(r===null)return U.ElMessage.warning("格式错误: 请至少选择一个值");t.value.tagText=`${c}: ${r?"是":"否"}`;break}case"tFeaturelncomes":{const{label:c,rule:r,withFewYears:v,yearsCount:o,netProfit:_}=t.value;if(["",null].includes(v)||["",null].includes(o)||["",null].includes(_))return U.ElMessage.warning("格式错误: 请填写完整");t.value.tagText=`${c}: ${v}年内${o}年以上盈利${r===1?"超":"跌"}过${_}亿`;break}case"priceLevels":{const{label:c,priceLevels:r}=t.value;if(!r||r.length===0)return U.ElMessage.warning("格式错误: 请至少选择一个值");t.value.tagText=`${c}: 已选${r}分位`;break}case"peTtmLevels":{const{label:c,peTtmLevels:r}=t.value;if(!r||r.length===0)return U.ElMessage.warning("格式错误: 请至少选择一个值");t.value.tagText=`${c}: 已选${r}分位`;break}case"optionsCpType":{const{label:c,optionsCpType:r}=t.value;if(r===null)return U.ElMessage.warning("格式错误: 请至少选择一个值");t.value.tagText=`${c}: ${r===1?"看涨":"看跌"}`;break}case"perVolumn":{const{label:c,radio:r,levels:v}=t.value;if(!r)return U.ElMessage.warning("格式错误: 请选择时间");if(!(v!=null&&v.length))return U.ElMessage.warning("格式错误: 请选择分位");t.value.tagText=`${c}: ${(l=h.find(o=>o.value===r))==null?void 0:l.label}${v.map(o=>`${o}分位`).join("、")}`;break}case"mainFlow":{const{label:c,radioType:r,radio:v,rankRange:o}=t.value,_=n=>{if(n===""||n===null||n===void 0)return!1;const b=Number(n);return!isNaN(b)};if(!v)return U.ElMessage.warning("格式错误: 请选择时间");if(!_(o[0])&&!_(o[1]))return U.ElMessage.warning(`格式错误: 请填写${r==="0"?"涨幅范围":"排名范围"}`);!["",null].includes(o[0])&&!["",null].includes(o[1])?t.value.tagText=`${c}: ${v}日${r==="0"?"涨幅范围":"排名范围"}: ${o[0]}${r==="0"?"%":""} ~ ${o[1]}${r==="0"?"%":""}`:["",null].includes(o[0])?t.value.tagText=`${c}: ${v}日${r==="0"?"涨幅范围":"排名范围"}: ≤${o[1]}${r==="0"?"%":""}`:t.value.tagText=`${c}: ${v}日${r==="0"?"涨幅范围":"排名范围"}: ≥${o[0]}${r==="0"?"%":""}`;break}case"auditOpinionType":{const{label:c,enumType:r}=t.value;if(r===null)return U.ElMessage.warning("格式错误: 请至少选择一个值");t.value.tagText=`${c}: ${(d=g.find(v=>v.value===r))==null?void 0:d.label}`;break}default:{const{label:c,unit:r,radioType:v}=t.value,o=v==="1"?t.value.rankRange:t.value.range;if(["",null].includes(o[0])&&["",null].includes(o[1]))return U.ElMessage.warning("格式错误: 请至少填写一个值");if(v==="1"){const b=Number(o[0]),s=Number(o[1]);if(isNaN(b)||isNaN(s))return U.ElMessage.warning("格式错误: 请填写数字");if(b<0||s<0)return U.ElMessage.warning("格式错误: 请填写大于0的数字");if(b>s)return U.ElMessage.warning("格式错误: 请填写正确的排名范围")}const _=v==="1"?"":r[0]??"",n=v==="1"?"":r[1]??"";!["",null].includes(o[0])&&!["",null].includes(o[1])?t.value.tagText=`${c}${v==="1"?"排名":""}: ${o[0]}${_} ~ ${o[1]}${n}`:["",null].includes(o[0])?t.value.tagText=`${c}${v==="1"?"排名":""}: ≤${o[1]}${n}`:t.value.tagText=`${c}${v==="1"?"排名":""}: ≥${o[0]}${_}`}}const y=u.value.findIndex(({key:c})=>c===t.value.key);y===-1?u.value.push(t.value):u.value.splice(y,1,t.value),E.value=!1},i=y=>{f.value=N.value.find(({key:l})=>l===y.key),t.value=JSON.parse(JSON.stringify(y)),E.value=!0},C=y=>{u.value.splice(y,1)},O=y=>{t.value.range=[...y.range],t.value.unit=[...y.unit]},$=y=>{switch(y){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}};e.watch(()=>N.value,()=>{u.value.length&&(u.value=u.value.filter(({key:y})=>N.value.find(l=>l.key===y)))});const F=()=>{t.value.radio=null,t.value.rankRange=[null,null]};return(y,l)=>{const d=ce.ElTag,c=ye,r=le,v=ue.ElInput,o=se.ElButton,_=P.ElOption,n=P.ElSelect,b=te,s=ie.ElInputNumber,B=X.ElDialog;return m.config.show&&N.value.length?(e.openBlock(),e.createElementBlock("div",Ze,[e.createElementVNode("div",He,[We,e.createElementVNode("div",Xe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.value,T=>(e.openBlock(),e.createElementBlock("span",{key:T.key,onClick:a=>S(T)},e.toDisplayString(T.label),9,et))),128))])]),e.createElementVNode("div",tt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,(T,a)=>(e.openBlock(),e.createBlock(d,{closable:"",type:"info",onClose:L=>C(a)},{default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(T.tagText),1),e.createElementVNode("span",{class:"edit",onClick:L=>i(T)},"编辑",8,lt)]),_:2},1032,["onClose"]))),256))]),e.createVNode(B,{modelValue:E.value,"onUpdate:modelValue":l[26]||(l[26]=T=>E.value=T),title:f.value.label,width:"600","align-center":"","destroy-on-close":""},e.createSlots({footer:e.withCtx(()=>[e.createElementVNode("div",ht,[e.createVNode(o,{type:"primary",onClick:p},{default:e.withCtx(()=>[e.createTextVNode("确定")]),_:1})])]),default:e.withCtx(()=>{var T;return[f.value.type===void 0&&t.value.radioType==="1"?(e.openBlock(),e.createElementBlock("div",nt,[ot,e.createVNode(v,{modelValue:t.value.rankRange[0],"onUpdate:modelValue":l[2]||(l[2]=a=>t.value.rankRange[0]=a),style:{flex:"1"}},null,8,["modelValue"]),e.createTextVNode(" ~ "),e.createVNode(v,{modelValue:t.value.rankRange[1],"onUpdate:modelValue":l[3]||(l[3]=a=>t.value.rankRange[1]=a),style:{flex:"1"}},null,8,["modelValue"])])):f.value.type===void 0?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[(T=f.value.convenientOptions)!=null&&T.length?(e.openBlock(),e.createElementBlock("div",rt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value.convenientOptions,a=>(e.openBlock(),e.createBlock(o,{key:a.text,onClick:L=>O(a)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.text),1)]),_:2},1032,["onClick"]))),128))])):e.createCommentVNode("",!0),e.createElementVNode("div",ut,[it,e.createVNode(v,{modelValue:t.value.range[0],"onUpdate:modelValue":l[5]||(l[5]=a=>t.value.range[0]=a),style:{flex:"1"}},e.createSlots({_:2},[f.value.unitOptions.length?{name:"append",fn:e.withCtx(()=>[f.value.unitOptions.length===1?(e.openBlock(),e.createElementBlock("span",st,e.toDisplayString(t.value.unit[0]),1)):(e.openBlock(),e.createBlock(n,{key:1,modelValue:t.value.unit[0],"onUpdate:modelValue":l[4]||(l[4]=a=>t.value.unit[0]=a),style:{width:"72px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value.unitOptions,a=>(e.openBlock(),e.createBlock(_,{label:a,value:a},null,8,["label","value"]))),256))]),_:1},8,["modelValue"]))]),key:"0"}:void 0]),1032,["modelValue"]),e.createTextVNode(" ~ "),e.createVNode(v,{modelValue:t.value.range[1],"onUpdate:modelValue":l[7]||(l[7]=a=>t.value.range[1]=a),style:{flex:"1"}},e.createSlots({_:2},[f.value.unitOptions.length?{name:"append",fn:e.withCtx(()=>[f.value.unitOptions.length===1?(e.openBlock(),e.createElementBlock("span",ct,e.toDisplayString(t.value.unit[1]),1)):(e.openBlock(),e.createBlock(n,{key:1,modelValue:t.value.unit[1],"onUpdate:modelValue":l[6]||(l[6]=a=>t.value.unit[1]=a),style:{width:"72px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value.unitOptions,a=>(e.openBlock(),e.createBlock(_,{label:a,value:a},null,8,["label","value"]))),256))]),_:1},8,["modelValue"]))]),key:"0"}:void 0]),1032,["modelValue"])])],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[f.value.key==="st"?(e.openBlock(),e.createElementBlock("div",dt,[e.createVNode(r,{modelValue:t.value.st,"onUpdate:modelValue":l[8]||(l[8]=a=>t.value.st=a)},{default:e.withCtx(()=>[e.createVNode(b,{label:"是",value:1}),e.createVNode(b,{label:"否",value:0})]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),f.value.key==="tFeaturelncomes"?(e.openBlock(),e.createElementBlock("div",pt,[e.createElementVNode("div",mt,[e.createVNode(o,{onClick:l[9]||(l[9]=a=>$("≤0"))},{default:e.withCtx(()=>[e.createTextVNode("≤0")]),_:1}),e.createVNode(o,{onClick:l[10]||(l[10]=a=>$("≥0"))},{default:e.withCtx(()=>[e.createTextVNode("≥0")]),_:1}),e.createVNode(o,{onClick:l[11]||(l[11]=a=>$("五年内有四年以上盈利超过5千万"))},{default:e.withCtx(()=>[e.createTextVNode("五年内有四年以上盈利超过5千万")]),_:1}),e.createVNode(o,{onClick:l[12]||(l[12]=a=>$("≥10亿"))},{default:e.withCtx(()=>[e.createTextVNode("≥10亿")]),_:1}),e.createVNode(o,{onClick:l[13]||(l[13]=a=>$("≥20亿"))},{default:e.withCtx(()=>[e.createTextVNode("≥20亿")]),_:1})]),e.createElementVNode("div",vt,[ft,e.createElementVNode("div",null,[e.createVNode(s,{modelValue:t.value.withFewYears,"onUpdate:modelValue":l[14]||(l[14]=a=>t.value.withFewYears=a),"controls-position":"right"},null,8,["modelValue"]),e.createTextVNode(" 年内 "),e.createVNode(s,{modelValue:t.value.yearsCount,"onUpdate:modelValue":l[15]||(l[15]=a=>t.value.yearsCount=a),"controls-position":"right"},null,8,["modelValue"]),e.createTextVNode(" 年以上盈利"+e.toDisplayString(t.value.rule===1?"超":"跌")+"过 ",1),e.createVNode(s,{modelValue:t.value.netProfit,"onUpdate:modelValue":l[16]||(l[16]=a=>t.value.netProfit=a),"controls-position":"right"},null,8,["modelValue"]),e.createTextVNode(" 亿 ")])])])):e.createCommentVNode("",!0),f.value.key==="priceLevels"?(e.openBlock(),e.createElementBlock("div",kt,[e.createVNode(n,{modelValue:t.value.priceLevels,"onUpdate:modelValue":l[17]||(l[17]=a=>t.value.priceLevels=a),multiple:"",clearable:"",placeholder:"请选择",style:{width:"420px"}},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([1,2,3,4,5],a=>e.createVNode(_,{key:a,label:`${a}分位`,value:a},null,8,["label","value"])),64))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),f.value.key==="peTtmLevels"?(e.openBlock(),e.createElementBlock("div",yt,[e.createVNode(n,{modelValue:t.value.peTtmLevels,"onUpdate:modelValue":l[18]||(l[18]=a=>t.value.peTtmLevels=a),multiple:"",clearable:"",placeholder:"请选择",style:{width:"420px"}},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([1,2,3,4,5,6,7,8,9,10],a=>e.createVNode(_,{key:a,label:`${a}分位`,value:a},null,8,["label","value"])),64))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),f.value.key==="optionsCpType"?(e.openBlock(),e.createElementBlock("div",gt,[e.createVNode(r,{modelValue:t.value.optionsCpType,"onUpdate:modelValue":l[19]||(l[19]=a=>t.value.optionsCpType=a)},{default:e.withCtx(()=>[e.createVNode(b,{label:"看涨",value:1}),e.createVNode(b,{label:"看跌",value:2})]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),f.value.key==="perVolumn"?(e.openBlock(),e.createElementBlock("div",Vt,[e.createVNode(r,{modelValue:t.value.radio,"onUpdate:modelValue":l[20]||(l[20]=a=>t.value.radio=a)},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(h,a=>e.createVNode(b,{key:a.value,value:a.value},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.label),1)]),_:2},1032,["value"])),64))]),_:1},8,["modelValue"]),e.createVNode(n,{modelValue:t.value.levels,"onUpdate:modelValue":l[21]||(l[21]=a=>t.value.levels=a),multiple:"",clearable:"",placeholder:"请选择",style:{width:"420px"}},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([1,2,3,4,5],a=>e.createVNode(_,{key:a,label:`${a}分位`,value:a},null,8,["label","value"])),64))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),f.value.key==="mainFlow"?(e.openBlock(),e.createElementBlock("div",bt,[e.createVNode(r,{modelValue:t.value.radio,"onUpdate:modelValue":l[22]||(l[22]=a=>t.value.radio=a)},{default:e.withCtx(()=>[e.createVNode(b,{value:"3"},{default:e.withCtx(()=>[e.createTextVNode("3日")]),_:1}),e.createVNode(b,{value:"5"},{default:e.withCtx(()=>[e.createTextVNode("5日")]),_:1}),e.createVNode(b,{value:"10"},{default:e.withCtx(()=>[e.createTextVNode("10日")]),_:1}),e.createVNode(b,{value:"20"},{default:e.withCtx(()=>[e.createTextVNode("20日")]),_:1})]),_:1},8,["modelValue"]),e.createElementVNode("div",xt,[e.createElementVNode("span",null,e.toDisplayString(t.value.radioType==="0"?"涨幅范围":"排名范围")+": ",1),e.createVNode(v,{modelValue:t.value.rankRange[0],"onUpdate:modelValue":l[23]||(l[23]=a=>t.value.rankRange[0]=a),style:{flex:"1"}},null,8,["modelValue"]),e.createTextVNode(" ~ "),e.createVNode(v,{modelValue:t.value.rankRange[1],"onUpdate:modelValue":l[24]||(l[24]=a=>t.value.rankRange[1]=a),style:{flex:"1"}},null,8,["modelValue"])])])):e.createCommentVNode("",!0),f.value.key==="auditOpinionType"?(e.openBlock(),e.createElementBlock("div",_t,[e.createVNode(r,{modelValue:t.value.enumType,"onUpdate:modelValue":l[25]||(l[25]=a=>t.value.enumType=a)},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(g,(a,L)=>e.createVNode(b,{key:L,label:a.label,value:a.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0)],64))]}),_:2},[f.value.showRankType?{name:"header",fn:e.withCtx(()=>[e.createElementVNode("span",at,e.toDisplayString(f.value.label),1),e.createVNode(r,{modelValue:t.value.radioType,"onUpdate:modelValue":l[0]||(l[0]=T=>t.value.radioType=T),style:{"vertical-align":"4px","margin-left":"12px"}},{default:e.withCtx(()=>[e.createVNode(c,{label:"数值",value:"0"}),e.createVNode(c,{disabled:w.value&&w.value!==f.value.key,label:"排名",value:"1"},null,8,["disabled"])]),_:1},8,["modelValue"])]),key:"0"}:f.value.key==="mainFlow"?{name:"header",fn:e.withCtx(()=>[e.createElementVNode("span",{style:{"font-size":"18px"}},e.toDisplayString(f.value.label),1),e.createVNode(r,{modelValue:t.value.radioType,"onUpdate:modelValue":l[1]||(l[1]=T=>t.value.radioType=T),style:{"vertical-align":"4px","margin-left":"12px"},onChange:F},{default:e.withCtx(()=>[e.createVNode(c,{label:"涨幅范围",value:"0"}),e.createVNode(c,{disabled:w.value&&w.value!==f.value.key,label:"排名范围",value:"1"},null,8,["disabled"])]),_:1},8,["modelValue"])]),key:"1"}:void 0]),1032,["modelValue","title"])])):e.createCommentVNode("",!0)}}},wt=ee._export_sfc(Nt,[["__scopeId","data-v-3e69da40"]]);const Y=m=>(e.pushScopeId("data-v-efd872de"),m=m(),e.popScopeId(),m),Et={class:"variety-search"},Ct={key:0,class:"variety-search-row"},Bt={class:"title"},Tt=Y(()=>e.createElementVNode("span",null,"品种市场: ",-1)),Ot={key:1,class:"variety-search-row"},$t={class:"title"},It=Y(()=>e.createElementVNode("span",null,"常用选项: ",-1)),St={key:2,class:"variety-search-row"},qt={class:"title"},Mt=Y(()=>e.createElementVNode("span",null,"上市板块: ",-1)),Rt={key:3,class:"variety-search-row"},Ut={class:"title"},Ft=Y(()=>e.createElementVNode("span",null,"自定标签: ",-1)),Dt={key:4,class:"variety-search-row"},Lt={class:"title"},zt=Y(()=>e.createElementVNode("span",null,"价差转换: ",-1)),jt={key:5,class:"variety-search-row"},Pt={class:"title"},Gt=Y(()=>e.createElementVNode("span",null,"因子筛选: ",-1)),Yt={__name:"index",props:e.mergeModels({config:{type:Object,default:{}}},{searchData:{},searchDataModifiers:{}}),emits:["update:searchData"],setup(m,{expose:h}){const g=m,u=e.useModel(m,"searchData");u.value=Object.assign(u.value,{varietyMarket:null,commonOption:[],marketIds:[],customTag:[],jcTranslate:{type:null,jcList:[]},factorScreen:{list:[],sqlEnable:0,sqlValue:null,factorSelectExpr:""},commonIndicator:[]});const k=e.computed(()=>{const p={};return Object.keys(ne).forEach(i=>{const C=ne[i],O=g.config[i]??{},$={...C,...O};p[i]=$}),p}),E=e.computed(()=>k.value.varietyMarket.options),w=e.computed(()=>{const{varietyMarket:p}=u.value;return p?E.value.find(({value:C})=>C===p).memo.reduce((C,O)=>{const $=k.value.commonOption.options.find(F=>F.value===O);return $&&C.push($),C},[]):k.value.commonOption.options}),N=e.computed(()=>{const{varietyMarket:p}=u.value;return p?k.value.marketIds.options.filter(i=>i.varietyMarketIds.includes(p)):k.value.marketIds.options}),f=e.computed(()=>k.value.customTag.options),t=e.computed(()=>k.value.jcTranslate.jcOptions),S=p=>{switch(p){case"commonOption":{u.value[p]=[];break}case"marketIds":{u.value[p]=[];break}case"customTag":{u.value[p]=[];break}case"jcTranslate":{u.value[p]={type:null,jcList:[]};break}case"factorScreen":{u.value[p]={list:[],sqlEnable:0,sqlValue:null,factorSelectExpr:""};break}case"commonIndicator":{u.value[p]=[];break}default:{u.value[p]=null;break}}};return e.watch(()=>w.value,p=>{var i;(i=u.value.commonOption)!=null&&i.length&&(u.value.commonOption=u.value.commonOption.filter(C=>p.find(({value:O})=>O===C)))}),e.watch(()=>N.value,p=>{var i;(i=u.value.marketIds)!=null&&i.length&&(u.value.marketIds=u.value.marketIds.filter(C=>p.find(({value:O})=>O===C)))}),h({formatData:p=>{var C,O,$,F,y,l;console.log("%c[st-varietySearch]: 正在生成接口传参...","color: tomato");const i={};if(p.varietyMarket&&(i.exchangeId=String(p.varietyMarket)),(C=p.commonOption)!=null&&C.length&&(i.optionId=p.commonOption.join(",")),(O=p.marketIds)!=null&&O.length&&(i.marketIds=p.marketIds),($=p.customTag)!=null&&$.length&&(i.tagIds=p.customTag),(F=k.value.jcTranslate)!=null&&F.show){const{jcTranslate:d}=p,{type:c,jcList:r}=d;switch(c){case 1:{i.translateType=1,i.jcType=r.join(",");break}case 2:i.translateType=2}}if((y=k.value.factorScreen)!=null&&y.show){const{factorScreen:d}=p;if((l=d==null?void 0:d.list)!=null&&l.length&&(i.tbFeatureFactorScores=d.list.map(c=>{switch(c.key){case"compare":return{freqId:c.cycle,factorId:c.factor,compareType:c.compareType,freqId2:c.cycle2,factorId2:c.factor2};default:return{freqId:c.cycle,factorId:c.factor,startScore:c.score[0],endScore:c.score[1]}}})),d.sqlEnable){const c=d.list.reduce((v,o,_)=>{var b,s;const n=`条件${_+1}`;switch(o.key){case"compare":{let B="";(b=k.value.factorScreen)!=null&&b.cycleShow?B=`freq_id = ${o.cycle} and factor_id = ${o.factor} ${o.compareType} freq_id = ${o.cycle2} and factor_id = ${o.factor2}`:B=`factor_id = ${o.factor} ${o.compareType} factor_id = ${o.factor2}`,v.set(n,`(${B})`);break}default:{let B=`factor_id = ${o.factor} and `;(s=k.value.factorScreen)!=null&&s.cycleShow&&(B=`freq_id = ${o.cycle} and factor_id = ${o.factor} and `),(o.score[0]||o.score[0]===0)&&(o.score[1]||o.score[1]===0)?B+=`score >= ${o.score[0]} and score <= ${o.score[1]}`:o.score[0]||o.score[0]===0?B+=`score >= ${o.score[0]}`:(o.score[1]||o.score[1]===0)&&(B+=`score <= ${o.score[1]}`),v.set(n,`(${B})`)}}return v},new Map([]));let r=d.sqlValue;for(const[v,o]of c){const _=new RegExp(v,"g");r=r.replace(_,o)}i.sql=r,i.sqlExpression=d.sqlValue}i.enableSql=d.sqlEnable===1?2:1,d.factorSelectExpr&&(i.factorSelectExpr=d.factorSelectExpr)}{const d=["expireDays","virtualRealDegree","yearProfitRate","impliedVolatility","levelMultiplier","turnover","volume","openInterest","optionsCpType","optionGear"],c=p.commonIndicator.reduce((s,B)=>{const{key:T,type:a,range:L,unit:A,radioType:K,radio:Q,rankRange:J}=B;if(T==="mainFlow"){let[R,M]=J,x=K==="0"?`netInfow${Q}d`:`last${Q}DayMainFlowRank`;s.push({column:x,start:R,end:M})}if(T==="auditOpinionType")s.push({column:B.key,enumType:B.enumType});else if(K==="1")i.sortBy={column:B.key,start:J[0]||null,end:J[1]||null};else if(["dividendYield","incrementRevenueLyr","netProfitGrowthRatioLyr","fiveYearRoe"].includes(T)){let[R,M]=L;["",null].includes(R)||(R=R/100),["",null].includes(M)||(M=M/100),s.push({column:B.key,start:R,end:M})}else if(a===void 0&&!d.includes(T)){let[R,M]=L;if(!["",null].includes(R))switch(A[0]){case"亿":R=R*1e8;break;case"千万":R=R*1e7;break;default:R=R;break}if(!["",null].includes(M))switch(A[1]){case"亿":M=M*1e8;break;case"千万":M=M*1e7;break;default:M=M;break}s.push({column:B.key,start:R,end:M})}return s},[]);c.length&&(i.query=c);const r=p.commonIndicator.find(({key:s})=>s==="st");r&&(i.st=r.st);const v=p.commonIndicator.find(({key:s})=>s==="tFeaturelncomes");v&&(i.netProfitQueryDto={...v,netProfit:v.netProfit*1e8});const o=p.commonIndicator.find(({key:s})=>s==="priceLevels");o&&(i.priceLevels=o.priceLevels);const _=p.commonIndicator.find(({key:s})=>s==="peTtmLevels");_&&(i.peTtmLevels=_.peTtmLevels);const n={};p.commonIndicator.forEach(s=>{const{key:B}=s;switch(B){case"expireDays":["",null].includes(s.range[0])||(n.minExpireDays=s.range[0]),["",null].includes(s.range[1])||(n.maxExpireDays=s.range[1]);break;case"virtualRealDegree":["",null].includes(s.range[0])||(n.minVirtualRealDegree=s.range[0]/100),["",null].includes(s.range[1])||(n.maxVirtualRealDegree=s.range[1]/100);break;case"yearProfitRate":["",null].includes(s.range[0])||(n.minYearProfitRate=s.range[0]/100),["",null].includes(s.range[1])||(n.maxYearProfitRate=s.range[1]/100);break;case"impliedVolatility":["",null].includes(s.range[0])||(n.minImpliedVolatility=s.range[0]/100),["",null].includes(s.range[1])||(n.maxImpliedVolatility=s.range[1]/100);break;case"levelMultiplier":["",null].includes(s.range[0])||(n.minLevelMultiplier=s.range[0]),["",null].includes(s.range[1])||(n.maxLevelMultiplier=s.range[1]);break;case"turnover":["",null].includes(s.range[0])||(n.minTurnover=s.range[0]*1e4),["",null].includes(s.range[1])||(n.maxTurnover=s.range[1]*1e4);break;case"volume":["",null].includes(s.range[0])||(n.minVolume=s.range[0]),["",null].includes(s.range[1])||(n.maxVolume=s.range[1]);break;case"openInterest":["",null].includes(s.range[0])||(n.minOpenInterest=s.range[0]),["",null].includes(s.range[1])||(n.maxOpenInterest=s.range[1]);break;case"optionsCpType":n.optionsCpType=s.optionsCpType;break;case"optionGear":["",null].includes(s.range[0])||(n.minOptionGear=s.range[0]),["",null].includes(s.range[1])||(n.maxOptionGear=s.range[1]);break}});const b=p.commonIndicator.find(({key:s})=>s==="perVolumn");b&&(i.perVolumn={type:b.radio,value:b.levels}),Object.keys(n).length&&(i.searchOptionDto={...i.searchOptionDto,...n})}return console.log("%c[st-varietySearch]: 接口传参数据生成完毕","color: green",i),i},reset:()=>{u.value={varietyMarket:null,commonOption:[],marketIds:[],customTag:[],jcTranslate:{type:null,jcList:[]},factorScreen:{list:[],sqlEnable:0,sqlValue:null,factorSelectExpr:""},commonIndicator:[]}}}),(p,i)=>{var d,c,r,v,o,_;const C=te,O=le,$=Z.ElCheckbox,F=Z.ElCheckboxGroup,y=P.ElOption,l=P.ElSelect;return e.openBlock(),e.createElementBlock("div",Et,[(d=k.value.varietyMarket)!=null&&d.show?(e.openBlock(),e.createElementBlock("div",Ct,[e.createElementVNode("div",Bt,[Tt,e.createElementVNode("span",{onClick:i[0]||(i[0]=n=>S("varietyMarket"))},"不限")]),e.createVNode(O,{modelValue:u.value.varietyMarket,"onUpdate:modelValue":i[1]||(i[1]=n=>u.value.varietyMarket=n),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(E.value,({label:n,value:b})=>(e.openBlock(),e.createBlock(C,{label:n,value:b,key:b},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(c=k.value.commonOption)!=null&&c.show&&w.value.length?(e.openBlock(),e.createElementBlock("div",Ot,[e.createElementVNode("div",$t,[It,e.createElementVNode("span",{onClick:i[2]||(i[2]=n=>S("commonOption"))},"不限")]),e.createVNode(F,{modelValue:u.value.commonOption,"onUpdate:modelValue":i[3]||(i[3]=n=>u.value.commonOption=n),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value,({label:n,value:b})=>(e.openBlock(),e.createBlock($,{label:n,value:b,key:b},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(r=k.value.marketIds)!=null&&r.show&&N.value.length?(e.openBlock(),e.createElementBlock("div",St,[e.createElementVNode("div",qt,[Mt,e.createElementVNode("span",{onClick:i[4]||(i[4]=n=>S("marketIds"))},"不限")]),e.createVNode(F,{modelValue:u.value.marketIds,"onUpdate:modelValue":i[5]||(i[5]=n=>u.value.marketIds=n),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.value,({label:n,value:b})=>(e.openBlock(),e.createBlock($,{label:n,value:b,key:b},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(v=k.value.customTag)!=null&&v.show&&f.value.length?(e.openBlock(),e.createElementBlock("div",Rt,[e.createElementVNode("div",Ut,[Ft,e.createElementVNode("span",{onClick:i[6]||(i[6]=n=>S("customTag"))},"不限")]),e.createVNode(F,{modelValue:u.value.customTag,"onUpdate:modelValue":i[7]||(i[7]=n=>u.value.customTag=n),size:"small"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,({label:n,value:b})=>(e.openBlock(),e.createBlock($,{label:n,value:b,key:b},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(o=k.value.jcTranslate)!=null&&o.show?(e.openBlock(),e.createElementBlock("div",Dt,[e.createElementVNode("div",Lt,[zt,e.createElementVNode("span",{onClick:i[8]||(i[8]=n=>S("jcTranslate"))},"不限")]),e.createVNode(O,{modelValue:u.value.jcTranslate.type,"onUpdate:modelValue":i[9]||(i[9]=n=>u.value.jcTranslate.type=n),size:"small"},{default:e.withCtx(()=>[e.createVNode(C,{value:2},{default:e.withCtx(()=>[e.createTextVNode("价差转品种")]),_:1}),e.createVNode(C,{value:1},{default:e.withCtx(()=>[e.createTextVNode("品种转价差")]),_:1})]),_:1},8,["modelValue"]),e.withDirectives(e.createVNode(l,{modelValue:u.value.jcTranslate.jcList,"onUpdate:modelValue":i[10]||(i[10]=n=>u.value.jcTranslate.jcList=n),size:"small",multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:"请选择价差品种",style:{width:"140px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,n=>(e.openBlock(),e.createBlock(y,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),[[e.vShow,u.value.jcTranslate.type===1]])])):e.createCommentVNode("",!0),(_=k.value.factorScreen)!=null&&_.show?(e.openBlock(),e.createElementBlock("div",jt,[e.createElementVNode("div",Pt,[Gt,e.createElementVNode("span",{onClick:i[11]||(i[11]=n=>S("factorScreen"))},"不限")]),e.createVNode(Qe,{data:u.value.factorScreen,"onUpdate:data":i[12]||(i[12]=n=>u.value.factorScreen=n),config:k.value.factorScreen},null,8,["data","config"])])):e.createCommentVNode("",!0),e.createVNode(wt,{data:u.value.commonIndicator,"onUpdate:data":i[13]||(i[13]=n=>u.value.commonIndicator=n),varietyMarket:u.value.varietyMarket,commonOption:u.value.commonOption,config:k.value.commonIndicator},null,8,["data","varietyMarket","commonOption","config"])])}}},At=ee._export_sfc(Yt,[["__scopeId","data-v-efd872de"]]),Jt={install(m){m.component("st-varietySearch",At)}};module.exports=Jt;
|