Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gk
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
micro_app
gk
Commits
bde0ef86
Commit
bde0ef86
authored
Jun 25, 2025
by
daniel
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat(guide): 赛事列表引导页
parent
904adec0
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
842 additions
and
1 deletion
+842
-1
CmptPageDTO.java
...java/com/dlbridge/jadp/plugins/cmpt/bean/CmptPageDTO.java
+21
-0
GuideController.java
...a/com/dlbridge/jadp/plugins/cmpt/web/GuideController.java
+62
-0
bag.jsp
src/main/webapp/WEB-INF/views/cmpt/bag.jsp
+8
-0
guide.jsp
src/main/webapp/WEB-INF/views/cmpt/guide.jsp
+191
-0
base.css
src/main/webapp/static/css/base.css
+560
-1
No files found.
src/main/java/com/dlbridge/jadp/plugins/cmpt/bean/CmptPageDTO.java
0 → 100644
View file @
bde0ef86
package
com
.
dlbridge
.
jadp
.
plugins
.
cmpt
.
bean
;
import
org.springframework.data.domain.PageRequest
;
import
org.springframework.data.domain.Pageable
;
import
lombok.Data
;
@Data
public
class
CmptPageDTO
{
private
String
partnerId
;
private
String
keyword
;
private
int
page
=
1
;
// 默认页码为 0
private
int
pageSize
=
20
;
// 默认每页条数为 10
/**
* 将当前对象的分页信息转换为 Spring Data 的 Pageable 对象
* @return Pageable 对象
*/
public
Pageable
toPageable
()
{
return
PageRequest
.
of
(
page
-
1
,
pageSize
);
}
}
src/main/java/com/dlbridge/jadp/plugins/cmpt/web/GuideController.java
0 → 100644
View file @
bde0ef86
package
com
.
dlbridge
.
jadp
.
plugins
.
cmpt
.
web
;
import
com.dlbridge.jadp.common.interceptor.PageView
;
import
com.dlbridge.jadp.plugins.cmpt.bean.CmptPageDTO
;
import
com.dlbridge.jadp.plugins.cmpt.bean.Partner
;
import
com.dlbridge.jadp.plugins.cmpt.dao.model.Cmpt
;
import
com.dlbridge.jadp.plugins.cmpt.service.CmptService
;
import
com.dlbridge.jadp.plugins.cmpt.utils.Page
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiResponse
;
import
io.swagger.annotations.ApiResponses
;
import
lombok.extern.log4j.Log4j2
;
import
org.apache.commons.lang3.ObjectUtils
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.servlet.ModelAndView
;
import
springfox.documentation.annotations.ApiIgnore
;
import
javax.annotation.Resource
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
@RequestMapping
(
value
=
"/gk/guide/"
)
@RestController
@ApiIgnore
@Log4j2
public
class
GuideController
{
@Resource
private
CmptService
cmptService
;
@RequestMapping
(
"index/{cmptId}"
)
@PageView
public
ModelAndView
index
(
@PathVariable
(
"cmptId"
)
Integer
cmptId
,
ModelAndView
mv
)
{
Cmpt
cmpt
=
cmptService
.
queryCmptBycmptId
(
cmptId
);
mv
.
setViewName
(
"cmpt/guide"
);
mv
.
addObject
(
"cmpt"
,
cmpt
);
return
mv
;
}
/**
* 小程序赛事列表接口
* @return 赛事列表
*/
@PostMapping
(
value
=
"/cmpt"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Page
.
class
,
responseContainer
=
"List"
)})
@ApiOperation
(
value
=
"赛事列表"
,
notes
=
"赛事列表,与查询接口一致"
,
tags
=
"首页接口"
)
public
Page
<
List
<
Cmpt
>>
cmpt
(
@RequestBody
CmptPageDTO
cmptPageDTO
)
{
String
partnerId
=
cmptPageDTO
.
getPartnerId
();
Partner
partner
=
cmptService
.
getPartnerById
(
partnerId
);
Map
<
String
,
String
>
param
=
new
HashMap
<>();
param
.
put
(
"partnerId"
,
partnerId
);
param
.
put
(
"userId"
,
partner
.
getUserId
()+
""
);
Page
<
List
<
Cmpt
>>
result
=
cmptService
.
queryCmpt
(
cmptPageDTO
.
toPageable
(),
param
);
result
.
setCode
(
200
);
return
result
;
}
}
src/main/webapp/WEB-INF/views/cmpt/bag.jsp
View file @
bde0ef86
...
@@ -450,6 +450,9 @@
...
@@ -450,6 +450,9 @@
<label>
<label>
<input
type=
"radio"
v-model=
"bag.status"
value=
"2"
>
待处理
<input
type=
"radio"
v-model=
"bag.status"
value=
"2"
>
待处理
</label>
</label>
<label>
<input
type=
"radio"
v-model=
"bag.status"
value=
"3"
>
已处理
</label>
</div>
</div>
</div>
</div>
</div>
</div>
...
@@ -486,11 +489,16 @@
...
@@ -486,11 +489,16 @@
{
{
name
:
"待处理"
,
name
:
"待处理"
,
value
:
2
value
:
2
},
{
name
:
"已处理"
,
value
:
3
}
}
],
],
statusEnum
:
{
statusEnum
:
{
1
:
"提交"
,
1
:
"提交"
,
2
:
"待处理"
,
2
:
"待处理"
,
3
:
"已处理"
,
},
},
bag
:
{
bag
:
{
"id"
:
null
,
"id"
:
null
,
...
...
src/main/webapp/WEB-INF/views/cmpt/guide.jsp
0 → 100644
View file @
bde0ef86
This diff is collapsed.
Click to expand it.
src/main/webapp/static/css/base.css
View file @
bde0ef86
.box-border
{
box-sizing
:
border-box
;
}
/* Flex 布局相关 */
/* Flex 布局相关 */
.flex
{
.flex
{
display
:
flex
;
display
:
flex
;
...
@@ -173,6 +177,210 @@
...
@@ -173,6 +177,210 @@
font-weight
:
normal
;
font-weight
:
normal
;
}
}
/* 字体大小相关 */
.text-xs
{
font-size
:
0.75rem
;
/* 12px */
}
.text-sm
{
font-size
:
0.875rem
;
/* 14px */
}
.text-base
{
font-size
:
1rem
;
/* 16px */
}
.text-lg
{
font-size
:
1.125rem
;
/* 18px */
}
.text-xl
{
font-size
:
1.25rem
;
/* 20px */
}
.text-2xl
{
font-size
:
1.5rem
;
/* 24px */
}
.text-3xl
{
font-size
:
1.875rem
;
/* 30px */
}
.text-4xl
{
font-size
:
2.25rem
;
/* 36px */
}
.text-5xl
{
font-size
:
3rem
;
/* 48px */
}
/* 固定像素值字体大小 */
.text-12
{
font-size
:
12px
;
}
.text-14
{
font-size
:
14px
;
}
.text-16
{
font-size
:
16px
;
}
.text-18
{
font-size
:
18px
;
}
.text-20
{
font-size
:
20px
;
}
.text-24
{
font-size
:
24px
;
}
.text-28
{
font-size
:
28px
;
}
.text-32
{
font-size
:
32px
;
}
.text-36
{
font-size
:
36px
;
}
.text-40
{
font-size
:
40px
;
}
.text-48
{
font-size
:
48px
;
}
/* 高度相关 */
.h-full
{
height
:
100%
;
}
.h-screen
{
height
:
100vh
;
}
.h-auto
{
height
:
auto
;
}
.h-1
\
/
2
{
height
:
50%
;
}
.h-1
\
/
3
{
height
:
33.333333%
;
}
.h-2
\
/
3
{
height
:
66.666667%
;
}
/* 固定高度值 */
.h-16
{
height
:
16px
;
}
.h-20
{
height
:
20px
;
}
.h-24
{
height
:
24px
;
}
.h-32
{
height
:
32px
;
}
.h-40
{
height
:
40px
;
}
.h-48
{
height
:
48px
;
}
.h-64
{
height
:
64px
;
}
.h-80
{
height
:
80px
;
}
.h-96
{
height
:
96px
;
}
/* 最小/最大高度 */
.min-h-0
{
min-height
:
0
;
}
.min-h-full
{
min-height
:
100%
;
}
.min-h-screen
{
min-height
:
100vh
;
}
.max-h-full
{
max-height
:
100%
;
}
.max-h-screen
{
max-height
:
100vh
;
}
/* 宽度相关 (补充现有宽度类) */
.w-1
\
/
4
{
width
:
25%
;
}
.w-3
\
/
4
{
width
:
75%
;
}
.w-1
\
/
5
{
width
:
20%
;
}
.w-2
\
/
5
{
width
:
40%
;
}
.w-3
\
/
5
{
width
:
60%
;
}
.w-4
\
/
5
{
width
:
80%
;
}
.w-screen
{
width
:
100vw
;
}
/* 宽度相关 */
/* 宽度相关 */
.w-full
{
.w-full
{
width
:
100%
;
width
:
100%
;
...
@@ -194,6 +402,88 @@
...
@@ -194,6 +402,88 @@
width
:
66.666667%
;
width
:
66.666667%
;
}
}
.w-1
\
/
4
{
width
:
25%
;
}
.w-3
\
/
4
{
width
:
75%
;
}
.w-1
\
/
5
{
width
:
20%
;
}
.w-2
\
/
5
{
width
:
40%
;
}
.w-3
\
/
5
{
width
:
60%
;
}
.w-4
\
/
5
{
width
:
80%
;
}
.w-screen
{
width
:
100vw
;
}
/* 固定宽度值 */
.w-16
{
width
:
16px
;
}
.w-20
{
width
:
20px
;
}
.w-24
{
width
:
24px
;
}
.w-32
{
width
:
32px
;
}
.w-40
{
width
:
40px
;
}
.w-48
{
width
:
48px
;
}
.w-64
{
width
:
64px
;
}
.w-80
{
width
:
80px
;
}
.w-96
{
width
:
96px
;
}
/* 最小/最大宽度 */
.min-w-0
{
min-width
:
0
;
}
.min-w-full
{
min-width
:
100%
;
}
.max-w-full
{
max-width
:
100%
;
}
.max-w-screen
{
max-width
:
100vw
;
}
/* 显示相关 */
/* 显示相关 */
.block
{
.block
{
display
:
block
;
display
:
block
;
...
@@ -211,6 +501,79 @@
...
@@ -211,6 +501,79 @@
display
:
none
;
display
:
none
;
}
}
/* Grid 布局相关 */
.grid
{
display
:
grid
;
}
.grid-flow-row
{
grid-auto-flow
:
row
;
}
.grid-flow-col
{
grid-auto-flow
:
column
;
}
.grid-flow-dense
{
grid-auto-flow
:
dense
;
}
.grid-cols-1
{
grid-template-columns
:
repeat
(
1
,
minmax
(
0
,
1
fr
));
}
.grid-cols-2
{
grid-template-columns
:
repeat
(
2
,
minmax
(
0
,
1
fr
));
}
.grid-cols-3
{
grid-template-columns
:
repeat
(
3
,
minmax
(
0
,
1
fr
));
}
.grid-cols-4
{
grid-template-columns
:
repeat
(
4
,
minmax
(
0
,
1
fr
));
}
.grid-cols-5
{
grid-template-columns
:
repeat
(
5
,
minmax
(
0
,
1
fr
));
}
.grid-cols-6
{
grid-template-columns
:
repeat
(
6
,
minmax
(
0
,
1
fr
));
}
.grid-cols-none
{
grid-template-columns
:
none
;
}
.grid-rows-1
{
grid-template-rows
:
repeat
(
1
,
minmax
(
0
,
1
fr
));
}
.grid-rows-2
{
grid-template-rows
:
repeat
(
2
,
minmax
(
0
,
1
fr
));
}
.grid-rows-3
{
grid-template-rows
:
repeat
(
3
,
minmax
(
0
,
1
fr
));
}
.grid-rows-4
{
grid-template-rows
:
repeat
(
4
,
minmax
(
0
,
1
fr
));
}
.grid-rows-5
{
grid-template-rows
:
repeat
(
5
,
minmax
(
0
,
1
fr
));
}
.grid-rows-6
{
grid-template-rows
:
repeat
(
6
,
minmax
(
0
,
1
fr
));
}
.grid-rows-none
{
grid-template-rows
:
none
;
}
/* 间距相关 - 基于rem单位 */
/* 间距相关 - 基于rem单位 */
.gap-0
{
.gap-0
{
gap
:
0
;
gap
:
0
;
...
@@ -286,6 +649,56 @@
...
@@ -286,6 +649,56 @@
column-gap
:
3rem
;
column-gap
:
3rem
;
}
}
/* 水平间距 (gap-x) */
.gap-x-0
{
column-gap
:
0
;
}
.gap-x-1
{
column-gap
:
0.25rem
;
}
.gap-x-2
{
column-gap
:
0.5rem
;
}
.gap-x-3
{
column-gap
:
1rem
;
}
.gap-x-4
{
column-gap
:
1.5rem
;
}
.gap-x-5
{
column-gap
:
3rem
;
}
/* 垂直间距 (gap-y) */
.gap-y-0
{
row-gap
:
0
;
}
.gap-y-1
{
row-gap
:
0.25rem
;
}
.gap-y-2
{
row-gap
:
0.5rem
;
}
.gap-y-3
{
row-gap
:
1rem
;
}
.gap-y-4
{
row-gap
:
1.5rem
;
}
.gap-y-5
{
row-gap
:
3rem
;
}
/* 行高相关 */
/* 行高相关 */
.lh-1
{
.lh-1
{
line-height
:
1
;
line-height
:
1
;
...
@@ -487,4 +900,150 @@
...
@@ -487,4 +900,150 @@
.cursor-zoom-out
{
.cursor-zoom-out
{
cursor
:
zoom-out
;
cursor
:
zoom-out
;
}
}
\ No newline at end of file
/* ... 现有代码 ... */
/* 边框宽度 */
.border-0
{
border-width
:
0
;
}
.border-1
{
border-width
:
1px
;
}
.border-2
{
border-width
:
2px
;
}
.border-4
{
border-width
:
4px
;
}
.border-8
{
border-width
:
8px
;
}
/* 边框样式 */
.border-solid
{
border-style
:
solid
;
}
.border-dashed
{
border-style
:
dashed
;
}
.border-dotted
{
border-style
:
dotted
;
}
.border-double
{
border-style
:
double
;
}
.border-none
{
border-style
:
none
;
}
/* 边框颜色 - 基础颜色 */
.border-transparent
{
border-color
:
transparent
;
}
.border-current
{
border-color
:
currentColor
;
}
.border-black
{
border-color
:
#000
;
}
.border-white
{
border-color
:
#fff
;
}
.border-gray
{
border-color
:
#9ca3af
;
}
.border-red
{
border-color
:
#ef4444
;
}
.border-blue
{
border-color
:
#3b82f6
;
}
/* 圆角 */
.rounded-none
{
border-radius
:
0
;
}
.rounded-sm
{
border-radius
:
0.125rem
;
}
.rounded
{
border-radius
:
0.25rem
;
}
.rounded-md
{
border-radius
:
0.375rem
;
}
.rounded-lg
{
border-radius
:
0.5rem
;
}
.rounded-xl
{
border-radius
:
0.75rem
;
}
.rounded-2xl
{
border-radius
:
1rem
;
}
.rounded-full
{
border-radius
:
9999px
;
}
/* 单边边框 */
.border-t-1
{
border-top-width
:
1px
;
}
.border-r-1
{
border-right-width
:
1px
;
}
.border-b-1
{
border-bottom-width
:
1px
;
}
.border-l-1
{
border-left-width
:
1px
;
}
/* 单边圆角 */
.rounded-t-none
{
border-top-left-radius
:
0
;
border-top-right-radius
:
0
;
}
.rounded-r-none
{
border-top-right-radius
:
0
;
border-bottom-right-radius
:
0
;
}
.rounded-b-none
{
border-bottom-right-radius
:
0
;
border-bottom-left-radius
:
0
;
}
.rounded-l-none
{
border-top-left-radius
:
0
;
border-bottom-left-radius
:
0
;
}
/* ... 现有代码 ... */
\ No newline at end of file
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