Merge pull request #8 from simple321vip/release-1.4

Release 1.4
This commit is contained in:
Guan
2023-03-26 19:52:24 +08:00
committed by GitHub
96 changed files with 686 additions and 588 deletions
BIN
View File
Binary file not shown.
File diff suppressed because one or more lines are too long
BIN
View File
Binary file not shown.
@@ -1 +1 @@
import{D as e}from"./index.89c8c085.js";import{l as i}from"./index.35e25221.js";const t={"Content-Type":"application/json;charsetset=UTF-8"},l=r=>e({url:"/wiki/api/v1/reader/blogs",method:"GET",params:r,paramsSerializer:a=>i.stringify(a,{arrayFormat:"repeat"})}),p=()=>e({url:"/wiki/api/v1/reader/blog_type",method:"GET",headers:t}),n=r=>e({url:"/wiki/api/v1/reader/blog/"+r,method:"GET",headers:t}),u=()=>e({url:"/wiki/api/v1/reader/blogs/publish/all",method:"GET"}),g=r=>e({url:"/wiki/api/v1/reader/blogs/publish/"+r,method:"GET"});export{p as a,g as b,n as c,l as g,u as p}; import{D as e}from"./index.9e912d9b.js";import{l as i}from"./index.26aa7e8a.js";const t={"Content-Type":"application/json;charsetset=UTF-8"},l=r=>e({url:"/wiki/api/v1/reader/blogs",method:"GET",params:r,paramsSerializer:a=>i.stringify(a,{arrayFormat:"repeat"})}),p=()=>e({url:"/wiki/api/v1/reader/blog_type",method:"GET",headers:t}),n=r=>e({url:"/wiki/api/v1/reader/blog/"+r,method:"GET",headers:t}),u=()=>e({url:"/wiki/api/v1/reader/blogs/publish/all",method:"GET"}),g=r=>e({url:"/wiki/api/v1/reader/blogs/publish/"+r,method:"GET"});export{p as a,g as b,n as c,l as g,u as p};
@@ -1 +1 @@
import{D as r}from"./index.89c8c085.js";import{l as t}from"./index.35e25221.js";const m=o=>r({url:"/bookmark/api/v1/bookmark",method:"GET",params:o,paramsSerializer:a=>t.stringify(a,{arrayFormat:"repeat"})}),s=o=>r({url:"/bookmark/api/v1/bookmark/insert",method:"PUT",data:o}),b=o=>r({url:"/bookmark/api/v1/bookmark/update",method:"POST",data:o}),u=o=>r({url:"/bookmark/api/v1/bookmark/delete/"+o,method:"DELETE"}),n=()=>r({url:"/bookmark/api/v1/bookmark/count",method:"GET"});export{n as b,u as d,s as p,m as s,b as u}; import{D as r}from"./index.9e912d9b.js";import{l as t}from"./index.26aa7e8a.js";const m=o=>r({url:"/bookmark/api/v1/bookmark",method:"GET",params:o,paramsSerializer:a=>t.stringify(a,{arrayFormat:"repeat"})}),s=o=>r({url:"/bookmark/api/v1/bookmark/insert",method:"PUT",data:o}),b=o=>r({url:"/bookmark/api/v1/bookmark/update",method:"POST",data:o}),u=o=>r({url:"/bookmark/api/v1/bookmark/delete/"+o,method:"DELETE"}),n=()=>r({url:"/bookmark/api/v1/bookmark/count",method:"GET"});export{n as b,u as d,s as p,m as s,b as u};
+1
View File
@@ -0,0 +1 @@
.b_section[data-v-f8c4f944],.bt_section[data-v-f8c4f944],.c_section[data-v-f8c4f944]{display:flex;flex-direction:column;align-items:stretch;border-right:1px solid royalblue}.title_style[data-v-f8c4f944]{display:flex}.title_style[data-v-f8c4f944] .el-input__inner{flex-direction:row;height:50px;font-size:20px;border-right:0px;border-left:0px;border-radius:0;border-top:1px solid royalblue;border-bottom:1px solid royalblue}.blog_editer[data-v-f8c4f944]{display:flex}.item_header[data-v-f8c4f944]{display:flex;align-items:center;border-top:1px solid royalblue;border-bottom:1px solid royalblue}.item_header_button[data-v-f8c4f944]{border:0px;height:50px}.side_bar[data-v-f8c4f944]{display:flex;align-items:center;justify-content:flex-start;width:20px}.item[data-v-f8c4f944]{padding:0;margin-top:3px;margin-bottom:3px;display:flex;height:50px;flex-direction:row;align-items:center;justify-items:center;user-select:none;border:0px;border-bottom:1px}.item>label[data-v-f8c4f944]{color:#333;height:50px;width:15px}.item>label[data-v-f8c4f944]:hover{cursor:move}.item>div[data-v-f8c4f944]{display:flex;flex-direction:column;align-items:flex-end;border:0px}.operate_button[data-v-f8c4f944]{border-color:#fff;width:20px;border:0px}.bt-input[data-v-f8c4f944]{margin:0;border:0px;padding-left:0;padding-right:5px;font-size:15px;overflow:hidden;line-height:50px;height:50px;width:100px;flex-grow:1;cursor:pointer;white-space:nowrap;text-overflow:ellipsis}.bt-input[data-v-f8c4f944]:hover{background-color:#ebebeb}.item>p[data-v-f8c4f944]{padding:6px 10px;color:#8e3333}.chosenClass[data-v-f8c4f944]{opacity:1;border:solid 1px red}.ghost[data-v-f8c4f944]{border:solid 1px rgb(19,41,239)!important}
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
-1
View File
@@ -1 +0,0 @@
.b_section[data-v-3f340bae],.bt_section[data-v-3f340bae],.c_section[data-v-3f340bae]{display:flex;flex-direction:column;align-items:stretch;border-right:1px solid royalblue}.title_style[data-v-3f340bae]{display:flex}.title_style[data-v-3f340bae] .el-input__inner{flex-direction:row;height:50px;font-size:20px;border-right:0px;border-left:0px;border-radius:0;border-top:1px solid royalblue;border-bottom:1px solid royalblue}.blog_editer[data-v-3f340bae]{display:flex}.item_header[data-v-3f340bae]{display:flex;align-items:center;border-top:1px solid royalblue;border-bottom:1px solid royalblue}.item_header_button[data-v-3f340bae]{border:0px;height:50px}.side_bar[data-v-3f340bae]{display:flex;align-items:center;justify-content:flex-start;width:20px}.item[data-v-3f340bae]{padding:0;margin-top:3px;margin-bottom:3px;display:flex;height:50px;flex-direction:row;align-items:center;justify-items:center;user-select:none;border:0px;border-bottom:1px}.item>label[data-v-3f340bae]{color:#333;height:50px;width:15px}.item>label[data-v-3f340bae]:hover{cursor:move}.item>div[data-v-3f340bae]{display:flex;flex-direction:column;align-items:flex-end;border:0px}.operate_button[data-v-3f340bae]{border-color:#fff;width:20px;border:0px}.bt-input[data-v-3f340bae]{margin:0;border:0px;padding-left:0;padding-right:5px;font-size:15px;overflow:hidden;line-height:50px;height:50px;width:100px;flex-grow:1;cursor:pointer;white-space:nowrap;text-overflow:ellipsis}.bt-input[data-v-3f340bae]:hover{background-color:#ebebeb}.item>p[data-v-3f340bae]{padding:6px 10px;color:#8e3333}.chosenClass[data-v-3f340bae]{opacity:1;border:solid 1px red}.ghost[data-v-3f340bae]{border:solid 1px rgb(19,41,239)!important}
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
@@ -1 +1 @@
import{D as r}from"./index.89c8c085.js";const a=()=>r({url:"/trader/api/v1/strategy_file",method:"GET"}),s=()=>r({url:"/trader/api/v1/strategy_file/load",method:"GET"}),o=t=>r({url:"/trader/api/v1/strategy_file/"+t,method:"PUT"}),i=t=>r({url:"/trader/api/v1/strategy_file/"+t,method:"PATCH"}),d=t=>r({url:"/trader/api/v1/strategy_file/"+t,method:"DELETE"}),g=()=>r({url:"/trader/api/v1/strategies",method:"GET"}),n=t=>r({url:"/trader/api/v1/strategy/"+t.strategy_name,method:"POST",data:t}),l=t=>r({url:"/trader/api/v1/strategy/init/"+t,method:"PUT"}),u=t=>r({url:"/trader/api/v1/strategy/"+t,method:"PUT"}),_=t=>r({url:"/trader/api/v1/strategy/"+t,method:"PATCH"}),y=t=>r({url:"/trader/api/v1/strategy/"+t,method:"DELETE"});export{s as a,g as b,n as c,_ as d,y as e,a as g,l as i,o as l,d as r,u as s,i as u}; import{D as r}from"./index.9e912d9b.js";const a=()=>r({url:"/trader/api/v1/strategy_file",method:"GET"}),s=()=>r({url:"/trader/api/v1/strategy_file/load",method:"GET"}),o=t=>r({url:"/trader/api/v1/strategy_file/"+t,method:"PUT"}),i=t=>r({url:"/trader/api/v1/strategy_file/"+t,method:"PATCH"}),d=t=>r({url:"/trader/api/v1/strategy_file/"+t,method:"DELETE"}),g=()=>r({url:"/trader/api/v1/strategies",method:"GET"}),n=t=>r({url:"/trader/api/v1/strategy/"+t.strategy_name,method:"POST",data:t}),l=t=>r({url:"/trader/api/v1/strategy/init/"+t,method:"PUT"}),u=t=>r({url:"/trader/api/v1/strategy/"+t,method:"PUT"}),_=t=>r({url:"/trader/api/v1/strategy/"+t,method:"PATCH"}),y=t=>r({url:"/trader/api/v1/strategy/"+t,method:"DELETE"});export{s as a,g as b,n as c,_ as d,y as e,a as g,l as i,o as l,d as r,u as s,i as u};
+1
View File
@@ -0,0 +1 @@
import{g as I,l as V,u as N,r as S}from"./cta_strategy.cff46c25.js";import{d as T,c as $,b as R,f as _,h as e,w as s,u as t,a0 as P,V as W,a1 as M,e as i,o as n,a2 as g,a3 as u,B as m,a4 as r,I as c,i as h,g as U,$ as j,S as k}from"./index.9e912d9b.js";const q={class:"bookmark"},G=h("\u6DFB\u52A0\u7B56\u7565\u6A21\u677F"),H=h(" -> "),J=h(" \u4E0A\u4F20\u7B56\u7565\u6A21\u677F "),K=U("div",{class:"el-upload__tip text-red"}," \u4E00\u6B21\u53EA\u80FD\u4E0A\u4F20\u4E00\u4E2A\u6587\u4EF6 ",-1),L={key:0,style:{cursor:"pointer"}},O={key:0,style:{cursor:"pointer"}},Q={key:0,style:{cursor:"pointer"}},ee=T({setup(X){const p=$([]),d=R(),f=()=>{I().then(l=>{p.length=0,l.data.forEach((a,y)=>{p.push(a)})})},E=l=>{d.value.clearFiles();const a=l[0];a.uid=M(),d.value.handleStart(a)},v=()=>{d.value.submit(),f()},w=l=>{l.status=2,V(l.file_name).then(a=>{a.status==200&&(l.status=1),a.status==500&&(l.status=0)})},C=l=>{N(l.class_name).then(a=>{a.status==200&&(l.status=0),a.status==500&&(l.status=1)})},b=l=>{S(l.file_name).then(a=>{f()}).catch(a=>{j({message:k("p",null,[k("i",{style:"color: teal"},a)])})})};return f(),(l,a)=>{const y=i("InfoFilled"),B=i("SuccessFilled"),x=i("WarningFilled"),A=i("CirclePlusFilled"),D=i("RemoveFilled"),z=i("Delete");return n(),_("div",q,[e(t(P),{ref_key:"upload",ref:d,class:"upload-demo",action:"http://localhost:5000/trader/api/v1/strategy_file",limit:1,"on-exceed":E,"auto-upload":!1},{trigger:s(()=>[e(t(g),{type:"primary"},{default:s(()=>[G]),_:1})]),tip:s(()=>[K]),default:s(()=>[H,e(t(g),{class:"ml-3",type:"success",onClick:v},{default:s(()=>[J]),_:1})]),_:1},512),e(t(W),{ref:"multipleTableRef",data:t(p),style:{width:"100%"}},{default:s(()=>[e(t(u),{type:"selection",width:"55"}),e(t(u),{type:"index",label:"index",width:"80"}),e(t(u),{prop:"file_name",label:"\u7B56\u7565\u6587\u4EF6\u540D",width:"200"}),e(t(u),{prop:"class_name",label:"\u7B56\u7565\u7C7B\u540D",width:"200"}),e(t(u),{prop:"status",label:"\u72B6\u6001",width:"60"},{default:s(o=>[o.row.status==0?(n(),m(t(r),{key:0,size:20},{default:s(()=>[e(y)]),_:1})):c("",!0),o.row.status==1?(n(),m(t(r),{key:1,size:20,color:"green"},{default:s(()=>[e(B)]),_:1})):c("",!0),o.row.status==2?(n(),m(t(r),{key:2,size:20,color:"gold"},{default:s(()=>[e(x)]),_:1})):c("",!0)]),_:1}),e(t(u),{prop:"url",label:"\u52A0\u8F7D",width:"60"},{default:s(o=>[o.row.status==0?(n(),_("span",L,[e(t(r),{size:20,onClick:F=>w(o.row),color:"blue"},{default:s(()=>[e(A)]),_:2},1032,["onClick"])])):c("",!0)]),_:1}),e(t(u),{prop:"url",label:"\u5378\u8F7D",width:"60"},{default:s(o=>[o.row.status==1?(n(),_("span",O,[e(t(r),{size:20,onClick:F=>C(o.row),color:"red"},{default:s(()=>[e(D)]),_:2},1032,["onClick"])])):c("",!0)]),_:1}),e(t(u),{prop:"url",label:"\u5220\u9664",width:"60"},{default:s(o=>[o.row.status==0?(n(),_("span",Q,[e(t(r),{size:20,onClick:F=>b(o.row),color:"red"},{default:s(()=>[e(z)]),_:2},1032,["onClick"])])):c("",!0)]),_:1})]),_:1},8,["data"])])}}});export{ee as default};
Binary file not shown.
-1
View File
@@ -1 +0,0 @@
import{g as I,l as N,u as R,r as T}from"./cta_strategy.2b674a22.js";import{d as V,c as $,b as S,f as _,h as e,w as s,u as t,$ as P,U,a0 as W,e as i,o as n,a1 as g,a2 as u,B as m,a3 as r,I as c,i as h,g as M,Z,R as k}from"./index.89c8c085.js";const j={class:"bookmark"},q=h("\u6DFB\u52A0\u7B56\u7565\u6A21\u677F"),G=h(" -> "),H=h(" \u4E0A\u4F20\u7B56\u7565\u6A21\u677F "),J=M("div",{class:"el-upload__tip text-red"}," \u4E00\u6B21\u53EA\u80FD\u4E0A\u4F20\u4E00\u4E2A\u6587\u4EF6 ",-1),K={key:0,style:{cursor:"pointer"}},L={key:0,style:{cursor:"pointer"}},O={key:0,style:{cursor:"pointer"}},ee=V({setup(Q){const p=$([]),d=S(),f=()=>{I().then(l=>{p.length=0,l.data.forEach((a,y)=>{p.push(a)})})},E=l=>{d.value.clearFiles();const a=l[0];a.uid=W(),d.value.handleStart(a)},v=()=>{d.value.submit(),f()},w=l=>{l.status=2,N(l.file_name).then(a=>{a.status==200&&(l.status=1),a.status==500&&(l.status=0)})},C=l=>{R(l.class_name).then(a=>{a.status==200&&(l.status=0),a.status==500&&(l.status=1)})},b=l=>{T(l.file_name).then(a=>{f()}).catch(a=>{Z({message:k("p",null,[k("i",{style:"color: teal"},a)])})})};return f(),(l,a)=>{const y=i("InfoFilled"),B=i("SuccessFilled"),x=i("WarningFilled"),A=i("CirclePlusFilled"),D=i("RemoveFilled"),z=i("Delete");return n(),_("div",j,[e(t(P),{ref_key:"upload",ref:d,class:"upload-demo",action:"http://localhost:5000/trader/api/v1/strategy_file",limit:1,"on-exceed":E,"auto-upload":!1},{trigger:s(()=>[e(t(g),{type:"primary"},{default:s(()=>[q]),_:1})]),tip:s(()=>[J]),default:s(()=>[G,e(t(g),{class:"ml-3",type:"success",onClick:v},{default:s(()=>[H]),_:1})]),_:1},512),e(t(U),{ref:"multipleTableRef",data:t(p),style:{width:"100%"}},{default:s(()=>[e(t(u),{type:"selection",width:"55"}),e(t(u),{type:"index",label:"index",width:"80"}),e(t(u),{prop:"file_name",label:"\u7B56\u7565\u6587\u4EF6\u540D",width:"200"}),e(t(u),{prop:"class_name",label:"\u7B56\u7565\u7C7B\u540D",width:"200"}),e(t(u),{prop:"status",label:"\u72B6\u6001",width:"60"},{default:s(o=>[o.row.status==0?(n(),m(t(r),{key:0,size:20},{default:s(()=>[e(y)]),_:1})):c("",!0),o.row.status==1?(n(),m(t(r),{key:1,size:20,color:"green"},{default:s(()=>[e(B)]),_:1})):c("",!0),o.row.status==2?(n(),m(t(r),{key:2,size:20,color:"gold"},{default:s(()=>[e(x)]),_:1})):c("",!0)]),_:1}),e(t(u),{prop:"url",label:"\u52A0\u8F7D",width:"60"},{default:s(o=>[o.row.status==0?(n(),_("span",K,[e(t(r),{size:20,onClick:F=>w(o.row),color:"blue"},{default:s(()=>[e(A)]),_:2},1032,["onClick"])])):c("",!0)]),_:1}),e(t(u),{prop:"url",label:"\u5378\u8F7D",width:"60"},{default:s(o=>[o.row.status==1?(n(),_("span",L,[e(t(r),{size:20,onClick:F=>C(o.row),color:"red"},{default:s(()=>[e(D)]),_:2},1032,["onClick"])])):c("",!0)]),_:1}),e(t(u),{prop:"url",label:"\u5220\u9664",width:"60"},{default:s(o=>[o.row.status==0?(n(),_("span",O,[e(t(r),{size:20,onClick:F=>b(o.row),color:"red"},{default:s(()=>[e(z)]),_:2},1032,["onClick"])])):c("",!0)]),_:1})]),_:1},8,["data"])])}}});export{ee as default};
Binary file not shown.
@@ -1 +1 @@
import{g as x,a as $,p as j,b as q}from"./blogView.0384569e.js";import{d as A,c as h,f as r,h as e,w as l,u as a,F as y,x as k,g as i,r as C,e as u,o as _,B as T,z as w,i as m}from"./index.89c8c085.js";import"./index.35e25221.js";const G=i("span",null,"\u5206\u7C7B\u641C\u7D22",-1),H=i("span",{class:"text-gray-500"},"-",-1),J=m("\u641C\u7D22"),K=m("\u521B\u4F5C"),M=m("\u5168\u90E8\u91CD\u65B0\u53D1\u5E03"),O={class:"blog_list"},P=["onClick"],Q={style:{display:"flex","justify-content":"space-between","align-items":"center"}},R={style:{"font-size":"12px",height:"16px","line-height":"16px",overflow:"hidden","text-overflow":"ellipsis"}},W=m("\u91CD\u65B0\u53D1\u5E03 "),X={class:"page_style"},oe=A({setup(Y){const s=h({key_word:"",btId:"",start_day:"",end_day:"",page_number:1,page_size:20,total:1}),p=h([]),b=h([]),B=()=>{x(s).then(n=>{p.splice(0,p.length),n.data.forEach(t=>{p.push(t)})})},v=n=>{const{href:t}=C.resolve({path:"/view",query:{bid:n}});window.open(t,"_blank")},V=()=>{const{href:n}=C.resolve({path:"/write/"});window.open(n,"_blank")},E=()=>{j()},F=n=>{q(n)};return x({}).then(n=>{n.data.forEach(t=>{p.push(t)})}),$().then(n=>{b.push({btId:"",btName:"\u9009\u62E9\u5206\u7C7B"}),n.data.forEach(t=>{const f={btId:t.btId,btName:t.btName};b.push(f)})}),(n,t)=>{const f=u("el-input"),d=u("el-col"),D=u("el-option"),N=u("el-select"),g=u("el-form-item"),I=u("el-date-picker"),z=u("el-time-picker"),c=u("el-button"),U=u("el-form"),L=u("el-pagination");return _(),r(y,null,[e(U,{model:a(s),"label-width":"120px"},{default:l(()=>[e(g,{label:"\u5173\u952E\u5B57\u641C\u7D22"},{default:l(()=>[e(d,{span:7},{default:l(()=>[e(f,{modelValue:a(s).key_word,"onUpdate:modelValue":t[0]||(t[0]=o=>a(s).key_word=o)},null,8,["modelValue"])]),_:1}),e(d,{span:1}),e(d,{span:10},{default:l(()=>[G,e(N,{modelValue:a(s).btId,"onUpdate:modelValue":t[1]||(t[1]=o=>a(s).btId=o),placeholder:"\u9009\u62E9\u5206\u7C7B"},{default:l(()=>[(_(!0),r(y,null,k(a(b),o=>(_(),T(D,{key:o.btId,label:o.btName,value:o.btId},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),e(g,{label:"\u521B\u4F5C\u65F6\u95F4"},{default:l(()=>[e(d,{span:7},{default:l(()=>[e(I,{modelValue:a(s).start_day,"onUpdate:modelValue":t[2]||(t[2]=o=>a(s).start_day=o),type:"date",placeholder:"\u5F00\u59CB\u65F6\u95F4",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),e(d,{span:2,class:"text-center"},{default:l(()=>[H]),_:1}),e(d,{span:7},{default:l(()=>[e(z,{modelValue:a(s).end_day,"onUpdate:modelValue":t[3]||(t[3]=o=>a(s).end_day=o),placeholder:"\u7ED3\u675F\u65F6\u95F4",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),e(d,{span:6,style:{"text-align":"center"}},{default:l(()=>[e(c,{type:"primary",onClick:B},{default:l(()=>[J]),_:1})]),_:1})]),_:1})]),_:1},8,["model"]),e(c,{onClick:V},{default:l(()=>[K]),_:1}),e(c,{onClick:E},{default:l(()=>[M]),_:1}),(_(!0),r(y,null,k(a(p),o=>(_(),r("div",O,[i("h3",{style:{cursor:"pointer",width:"min-content","white-space":"nowrap"},onClick:S=>v(o.bid)},w(o.title),9,P),i("div",Q,[i("p",R,w(o.content),1),e(c,{size:"small",type:"success",onClick:S=>F(o.bid)},{default:l(()=>[W]),_:2},1032,["onClick"])])]))),256)),i("div",X,[e(L,{small:"",background:"",layout:"prev, pager, next",total:50,class:"mt-4"})])],64)}}});export{oe as default}; import{g as x,a as $,p as j,b as q}from"./blogView.38a54248.js";import{d as A,c as h,f as r,h as e,w as l,u as a,F as y,x as k,g as i,r as C,e as u,o as _,B as T,z as w,i as m}from"./index.9e912d9b.js";import"./index.26aa7e8a.js";const G=i("span",null,"\u5206\u7C7B\u641C\u7D22",-1),H=i("span",{class:"text-gray-500"},"-",-1),J=m("\u641C\u7D22"),K=m("\u521B\u4F5C"),M=m("\u5168\u90E8\u91CD\u65B0\u53D1\u5E03"),O={class:"blog_list"},P=["onClick"],Q={style:{display:"flex","justify-content":"space-between","align-items":"center"}},R={style:{"font-size":"12px",height:"16px","line-height":"16px",overflow:"hidden","text-overflow":"ellipsis"}},W=m("\u91CD\u65B0\u53D1\u5E03 "),X={class:"page_style"},oe=A({setup(Y){const s=h({key_word:"",btId:"",start_day:"",end_day:"",page_number:1,page_size:20,total:1}),p=h([]),b=h([]),B=()=>{x(s).then(n=>{p.splice(0,p.length),n.data.forEach(t=>{p.push(t)})})},v=n=>{const{href:t}=C.resolve({path:"/view",query:{bid:n}});window.open(t,"_blank")},V=()=>{const{href:n}=C.resolve({path:"/write/"});window.open(n,"_blank")},E=()=>{j()},F=n=>{q(n)};return x({}).then(n=>{n.data.forEach(t=>{p.push(t)})}),$().then(n=>{b.push({btId:"",btName:"\u9009\u62E9\u5206\u7C7B"}),n.data.forEach(t=>{const f={btId:t.btId,btName:t.btName};b.push(f)})}),(n,t)=>{const f=u("el-input"),d=u("el-col"),D=u("el-option"),N=u("el-select"),g=u("el-form-item"),I=u("el-date-picker"),z=u("el-time-picker"),c=u("el-button"),U=u("el-form"),L=u("el-pagination");return _(),r(y,null,[e(U,{model:a(s),"label-width":"120px"},{default:l(()=>[e(g,{label:"\u5173\u952E\u5B57\u641C\u7D22"},{default:l(()=>[e(d,{span:7},{default:l(()=>[e(f,{modelValue:a(s).key_word,"onUpdate:modelValue":t[0]||(t[0]=o=>a(s).key_word=o)},null,8,["modelValue"])]),_:1}),e(d,{span:1}),e(d,{span:10},{default:l(()=>[G,e(N,{modelValue:a(s).btId,"onUpdate:modelValue":t[1]||(t[1]=o=>a(s).btId=o),placeholder:"\u9009\u62E9\u5206\u7C7B"},{default:l(()=>[(_(!0),r(y,null,k(a(b),o=>(_(),T(D,{key:o.btId,label:o.btName,value:o.btId},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),e(g,{label:"\u521B\u4F5C\u65F6\u95F4"},{default:l(()=>[e(d,{span:7},{default:l(()=>[e(I,{modelValue:a(s).start_day,"onUpdate:modelValue":t[2]||(t[2]=o=>a(s).start_day=o),type:"date",placeholder:"\u5F00\u59CB\u65F6\u95F4",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),e(d,{span:2,class:"text-center"},{default:l(()=>[H]),_:1}),e(d,{span:7},{default:l(()=>[e(z,{modelValue:a(s).end_day,"onUpdate:modelValue":t[3]||(t[3]=o=>a(s).end_day=o),placeholder:"\u7ED3\u675F\u65F6\u95F4",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),e(d,{span:6,style:{"text-align":"center"}},{default:l(()=>[e(c,{type:"primary",onClick:B},{default:l(()=>[J]),_:1})]),_:1})]),_:1})]),_:1},8,["model"]),e(c,{onClick:V},{default:l(()=>[K]),_:1}),e(c,{onClick:E},{default:l(()=>[M]),_:1}),(_(!0),r(y,null,k(a(p),o=>(_(),r("div",O,[i("h3",{style:{cursor:"pointer",width:"min-content","white-space":"nowrap"},onClick:S=>v(o.bid)},w(o.title),9,P),i("div",Q,[i("p",R,w(o.content),1),e(c,{size:"small",type:"success",onClick:S=>F(o.bid)},{default:l(()=>[W]),_:2},1032,["onClick"])])]))),256)),i("div",X,[e(L,{small:"",background:"",layout:"prev, pager, next",total:50,class:"mt-4"})])],64)}}});export{oe as default};
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
-1
View File
@@ -1 +0,0 @@
.date-cell-holiday[data-v-c6866494]{background:#dfd}.date-cell-event[data-v-c6866494]{background:yellow}
@@ -1 +1 @@
import{d as j,c as q,b as m,l as z,q as P,Z as p,R as o,f as C,g as D,h as e,w as n,u as d,F as B,e as s,o as b,x as A,B as E,X as G,Y as H,V as J}from"./index.89c8c085.js";import{s as K,g as O,a as Q,c as T}from"./strategy.ca620cdb.js";import{t as W}from"./number.46c8fb59.js";const ee={class:"demo-collapse"},le={style:{cursor:"pointer"}},te=D("label",null," concel subscribe",-1),ue=j({setup(oe){const g=J(),_=K(),w=q([]),v=m(),y=m(),x=m(0),k=m(["1"]),f=m(""),I=()=>{!v.value||Q(v.value).then(l=>{p({message:o("p",null,[o("i",{style:"color: green"},"\u884C\u60C5\u8BA2\u9605\u6210\u529F")])}),_.select_subscribe_vt_symbols(),h()}).catch(l=>{p({message:o("p",null,[o("i",{style:"color: red"},"\u884C\u60C5\u8BA2\u9605\u5931\u8D25")])})})},M=()=>{!f.value||T(f.value).then(l=>{p({message:o("p",null,[o("i",{style:"color: green"},"\u53D6\u6D88\u8BA2\u9605\u6210\u529F")])}),h()}).catch(l=>{p({message:o("p",null,[o("i",{style:"color: red"},"\u53D6\u6D88\u8BA2\u9605\u5931\u8D25")])})})},N=(l,t)=>{let a=(l.last_price-l.open_price)/l.open_price;return W(a)},R=(l,t,a,i)=>{f.value=l.symbol+"."+l.exchange,console.log(f.value)},S=(l,t,a,i)=>{},U=(l,t,a)=>{var r;let i=(r=g==null?void 0:g.proxy)==null?void 0:r.$refs.contextmenu;a.preventDefault(),i.show({top:a.clientY,left:a.clientX}),window.onclick=()=>{i.hide()}},h=()=>(O().then(l=>{w.length=0,l.data.ticks.forEach(t=>{w.push(t)})}),h);return z(()=>{clearInterval(x.value),x.value=window.setInterval(h(),3e3)}),P(()=>{window.clearInterval(x.value)}),_.select_subscribe_vt_symbols().catch(l=>{p({message:o("p",null,[o("i",{style:"color: teal"},"\u8BFB\u53D6vt_symbols\u5931\u8D25")])})}),_.select_vt_symbols().catch(l=>{p({message:o("p",null,[o("i",{style:"color: teal"},"\u8BFB\u53D6vt_symbols\u5931\u8D25")])})}),_.select_exchanges().catch(l=>{p({message:o("p",null,[o("i",{style:"color: teal"},"\u8BFB\u53D6exchanges\u5931\u8D25")])})}),(l,t)=>{const a=s("el-option"),i=s("el-select"),r=s("el-col"),L=s("ZoomIn"),V=s("el-icon"),Z=s("el-row"),F=s("el-collapse-item"),u=s("el-table-column"),X=s("el-table"),Y=s("el-collapse"),$=s("CircleClose");return b(),C(B,null,[D("div",ee,[e(Y,{modelValue:k.value,"onUpdate:modelValue":t[3]||(t[3]=c=>k.value=c)},{default:n(()=>[e(F,{title:"\u8BA2\u9605\u884C\u60C5",name:"2"},{default:n(()=>[e(Z,null,{default:n(()=>[e(r,{span:4},{default:n(()=>[e(i,{modelValue:y.value,"onUpdate:modelValue":t[0]||(t[0]=c=>y.value=c),placeholder:"select a exchange"},{default:n(()=>[(b(!0),C(B,null,A(d(_).strategy.exchanges,c=>(b(),E(a,{value:c},null,8,["value"]))),256))]),_:1},8,["modelValue"])]),_:1}),e(r,{span:1}),e(r,{span:4},{default:n(()=>[e(i,{modelValue:v.value,"onUpdate:modelValue":t[1]||(t[1]=c=>v.value=c),placeholder:"select a vt_symbol"},{default:n(()=>[(b(!0),C(B,null,A(d(_).strategy.vt_symbols.get(y.value),c=>(b(),E(a,{value:c},null,8,["value"]))),256))]),_:1},8,["modelValue"])]),_:1}),e(r,{span:1}),e(r,{span:4},{default:n(()=>[D("span",le,[e(V,{size:25,onClick:t[2]||(t[2]=c=>I())},{default:n(()=>[e(L)]),_:1})])]),_:1})]),_:1})]),_:1}),e(F,{title:"\u8BA2\u9605\u4E00\u89C8",name:"1"},{default:n(()=>[e(X,{onRowContextmenu:U,onCellMouseEnter:R,onCellMouseLeave:S,data:d(w),style:{width:"100%"}},{default:n(()=>[e(u,{fixed:"",prop:"symbol",label:"symbol",width:"80"}),e(u,{prop:"exchange",label:"exchange",width:"100"}),e(u,{prop:"name",label:"Name",width:"120"}),e(u,{prop:"last_price",label:"last_price",width:"120"}),e(u,{prop:"volume",label:"volume",width:"100"}),e(u,{prop:"open_price",label:"open_price",width:"120"}),e(u,{prop:"high_price",label:"high_price",width:"120"}),e(u,{prop:"low_price",label:"low_price",width:"100"}),e(u,{prop:"differ",label:"differ",width:"70"}),e(u,{prop:"differ_percent",label:"differ_per",formatter:N,width:"120"})]),_:1},8,["data"])]),_:1})]),_:1},8,["modelValue"])]),e(d(H),{"auto-ajust-placement":"",ref:"contextmenu"},{default:n(()=>[e(d(G),{onClick:M},{default:n(()=>[e(V,{class:"contextmenu-icon"},{default:n(()=>[e($)]),_:1}),te]),_:1})]),_:1},512)],64)}}});export{ue as default}; import{d as q,c as z,b as m,l as P,q as W,$ as p,S as o,f as C,g as D,h as e,w as n,u as d,F as B,e as s,o as b,x as A,B as E,Y as X,Z as G,W as H}from"./index.9e912d9b.js";import{s as J,g as K,a as O,c as Q}from"./strategy.e0f2bc38.js";import{t as T}from"./number.46c8fb59.js";const ee={class:"demo-collapse"},le={style:{cursor:"pointer"}},te=D("label",null," concel subscribe",-1),ue=q({setup(oe){const g=H(),_=J(),w=z([]),v=m(),y=m(),x=m(0),k=m(["1"]),f=m(""),I=()=>{!v.value||O(v.value).then(l=>{p({message:o("p",null,[o("i",{style:"color: green"},"\u884C\u60C5\u8BA2\u9605\u6210\u529F")])}),_.select_subscribe_vt_symbols(),h()}).catch(l=>{p({message:o("p",null,[o("i",{style:"color: red"},"\u884C\u60C5\u8BA2\u9605\u5931\u8D25")])})})},M=()=>{!f.value||Q(f.value).then(l=>{p({message:o("p",null,[o("i",{style:"color: green"},"\u53D6\u6D88\u8BA2\u9605\u6210\u529F")])}),h()}).catch(l=>{p({message:o("p",null,[o("i",{style:"color: red"},"\u53D6\u6D88\u8BA2\u9605\u5931\u8D25")])})})},S=(l,t)=>{let a=(l.last_price-l.open_price)/l.open_price;return T(a)},N=(l,t,a,i)=>{f.value=l.symbol+"."+l.exchange,console.log(f.value)},U=(l,t,a,i)=>{},L=(l,t,a)=>{var r;let i=(r=g==null?void 0:g.proxy)==null?void 0:r.$refs.contextmenu;a.preventDefault(),i.show({top:a.clientY,left:a.clientX}),window.onclick=()=>{i.hide()}},h=()=>(K().then(l=>{w.length=0,l.data.ticks.forEach(t=>{w.push(t)})}),h);return P(()=>{clearInterval(x.value),x.value=window.setInterval(h(),3e3)}),W(()=>{window.clearInterval(x.value)}),_.select_subscribe_vt_symbols().catch(l=>{p({message:o("p",null,[o("i",{style:"color: teal"},"\u8BFB\u53D6vt_symbols\u5931\u8D25")])})}),_.select_vt_symbols().catch(l=>{p({message:o("p",null,[o("i",{style:"color: teal"},"\u8BFB\u53D6vt_symbols\u5931\u8D25")])})}),_.select_exchanges().catch(l=>{p({message:o("p",null,[o("i",{style:"color: teal"},"\u8BFB\u53D6exchanges\u5931\u8D25")])})}),(l,t)=>{const a=s("el-option"),i=s("el-select"),r=s("el-col"),R=s("ZoomIn"),V=s("el-icon"),Z=s("el-row"),F=s("el-collapse-item"),u=s("el-table-column"),$=s("el-table"),Y=s("el-collapse"),j=s("CircleClose");return b(),C(B,null,[D("div",ee,[e(Y,{modelValue:k.value,"onUpdate:modelValue":t[3]||(t[3]=c=>k.value=c)},{default:n(()=>[e(F,{title:"\u8BA2\u9605\u884C\u60C5",name:"2"},{default:n(()=>[e(Z,null,{default:n(()=>[e(r,{span:4},{default:n(()=>[e(i,{modelValue:y.value,"onUpdate:modelValue":t[0]||(t[0]=c=>y.value=c),placeholder:"select a exchange"},{default:n(()=>[(b(!0),C(B,null,A(d(_).strategy.exchanges,c=>(b(),E(a,{value:c},null,8,["value"]))),256))]),_:1},8,["modelValue"])]),_:1}),e(r,{span:1}),e(r,{span:4},{default:n(()=>[e(i,{modelValue:v.value,"onUpdate:modelValue":t[1]||(t[1]=c=>v.value=c),placeholder:"select a vt_symbol"},{default:n(()=>[(b(!0),C(B,null,A(d(_).strategy.vt_symbols.get(y.value),c=>(b(),E(a,{value:c},null,8,["value"]))),256))]),_:1},8,["modelValue"])]),_:1}),e(r,{span:1}),e(r,{span:4},{default:n(()=>[D("span",le,[e(V,{size:25,onClick:t[2]||(t[2]=c=>I())},{default:n(()=>[e(R)]),_:1})])]),_:1})]),_:1})]),_:1}),e(F,{title:"\u8BA2\u9605\u4E00\u89C8",name:"1"},{default:n(()=>[e($,{onRowContextmenu:L,onCellMouseEnter:N,onCellMouseLeave:U,data:d(w),style:{width:"100%"}},{default:n(()=>[e(u,{fixed:"",prop:"symbol",label:"symbol",width:"80"}),e(u,{prop:"exchange",label:"exchange",width:"100"}),e(u,{prop:"name",label:"Name",width:"120"}),e(u,{prop:"last_price",label:"last_price",width:"120"}),e(u,{prop:"volume",label:"volume",width:"100"}),e(u,{prop:"open_price",label:"open_price",width:"120"}),e(u,{prop:"high_price",label:"high_price",width:"120"}),e(u,{prop:"low_price",label:"low_price",width:"100"}),e(u,{prop:"differ",label:"differ",width:"70"}),e(u,{prop:"differ_percent",label:"differ_per",formatter:S,width:"120"})]),_:1},8,["data"])]),_:1})]),_:1},8,["modelValue"])]),e(d(G),{"auto-ajust-placement":"",ref:"contextmenu"},{default:n(()=>[e(d(X),{onClick:M},{default:n(()=>[e(V,{class:"contextmenu-icon"},{default:n(()=>[e(j)]),_:1}),te]),_:1})]),_:1},512)],64)}}});export{ue as default};
Binary file not shown.
Binary file not shown.
Binary file not shown.
-1
View File
@@ -1 +0,0 @@
import{v as q,D as T,_ as J,d as K,c as g,b as m,l as Q,f as i,H as X,B as Y,w as a,I as L,h as l,u as o,F as S,e as n,G as Z,o as u,g as r,z as c,x as ee,i as E,p as te,j as le,m as oe}from"./index.89c8c085.js";import{t as v}from"./date.86e91942.js";import{s as ae}from"./settings.3d3ee3ea.js";import"./number.46c8fb59.js";const ne=q.create(),se=()=>ne({url:"https://holidays-jp.github.io/api/v1/2023/date.json",method:"GET"}),de={"Content-Type":"application/json;charsetset=UTF-8"},ue=_=>T({url:"/calendar/api/v1/event",method:"PUT",data:_}),ie=()=>T({url:"/calendar/api/v1/event",method:"GET",headers:de});const U=_=>(te("data-v-c6866494"),_=_(),le(),_),ce={key:0,class:"date-cell-holiday"},re=["onClick"],_e=U(()=>r("br",null,null,-1)),pe={key:1,class:"date-cell"},me=["onClick"],ve=["onClick"],fe={key:2,class:"date-cell-event"},he=U(()=>r("span",null,"\u5F85\u529E\u4E8B\u9879",-1)),be={class:"dialog-footer"},ge=E("Cancel"),ke=E(" Confirm "),ye=K({setup(_){const f=ae(),k=g({}),y=g([]),x=g({}),d=g({event_date:"",title:"",event_info:""}),D=m(new Date),p=m(!1),h="140px",w=m(!1),B=m(!0),F=m([]),$=["email","messageBox","\u624B\u673A\u77ED\u4FE1","\u5FAE\u4FE1\u901A\u77E5"],C=s=>{d.event_date=v(s),p.value=!0},N=async()=>{await ue(d).then(()=>{}),p.value=!1,O("refresh")},O=s=>{s==="refresh"&&(f.settings.isLoading=!0,f.settings.isRouterAlive=!1,oe(()=>{f.settings.isRouterAlive=!0,f.settings.isLoading=!1}))};return Q(async()=>{await se().then(s=>{Object.keys(s.data).forEach(t=>{k[t]=s.data[t]})}),await ie().then(s=>{y.length=0,s.data.forEach(t=>{y.push(t),x[t.event_date]=t.title})}),w.value=!0,B.value=!1}),(s,t)=>{const G=n("el-calendar"),V=n("el-table-column"),R=n("el-table"),b=n("el-form-item"),A=n("el-input"),z=n("el-checkbox"),H=n("el-checkbox-group"),M=n("el-form"),j=n("el-button"),P=n("el-dialog"),W=Z("loading");return u(),i(S,null,[w.value?X((u(),Y(G,{key:0,modelValue:D.value,"onUpdate:modelValue":t[0]||(t[0]=e=>D.value=e),"element-loading-text":"\u4E3B\u4EBA\uFF0C\u522B\u7740\u6025\u6211\u5728\u52AA\u529B\u52A0\u8F7D\u4E2D^_^"},{dateCell:a(({data:e})=>[Object.keys(o(k)).includes(o(v)(e.date))?(u(),i("div",ce,[r("span",{style:{color:"red"},onClick:I=>C(e.date)},c(e.date.getDate()),9,re),_e,r("span",null,c(o(k)[o(v)(e.date)]),1)])):(u(),i("div",pe,[e.date.getDay()==0||e.date.getDay()==6?(u(),i("span",{key:0,style:{color:"red"},onClick:I=>C(e.date)},c(e.date.getDate()),9,me)):(u(),i("span",{key:1,onClick:I=>C(e.date)},c(e.date.getDate()),9,ve))])),Object.keys(o(x)).includes(o(v)(e.date))?(u(),i("div",fe,[r("span",null,c(o(x)[o(v)(e.date)]),1)])):L("",!0)]),_:1},8,["modelValue"])),[[W,B.value]]):L("",!0),he,l(R,{data:o(y)},{default:a(()=>[l(V,{property:"event_date",label:"Date",width:"150"}),l(V,{property:"title",label:"title",width:"200"}),l(V,{property:"event_info",label:"eventInfo"})]),_:1},8,["data"]),l(P,{modelValue:p.value,"onUpdate:modelValue":t[5]||(t[5]=e=>p.value=e),title:"\u5F85\u529E\u4E8B\u9879"},{footer:a(()=>[r("span",be,[l(j,{onClick:t[4]||(t[4]=e=>p.value=!1)},{default:a(()=>[ge]),_:1}),l(j,{type:"primary",onClick:N},{default:a(()=>[ke]),_:1})])]),default:a(()=>[l(M,{model:o(d)},{default:a(()=>[l(b,{label:"\u65E5\u671F","label-width":h},{default:a(()=>[r("span",null,c(o(d).event_date),1)]),_:1}),l(b,{label:"title","label-width":h},{default:a(()=>[l(A,{modelValue:o(d).title,"onUpdate:modelValue":t[1]||(t[1]=e=>o(d).title=e),autocomplete:"off"},null,8,["modelValue"])]),_:1}),l(b,{label:"eventInfo","label-width":h},{default:a(()=>[l(A,{modelValue:o(d).event_info,"onUpdate:modelValue":t[2]||(t[2]=e=>o(d).event_info=e),autocomplete:"off",type:"textarea"},null,8,["modelValue"])]),_:1}),l(b,{label:"alert","label-width":h},{default:a(()=>[l(H,{modelValue:F.value,"onUpdate:modelValue":t[3]||(t[3]=e=>F.value=e),min:0,max:2},{default:a(()=>[(u(),i(S,null,ee($,e=>l(z,{key:e,label:e},{default:a(()=>[E(c(e),1)]),_:2},1032,["label"])),64))]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])],64)}}});var De=J(ye,[["__scopeId","data-v-c6866494"]]);export{De as default};
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
+1
View File
@@ -0,0 +1 @@
import{v as q,D as T,_ as J,d as K,c as g,b as p,l as Q,f as u,H as X,B as Y,w as a,I as L,h as l,u as o,F as S,e as n,G as Z,o as i,g as c,z as r,x as ee,i as E,p as te,j as le,m as oe}from"./index.9e912d9b.js";import{t as f}from"./date.86e91942.js";import{s as ae}from"./settings.89e47c65.js";import"./number.46c8fb59.js";const ne=q.create(),se=()=>ne({url:"https://holidays-jp.github.io/api/v1/2023/date.json",method:"GET"}),de={"Content-Type":"application/json;charsetset=UTF-8"},ie=_=>T({url:"/calendar/api/v1/event",method:"PUT",data:_}),ue=()=>T({url:"/calendar/api/v1/event",method:"GET",headers:de});const U=_=>(te("data-v-0e3dfbc2"),_=_(),le(),_),re={key:0,class:"date-cell-holiday"},ce=["onClick"],_e=U(()=>c("br",null,null,-1)),me={key:1,class:"date-cell"},pe=["onClick"],fe=["onClick"],ve={key:2,class:"date-cell-event"},he=U(()=>c("span",null,"\u5F85\u529E\u4E8B\u9879",-1)),be={class:"dialog-footer"},ge=E("Cancel"),ke=E(" Confirm "),ye=K({setup(_){const v=ae(),k=g({}),y=g([]),x=g({}),d=g({reminder_date:"",title:"",reminder_info:""}),D=p(new Date),m=p(!1),h="140px",w=p(!1),B=p(!0),F=p([]),$=["email","messageBox","\u624B\u673A\u77ED\u4FE1","\u5FAE\u4FE1\u901A\u77E5"],C=s=>{d.reminder_date=f(s),m.value=!0},N=async()=>{await ie(d).then(()=>{}),m.value=!1,O("refresh")},O=s=>{s==="refresh"&&(v.settings.isLoading=!0,v.settings.isRouterAlive=!1,oe(()=>{v.settings.isRouterAlive=!0,v.settings.isLoading=!1}))};return Q(async()=>{await se().then(s=>{Object.keys(s.data).forEach(t=>{k[t]=s.data[t]})}),await ue().then(s=>{y.length=0,s.data.forEach(t=>{y.push(t),x[t.reminder_date]=t.title})}),w.value=!0,B.value=!1}),(s,t)=>{const G=n("el-calendar"),V=n("el-table-column"),R=n("el-table"),b=n("el-form-item"),A=n("el-input"),z=n("el-checkbox"),H=n("el-checkbox-group"),M=n("el-form"),j=n("el-button"),P=n("el-dialog"),W=Z("loading");return i(),u(S,null,[w.value?X((i(),Y(G,{key:0,modelValue:D.value,"onUpdate:modelValue":t[0]||(t[0]=e=>D.value=e),"element-loading-text":"\u4E3B\u4EBA\uFF0C\u522B\u7740\u6025\u6211\u5728\u52AA\u529B\u52A0\u8F7D\u4E2D^_^"},{dateCell:a(({data:e})=>[Object.keys(o(k)).includes(o(f)(e.date))?(i(),u("div",re,[c("span",{style:{color:"red"},onClick:I=>C(e.date)},r(e.date.getDate()),9,ce),_e,c("span",null,r(o(k)[o(f)(e.date)]),1)])):(i(),u("div",me,[e.date.getDay()==0||e.date.getDay()==6?(i(),u("span",{key:0,style:{color:"red"},onClick:I=>C(e.date)},r(e.date.getDate()),9,pe)):(i(),u("span",{key:1,onClick:I=>C(e.date)},r(e.date.getDate()),9,fe))])),Object.keys(o(x)).includes(o(f)(e.date))?(i(),u("div",ve,[c("span",null,r(o(x)[o(f)(e.date)]),1)])):L("",!0)]),_:1},8,["modelValue"])),[[W,B.value]]):L("",!0),he,l(R,{data:o(y)},{default:a(()=>[l(V,{property:"reminder_date",label:"Date",width:"150"}),l(V,{property:"title",label:"title",width:"200"}),l(V,{property:"reminder_info",label:"eventInfo"})]),_:1},8,["data"]),l(P,{modelValue:m.value,"onUpdate:modelValue":t[5]||(t[5]=e=>m.value=e),title:"\u5F85\u529E\u4E8B\u9879"},{footer:a(()=>[c("span",be,[l(j,{onClick:t[4]||(t[4]=e=>m.value=!1)},{default:a(()=>[ge]),_:1}),l(j,{type:"primary",onClick:N},{default:a(()=>[ke]),_:1})])]),default:a(()=>[l(M,{model:o(d)},{default:a(()=>[l(b,{label:"\u65E5\u671F","label-width":h},{default:a(()=>[c("span",null,r(o(d).reminder_date),1)]),_:1}),l(b,{label:"title","label-width":h},{default:a(()=>[l(A,{modelValue:o(d).title,"onUpdate:modelValue":t[1]||(t[1]=e=>o(d).title=e),autocomplete:"off"},null,8,["modelValue"])]),_:1}),l(b,{label:"eventInfo","label-width":h},{default:a(()=>[l(A,{modelValue:o(d).reminder_info,"onUpdate:modelValue":t[2]||(t[2]=e=>o(d).reminder_info=e),autocomplete:"off",type:"textarea"},null,8,["modelValue"])]),_:1}),l(b,{label:"alert","label-width":h},{default:a(()=>[l(H,{modelValue:F.value,"onUpdate:modelValue":t[3]||(t[3]=e=>F.value=e),min:0,max:2},{default:a(()=>[(i(),u(S,null,ee($,e=>l(z,{key:e,label:e},{default:a(()=>[E(r(e),1)]),_:2},1032,["label"])),64))]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])],64)}}});var De=J(ye,[["__scopeId","data-v-0e3dfbc2"]]);export{De as default};
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
import{_ as e,f as o,o as _}from"./index.89c8c085.js";const a={},n={class:"dialog-footer"};function r(c,s){return _(),o("span",n," \u5F53\u4F60\u770B\u5230\u4E86\uFF0C\u8FD9\u4E2A\u9875\u9762\uFF0C\u8FD9\u8868\u793A\u4E86\uFF0C\u4F60\u901A\u8FC7\u767E\u5EA6\u626B\u63CF\u767B\u9646\u4E86\u6211\u7684\u79D8\u5BC6\u57FA\u5730\uFF0C\u4F46\u662F\u5F88\u9057\u61BE\u7684\u544A\u8BC9\u4F60\uFF0C\u6211\u4EEC\u5C06\u4EE5\u975E\u6CD5\u767B\u5F55\u7684\u65B9\u5F0F\u5904\u7406\u4F60\u7684\u8BF7\u6C42\uFF0C88 ")}var d=e(a,[["render",r]]);export{d as default}; import{_ as e,f as o,o as _}from"./index.9e912d9b.js";const a={},n={class:"dialog-footer"};function r(c,s){return _(),o("span",n," \u5F53\u4F60\u770B\u5230\u4E86\uFF0C\u8FD9\u4E2A\u9875\u9762\uFF0C\u8FD9\u8868\u793A\u4E86\uFF0C\u4F60\u901A\u8FC7\u767E\u5EA6\u626B\u63CF\u767B\u9646\u4E86\u6211\u7684\u79D8\u5BC6\u57FA\u5730\uFF0C\u4F46\u662F\u5F88\u9057\u61BE\u7684\u544A\u8BC9\u4F60\uFF0C\u6211\u4EEC\u5C06\u4EE5\u975E\u6CD5\u767B\u5F55\u7684\u65B9\u5F0F\u5904\u7406\u4F60\u7684\u8BF7\u6C42\uFF0C88 ")}var d=e(a,[["render",r]]);export{d as default};
@@ -1 +1 @@
import{d as s,B as a,w as n,a4 as c,Z as l,e as i,o as r,i as p}from"./index.89c8c085.js";const _=p("Click to open the Message Box"),f=s({setup(m){const t=()=>{c.alert("This is a message","Title",{confirmButtonText:"OK",callback:e=>{l({type:"info",message:`action: ${e}`})}})};return(e,u)=>{const o=i("el-button");return r(),a(o,{text:"",onClick:t},{default:n(()=>[_]),_:1})}}});export{f as default}; import{d as s,B as a,w as n,a5 as c,$ as l,e as i,o as r,i as p}from"./index.9e912d9b.js";const _=p("Click to open the Message Box"),f=s({setup(m){const t=()=>{c.alert("This is a message","Title",{confirmButtonText:"OK",callback:e=>{l({type:"info",message:`action: ${e}`})}})};return(e,u)=>{const o=i("el-button");return r(),a(o,{text:"",onClick:t},{default:n(()=>[_]),_:1})}}});export{f as default};
@@ -1 +1 @@
.dashboard-line-box .dashboard-line[data-v-19c5604b]{background-color:#fff;height:360px;width:100%}.dashboard-line-box .dashboard-line-title[data-v-19c5604b]{font-weight:600;margin-bottom:12px}.commit-table[data-v-554f7f6a]{background-color:#fff;height:400px}.commit-table-title[data-v-554f7f6a]{font-weight:600;margin-bottom:12px}.commit-table .log-item[data-v-554f7f6a]{display:flex;justify-content:space-between;margin-top:14px}.commit-table .log-item .key-box[data-v-554f7f6a]{justify-content:center}.commit-table .log-item .key[data-v-554f7f6a]{display:inline-flex;justify-content:center;align-items:center;width:20px;height:20px;border-radius:50%;background:#F0F2F5;text-align:center;color:#000000a6}.commit-table .log-item .key.top[data-v-554f7f6a]{background:#314659;color:#fff}.commit-table .log-item .message[data-v-554f7f6a]{color:#000000a6}.commit-table .log-item .form[data-v-554f7f6a]{color:#000000a6;margin-left:12px}.commit-table .log-item .flex[data-v-554f7f6a]{line-height:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.commit-table .log-item .flex-1[data-v-554f7f6a]{flex:1}.commit-table .log-item .flex-2[data-v-554f7f6a]{flex:2}.commit-table .log-item .flex-3[data-v-554f7f6a]{flex:3}.commit-table .log-item .flex-4[data-v-554f7f6a]{flex:4}.commit-table .log-item .flex-5[data-v-554f7f6a]{flex:5}.page[data-v-44c6ce06]{background:#f0f2f5;padding:0}.page .gva-card-box[data-v-44c6ce06]{padding:12px 16px}.page .gva-card-box+.gva-card-box[data-v-44c6ce06]{padding-top:0}.page .gva-card[data-v-44c6ce06]{box-sizing:border-box;background-color:#fff;border-radius:2px;height:auto;padding:26px 30px;overflow:hidden;box-shadow:0 0 7px 1px #00000008}.page .gva-top-card[data-v-44c6ce06]{height:260px;display:flex;align-items:center;justify-content:space-between;color:#777}.page .gva-top-card-left[data-v-44c6ce06]{height:100%;display:flex;flex-direction:column}.page .gva-top-card-left-title[data-v-44c6ce06]{font-size:22px;color:#343844}.page .gva-top-card-left-dot[data-v-44c6ce06]{font-size:16px;color:#6b7687;margin-top:24px}.page .gva-top-card-left-rows[data-v-44c6ce06]{margin-top:18px;color:#6b7687;width:600px;align-items:center}.page .gva-top-card-left-item[data-v-44c6ce06]{margin-top:14px}.page .gva-top-card-left-item+.gva-top-card-left-item[data-v-44c6ce06]{margin-top:24px}.page .gva-top-card-right[data-v-44c6ce06]{height:600px;width:600px;margin-top:28px}.page[data-v-44c6ce06] .el-card__header{padding:0;border-bottom:none}.page .card-header[data-v-44c6ce06]{padding-bottom:20px;border-bottom:1px solid #e8e8e8}.page .quick-entrance-title[data-v-44c6ce06]{height:30px;font-size:22px;color:#333;width:100%;border-bottom:1px solid #eee}.page .quick-entrance-items[data-v-44c6ce06]{display:flex;align-items:center;justify-content:center;text-align:center;color:#333}.page .quick-entrance-items .quick-entrance-item[data-v-44c6ce06]{padding:16px 28px;margin-top:-16px;margin-bottom:-16px;border-radius:4px;transition:all .2s;cursor:pointer;height:auto;text-align:center}.page .quick-entrance-items .quick-entrance-item[data-v-44c6ce06]:hover{box-shadow:0 0 7px #d9d9d98c}.page .quick-entrance-items .quick-entrance-item-icon[data-v-44c6ce06]{width:50px;height:50px!important;border-radius:8px;display:flex;align-items:center;justify-content:center;margin:0 auto}.page .quick-entrance-items .quick-entrance-item-icon i[data-v-44c6ce06]{font-size:24px}.page .quick-entrance-items .quick-entrance-item p[data-v-44c6ce06]{margin-top:10px}.page .echart-box[data-v-44c6ce06]{padding:14px}.dashboard-icon[data-v-44c6ce06]{font-size:20px;color:#55a0f8;width:30px;height:30px;margin-right:10px;display:flex;align-items:center}.flex-center[data-v-44c6ce06]{display:flex;align-items:center}@media (max-width: 750px){.gva-card[data-v-44c6ce06]{padding:20px 10px!important}.gva-card .gva-top-card[data-v-44c6ce06]{height:auto}.gva-card .gva-top-card-left-title[data-v-44c6ce06]{font-size:20px!important}.gva-card .gva-top-card-left-rows[data-v-44c6ce06]{margin-top:15px;align-items:center}.gva-card .gva-top-card-right[data-v-44c6ce06]{display:none}.gva-card .gva-middle-card-item[data-v-44c6ce06]{line-height:20px}.gva-card .dashboard-icon[data-v-44c6ce06]{font-size:18px}} .dashboard-line-box .dashboard-line[data-v-19c5604b]{background-color:#fff;height:360px;width:100%}.dashboard-line-box .dashboard-line-title[data-v-19c5604b]{font-weight:600;margin-bottom:12px}.commit-table[data-v-554f7f6a]{background-color:#fff;height:400px}.commit-table-title[data-v-554f7f6a]{font-weight:600;margin-bottom:12px}.commit-table .log-item[data-v-554f7f6a]{display:flex;justify-content:space-between;margin-top:14px}.commit-table .log-item .key-box[data-v-554f7f6a]{justify-content:center}.commit-table .log-item .key[data-v-554f7f6a]{display:inline-flex;justify-content:center;align-items:center;width:20px;height:20px;border-radius:50%;background:#F0F2F5;text-align:center;color:#000000a6}.commit-table .log-item .key.top[data-v-554f7f6a]{background:#314659;color:#fff}.commit-table .log-item .message[data-v-554f7f6a]{color:#000000a6}.commit-table .log-item .form[data-v-554f7f6a]{color:#000000a6;margin-left:12px}.commit-table .log-item .flex[data-v-554f7f6a]{line-height:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.commit-table .log-item .flex-1[data-v-554f7f6a]{flex:1}.commit-table .log-item .flex-2[data-v-554f7f6a]{flex:2}.commit-table .log-item .flex-3[data-v-554f7f6a]{flex:3}.commit-table .log-item .flex-4[data-v-554f7f6a]{flex:4}.commit-table .log-item .flex-5[data-v-554f7f6a]{flex:5}.page[data-v-cb159114]{background:#f0f2f5;padding:0}.page .gva-card-box[data-v-cb159114]{padding:12px 16px}.page .gva-card-box+.gva-card-box[data-v-cb159114]{padding-top:0}.page .gva-card[data-v-cb159114]{box-sizing:border-box;background-color:#fff;border-radius:2px;height:auto;padding:26px 30px;overflow:hidden;box-shadow:0 0 7px 1px #00000008}.page .gva-top-card[data-v-cb159114]{height:260px;display:flex;align-items:center;justify-content:space-between;color:#777}.page .gva-top-card-left[data-v-cb159114]{height:100%;display:flex;flex-direction:column}.page .gva-top-card-left-title[data-v-cb159114]{font-size:22px;color:#343844}.page .gva-top-card-left-dot[data-v-cb159114]{font-size:16px;color:#6b7687;margin-top:24px}.page .gva-top-card-left-rows[data-v-cb159114]{margin-top:18px;color:#6b7687;width:600px;align-items:center}.page .gva-top-card-left-item[data-v-cb159114]{margin-top:14px}.page .gva-top-card-left-item+.gva-top-card-left-item[data-v-cb159114]{margin-top:24px}.page .gva-top-card-right[data-v-cb159114]{height:600px;width:600px;margin-top:28px}.page[data-v-cb159114] .el-card__header{padding:0;border-bottom:none}.page .card-header[data-v-cb159114]{padding-bottom:20px;border-bottom:1px solid #e8e8e8}.page .quick-entrance-title[data-v-cb159114]{height:30px;font-size:22px;color:#333;width:100%;border-bottom:1px solid #eee}.page .quick-entrance-items[data-v-cb159114]{display:flex;align-items:center;justify-content:center;text-align:center;color:#333}.page .quick-entrance-items .quick-entrance-item[data-v-cb159114]{padding:16px 28px;margin-top:-16px;margin-bottom:-16px;border-radius:4px;transition:all .2s;cursor:pointer;height:auto;text-align:center}.page .quick-entrance-items .quick-entrance-item[data-v-cb159114]:hover{box-shadow:0 0 7px #d9d9d98c}.page .quick-entrance-items .quick-entrance-item-icon[data-v-cb159114]{width:50px;height:50px!important;border-radius:8px;display:flex;align-items:center;justify-content:center;margin:0 auto}.page .quick-entrance-items .quick-entrance-item-icon i[data-v-cb159114]{font-size:24px}.page .quick-entrance-items .quick-entrance-item p[data-v-cb159114]{margin-top:10px}.page .echart-box[data-v-cb159114]{padding:14px}.dashboard-icon[data-v-cb159114]{font-size:20px;color:#55a0f8;width:30px;height:30px;margin-right:10px;display:flex;align-items:center}.flex-center[data-v-cb159114]{display:flex;align-items:center}@media (max-width: 750px){.gva-card[data-v-cb159114]{padding:20px 10px!important}.gva-card .gva-top-card[data-v-cb159114]{height:auto}.gva-card .gva-top-card-left-title[data-v-cb159114]{font-size:20px!important}.gva-card .gva-top-card-left-rows[data-v-cb159114]{margin-top:15px;align-items:center}.gva-card .gva-top-card-right[data-v-cb159114]{display:none}.gva-card .gva-middle-card-item[data-v-cb159114]{line-height:20px}.gva-card .dashboard-icon[data-v-cb159114]{font-size:18px}}
Binary file not shown.
@@ -1 +1 @@
import{D as M,d as V,c as b,b as f,f as z,h as l,w as a,u as r,U as L,F as N,V as U,W as g,e as y,o as i,B as p,X as m,I as h,Y as j,g as k}from"./index.89c8c085.js";const O={"Content-Type":"application/json;charsetset=UTF-8"},X=w=>M({url:"/cloud/api/v1/file/list",method:"GET",params:{url:w},headers:O});const Y=k("label",null," _new folder",-1),$=k("label",null," _copy",-1),A=k("label",null," _rename",-1),G=k("label",null," _delete",-1),I=k("label",null," _delete",-1),q=V({setup(w){const u=U(),R=b([]),n=b(new Set),C=b({isCtrl:!1,isShift:!1}),E=f(),x=f(),d=f(!0);f();const v=f(!1),F=(e,o,t,s)=>{n.has(e)||(x.value=e)},B=(e,o,t,s)=>{n.has(e)||(x.value=void 0)},D=(e,o,t)=>{C.isCtrl?n.has(e)?n.delete(e):n.add(e):(n.clear(),n.add(e))},S=(e,o,t)=>{var c;v.value=!0;let s=(c=u==null?void 0:u.proxy)==null?void 0:c.$refs.contextmenu;n.has(e)||(n.clear(),n.add(e)),t.preventDefault(),s.show({top:t.clientY,left:t.clientX}),window.onclick=()=>{s.hide(),v.value=!1}},_=()=>{},T=({row:e,rowIndex:o})=>{var t;if(n.has(e))return{background:"#B4C7E7"};if(((t=g(x.value))==null?void 0:t.name)==g(e).name)return{background:"#DAE3F3"}};return document.onkeydown=e=>{switch(e.key){case"Control":C.isCtrl=!0;break}},document.onkeyup=e=>{var o;switch(e.key){case"Control":C.isCtrl=!1;break;case"Escape":v.value?(((o=u==null?void 0:u.proxy)==null?void 0:o.$refs.contextmenu).hide(),v.value=!1):n.clear(),C.isCtrl=!0;break}},X("").then(e=>{e.data.forEach(o=>{const t={size:o.size,isDir:o.isDir,name:o.server_filename,path:o.path};R.push(t)})}),(e,o)=>{const t=y("el-table-column"),s=y("FolderOpened"),c=y("el-icon");return i(),z(N,null,[l(r(L),{data:r(R),onCellMouseEnter:F,onCellMouseLeave:B,"row-style":T,onRowContextmenu:S,onRowClick:D,ref_key:"multipleTableRef",ref:E},{default:a(()=>[l(t,{prop:"name",width:"200px"}),l(t,{prop:"isDir",width:"130px"}),l(t,{prop:"size",width:"130px"}),l(t,{prop:"path",width:"130px"})]),_:1},8,["data"]),l(r(j),{"auto-ajust-placement":"",ref:"contextmenu"},{default:a(()=>[d.value?(i(),p(r(m),{key:0,onClick:_},{default:a(()=>[l(c,{class:"contextmenu-icon"},{default:a(()=>[l(s)]),_:1}),Y]),_:1})):h("",!0),d.value?(i(),p(r(m),{key:1,onClick:_},{default:a(()=>[l(c,{class:"contextmenu-icon"},{default:a(()=>[l(s)]),_:1}),$]),_:1})):h("",!0),d.value?(i(),p(r(m),{key:2,onClick:_},{default:a(()=>[l(c,{class:"contextmenu-icon"},{default:a(()=>[l(s)]),_:1}),A]),_:1})):h("",!0),d.value?(i(),p(r(m),{key:3,onClick:_},{default:a(()=>[l(c,{class:"contextmenu-icon"},{default:a(()=>[l(s)]),_:1}),G]),_:1})):h("",!0),d.value?(i(),p(r(m),{key:4,onClick:_},{default:a(()=>[l(c,{class:"contextmenu-icon"},{default:a(()=>[l(s)]),_:1}),I]),_:1})):h("",!0)]),_:1},512)],64)}}});export{q as default}; import{D as M,d as V,c as b,b as f,f as z,h as l,w as a,u as r,V as L,F as N,W as j,X as g,e as y,o as i,B as p,Y as m,I as h,Z as O,g as k}from"./index.9e912d9b.js";const U={"Content-Type":"application/json;charsetset=UTF-8"},X=w=>M({url:"/cloud/api/v1/file/list",method:"GET",params:{url:w},headers:U});const Y=k("label",null," _new folder",-1),$=k("label",null," _copy",-1),A=k("label",null," _rename",-1),G=k("label",null," _delete",-1),I=k("label",null," _delete",-1),Z=V({setup(w){const u=j(),R=b([]),n=b(new Set),C=b({isCtrl:!1,isShift:!1}),E=f(),x=f(),d=f(!0);f();const v=f(!1),F=(e,o,t,s)=>{n.has(e)||(x.value=e)},B=(e,o,t,s)=>{n.has(e)||(x.value=void 0)},D=(e,o,t)=>{C.isCtrl?n.has(e)?n.delete(e):n.add(e):(n.clear(),n.add(e))},S=(e,o,t)=>{var c;v.value=!0;let s=(c=u==null?void 0:u.proxy)==null?void 0:c.$refs.contextmenu;n.has(e)||(n.clear(),n.add(e)),t.preventDefault(),s.show({top:t.clientY,left:t.clientX}),window.onclick=()=>{s.hide(),v.value=!1}},_=()=>{},T=({row:e,rowIndex:o})=>{var t;if(n.has(e))return{background:"#B4C7E7"};if(((t=g(x.value))==null?void 0:t.name)==g(e).name)return{background:"#DAE3F3"}};return document.onkeydown=e=>{switch(e.key){case"Control":C.isCtrl=!0;break}},document.onkeyup=e=>{var o;switch(e.key){case"Control":C.isCtrl=!1;break;case"Escape":v.value?(((o=u==null?void 0:u.proxy)==null?void 0:o.$refs.contextmenu).hide(),v.value=!1):n.clear(),C.isCtrl=!0;break}},X("").then(e=>{e.data.forEach(o=>{const t={size:o.size,isDir:o.isDir,name:o.server_filename,path:o.path};R.push(t)})}),(e,o)=>{const t=y("el-table-column"),s=y("FolderOpened"),c=y("el-icon");return i(),z(N,null,[l(r(L),{data:r(R),onCellMouseEnter:F,onCellMouseLeave:B,"row-style":T,onRowContextmenu:S,onRowClick:D,ref_key:"multipleTableRef",ref:E},{default:a(()=>[l(t,{prop:"name",width:"200px"}),l(t,{prop:"isDir",width:"130px"}),l(t,{prop:"size",width:"130px"}),l(t,{prop:"path",width:"130px"})]),_:1},8,["data"]),l(r(O),{"auto-ajust-placement":"",ref:"contextmenu"},{default:a(()=>[d.value?(i(),p(r(m),{key:0,onClick:_},{default:a(()=>[l(c,{class:"contextmenu-icon"},{default:a(()=>[l(s)]),_:1}),Y]),_:1})):h("",!0),d.value?(i(),p(r(m),{key:1,onClick:_},{default:a(()=>[l(c,{class:"contextmenu-icon"},{default:a(()=>[l(s)]),_:1}),$]),_:1})):h("",!0),d.value?(i(),p(r(m),{key:2,onClick:_},{default:a(()=>[l(c,{class:"contextmenu-icon"},{default:a(()=>[l(s)]),_:1}),A]),_:1})):h("",!0),d.value?(i(),p(r(m),{key:3,onClick:_},{default:a(()=>[l(c,{class:"contextmenu-icon"},{default:a(()=>[l(s)]),_:1}),G]),_:1})):h("",!0),d.value?(i(),p(r(m),{key:4,onClick:_},{default:a(()=>[l(c,{class:"contextmenu-icon"},{default:a(()=>[l(s)]),_:1}),I]),_:1})):h("",!0)]),_:1},512)],64)}}});export{Z as default};
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
+1
View File
@@ -0,0 +1 @@
.date-cell-holiday[data-v-0e3dfbc2]{background:#dfd}.date-cell-event[data-v-0e3dfbc2]{background:yellow}
-1
View File
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
@@ -1 +1 @@
.el-button--text[data-v-84f682ae]{margin-right:15px}.el-select[data-v-84f682ae],.el-input[data-v-84f682ae]{width:300px}.dialog-footer button[data-v-84f682ae]:first-child{margin-right:10px}.el-button--text[data-v-25eee70b]{margin-right:15px}.el-select[data-v-25eee70b],.el-input[data-v-25eee70b]{width:300px}.dialog-footer button[data-v-25eee70b]:first-child{margin-right:10px}.dashboard{background-color:beige}.tag_list[data-v-5ccfdbb8]{display:flex;border-top:1px solid rgba(151,151,151,.3);border-bottom:1px solid rgba(151,151,151,.3)}.click-icon[data-v-5ccfdbb8]{width:40px;margin:10px;cursor:pointer}.create_dialog[data-v-5ccfdbb8]{margin:10px} .el-button--text[data-v-84f682ae]{margin-right:15px}.el-select[data-v-84f682ae],.el-input[data-v-84f682ae]{width:300px}.dialog-footer button[data-v-84f682ae]:first-child{margin-right:10px}.el-button--text[data-v-25eee70b]{margin-right:15px}.el-select[data-v-25eee70b],.el-input[data-v-25eee70b]{width:300px}.dialog-footer button[data-v-25eee70b]:first-child{margin-right:10px}.dashboard{background-color:beige}.tag_list[data-v-85509c2e]{display:flex;border-top:1px solid rgba(151,151,151,.3);border-bottom:1px solid rgba(151,151,151,.3)}.click-icon[data-v-85509c2e]{width:40px;margin:10px;cursor:pointer}.create_dialog[data-v-85509c2e]{margin:10px}
+1
View File
File diff suppressed because one or more lines are too long
Binary file not shown.
-1
View File
@@ -1 +0,0 @@
.section-main{height:100%;padding:14px}.headerAvatar[data-v-db52df48]{display:flex;justify-content:center;align-items:center;margin-right:8px}.file[data-v-db52df48]{width:80px;height:80px;position:relative}.right-box[data-v-c76ebeb4]{padding-top:16px;display:flex;justify-content:flex-end;align-items:center}.right-box img[data-v-c76ebeb4]{vertical-align:middle;border:1px solid #ccc;border-radius:6px}.header-avatar[data-v-c76ebeb4]{display:flex;justify-content:center;align-items:center}.side_Style[data-v-9bec03b6]{width:100px}.side-main[data-v-9bec03b6]{width:200px}.gva-menu-item[data-v-9bec03b6]{color:#fff}.el-menu-item.is-active[data-v-9bec03b6]{color:var(--400e7370);background:var(--400e7370)}.el-header[data-v-4dcee88b]{border-bottom-style:solid;border-bottom-width:.5px;border-bottom-color:#9797974d}.el-main[data-v-4dcee88b]{padding:16px;overflow:hidden;height:100%}.el-aside[data-v-4dcee88b]{margin-left:-10px;background:#191a23;position:fixed}.el-footer[data-v-4dcee88b]{margin-top:20px;display:flex;justify-content:space-around}.homeWrap[data-v-4dcee88b]{position:absolute;top:0;height:100%;width:100%}
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
+1
View File
@@ -0,0 +1 @@
.section-main{height:100%;padding:14px}.headerAvatar[data-v-db52df48]{display:flex;justify-content:center;align-items:center;margin-right:8px}.file[data-v-db52df48]{width:80px;height:80px;position:relative}.right-box[data-v-47d8c705]{padding-top:16px;display:flex;justify-content:flex-end;align-items:center}.right-box img[data-v-47d8c705]{vertical-align:middle;border:1px solid #ccc;border-radius:6px}.item[data-v-47d8c705]{margin-top:5px;margin-right:30px}.header-avatar[data-v-47d8c705]{display:flex;justify-content:center;align-items:center}.side_Style[data-v-52f0823c]{width:100px}.side-main[data-v-52f0823c]{width:200px}.gva-menu-item[data-v-52f0823c]{color:#fff}.el-menu-item.is-active[data-v-52f0823c]{color:var(--ddab178a);background:var(--ddab178a)}.el-header[data-v-4dcee88b]{border-bottom-style:solid;border-bottom-width:.5px;border-bottom-color:#9797974d}.el-main[data-v-4dcee88b]{padding:16px;overflow:hidden;height:100%}.el-aside[data-v-4dcee88b]{margin-left:-10px;background:#191a23;position:fixed}.el-footer[data-v-4dcee88b]{margin-top:20px;display:flex;justify-content:space-around}.homeWrap[data-v-4dcee88b]{position:absolute;top:0;height:100%;width:100%}
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
import{E as u}from"./style.be4dc9a9.js";import{d as i,b as s,f as m,g as d,z as p,u as a,h as c,O as f,F as g,a5 as V,o as B}from"./index.89c8c085.js";import{c as _}from"./blogView.0384569e.js";import"./index.35e25221.js";const F=i({setup(v){let e=s(""),o=s("");const n=V().query;return(()=>{_(n.bid).then(t=>{e.value=t.data.content,o.value=t.data.title})})(),(t,l)=>(B(),m(g,null,[d("h2",null,p(a(o)),1),c(a(u),{modelValue:a(e),"onUpdate:modelValue":l[0]||(l[0]=r=>f(e)?e.value=r:e=r),previewOnly:""},null,8,["modelValue"])],64))}});export{F as default}; import{E as u}from"./style.2622ccfc.js";import{d as i,b as s,f as m,g as d,z as p,u as a,h as c,P as f,F as g,a6 as V,o as B}from"./index.9e912d9b.js";import{c as _}from"./blogView.38a54248.js";import"./index.26aa7e8a.js";const F=i({setup(v){let e=s(""),o=s("");const n=V().query;return(()=>{_(n.bid).then(t=>{e.value=t.data.content,o.value=t.data.title})})(),(t,l)=>(B(),m(g,null,[d("h2",null,p(a(o)),1),c(a(u),{modelValue:a(e),"onUpdate:modelValue":l[0]||(l[0]=r=>f(e)?e.value=r:e=r),previewOnly:""},null,8,["modelValue"])],64))}});export{F as default};
Binary file not shown.
@@ -1 +1 @@
import{d as f,c as V,f as b,h as e,w as l,u as o,F as C,i as m,g as B,a5 as E,e as r,o as F,bV as k,s as h,a as A,r as g}from"./index.89c8c085.js";const w=m(" \u8A72\u5F53\u30B7\u30B9\u30C6\u30E0\u306E\u3054\u5229\u7528\u306F\u30B7\u30B9\u30C6\u30E0\u7BA1\u7406\u8005\u306B\u8A31\u53EF\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002"),x=B("br",null,null,-1),U=m(" \u8A31\u53EF\u304C\u306A\u3051\u308C\u3070\u3001\u30E6\u30FC\u30B6\u30FC\u60C5\u5831\u3092\u767B\u9332\u3057\u3066\u3082\u3001\u30B7\u30B9\u30C6\u30E0\u306E\u3054\u5229\u7528\u306F\u3067\u304D\u307E\u305B\u3093\u306E\u3067\u3001\u3054\u6CE8\u610F\u304F\u3060\u3055\u3044\u3002 "),v=m("Register"),y=m("Cancel"),R=f({setup(I){const d=E().query,u=V({phone_number:"",code:"",tenant_id:d.tenantId,account:d.account,token:d.token}),i=()=>{k(u).then(_=>{if(_.status==200){const t={id:d.tenantId,account:d.account};h(d.token),A(t);const{href:a}=g.resolve({path:"/"});window.open(a,"_self")}})};return(_,t)=>{const a=r("el-input"),s=r("el-form-item"),c=r("el-button"),p=r("el-form");return F(),b(C,null,[w,x,U,e(p,{model:o(u),"label-width":"120px"},{default:l(()=>[e(s,{label:"phone_number"},{default:l(()=>[e(a,{modelValue:o(u).phone_number,"onUpdate:modelValue":t[0]||(t[0]=n=>o(u).phone_number=n)},null,8,["modelValue"])]),_:1}),e(s,{label:"auth_code"},{default:l(()=>[e(a,{modelValue:o(u).code,"onUpdate:modelValue":t[1]||(t[1]=n=>o(u).code=n)},null,8,["modelValue"])]),_:1}),e(s,{label:"tenantId"},{default:l(()=>[e(a,{modelValue:o(u).tenant_id,"onUpdate:modelValue":t[2]||(t[2]=n=>o(u).tenant_id=n),disabled:!0},null,8,["modelValue"])]),_:1}),e(s,{label:"account"},{default:l(()=>[e(a,{modelValue:o(u).account,"onUpdate:modelValue":t[3]||(t[3]=n=>o(u).account=n),disabled:!0},null,8,["modelValue"])]),_:1}),e(s,{label:"token"},{default:l(()=>[e(a,{modelValue:o(u).token,"onUpdate:modelValue":t[4]||(t[4]=n=>o(u).token=n),disabled:!0},null,8,["modelValue"])]),_:1}),e(s,null,{default:l(()=>[e(c,{type:"primary",onClick:i},{default:l(()=>[v]),_:1}),e(c,null,{default:l(()=>[y]),_:1})]),_:1})]),_:1},8,["model"])],64)}}});export{R as default}; import{d as f,c as b,f as V,h as e,w as l,u as o,F as C,i as m,g as B,a6 as E,e as r,o as F,bW as k,s as h,a as A,r as g}from"./index.9e912d9b.js";const w=m(" \u8A72\u5F53\u30B7\u30B9\u30C6\u30E0\u306E\u3054\u5229\u7528\u306F\u30B7\u30B9\u30C6\u30E0\u7BA1\u7406\u8005\u306B\u8A31\u53EF\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002"),x=B("br",null,null,-1),U=m(" \u8A31\u53EF\u304C\u306A\u3051\u308C\u3070\u3001\u30E6\u30FC\u30B6\u30FC\u60C5\u5831\u3092\u767B\u9332\u3057\u3066\u3082\u3001\u30B7\u30B9\u30C6\u30E0\u306E\u3054\u5229\u7528\u306F\u3067\u304D\u307E\u305B\u3093\u306E\u3067\u3001\u3054\u6CE8\u610F\u304F\u3060\u3055\u3044\u3002 "),v=m("Register"),y=m("Cancel"),R=f({setup(I){const d=E().query,u=b({phone_number:"",code:"",tenant_id:d.tenantId,account:d.account,token:d.token}),i=()=>{k(u).then(_=>{if(_.status==200){const t={id:d.tenantId,account:d.account};h(d.token),A(t);const{href:a}=g.resolve({path:"/"});window.open(a,"_self")}})};return(_,t)=>{const a=r("el-input"),s=r("el-form-item"),c=r("el-button"),p=r("el-form");return F(),V(C,null,[w,x,U,e(p,{model:o(u),"label-width":"120px"},{default:l(()=>[e(s,{label:"phone_number"},{default:l(()=>[e(a,{modelValue:o(u).phone_number,"onUpdate:modelValue":t[0]||(t[0]=n=>o(u).phone_number=n)},null,8,["modelValue"])]),_:1}),e(s,{label:"auth_code"},{default:l(()=>[e(a,{modelValue:o(u).code,"onUpdate:modelValue":t[1]||(t[1]=n=>o(u).code=n)},null,8,["modelValue"])]),_:1}),e(s,{label:"tenantId"},{default:l(()=>[e(a,{modelValue:o(u).tenant_id,"onUpdate:modelValue":t[2]||(t[2]=n=>o(u).tenant_id=n),disabled:!0},null,8,["modelValue"])]),_:1}),e(s,{label:"account"},{default:l(()=>[e(a,{modelValue:o(u).account,"onUpdate:modelValue":t[3]||(t[3]=n=>o(u).account=n),disabled:!0},null,8,["modelValue"])]),_:1}),e(s,{label:"token"},{default:l(()=>[e(a,{modelValue:o(u).token,"onUpdate:modelValue":t[4]||(t[4]=n=>o(u).token=n),disabled:!0},null,8,["modelValue"])]),_:1}),e(s,null,{default:l(()=>[e(c,{type:"primary",onClick:i},{default:l(()=>[v]),_:1}),e(c,null,{default:l(()=>[y]),_:1})]),_:1})]),_:1},8,["model"])],64)}}});export{R as default};
Binary file not shown.
@@ -1 +1 @@
import{N as n,b as l,J as s}from"./index.89c8c085.js";const d=n("settings",()=>{const e=l({sideMode:"#191a23",isMobile:!1,isRouterAlive:!0,isLoading:!1}),i=s(()=>e.value.sideMode),o=s(()=>e.value.isMobile),t=s(()=>e.value.isRouterAlive),a=s(()=>e.value.isLoading);return{settings:e,sideMode:i,isMobile:o,isRouterAlive:t,isLoading:a}});export{d as s}; import{O as n,b as l,J as s}from"./index.9e912d9b.js";const d=n("settings",()=>{const e=l({sideMode:"#191a23",isMobile:!1,isRouterAlive:!0,isLoading:!1}),i=s(()=>e.value.sideMode),o=s(()=>e.value.isMobile),t=s(()=>e.value.isRouterAlive),a=s(()=>e.value.isLoading);return{settings:e,sideMode:i,isMobile:o,isRouterAlive:t,isLoading:a}});export{d as s};
@@ -1 +1 @@
import{_ as e,f as r,o as c}from"./index.89c8c085.js";const o={},s={class:"yuliu"};function t(_,a){return c(),r("div",s," \u8FD9\u4E2A\u4EBA\u5F88\u61D2\uFF0C\u4EC0\u4E48\u4E5F\u6CA1\u5199 ")}var f=e(o,[["render",t]]);export{f as default}; import{_ as e,f as r,o as c}from"./index.9e912d9b.js";const o={},s={class:"yuliu"};function t(_,a){return c(),r("div",s," \u8FD9\u4E2A\u4EBA\u5F88\u61D2\uFF0C\u4EC0\u4E48\u4E5F\u6CA1\u5199 ")}var f=e(o,[["render",t]]);export{f as default};
Binary file not shown.
@@ -1 +1 @@
import{D as e,N as c,c as a}from"./index.89c8c085.js";const v=()=>e({url:"/trader/api/v1/accounts",method:"GET"}),d=s=>e({url:"/trader/api/v1/tick/"+s,method:"GET"}),y=()=>e({url:"/trader/api/v1/ticks",method:"GET"}),h=s=>e({url:"/trader/api/v1/order",method:"POST",data:s}),g=s=>e({url:"/trader/api/v1/subscribe/"+s,method:"GET"}),o=()=>e({url:"/trader/api/v1/subscribe/vt_symbols",method:"GET"}),p=s=>e({url:"/trader/api/v1/subscribe/"+s,method:"DELETE"}),n=()=>e({url:"/trader/api/v1/vt_symbols",method:"GET"}),b=()=>e({url:"/trader/api/v1/exchanges",method:"GET"}),E=c("strategy",()=>{const s=a({class_names:[],vt_symbols:new Map,subscribe_vt_symbols:[],exchanges:[]});return{strategy:s,select_exchanges:async()=>{s.exchanges.length==0&&b().then(t=>{s.exchanges=t.data.exchanges})},select_vt_symbols:async()=>{s.vt_symbols.size==0&&n().then(t=>{Object.keys(t.data.vt_symbols).forEach(r=>{s.vt_symbols.set(r,t.data.vt_symbols[r])})})},select_subscribe_vt_symbols:async()=>{s.subscribe_vt_symbols.length==0&&o().then(t=>{s.subscribe_vt_symbols=t.data.subscribe_vt_symbols})}}});export{g as a,v as b,p as c,d,h as e,y as g,E as s}; import{D as e,O as c,c as a}from"./index.9e912d9b.js";const v=()=>e({url:"/trader/api/v1/accounts",method:"GET"}),d=s=>e({url:"/trader/api/v1/tick/"+s,method:"GET"}),y=()=>e({url:"/trader/api/v1/ticks",method:"GET"}),h=s=>e({url:"/trader/api/v1/order",method:"POST",data:s}),g=s=>e({url:"/trader/api/v1/subscribe/"+s,method:"GET"}),o=()=>e({url:"/trader/api/v1/subscribe/vt_symbols",method:"GET"}),p=s=>e({url:"/trader/api/v1/subscribe/"+s,method:"DELETE"}),n=()=>e({url:"/trader/api/v1/vt_symbols",method:"GET"}),b=()=>e({url:"/trader/api/v1/exchanges",method:"GET"}),E=c("strategy",()=>{const s=a({class_names:[],vt_symbols:new Map,subscribe_vt_symbols:[],exchanges:[]});return{strategy:s,select_exchanges:async()=>{s.exchanges.length==0&&b().then(t=>{s.exchanges=t.data.exchanges})},select_vt_symbols:async()=>{s.vt_symbols.size==0&&n().then(t=>{Object.keys(t.data.vt_symbols).forEach(r=>{s.vt_symbols.set(r,t.data.vt_symbols[r])})})},select_subscribe_vt_symbols:async()=>{s.subscribe_vt_symbols.length==0&&o().then(t=>{s.subscribe_vt_symbols=t.data.subscribe_vt_symbols})}}});export{g as a,v as b,p as c,d,h as e,y as g,E as s};
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -6,7 +6,7 @@
<link rel="icon" href="/favicon.ico" /> <link rel="icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>violin-home</title> <title>violin-home</title>
<script type="module" crossorigin src="/assets/index.89c8c085.js"></script> <script type="module" crossorigin src="/assets/index.9e912d9b.js"></script>
<link rel="stylesheet" href="/assets/index.35a0e576.css"> <link rel="stylesheet" href="/assets/index.35a0e576.css">
</head> </head>
+13 -5
View File
@@ -29,7 +29,7 @@ export default [
} }
}, },
{ {
url: '/auth/api/v1/author/blog/0001', url: '/auth/api/v1/author/wiki/0001',
method: 'delete', method: 'delete',
response: () => { response: () => {
return { return {
@@ -49,8 +49,8 @@ export default [
}, },
}, },
{ {
url: '/auth/api/v1/author/blog/content', url: '/auth/api/v1/author/wiki',
method: 'PUT', method: 'POST',
response: () => { response: () => {
return { return {
bid: "0003", bid: "0003",
@@ -62,8 +62,8 @@ export default [
}, },
}, },
{ {
url: '/auth/api/v1/author/blog/content', url: '/auth/api/v1/author/wiki',
method: 'POST', method: 'PUT',
response: () => { response: () => {
return { return {
bid: "0003", bid: "0003",
@@ -83,4 +83,12 @@ export default [
} }
}, },
}, },
{
url: '/wiki/api/v1/author/blogs/001',
method: 'POST',
response: () => {
return {
}
},
},
] as MockMethod[] ] as MockMethod[]
+50 -35
View File
@@ -2,13 +2,13 @@ import { MockMethod } from 'vite-plugin-mock'
export default [ export default [
{ {
url: '/wiki/api/v1/author/blog/list', url: '/wiki/api/v1/author/wiki/list',
method: 'get', method: 'get',
response: ({ body, query }) => { response: ({ }) => {
return [ return [
{ {
btId: "001", btId: "001",
btName: "your world---", btName: "",
blog_list: [ blog_list: [
{ {
bid: "0001", bid: "0001",
@@ -24,12 +24,26 @@ export default [
btId: "001", btId: "001",
order: 1, order: 1,
}, },
{
bid: "0003",
title: "three",
content: "xxxxxxxxx",
btId: "001",
order: 2,
},
{
bid: "0004",
title: "four",
content: "xxyyyyxxxxxxx",
btId: "001",
order: 3,
},
], ],
order: 0 order: 0
}, },
{ {
btId: "002", btId: "002",
btName: "my world", btName: "",
blog_list: [ blog_list: [
{ {
bid: "0003", bid: "0003",
@@ -50,7 +64,7 @@ export default [
}, },
{ {
btId: "003", btId: "003",
btName: "my world", btName: "",
blog_list: [ blog_list: [
{ {
bid: "0003", bid: "0003",
@@ -73,8 +87,28 @@ export default [
} }
}, },
{ {
url: '/wiki/api/v1/author/blog_types', url: '/wiki/api/v1/author/wiki/type', // create wikiType
method: 'post', method: 'post',
response: () => {
return {
btId: "001",
btName: "your world---",
blog_list: [
{
bid: "0001",
title: "one",
content: "nothing",
btId: "001",
order: 0,
},
],
order: 2,
}
}
},
{
url: '/wiki/api/v1/author/wiki/type', // update wikiType
method: 'put',
response: () => { response: () => {
return [ return [
{ {
@@ -123,35 +157,7 @@ export default [
} }
}, },
{ {
url: '/wiki/api/v1/author/blog_type', url: '/wiki/api/v1/author/wiki/type', // delete wikiType
method: 'put',
response: () => {
return {
btId: "001",
btName: "your world---",
blog_list: [
{
bid: "0001",
title: "one",
content: "nothing",
btId: "001",
order: 0,
},
],
order: 2,
}
}
},
{
url: '/wiki/api/v1/author/blog_type',
method: 'post',
response: () => {
return {
}
}
},
{
url: '/wiki/api/v1/author/blog_type',
method: 'delete', method: 'delete',
response: ({ body, query }) => { response: ({ body, query }) => {
return [ return [
@@ -200,4 +206,13 @@ export default [
] ]
} }
}, },
{
url: '/wiki/api/v1/author/wiki/type/sort',
method: 'post',
response: () => {
return {
}
}
},
] as MockMethod[] ] as MockMethod[]
+108 -99
View File
@@ -4,112 +4,121 @@ const headers = {
'Content-Type': 'application/json;charsetset=UTF-8' 'Content-Type': 'application/json;charsetset=UTF-8'
} }
const createWikiType = (data: Object) => {
return service({
url: '/wiki/api/v1/author/wiki/type',
method: 'POST',
headers: headers,
data: data
})
}
const removeWikiType = (data: Object) => {
return service({
url: '/wiki/api/v1/author/wiki/type',
method: 'DELETE',
headers: headers,
data: data
})
}
const updateWikiType = (data: Object) => {
return service({
url: '/wiki/api/v1/author/wiki/type',
method: 'PUT',
headers: headers,
data: data
})
}
const getWikiType = (btId: string) => {
return service({
url: '/wiki/api/v1/author/wiki/type/' + btId,
method: 'GET',
headers: headers,
})
}
const sortWikiType = (data: Object) => {
return service({
url: '/wiki/api/v1/author/wiki/type/sort',
method: 'POST',
headers: headers,
data: data
})
}
const createWiki = (data: Object) => {
return service({
url: '/wiki/api/v1/author/wiki',
method: 'POST',
headers: headers,
data: data
})
}
const deleteWiki = (data: Object) => {
return service({
url: '/wiki/api/v1/author/wiki',
method: 'DELETE',
headers: headers,
data: data
})
}
const updateWiki = (data: Object) => {
return service({
url: '/wiki/api/v1/author/wiki',
method: 'PUT',
headers: headers,
data: data
})
}
const getWiki = (id: string) => {
return service({
url: '/wiki/api/v1/author/wiki/' + id,
method: 'GET',
headers: headers,
})
}
const sortWiki = (data: Object, btId: string) => {
return service({
url: '/wiki/api/v1/author/wiki/sort' + btId,
method: 'POST',
headers: headers,
data: data
})
}
const countWiki = () => {
return service({
url: '/wiki/api/v1/reader/wiki/count',
method: 'GET',
headers: headers,
})
}
const listAll = () => { const listAll = () => {
return service({ return service({
url: '/wiki/api/v1/author/blog/list', url: '/wiki/api/v1/author/wiki/list',
method: 'GET', method: 'GET',
headers: headers headers: headers
}) })
} }
const updateBtName = (data: Object) => {
return service({
url: '/wiki/api/v1/author/blog_type',
method: 'POST',
headers: headers,
data: data
})
}
const putBlogType = (data: Object) => {
return service({
url: '/wiki/api/v1/author/blog_type',
method: 'PUT',
headers: headers,
data: data
})
}
const removeBlogType = (data: Object) => {
return service({
url: '/wiki/api/v1/author/blog_type',
method: 'DELETE',
headers: headers,
data: data
})
}
const sortBlogTypes = (data: Object) => {
return service({
url: '/wiki/api/v1/author/blog_types',
method: 'POST',
headers: headers,
data: data
})
}
const getContent = (id: string) => {
return service({
url: '/wiki/api/v1/author/blog/content/' + id,
method: 'GET',
headers: headers,
})
}
const putBlog = (postData: Object) => {
return service({
url: '/wiki/api/v1/author/blog/content',
method: 'PUT',
headers: headers,
data: postData
})
}
const updateContent = (post_data: Object) => {
return service({
url: '/wiki/api/v1/author/blog/content',
method: 'POST',
headers: headers,
data: post_data
})
}
const deleteContent = (bid: string, delete_data: Object) => {
return service({
url: '/wiki/api/v1/author/blog/' + bid,
method: 'DELETE',
headers: headers,
data: delete_data
})
}
const sortBlogs = (data: Object, btId: string) => {
return service({
url: '/wiki/api/v1/author/blogs/' + btId,
method: 'POST',
headers: headers,
data: data
})
}
const countBlogs = () => {
return service({
url: '/wiki/api/v1/reader/blogs/count',
method: 'GET',
headers: headers,
})
}
export { export {
createWikiType,
removeWikiType,
updateWikiType,
getWikiType,
sortWikiType,
createWiki,
deleteWiki,
updateWiki,
getWiki,
sortWiki,
countWiki,
listAll, listAll,
updateBtName,
putBlogType,
removeBlogType,
sortBlogTypes,
getContent,
putBlog,
updateContent,
deleteContent,
sortBlogs,
countBlogs
} }
+66
View File
@@ -17,6 +17,40 @@
</el-col> </el-col>
<el-col :xs="12" :lg="9" :md="9" :sm="14" :xl="9"> <el-col :xs="12" :lg="9" :md="9" :sm="14" :xl="9">
<div class="right-box"> <div class="right-box">
<el-dropdown class="item">
<div class="dp-flex justify-content-center align-items height-full width-full">
<el-button v-show="!useSettingsStore.isMobile" type="success" round>appStatus</el-button>
</div>
<template #dropdown>
<el-dropdown-menu class="dropdown-group">
<el-dropdown-item v-for="status in appStatus">
<el-icon v-if="status.status" color="green">
<CircleCheck />
</el-icon>
<el-icon v-if="!status.status" color="red">
<Warning />
</el-icon>
{{ status.appName }}
</el-dropdown-item>
</el-dropdown-menu>
</template>
</el-dropdown>
<el-badge :value="messageCount" class="item">
<el-button round @click="drawer = true">
<template #icon>
<el-icon>
<Message />
</el-icon>
<el-drawer v-model="drawer" title="I am the title" :with-header="false">
<span>站内信呢</span>
<div v-for="msg in messageList">
</div>
</el-drawer>
</template>
</el-button>
</el-badge>
<el-dropdown> <el-dropdown>
<div class="dp-flex justify-content-center align-items height-full width-full"> <div class="dp-flex justify-content-center align-items height-full width-full">
<span class="header-avatar" style="cursor: pointer"> <span class="header-avatar" style="cursor: pointer">
@@ -57,19 +91,46 @@
import CustomPic from "@/components/customPic/index.vue"; import CustomPic from "@/components/customPic/index.vue";
import { tenantStore } from '@/store/modules/tenant' import { tenantStore } from '@/store/modules/tenant'
import { settingsStore } from '@/store/modules/settings' import { settingsStore } from '@/store/modules/settings'
import { Message } from "@element-plus/icons-vue"
import { reactive, ref } from "vue";
// -- IMPORT -- // -- IMPORT --
const useTenantStore = tenantStore() const useTenantStore = tenantStore()
const useSettingsStore = settingsStore() const useSettingsStore = settingsStore()
// -- REACTIVE OBJECT -- // -- REACTIVE OBJECT --
const appStatus = reactive([
{
appName: "wiki",
status: true,
},
{
appName: "bookmark",
status: true,
},
{
appName: "calendar",
status: false,
},
])
// -- REF OBJECT -- // -- REF OBJECT --
const messageCount = ref()
const drawer = ref(false)
const messageList = reactive<any[]>([
{
title: "过期通知",
type: "",
message: "尊敬的用户,你的账号余额已不足,请充值",
Unread: true,
}
])
// -- EVENT DEFINITION // -- EVENT DEFINITION
const toPerson = () => { const toPerson = () => {
} }
useTenantStore.reflush() useTenantStore.reflush()
</script> </script>
@@ -88,6 +149,11 @@ useTenantStore.reflush()
} }
} }
.item {
margin-top: 5px;
margin-right: 30px;
}
.header-avatar { .header-avatar {
display: flex; display: flex;
justify-content: center; justify-content: center;
-1
View File
@@ -2,7 +2,6 @@
<div> <div>
<el-menu router class="el-menu-vertical" :style="{ height: sideHeight }" :background-color="theme.background" <el-menu router class="el-menu-vertical" :style="{ height: sideHeight }" :background-color="theme.background"
:active-text-color="theme?.background"> :active-text-color="theme?.background">
<el-menu-item v-for="(route, index) in current_routes" :key="index" :index="route.path" :title="route.meta?.name" <el-menu-item v-for="(route, index) in current_routes" :key="index" :index="route.path" :title="route.meta?.name"
@click="onclick()"> @click="onclick()">
<template #title> <template #title>
+1 -1
View File
@@ -74,7 +74,7 @@ const scan_method: any = {
path: '/home' path: '/home'
}) })
}, },
test: (qrcode: string) => { test: async (qrcode: string) => {
window.location.href = qrcode window.location.href = qrcode
}, },
} }
+42 -3
View File
@@ -20,9 +20,48 @@ type DataTimeline = {
} }
type Event = { type Event = {
event_date: string, reminder_date: string,
title: string, title: string,
event_info: string, info: string,
type: string[],
} }
export { Tenant, Theme, DataTimeline, Event } interface Wiki {
bid: string
btId: string
title: string
blog_prex: string
autosave_control: string
content: string
order: number
}
const wiki = (data: any) => {
const { bid, btId, content, title, order } = data
return {
bid: bid,
btId: btId,
content: content,
title: title,
order: order
} as Wiki
}
interface WikiType {
btId: string
btName: string
blogs: Wiki[]
order: number
}
const wikiType = (data: any) => {
const { btId, btName, order } = data
return {
btId: btId,
btName: btName,
blogs: [],
order: order,
} as WikiType
}
export { Tenant, Theme, DataTimeline, Event, Wiki, wiki, WikiType, wikiType }
+12
View File
@@ -0,0 +1,12 @@
import { h } from 'vue'
import { ElMessage } from 'element-plus'
const setErrorMessage = (msg: string) => {
ElMessage({
message: h('p', null, [
h('i', { style: 'color: teal' }, msg),
]),
})
}
export { setErrorMessage }
+322 -376
View File
@@ -15,14 +15,14 @@
<draggable :list="blogTypes" ghost-class="ghost" handle=".move" animation="300" :force-fallback="true" itemKey="" <draggable :list="blogTypes" ghost-class="ghost" handle=".move" animation="300" :force-fallback="true" itemKey=""
filter=".forbid" chosen-class="chosenClass" :fallback-class="true" :fallback-on-body="true" filter=".forbid" chosen-class="chosenClass" :fallback-class="true" :fallback-on-body="true"
:touch-start-threshold="50" :fallback-tolerance="50" @start="onStartBlogType" @end="sortBlogType" group="group1" :touch-start-threshold="50" :fallback-tolerance="50" @start="onStartBlogType" @end="onSortWikiType" group="group1"
:move="onMove"> :move="onMove">
<template #item="{ element }"> <template #item="{ element }">
<div class="item"> <div class="item">
<label class="move"></label> <label class="move"></label>
<p class="bt-input" @click="onclickTypeTab(element.order)">{{ element.btName }}</p> <p class="bt-input" @click="onclickTypeTab(element)">{{ element.btName }}</p>
<div> <div>
<el-button class="operate_button" :icon="Setting" size="small" v-show="checkedBlogIndex == element.order" <el-button class="operate_button" :icon="Setting" size="small" v-show="showWikiTypeIcon(element)"
@click="handleCreateBlogType()" /> @click="handleCreateBlogType()" />
</div> </div>
</div> </div>
@@ -39,18 +39,18 @@
</div> </div>
<div class="b_section" :style="bWholeStyle" v-show="collapsible[1] == 0"> <div class="b_section" :style="bWholeStyle" v-show="collapsible[1] == 0">
<div class="item_header"> <div class="item_header">
<el-button class="item_header_button" :disabled="isclicked" @click="insertBlog">增加一个博客</el-button> <el-button class="item_header_button" :disabled="isclicked" @click="onCreateWiki">增加一个博客</el-button>
</div> </div>
<draggable :list="blogTypes[checkedBlogIndex].blogs" ghost-class="ghost" handle=".move" animation="300" <draggable :list="checkedWikiType.blogs" ghost-class="ghost" handle=".move" animation="300" :force-fallback="true"
:force-fallback="true" itemKey="" filter=".forbid" chosen-class="chosenClass" :fallback-class="true" itemKey="" filter=".forbid" chosen-class="chosenClass" :fallback-class="true" :fallback-on-body="true"
:fallback-on-body="true" :touch-start-threshold="50" :fallback-tolerance="50" @start="onStartBlog" :touch-start-threshold="50" :fallback-tolerance="50" @start="onStartBlog" @end="onSortWiki" group="group2"
@end="sortBlog" group="group2" :move="onMove"> :move="onMove">
<template #item="{ element }"> <template #item="{ element }">
<div class="item"> <div class="item">
<label class="move"></label> <label class="move"></label>
<p class="bt-input" @click="onclickBlogTab(element)">{{ element.title }}</p> <p class="bt-input" @click="onclickBlogTab(element)">{{ element.title }}</p>
<div> <div>
<el-button class="operate_button" v-show="checkedIndex == element.order" :icon="Delete" size="small" <el-button class="operate_button" v-show="showWikiIcon(element)" :icon="Delete" size="small"
@click="deleteDialogVisible = true" /> @click="deleteDialogVisible = true" />
</div> </div>
</div> </div>
@@ -61,12 +61,11 @@
<div class="c_section"> <div class="c_section">
<div class="title_style"> <div class="title_style">
<el-input v-model="blogTypes[checkedBlogIndex].blogs[checkedIndex].title" @keyup.enter.native="saveTitle" <el-input v-model="checkedWiki.title" @keyup.enter.native="onUpdateTitle" @blur="onUpdateTitle">
@blur="saveTitle">
</el-input> </el-input>
</div> </div>
<div :style="cWholeStyle"> <div :style="cWholeStyle">
<md-editor theme="light" v-model="current_blog.content" @save="saveContent" @upload-img="onUploadImg" <md-editor theme="light" v-model="checkedWiki.content" @save="onUpdateContent" @upload-img="onUploadImg"
:style="{ height: innerHeight }" /> :style="{ height: innerHeight }" />
</div> </div>
</div> </div>
@@ -78,35 +77,35 @@
<template #footer> <template #footer>
<span class="dialog-footer"> <span class="dialog-footer">
<el-button @click="blogTypeCreateDialogVisible = false">取消</el-button> <el-button @click="blogTypeCreateDialogVisible = false">取消</el-button>
<el-button type="primary" @click="insertBlogType">确认</el-button> <el-button type="primary" @click="onCreateWikiType">确认</el-button>
</span> </span>
</template> </template>
</el-dialog> </el-dialog>
<!-- edit and delete blogtype dialog --> <!-- edit and delete blogtype dialog -->
<el-dialog v-model="blogTypeEditDialogVisible" title="博客分类 Setting" width="30%"> <el-dialog v-model="blogTypeEditDialogVisible" title="博客分类 Setting" width="30%">
你正在对 {{ blogTypes[checkedBlogIndex].btName }}进行操作 你正在对 {{ checkedWikiType.btName }}进行操作
<div style="display: flex; margin: 10px"> <div style="display: flex; margin: 10px">
<el-button type="primary" @click="saveBlogType()">修改</el-button> <el-button type="primary" @click="onUpdateWikiType()">修改</el-button>
<el-input v-model="btName"> <el-input v-model="checkedWikiType.btName">
</el-input> </el-input>
</div> </div>
<div style="display: flex; margin: 10px"> <div style="display: flex; margin: 10px">
<el-button type="danger" @click="deleteBlogType()">删除</el-button> <el-button type="danger" @click="deleteWikiType()">删除</el-button>
<el-input v-model="deleteBtName" :placeholder="'请输入 ' + blogTypes[checkedBlogIndex].btName + ' 进行删除'"> <el-input v-model="deleteBtName" :placeholder="'请输入 ' + checkedWikiType.btName + ' 进行删除'">
</el-input> </el-input>
</div> </div>
</el-dialog> </el-dialog>
<!-- delete blog dialog --> <!-- delete blog dialog -->
<el-dialog v-model="deleteDialogVisible" title="删除博客" width="30%"> <el-dialog v-model="deleteDialogVisible" title="删除博客" width="30%">
你正在对 {{ blogTypes[checkedBlogIndex].blogs[checkedIndex].title }} 你正在对 {{ checkedWiki.title }}
<el-input v-model="btName" :placeholder="'请输入<删除>'"> <el-input v-model="btName" :placeholder="'请输入<删除>'">
</el-input> </el-input>
<template #footer> <template #footer>
<span class="dialog-footer"> <span class="dialog-footer">
<el-button @click="deleteDialogVisible = false">取消</el-button> <el-button @click="deleteDialogVisible = false">取消</el-button>
<el-button type="primary" @click="deleteBlog">确认</el-button> <el-button type="primary" @click="onDeleteWiki">确认</el-button>
</span> </span>
</template> </template>
</el-dialog> </el-dialog>
@@ -119,89 +118,323 @@ import $moment from "moment"
import MdEditor from 'md-editor-v3' import MdEditor from 'md-editor-v3'
import { CaretRight, CaretLeft, Setting, Delete } from "@element-plus/icons-vue" import { CaretRight, CaretLeft, Setting, Delete } from "@element-plus/icons-vue"
import 'md-editor-v3/lib/style.css' import 'md-editor-v3/lib/style.css'
import { h } from 'vue' import { Wiki, WikiType, wiki, wikiType } from "../../entity"
import { ElMessage } from 'element-plus' import { setErrorMessage } from "../../utils/common"
import { import {
updateBtName, createWikiType,
updateContent, removeWikiType,
updateWikiType,
getWikiType,
sortWikiType,
createWiki,
deleteWiki,
updateWiki,
getWiki,
sortWiki,
listAll, listAll,
putBlogType,
removeBlogType,
getContent,
putBlog,
deleteContent,
sortBlogTypes,
sortBlogs
} from '../../api/blog' } from '../../api/blog'
import { copy } from '../../utils/copyutil' import { copy } from '../../utils/copyutil'
import draggable from "vuedraggable" import draggable from "vuedraggable"
interface Blog {
bid: string
btId: string
title: string
blog_prex: string
autosave_control: string
content: string
order: number
}
interface BlogType {
btId: string
btName: string
blogs: Blog[]
order: number
}
const blogTypes = reactive<BlogType[]>([])
const blogTypeCreateDialogVisible = ref(false) const blogTypeCreateDialogVisible = ref(false)
const blogTypeEditDialogVisible = ref(false) const blogTypeEditDialogVisible = ref(false)
const deleteDialogVisible = ref(false) const deleteDialogVisible = ref(false)
let checkedIndex = ref<number>(0)
let checkedBlogIndex = ref<number>(0)
let isclicked = ref(false) let isclicked = ref(false)
let isReady = ref(false) let isReady = ref(false)
// tmp btName for create, edit, delete // tmp btName for create, edit, delete
let btName = ref("") let btName = ref("")
let deleteBtName = ref("") let deleteBtName = ref("")
let current_blog = reactive({ const blogTypes = reactive<WikiType[]>([])
const checkedWikiType = reactive<WikiType>(wikiType({
btId: "",
btName: "",
blogs: [],
order: 0
}))
const checkedWiki = reactive<Wiki>(wiki(
{
bid: "", bid: "",
btId: "",
title: "",
content: "", content: "",
}) }
))
// FUNCTION DEFINITION // FUNCTION DEFINITION
/**
* FUNCTION DEFINITION LIST
* {@link onCreateWikiType 创建 wiki Type}
* {@link deleteWikiType 删除 wiki Type}
* {@link onUpdateWikiType 更新 wiki Type}
* {@link onCreateWiki 创建wiki}
* {@link onDeleteWiki 删除wiki}
* {@link onUpdateContent 修改Wiki文本内容}
* {@link onUpdateTitle 修改Wikititle}
* {@link onclickTypeTab 点击type Tag触发}
* {@link onclickBlogTab 点击wiki Tag触发}
* {@link handleCreateBlogType }
* {@link getTestData 初始数据加载}
*
*/
const showWikiTypeIcon = (data: any) => {
return checkedWikiType.btId == data.btId
}
const showWikiIcon = (data: any) => {
return checkedWiki.bid == data.bid
}
/**
* create blogType
*/
const onCreateWikiType = () => {
if (btName.value == "") {
blogTypeCreateDialogVisible.value = false
return
}
const data = {
btName: btName.value,
order: blogTypes.length
}
createWikiType(data).then(response => {
const blog_type = wikiType(response.data)
blogTypes.push(blog_type)
response.data.blog_list.forEach((item: any) => {
const blog = wiki(item)
blog_type.blogs.push(blog as Wiki)
})
copy(checkedWikiType, blog_type)
copy(checkedWiki, blog_type.blogs[0])
}).catch(() => {
setErrorMessage("创建博客分类失败")
}).finally(() => {
btName.value = ""
blogTypeCreateDialogVisible.value = false
})
}
const deleteWikiType = async () => {
if (deleteBtName.value == checkedWikiType.btName) {
const data = {
btId: checkedWikiType.btId
}
await removeWikiType(data).then((response) => {
blogTypes.length = 0
response.data.forEach((element: any) => {
const wiki_Type = wikiType(element)
blogTypes.push(wiki_Type)
})
response.data[0].blog_list.forEach((item: any) => {
const blog = wiki(item)
blogTypes[0].blogs.push(blog)
})
copy(checkedWikiType, blogTypes[0])
copy(checkedWiki, blogTypes[0].blogs[0])
blogTypeEditDialogVisible.value = false
})
} else {
blogTypeEditDialogVisible.value = false
}
}
/**
* edit blogType
*/
const onUpdateWikiType = () => {
if (checkedWikiType.btName == "") {
blogTypeEditDialogVisible.value = false
return
}
const query = {
btId: checkedWikiType.btId,
btName: checkedWikiType.btName,
}
updateWikiType(query).then(() => {
blogTypes.forEach((item) => {
if (item.btId == checkedWikiType.btId) {
item.btName = checkedWikiType.btName
}
})
}).catch(() => {
setErrorMessage("文章保存失败")
}).finally(() => {
blogTypeEditDialogVisible.value = false
})
}
/**
* ブログ新規作成
*/
const onCreateWiki = () => {
isclicked.value = true
const data = {
btId: checkedWikiType.btId,
title: $moment().format("YYYY-MM-DD"),
}
createWiki(data).then(response => {
const blog = wiki(response.data)
checkedWikiType.blogs.push(blog)
copy(checkedWiki, blog)
}).finally(() => {
isclicked.value = false
})
}
/**
* ブログ削除
*/
const onDeleteWiki = async () => {
if (btName.value == "删除") {
let delete_data = {
bid: checkedWiki.bid,
btId: checkedWiki.btId
}
await deleteWiki(delete_data).then(response => {
checkedWikiType.blogs.length = 0
response.data.blog_list.forEach((item: any) => {
const blog = wiki(item)
checkedWikiType.blogs.push(blog)
})
copy(checkedWiki, checkedWikiType.blogs[0])
}).finally(() => {
deleteDialogVisible.value = false
btName.value = ""
})
}
}
/**
* Blog内容修正
*/
const onUpdateContent = async () => {
const query = {
bid: checkedWiki.bid,
content: checkedWiki.content
}
updateWiki(query).catch(() => {
setErrorMessage("文章保存失败")
})
}
/**
* Blogタイトル修正
*/
const onUpdateTitle = () => {
const query = {
bid: checkedWiki.bid,
title: checkedWiki.title
}
updateWiki(query).then(() => {
checkedWikiType.blogs.forEach((e) => {
if (e.bid == checkedWiki.bid) {
e.title = checkedWiki.title
}
})
}).catch(() => {
setErrorMessage("文章标题保存失败")
})
}
/**
* 点击 【博客分类】
* @param wikiType BlogType
*/
const onclickTypeTab = async (wikiType: WikiType) => {
if (wikiType.btId == checkedWikiType.btId) {
return
}
deleteBtName.value = ""
await getWikiType(wikiType.btId).then(response => {
wikiType.blogs.length = 0
response.data.blog_list.forEach((item: any) => {
const blog = wiki(item)
wikiType.blogs.push(blog)
})
copy(checkedWikiType, wikiType)
copy(checkedWiki, wikiType.blogs[0])
}).catch(err => {
console.log(err)
})
}
/**
* 点击 【博客】
* @param w Blog
*/
const onclickBlogTab = (w: Wiki) => {
deleteBtName.value = ""
if (w.bid == checkedWiki.bid) {
return
}
getWiki(w.bid).then(response => {
copy(checkedWiki, wiki(response.data))
}).catch((err) => {
setErrorMessage(err)
})
}
/**
* @desc wiki 分类排序
*
*/
const onSortWikiType = async () => {
const sortData: string[] = []
blogTypes.forEach((blogType: WikiType) => {
sortData.push(blogType.btId)
})
sortWikiType({ btIds: sortData }).catch(() => {
setErrorMessage("分类排序失败")
})
}
/**
* @desc wikiソート機能
*
*/
const onSortWiki = async () => {
const sortData: string[] = []
checkedWikiType.blogs.forEach((blog: Wiki) => {
sortData.push(blog.bid)
})
sortWiki({ bIds: sortData }, checkedWikiType.btId).catch(() => {
setErrorMessage("blog排序失败")
})
}
const handleCreateBlogType = () => {
blogTypeEditDialogVisible.value = true
}
/** /**
* Blog一覧取得 * Blog一覧取得
*/ */
const getTestData = async () => { const getTestData = async () => {
await listAll().then(response => { await listAll().then(response => {
response.data.sort((x: any, y: any) => { x.order - y.order })
response.data.forEach((element: any) => { response.data.forEach((element: any) => {
const blog_type: BlogType = { const blog_type = wikiType(element)
btId: element.btId,
btName: element.btName,
blogs: [],
order: element.order
}
element.blog_list.forEach((item: any) => {
const blog: Blog = {
bid: item.bid,
btId: item.btId,
title: item.title,
blog_prex: item.blog_prex,
autosave_control: item.autosave_control,
content: item.content,
order: item.order
}
blog_type.blogs.push(blog)
})
blogTypes.push(blog_type) blogTypes.push(blog_type)
}) })
response.data[0].blog_list.forEach((item: any) => {
const blog = wiki(item)
blogTypes[0].blogs.push(blog)
})
isReady.value = true isReady.value = true
checkedBlogIndex.value = blogTypes[0].order copy(checkedWikiType, blogTypes[0])
checkedIndex.value = 0 copy(checkedWiki, blogTypes[0].blogs[0])
console.log(blogTypes[0].blogs[0])
copy(current_blog, blogTypes[0].blogs[0])
}) })
// TODO 需要优化部分 // TODO 需要优化部分
@@ -212,308 +445,27 @@ const getTestData = async () => {
* *
*/ */
let old_blog = { let old_blog = {
bid: current_blog.bid, bid: checkedWiki.bid,
content: current_blog.content, content: checkedWiki.content,
} }
setInterval(async () => { setInterval(async () => {
if (current_blog.bid == old_blog.bid) { if (checkedWiki.bid == old_blog.bid) {
if (old_blog.content == current_blog.content) { if (old_blog.content == checkedWiki.content) {
return return
} }
await saveContent().then(() => { await updateWiki({
old_blog.content = current_blog.content bid: checkedWiki.bid,
content: checkedWiki.content
}).then(() => {
old_blog.content = checkedWiki.content
}) })
} else { } else {
old_blog.bid = current_blog.bid old_blog.bid = checkedWiki.bid
old_blog.content = current_blog.content old_blog.content = checkedWiki.content
} }
}, 5000) }, 5000)
} }
/**
* BlogTypeを選べる
* @param order
*/
const onclickTypeTab = (order: number) => {
const bid = blogTypes[order].blogs[0].bid
deleteBtName.value = ""
getContent(bid).then(response => {
blogTypes[order].blogs[0].content = response.data.content
checkedBlogIndex.value = order
checkedIndex.value = 0
copy(current_blog, blogTypes[checkedBlogIndex.value].blogs[0])
})
}
const onclickBlogTab = (blog: Blog) => {
deleteBtName.value = ""
getContent(blog.bid).then(response => {
checkedIndex.value = blog.order
blogTypes[checkedBlogIndex.value].blogs[checkedIndex.value].content = response.data.content
copy(current_blog, blog)
}).catch(() => {
checkedIndex.value = blog.order
})
}
/**
* Blog内容修正
*/
const saveContent = async () => {
const query = {
bid: current_blog.bid,
content: current_blog.content
}
updateContent(query).then(() => {
}).catch(() => {
ElMessage({
message: h('p', null, [
h('i', { style: 'color: teal' }, "文章保存失败"),
]),
})
})
}
/**
* Blogタイトル修正
*/
const saveTitle = () => {
const query = {
bid: current_blog.bid,
title: blogTypes[checkedBlogIndex.value].blogs[checkedIndex.value].title
}
updateContent(query).then(() => {
}).catch(() => {
ElMessage({
message: h('p', null, [
h('i', { style: 'color: teal' }, "文章标题保存失败"),
]),
})
})
}
/**
* ブログ新規作成
*/
const insertBlog = () => {
isclicked.value = true
const data = {
btId: blogTypes[checkedBlogIndex.value].btId,
title: $moment().format("YYYY-MM-DD"),
order: blogTypes[checkedBlogIndex.value].blogs.length
}
putBlog(data).then(response => {
const { bid, btid, title, content, order, autosave_control } = response.data
const blog = {
bid: bid,
btId: btid,
title: title,
blog_prex: "",
content: content,
autosave_control: autosave_control,
order: order
} as Blog
blogTypes[checkedBlogIndex.value].blogs.push(blog)
checkedIndex.value = order
isclicked.value = false
copy(current_blog, blog)
})
}
/**
* ブログ削除
*/
const deleteBlog = () => {
if (btName.value == "删除") {
let delete_data = {
btId: blogTypes[checkedBlogIndex.value].btId
}
deleteContent(blogTypes[checkedBlogIndex.value].blogs[checkedIndex.value].bid, delete_data).then(response => {
blogTypes[checkedBlogIndex.value].blogs.length = 0
response.data.blog_list.forEach((item: any) => {
const blog: Blog = {
bid: item.bid,
btId: item.btId,
title: item.title,
blog_prex: item.blog_prex,
autosave_control: item.autosave_control,
content: item.content,
order: item.order
}
blogTypes[checkedBlogIndex.value].blogs.push(blog)
})
checkedIndex.value = 0
copy(current_blog, blogTypes[checkedBlogIndex.value].blogs[0])
deleteDialogVisible.value = false
btName.value = ""
}).catch(() => {
deleteDialogVisible.value = false
btName.value = ""
})
}
}
const handleCreateBlogType = () => {
btName.value = blogTypes[checkedBlogIndex.value].btName
blogTypeEditDialogVisible.value = true
deleteBtName.value = ""
}
/**
* create blogType
*/
const insertBlogType = () => {
if (btName.value == "") {
blogTypeCreateDialogVisible.value = false
return
}
const data = {
btName: btName.value,
order: blogTypes.length
}
putBlogType(data).then(response => {
const blog_type: BlogType = {
btId: response.data.btId,
btName: response.data.btName,
blogs: [],
order: response.data.order
}
response.data.blog_list.forEach((item: any) => {
const blog: Blog = {
bid: item.bid,
btId: item.btId,
title: item.title,
blog_prex: item.blog_prex,
autosave_control: item.autosave_control,
content: item.content,
order: item.order
}
blog_type.blogs.push(blog)
})
blogTypes.push(blog_type)
checkedBlogIndex.value = response.data.order
checkedIndex.value = blog_type.blogs[0].order
copy(current_blog, blogTypes[checkedBlogIndex.value].blogs[0])
blogTypeCreateDialogVisible.value = false
btName.value = ""
})
}
/**
* edit blogType
*/
const saveBlogType = () => {
if (btName.value == "") {
blogTypeEditDialogVisible.value = false
return
}
const query = {
btId: blogTypes[checkedBlogIndex.value].btId,
btName: btName.value,
}
updateBtName(query).then(() => {
blogTypes[checkedBlogIndex.value].btName = btName.value
blogTypeEditDialogVisible.value = false
btName.value = ""
}).catch(() => {
btName.value = ""
blogTypeEditDialogVisible.value = false
})
}
const deleteBlogType = () => {
if (deleteBtName.value == blogTypes[checkedBlogIndex.value].btName) {
const data = {
btId: blogTypes[checkedBlogIndex.value].btId
}
removeBlogType(data).then((response) => {
blogTypes.length = 0
response.data.forEach((element: any) => {
const blog_type: BlogType = {
btId: element.btId,
btName: element.btName,
blogs: [],
order: element.order
}
element.blog_list.forEach((item: any) => {
const blog: Blog = {
bid: item.bid,
btId: item.btId,
title: item.title,
blog_prex: item.blog_prex,
autosave_control: item.autosave_control,
content: item.content,
order: item.order
}
blog_type.blogs.push(blog)
})
blogTypes.push(blog_type)
})
checkedBlogIndex.value = 0
checkedIndex.value = 0
copy(current_blog, blogTypes[0].blogs[0])
blogTypeEditDialogVisible.value = false
})
} else {
blogTypeEditDialogVisible.value = false
}
}
const sortBlogType = () => {
const sortData: BlogType[] = []
blogTypes.forEach((blogType: BlogType, index) => {
blogType.order = index
if (blogType.btId == id.value) {
checkedBlogIndex.value = index
}
sortData.push({
btId: blogType.btId,
btName: blogType.btName,
blogs: [],
order: blogType.order
})
})
sortBlogTypes(sortData).then(() => {
}).catch(() => {
ElMessage({
message: h('p', null, [
h('i', { style: 'color: teal' }, "分类排序失败"),
]),
})
})
}
const sortBlog = () => {
const sortData: any[] = []
blogTypes[checkedBlogIndex.value].blogs.forEach((blog: Blog, index) => {
blog.order = index
if (blog.bid == id.value) {
checkedIndex.value = index
}
sortData.push({
bid: blog.bid,
order: blog.order
})
})
sortBlogs(sortData, blogTypes[checkedBlogIndex.value].btId).then(() => {
}).catch(() => {
ElMessage({
message: h('p', null, [
h('i', { style: 'color: teal' }, "blog排序失败"),
]),
})
})
}
// Created 段階の関数呼び出す処理 // Created 段階の関数呼び出す処理
getTestData() getTestData()
@@ -521,7 +473,7 @@ getTestData()
window.addEventListener('keydown', async function (event) { window.addEventListener('keydown', async function (event) {
if (event.ctrlKey && event.key == "s") { if (event.ctrlKey && event.key == "s") {
event.preventDefault(); event.preventDefault();
saveContent() onUpdateContent()
} }
}) })
@@ -549,17 +501,11 @@ const onUploadProcess = (e: number) => {
const id = ref("") const id = ref("")
const onStartBlogType = () => { const onStartBlogType = () => {
console.log("开始拖拽"); console.log("开始拖拽");
id.value = blogTypes[checkedBlogIndex.value].btId // id.value = blogTypes[checkedWikiTypeIndex.value].btId
}; };
const onStartBlog = () => { const onStartBlog = () => {
console.log("开始拖拽"); // id.value = blogTypes[checkedWikiTypeIndex.value].blogs[checkedWikiIndex.value].bid
id.value = blogTypes[checkedBlogIndex.value].blogs[checkedIndex.value].bid
};
//拖拽结束的事件
const onEnd = () => {
} }
const onMove = (e: any) => { const onMove = (e: any) => {
+1 -2
View File
@@ -23,8 +23,7 @@
<el-form :model="dialog_form"> <el-form :model="dialog_form">
<el-form-item label="分类" :label-width="formLabelWidth"> <el-form-item label="分类" :label-width="formLabelWidth">
<el-select v-model="dialog_form.bk_type_id" placeholder> <el-select v-model="dialog_form.bk_type_id" placeholder>
<el-option v-for="(item) in types" :key="item.bk_type_id" :value="item.bk_type_id" <el-option v-for="(item) in types" :key="item.bk_type_id" :value="item.bk_type_id" :label="item.bk_type_name" />
:label="item.bk_type_name" />
</el-select> </el-select>
<el-form-item label="备注" :label-width="formLabelWidth"> <el-form-item label="备注" :label-width="formLabelWidth">
<el-input v-model="dialog_form.comment" autocomplete="off" /> <el-input v-model="dialog_form.comment" autocomplete="off" />
+1
View File
@@ -208,6 +208,7 @@ const handleTags = (tag: any) => {
} else { } else {
tag.clicked = true tag.clicked = true
search_form.bk_type_ids.push(tag.bk_type_id) search_form.bk_type_ids.push(tag.bk_type_id)
doSearch()
} }
} }
+9 -8
View File
@@ -20,21 +20,21 @@
</el-calendar> </el-calendar>
<span>待办事项</span> <span>待办事项</span>
<el-table :data="eventDataList"> <el-table :data="eventDataList">
<el-table-column property="event_date" label="Date" width="150" /> <el-table-column property="reminder_date" label="Date" width="150" />
<el-table-column property="title" label="title" width="200" /> <el-table-column property="title" label="title" width="200" />
<el-table-column property="event_info" label="eventInfo" /> <el-table-column property="reminder_info" label="eventInfo" />
</el-table> </el-table>
<el-dialog v-model="dialogFormVisible" title="待办事项"> <el-dialog v-model="dialogFormVisible" title="待办事项">
<el-form :model="form"> <el-form :model="form">
<el-form-item label="日期" :label-width="formLabelWidth"> <el-form-item label="日期" :label-width="formLabelWidth">
<span>{{ form.event_date }}</span> <span>{{ form.reminder_date }}</span>
</el-form-item> </el-form-item>
<el-form-item label="title" :label-width="formLabelWidth"> <el-form-item label="title" :label-width="formLabelWidth">
<el-input v-model="form.title" autocomplete="off" /> <el-input v-model="form.title" autocomplete="off" />
</el-form-item> </el-form-item>
<el-form-item label="eventInfo" :label-width="formLabelWidth"> <el-form-item label="eventInfo" :label-width="formLabelWidth">
<el-input v-model="form.event_info" autocomplete="off" type="textarea" /> <el-input v-model="form.reminder_info" autocomplete="off" type="textarea" />
</el-form-item> </el-form-item>
<el-form-item label="alert" :label-width="formLabelWidth"> <el-form-item label="alert" :label-width="formLabelWidth">
<el-checkbox-group v-model="checkedalerts" :min="0" :max="2"> <el-checkbox-group v-model="checkedalerts" :min="0" :max="2">
@@ -73,9 +73,10 @@ const holidays = reactive<any>({})
const eventDataList = reactive<Event[]>([]) const eventDataList = reactive<Event[]>([])
const eventDataObject = reactive<any>({}) const eventDataObject = reactive<any>({})
const form = reactive({ const form = reactive({
event_date: '', reminder_date: '',
title: '', title: '',
event_info: '', reminder_info: '',
}) })
// -- REF OBJECT -- // -- REF OBJECT --
const value = ref(new Date()) const value = ref(new Date())
@@ -89,7 +90,7 @@ const alerts = ['email', 'messageBox', '手机短信', '微信通知']
// -- EVENT DEFINITION // -- EVENT DEFINITION
const onclick = (date: Date) => { const onclick = (date: Date) => {
form.event_date = toLocalDate(date) form.reminder_date = toLocalDate(date)
dialogFormVisible.value = true dialogFormVisible.value = true
} }
@@ -129,7 +130,7 @@ onMounted(async () => {
eventDataList.length = 0 eventDataList.length = 0
response.data.forEach((record: Event) => { response.data.forEach((record: Event) => {
eventDataList.push(record) eventDataList.push(record)
eventDataObject[record.event_date] = record.title eventDataObject[record.reminder_date] = record.title
}) })
}) })
isComponentActive.value = true isComponentActive.value = true
+7 -4
View File
@@ -106,7 +106,7 @@ import EchartsLine from '@/view/dashboard/dashboardCharts/index.vue'
import DashboardTable from '@/view/dashboard/dashboardTable/index.vue' import DashboardTable from '@/view/dashboard/dashboardTable/index.vue'
import { useRouter } from 'vue-router' import { useRouter } from 'vue-router'
import { useWeatherInfo } from '@/service/weather' import { useWeatherInfo } from '@/service/weather'
import { countBlogs } from "@/api/blog" import { countWiki } from "@/api/blog"
import { bookmarks_count } from "@/api/bookmark" import { bookmarks_count } from "@/api/bookmark"
// -- IMPORT -- // -- IMPORT --
@@ -146,9 +146,9 @@ const toolCards = ref([
bg: 'rgba(185, 192, 255,.3)' bg: 'rgba(185, 192, 255,.3)'
}, },
{ {
label: '代码生成器', label: 'scrum',
icon: 'cpu', icon: 'cpu',
name: 'autoCode', name: 'scrum',
color: '#ffd666', color: '#ffd666',
bg: 'rgba(255, 214, 102,.3)' bg: 'rgba(255, 214, 102,.3)'
}, },
@@ -182,6 +182,9 @@ const toTarget = (name: string) => {
case 'wiki': case 'wiki':
window.open('https://www.violin-home.cn/docs#/guan/', '_blank') window.open('https://www.violin-home.cn/docs#/guan/', '_blank')
break; break;
case 'scrum':
window.open('https://www.leangoo.com/kanban/board_list?#/home/list', '_blank')
break;
} }
} }
@@ -192,7 +195,7 @@ setInterval(() => {
time.value = $moment().format("YYYY年MM月DD日 HH:mm:ss") time.value = $moment().format("YYYY年MM月DD日 HH:mm:ss")
}, 1000) }, 1000)
countBlogs().then((resp) => { countWiki().then((resp) => {
const data = resp.data const data = resp.data
statistics.value.wiki_count = data.count statistics.value.wiki_count = data.count
}) })