Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
Ygopro Arena Web
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
GaiaXalter
Ygopro Arena Web
Commits
9db801d3
Commit
9db801d3
authored
Jul 15, 2018
by
ganjingcun
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
tabulate
parent
67f47ccc
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
249 additions
and
17 deletions
+249
-17
src/components/PageHeader.vue
src/components/PageHeader.vue
+13
-3
src/components/Profile.vue
src/components/Profile.vue
+6
-6
src/components/Ranking.vue
src/components/Ranking.vue
+2
-2
src/components/Tabulate.vue
src/components/Tabulate.vue
+212
-0
src/components/Userinfo.vue
src/components/Userinfo.vue
+6
-6
src/components/lang.js
src/components/lang.js
+4
-0
src/router/index.js
src/router/index.js
+6
-0
No files found.
src/components/PageHeader.vue
View file @
9db801d3
...
@@ -14,10 +14,19 @@
...
@@ -14,10 +14,19 @@
<li
role=
"presentation"
><a
href=
"https://ygobbs.com/"
target=
"_blank"
>
{{
lang
.
forum
}}
</a></li>
<li
role=
"presentation"
><a
href=
"https://ygobbs.com/"
target=
"_blank"
>
{{
lang
.
forum
}}
</a></li>
<li
role=
"presentation"
><a
href=
"#/ranking"
>
{{
lang
.
rank
}}
</a></li>
<li
role=
"presentation"
><a
href=
"#/ranking"
>
{{
lang
.
rank
}}
</a></li>
<li
role=
"presentation"
><a
href=
"#/cards"
>
{{
lang
.
card_rank
}}
</a></li>
<li
role=
"presentation"
><a
href=
"#/cards"
>
{{
lang
.
card_rank
}}
</a></li>
<li
role=
"presentation"
><a
href=
"#/deckprint"
>
{{
lang
.
deckprint
}}
</a></li>
<li
role=
"presentation"
><a
href=
"https://rep.ygobbs.com"
>
{{
lang
.
battlelog
}}
</a></li>
<!--
<li
role=
"presentation"
><a
href=
"https://mycard.moe/ygopro/"
>
{{
lang
.
download
}}
</a></li>
-->
<li
role=
"presentation"
><a
href=
"#/download"
>
{{
lang
.
download
}}
</a></li>
<li
role=
"presentation"
><a
href=
"#/download"
>
{{
lang
.
download
}}
</a></li>
<li
class=
"dropdown"
>
<a
class=
"dropdown-toggle"
data-toggle=
"dropdown"
aria-expanded=
"false"
href=
"#"
>
{{
lang
.
tool
}}
<span
class=
"caret"
></span></a>
<ul
class=
"dropdown-menu"
role=
"menu"
>
<li
role=
"presentation"
><a
href=
"#/deckprint"
>
{{
lang
.
deckprint
}}
</a></li>
<li
role=
"presentation"
><a
href=
"#/tabulate"
>
{{
lang
.
tabulate
}}
</a></li>
<li
role=
"presentation"
><a
href=
"https://rep.ygobbs.com"
>
{{
lang
.
battlelog
}}
</a></li>
</ul>
</li>
<li
v-if=
"user.isLogin"
class=
"dropdown"
>
<li
v-if=
"user.isLogin"
class=
"dropdown"
>
<a
class=
"dropdown-toggle"
data-toggle=
"dropdown"
aria-expanded=
"false"
href=
"#"
><img
v-bind:src=
"user.avatar_url"
id=
"head-portrait"
>
{{
user
.
username
}}
<span
class=
"caret"
></span></a>
<a
class=
"dropdown-toggle"
data-toggle=
"dropdown"
aria-expanded=
"false"
href=
"#"
><img
v-bind:src=
"user.avatar_url"
id=
"head-portrait"
>
{{
user
.
username
}}
<span
class=
"caret"
></span></a>
<ul
class=
"dropdown-menu"
role=
"menu"
>
<ul
class=
"dropdown-menu"
role=
"menu"
>
...
@@ -27,6 +36,7 @@
...
@@ -27,6 +36,7 @@
<li
role=
"presentation"
><a
@
click.prevent=
"logout"
href=
"#"
>
{{
lang
.
signout
}}
</a></li>
<li
role=
"presentation"
><a
@
click.prevent=
"logout"
href=
"#"
>
{{
lang
.
signout
}}
</a></li>
</ul>
</ul>
</li>
</li>
<li
v-else
role=
"presentation"
><a
@
click.prevent=
"login"
href=
"#"
>
{{
lang
.
signin
}}
</a></li>
<li
v-else
role=
"presentation"
><a
@
click.prevent=
"login"
href=
"#"
>
{{
lang
.
signin
}}
</a></li>
<li
class=
"dropdown"
>
<li
class=
"dropdown"
>
<a
class=
"dropdown-toggle"
data-toggle=
"dropdown"
aria-expanded=
"false"
href=
"#"
>
<a
class=
"dropdown-toggle"
data-toggle=
"dropdown"
aria-expanded=
"false"
href=
"#"
>
...
...
src/components/Profile.vue
View file @
9db801d3
...
@@ -309,14 +309,14 @@
...
@@ -309,14 +309,14 @@
append
=
""
append
=
""
}
}
if
(
userscorea
<
0
)
{
if
(
userscorea
<
0
)
{
return
"
<a href='#/userinfo?username=
"
+
data
+
"
'><span class='label label-danger'>
"
+
data
+
"
</span></a>
"
+
append
;
return
"
<a href='#/userinfo?username=
"
+
encodeURIComponent
(
data
)
+
"
'><span class='label label-danger'>
"
+
data
+
"
</span></a>
"
+
append
;
}
}
if
(
userscorea
>
userscoreb
)
{
if
(
userscorea
>
userscoreb
)
{
return
"
<a href='#/userinfo?username=
"
+
data
+
"
'><span class='label label-success'>
"
+
data
+
"
</span></a>
"
+
append
;
return
"
<a href='#/userinfo?username=
"
+
encodeURIComponent
(
data
)
+
"
'><span class='label label-success'>
"
+
data
+
"
</span></a>
"
+
append
;
}
}
return
"
<a href='#/userinfo?username=
"
+
data
+
"
'><span class='label label-info'>
"
+
data
+
"
</span></a>
"
+
append
;
return
"
<a href='#/userinfo?username=
"
+
encodeURIComponent
(
data
)
+
"
'><span class='label label-info'>
"
+
data
+
"
</span></a>
"
+
append
;
},
},
"
targets
"
:
0
"
targets
"
:
0
},
},
...
@@ -333,14 +333,14 @@
...
@@ -333,14 +333,14 @@
append
=
""
append
=
""
}
}
if
(
userscoreb
<
0
)
{
if
(
userscoreb
<
0
)
{
return
"
<a href='#/userinfo?username=
"
+
data
+
"
'><span class='label label-danger'>
"
+
data
+
"
</span></a>
"
+
append
;
return
"
<a href='#/userinfo?username=
"
+
encodeURIComponent
(
data
)
+
"
'><span class='label label-danger'>
"
+
data
+
"
</span></a>
"
+
append
;
}
}
if
(
userscorea
<
userscoreb
)
{
if
(
userscorea
<
userscoreb
)
{
return
"
<a href='#/userinfo?username=
"
+
data
+
"
'><span class='label label-success'>
"
+
data
+
"
</span></a>
"
+
append
;
return
"
<a href='#/userinfo?username=
"
+
encodeURIComponent
(
data
)
+
"
'><span class='label label-success'>
"
+
data
+
"
</span></a>
"
+
append
;
}
}
return
"
<a href='#/userinfo?username=
"
+
data
+
"
'><span class='label label-info'>
"
+
data
+
"
</span></a>
"
+
append
;
return
"
<a href='#/userinfo?username=
"
+
encodeURIComponent
(
data
)
+
"
'><span class='label label-info'>
"
+
data
+
"
</span></a>
"
+
append
;
},
},
"
targets
"
:
1
"
targets
"
:
1
},
},
...
...
src/components/Ranking.vue
View file @
9db801d3
...
@@ -139,7 +139,7 @@
...
@@ -139,7 +139,7 @@
"
columnDefs
"
:
[
"
columnDefs
"
:
[
{
{
"
render
"
:
function
(
data
,
type
,
row
)
{
"
render
"
:
function
(
data
,
type
,
row
)
{
return
"
<a href='#/userinfo?username=
"
+
data
+
"
'>
"
+
data
+
"
</a>
"
;
return
"
<a href='#/userinfo?username=
"
+
encodeURIComponent
(
data
)
+
"
'>
"
+
data
+
"
</a>
"
;
},
},
"
targets
"
:
1
"
targets
"
:
1
},
},
...
@@ -178,7 +178,7 @@
...
@@ -178,7 +178,7 @@
"
columnDefs
"
:
[
"
columnDefs
"
:
[
{
{
"
render
"
:
function
(
data
,
type
,
row
)
{
"
render
"
:
function
(
data
,
type
,
row
)
{
return
"
<a href='#/userinfo?username=
"
+
data
+
"
'>
"
+
data
+
"
</a>
"
;
return
"
<a href='#/userinfo?username=
"
+
encodeURIComponent
(
data
)
+
"
'>
"
+
data
+
"
</a>
"
;
},
},
"
targets
"
:
1
"
targets
"
:
1
},
},
...
...
src/components/Tabulate.vue
0 → 100644
View file @
9db801d3
<
template
>
<div
class=
"content"
>
<div
class=
"container"
>
<div
style=
"margin-left: 10%;margin-right: 10%; margin-top: 20px;"
>
<el-form
ref=
"form"
:model=
"form"
label-width=
"80px"
>
<el-form-item
label=
"一队队名"
:label-width=
"formLabelWidth"
>
<el-input
v-model=
"form.name1"
placeholder=
"请输入一队队名"
auto-complete=
"off"
width=
"10px"
></el-input>
</el-form-item>
<el-form-item
label=
"二队队名"
:label-width=
"formLabelWidth"
>
<el-input
v-model=
"form.name2"
placeholder=
"请输入二队队名"
auto-complete=
"off"
width=
"10px"
></el-input>
</el-form-item>
<el-form-item
label=
"比赛规则"
:label-width=
"formLabelWidth"
>
<el-input
v-model=
"form.rule"
placeholder=
"请输入比赛规则"
auto-complete=
"off"
width=
"10px"
></el-input>
</el-form-item>
<el-form-item
label=
"比赛地点"
:label-width=
"formLabelWidth"
>
<el-input
v-model=
"form.location"
placeholder=
"请输入比赛地点"
auto-complete=
"off"
width=
"10px"
></el-input>
</el-form-item>
<el-form-item
label=
"一队队员"
:label-width=
"formLabelWidth"
>
<el-input
v-model=
"form.member1"
placeholder=
"请输入一队队员, 成员请用空格分开"
auto-complete=
"off"
width=
"10px"
></el-input>
</el-form-item>
<el-form-item
label=
"二队队员"
:label-width=
"formLabelWidth"
>
<el-input
v-model=
"form.member2"
placeholder=
"请输入二队队员, 成员请用空格分开"
auto-complete=
"off"
width=
"10px"
></el-input>
</el-form-item>
<el-form-item
label=
"比赛日期"
:label-width=
"formLabelWidth"
>
<el-date-picker
v-model=
"form.date"
type=
"date"
placeholder=
"选择日期"
format=
"yyyy 年 MM 月 dd 日"
value-format=
"yyyy-MM-dd"
>
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
@
click=
"onSubmit"
>
排表
</el-button>
</el-form-item>
</el-form>
</div>
<hr>
<div
style=
"margin-left: 20%;margin-right: 20%; "
>
<p>
【胜】VS【负】
</p>
<p>
比赛:
{{
form
.
name1
}}
VS
{{
form
.
name2
}}
</p>
<p>
时间:
{{
getDate
()
}}
</p>
<p>
规则:
{{
form
.
rule
}}
</p>
<p>
地点:
{{
form
.
location
}}
</p>
<p>
------------第一轮------------
</p>
<p
v-for=
"x in list"
>
{{
x
.
a
}}
0:0
{{
x
.
b
}}
</p>
<p>
------------第二轮------------
</p>
</div>
<br>
<br>
<br>
<br>
<br>
</div>
</div>
</
template
>
<
script
>
import
querystring
from
'
querystring
'
;
import
_
from
'
lodash
'
;
import
crypto
from
'
crypto
'
;
import
API
from
'
../api
'
import
{
mapGetters
}
from
'
vuex
'
import
moment
from
'
moment
'
import
tb_language
from
'
./tb_lang.js
'
export
default
{
data
()
{
return
{
fileList3
:
[],
list
:
[],
options
:
[{
value
:
'
1
'
,
label
:
'
默认
'
},
{
value
:
'
2
'
,
label
:
'
KONAMI
'
}],
value
:
'
1
'
,
isIE
:
false
,
form
:
{
name1
:
''
,
name2
:
''
,
rule
:
'
2/3【KOF】
'
,
location
:
''
,
member1
:
''
,
member2
:
''
,
date
:
''
,
},
formLabelWidth
:
'
80px
'
,
isNew
:
true
,
isClick
:
false
,
todayCount
:
0
,
uploadUrl
:
API
.
uploadUrl
,
imageUrl
:
""
,
downloadPath
:
""
,
demo_title
:
""
,
demo_url
:
""
,
demo1
:
[],
// checked: false,
checked2
:
false
,
demo2
:
[]
}
},
created
:
function
()
{
this
.
isIE
=
this
.
isIEMethod
();
},
computed
:
{
...
mapGetters
({
lang
:
'
getLang
'
,
user
:
'
getUser
'
}),
},
methods
:
{
getDate
()
{
if
(
!
this
.
form
.
date
)
{
return
""
;
}
return
moment
(
this
.
form
.
date
).
format
(
'
YYYY-MM-DD
'
)
},
handleChange
(
file
,
fileList
)
{
this
.
fileList3
=
fileList
.
slice
(
-
1
);
},
handleAvatarSuccess
(
res
,
file
)
{
this
.
downloadPath
=
file
.
response
.
path
this
.
imageUrl
=
URL
.
createObjectURL
(
file
.
raw
);
},
isIEMethod
:
function
(
ver
)
{
var
b
=
document
.
createElement
(
'
b
'
)
b
.
innerHTML
=
'
<!--[if IE
'
+
ver
+
'
]><i></i><![endif]-->
'
return
b
.
getElementsByTagName
(
'
i
'
).
length
===
1
},
onSubmit
:
function
()
{
var
date
;
if
(
this
.
form
.
date
)
{
date
=
moment
(
this
.
form
.
date
).
format
(
'
YYMMDD
'
)
}
var
opt
=
{
name
:
this
.
form
.
name
,
event
:
this
.
form
.
event
,
gameid
:
this
.
form
.
gameid
,
date
:
date
,
id
:
this
.
downloadPath
.
slice
(
7
),
print
:
this
.
checked2
,
}
var
member1
=
this
.
form
.
member1
.
split
(
"
"
).
filter
(
x
=>
{
return
x
.
trim
()
});
var
member2
=
this
.
form
.
member2
.
split
(
"
"
).
filter
(
x
=>
{
return
x
.
trim
()
});
if
(
member1
.
length
!==
member2
.
length
)
{
this
.
$notify
({
// title: '警告',
message
:
'
两队人数不一致!
'
,
type
:
'
error
'
})
return
;
}
var
list
=
[]
member1
=
_
.
shuffle
(
member1
)
member2
=
_
.
shuffle
(
member2
)
for
(
var
i
=
0
;
i
<
member1
.
length
;
i
++
)
{
list
.
push
({
a
:
member1
[
i
],
b
:
member2
[
i
]
})
}
this
.
list
=
list
;
}
},
}
</
script
>
<
style
scoped
>
</
style
>
\ No newline at end of file
src/components/Userinfo.vue
View file @
9db801d3
...
@@ -337,14 +337,14 @@
...
@@ -337,14 +337,14 @@
append
=
""
append
=
""
}
}
if
(
userscorea
<
0
)
{
if
(
userscorea
<
0
)
{
return
"
<a href='#/userinfo?username=
"
+
data
+
"
'><span class='label label-danger'>
"
+
data
+
"
</span></a>
"
+
append
;
return
"
<a href='#/userinfo?username=
"
+
encodeURIComponent
(
data
)
+
"
'><span class='label label-danger'>
"
+
data
+
"
</span></a>
"
+
append
;
}
}
if
(
userscorea
>
userscoreb
)
{
if
(
userscorea
>
userscoreb
)
{
return
"
<a href='#/userinfo?username=
"
+
data
+
"
'><span class='label label-success'>
"
+
data
+
"
</span></a>
"
+
append
;
return
"
<a href='#/userinfo?username=
"
+
encodeURIComponent
(
data
)
+
"
'><span class='label label-success'>
"
+
data
+
"
</span></a>
"
+
append
;
}
}
return
"
<a href='#/userinfo?username=
"
+
data
+
"
'><span class='label label-info'>
"
+
data
+
"
</span></a>
"
+
append
;
return
"
<a href='#/userinfo?username=
"
+
encodeURIComponent
(
data
)
+
"
'><span class='label label-info'>
"
+
data
+
"
</span></a>
"
+
append
;
},
},
"
targets
"
:
0
"
targets
"
:
0
},
},
...
@@ -361,14 +361,14 @@
...
@@ -361,14 +361,14 @@
append
=
""
append
=
""
}
}
if
(
userscoreb
<
0
)
{
if
(
userscoreb
<
0
)
{
return
"
<a href='#/userinfo?username=
"
+
data
+
"
'><span class='label label-danger'>
"
+
data
+
"
</span></a>
"
+
append
;
return
"
<a href='#/userinfo?username=
"
+
encodeURIComponent
(
data
)
+
"
'><span class='label label-danger'>
"
+
data
+
"
</span></a>
"
+
append
;
}
}
if
(
userscorea
<
userscoreb
)
{
if
(
userscorea
<
userscoreb
)
{
return
"
<a href='#/userinfo?username=
"
+
data
+
"
'><span class='label label-success'>
"
+
data
+
"
</span></a>
"
+
append
;
return
"
<a href='#/userinfo?username=
"
+
encodeURIComponent
(
data
)
+
"
'><span class='label label-success'>
"
+
data
+
"
</span></a>
"
+
append
;
}
}
return
"
<a href='#/userinfo?username=
"
+
data
+
"
'><span class='label label-info'>
"
+
data
+
"
</span></a>
"
+
append
;
return
"
<a href='#/userinfo?username=
"
+
encodeURIComponent
(
data
)
+
"
'><span class='label label-info'>
"
+
data
+
"
</span></a>
"
+
append
;
},
},
"
targets
"
:
1
"
targets
"
:
1
},
},
...
...
src/components/lang.js
View file @
9db801d3
...
@@ -11,6 +11,8 @@ module.exports = {
...
@@ -11,6 +11,8 @@ module.exports = {
profile
:
'
个人信息
'
,
profile
:
'
个人信息
'
,
account
:
'
用户中心
'
,
account
:
'
用户中心
'
,
deckprint
:
'
卡表打印
'
,
deckprint
:
'
卡表打印
'
,
tabulate
:
'
排表器
'
,
tool
:
'
工具
'
,
signout
:
'
退出
'
,
signout
:
'
退出
'
,
signin
:
'
登录 | 注册
'
,
signin
:
'
登录 | 注册
'
,
qc
:
'
查询条件
'
,
qc
:
'
查询条件
'
,
...
@@ -119,6 +121,8 @@ module.exports = {
...
@@ -119,6 +121,8 @@ module.exports = {
profile
:
'
Profile
'
,
profile
:
'
Profile
'
,
account
:
'
Account
'
,
account
:
'
Account
'
,
deckprint
:
"
Deck Print
"
,
deckprint
:
"
Deck Print
"
,
tabulate
:
'
Tabulate
'
,
tool
:
'
Tools
'
,
signout
:
'
Sign out
'
,
signout
:
'
Sign out
'
,
signin
:
'
Sign in | Sign up
'
,
signin
:
'
Sign in | Sign up
'
,
qc
:
'
Query conditions
'
,
qc
:
'
Query conditions
'
,
...
...
src/router/index.js
View file @
9db801d3
...
@@ -14,6 +14,7 @@ import Report from '@/components/Report'
...
@@ -14,6 +14,7 @@ import Report from '@/components/Report'
import
Vote
from
'
@/components/Vote
'
import
Vote
from
'
@/components/Vote
'
import
Ads
from
'
@/components/Ads
'
import
Ads
from
'
@/components/Ads
'
import
Deckprint
from
'
@/components/Deckprint
'
import
Deckprint
from
'
@/components/Deckprint
'
import
Tabulate
from
'
@/components/Tabulate
'
// import konami from '@/components/konami'
// import konami from '@/components/konami'
Vue
.
use
(
Router
)
Vue
.
use
(
Router
)
...
@@ -72,6 +73,11 @@ export default new Router({
...
@@ -72,6 +73,11 @@ export default new Router({
name
:
'
Deckprint
'
,
name
:
'
Deckprint
'
,
component
:
Deckprint
component
:
Deckprint
},
},
{
path
:
'
/tabulate
'
,
name
:
'
Tabulate
'
,
component
:
Tabulate
},
{
{
path
:
'
/history
'
,
path
:
'
/history
'
,
name
:
'
History
'
,
name
:
'
History
'
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment