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
b913b05e
Commit
b913b05e
authored
Dec 23, 2025
by
daniel
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat(cmpt): 模块时间展示处理
parent
6c9f0477
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
568 additions
and
522 deletions
+568
-522
MicroApiController.java
...om/dlbridge/jadp/plugins/cmpt/web/MicroApiController.java
+568
-522
No files found.
src/main/java/com/dlbridge/jadp/plugins/cmpt/web/MicroApiController.java
View file @
b913b05e
...
...
@@ -38,7 +38,6 @@ import java.net.HttpURLConnection;
import
java.net.URL
;
import
java.text.DecimalFormat
;
import
java.util.*
;
import
java.util.stream.Collectors
;
@Log4j2
...
...
@@ -137,109 +136,116 @@ public class MicroApiController {
private
WeatherService
weatherService
;
@PostMapping
(
value
=
"/bindCmpt"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiOperation
(
value
=
"绑定赛事"
,
notes
=
"用户与赛事绑定功能"
,
tags
=
"赛事页面"
)
public
Result
<
EnrollInfo
>
bind
(
@RequestParam
(
"phone"
)
String
phone
,
@RequestParam
(
"cmptId"
)
Integer
cmptId
,
@RequestParam
(
name
=
"userMapId"
,
defaultValue
=
"-1"
,
required
=
false
)
Integer
userMapId
,
HttpServletRequest
request
)
{
int
userId
=
org
.
apache
.
commons
.
lang
.
math
.
NumberUtils
.
toInt
(
request
.
getParameter
(
"userId"
),-
1
);
if
(
userId
==
-
1
){
return
Result
.
fail
().
setMsg
(
"入参错误"
);
public
Result
<
EnrollInfo
>
bind
(
@RequestParam
(
"phone"
)
String
phone
,
@RequestParam
(
"cmptId"
)
Integer
cmptId
,
@RequestParam
(
name
=
"userMapId"
,
defaultValue
=
"-1"
,
required
=
false
)
Integer
userMapId
,
HttpServletRequest
request
)
{
int
userId
=
org
.
apache
.
commons
.
lang
.
math
.
NumberUtils
.
toInt
(
request
.
getParameter
(
"userId"
),
-
1
);
if
(
userId
==
-
1
)
{
return
Result
.
fail
()
.
setMsg
(
"入参错误"
);
}
log
.
info
(
"===== /api/bindCmpt方法, userId:"
+
userId
+
",userMapId:"
+
userMapId
+
",cmptId:"
+
cmptId
);
EnrollInfo
info
=
cmptService
.
bind
(
userId
,
phone
,
cmptId
,
userMapId
);
// // 根据手机号+姓名,没有查到计时系统的名单
// if (info == null) {
// return Result.fail().setMsg("报名成功,未查询到组委会分配的号码牌!");
// }else {
// // 查到名单但是计时系统没有号码牌
// if(StringUtils.isBlank(info.getMarkNo())){
// return Result.fail().setMsg("报名成功,未查询到组委会分配的号码牌!");
// }
// }
// // 根据手机号+姓名,没有查到计时系统的名单
// if (info == null) {
// return Result.fail().setMsg("报名成功,未查询到组委会分配的号码牌!");
// }else {
// // 查到名单但是计时系统没有号码牌
// if(StringUtils.isBlank(info.getMarkNo())){
// return Result.fail().setMsg("报名成功,未查询到组委会分配的号码牌!");
// }
// }
if
(
info
==
null
)
{
int
count
=
cmptService
.
getEnrollInfoCount
(
cmptId
,
phone
);
if
(
count
==
0
){
return
Result
.
fail
().
setMsg
(
"请完成报名,再绑定!"
);
}
else
{
return
Result
.
fail
().
setMsg
(
"报名成功,未查询到组委会分配的号码牌!"
);
int
count
=
cmptService
.
getEnrollInfoCount
(
cmptId
,
phone
);
if
(
count
==
0
)
{
return
Result
.
fail
()
.
setMsg
(
"请完成报名,再绑定!"
);
}
else
{
return
Result
.
fail
()
.
setMsg
(
"报名成功,未查询到组委会分配的号码牌!"
);
}
}
RoadUser
user
=
remoteService
.
getEnrollUsersByPhone
(
cmptId
,
phone
);
if
(
user
!=
null
)
{
if
(
user
!=
null
)
{
info
.
setUserMapId
(
user
.
getUserMapId
());
}
info
.
setUserMapId
(
userMapId
);
return
Result
.
success
().
setMsg
(
"绑定成功!"
).
setContent
(
info
);
return
Result
.
success
()
.
setMsg
(
"绑定成功!"
)
.
setContent
(
info
);
}
/**
* 微信手机信息绑定赛事
*
* @return
*/
@PostMapping
(
value
=
"/bindCmptV2"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiOperation
(
value
=
"返回本机手机号码"
,
notes
=
"返回本机手机号码"
,
tags
=
"赛事页面"
)
public
Result
<
EnrollInfo
>
bind
(
HttpServletRequest
request
,
Integer
userId
,
Integer
cmptId
,
String
encryptedData
,
String
iv
,
String
code
)
{
public
Result
<
EnrollInfo
>
bind
(
HttpServletRequest
request
,
Integer
userId
,
Integer
cmptId
,
String
encryptedData
,
String
iv
,
String
code
)
{
try
{
Object
session_key
=
valueOperations
.
get
(
KEY
+
userId
);
if
(
session_key
==
null
)
{
log
.
info
(
"session_key:"
+
session_key
);
if
(
StringUtils
.
isNotBlank
(
code
))
{
String
partnerId
=
request
.
getParameter
(
"partnerId"
);
JSONObject
json
=
weixinInfoService
.
getOpenIdAndSessionKey
(
code
,
partnerId
);
JSONObject
json
=
weixinInfoService
.
getOpenIdAndSessionKey
(
code
,
partnerId
);
if
(
null
!=
json
)
{
if
(
json
.
containsKey
(
"errcode"
))
{
//是否有错误
return
Result
.
fail
().
setMsg
(
json
.
getString
(
"errcode"
)
+
" == "
+
json
.
getString
(
"errmsg"
));
}
else
{
//用户的唯一标识(openid)
//获取会话密钥(session_key)
if
(
json
.
containsKey
(
"errcode"
))
{
// 是否有错误
return
Result
.
fail
()
.
setMsg
(
json
.
getString
(
"errcode"
)
+
" == "
+
json
.
getString
(
"errmsg"
));
}
else
{
// 用户的唯一标识(openid)
// 获取会话密钥(session_key)
session_key
=
json
.
getString
(
"session_key"
);
log
.
info
(
"session_key:"
+
session_key
);
valueOperations
.
set
(
KEY
+
userId
,
session_key
);
}
}
else
{
return
Result
.
fail
().
setMsg
(
"获取授权失败"
);
return
Result
.
fail
()
.
setMsg
(
"获取授权失败"
);
}
}
else
{
valueOperations
.
getOperations
().
delete
(
KEY
+
userId
);
return
Result
.
fail
().
setMsg
(
"session失效请重新登录"
).
setCode
(
301
);
valueOperations
.
getOperations
()
.
delete
(
KEY
+
userId
);
return
Result
.
fail
()
.
setMsg
(
"session失效请重新登录"
)
.
setCode
(
301
);
}
}
String
result
=
AesUtil
.
decrypt
(
encryptedData
,
(
String
)
session_key
,
iv
,
"UTF-8"
);
log
.
info
(
"result:"
+
result
);
if
(
result
==
null
)
{
valueOperations
.
getOperations
().
delete
(
KEY
+
userId
);
return
Result
.
fail
().
setMsg
(
"session失效请重新登录"
).
setCode
(
301
);
valueOperations
.
getOperations
()
.
delete
(
KEY
+
userId
);
return
Result
.
fail
()
.
setMsg
(
"session失效请重新登录"
)
.
setCode
(
301
);
}
JSONObject
json
=
JSONObject
.
parseObject
(
result
);
String
purePhoneNumber
=
json
.
getString
(
"purePhoneNumber"
);
log
.
info
(
"获取的手机是:"
+
purePhoneNumber
);
EnrollInfo
info
=
cmptService
.
bind
(
userId
,
purePhoneNumber
,
cmptId
,
-
1
);
if
(
info
==
null
)
{
int
count
=
cmptService
.
getEnrollInfoCount
(
cmptId
,
purePhoneNumber
);
if
(
count
==
0
){
return
Result
.
fail
().
setMsg
(
"请完成报名,再绑定!"
);
}
else
{
return
Result
.
fail
().
setMsg
(
"报名成功,未查询到组委会分配的号码牌!"
);
int
count
=
cmptService
.
getEnrollInfoCount
(
cmptId
,
purePhoneNumber
);
if
(
count
==
0
)
{
return
Result
.
fail
()
.
setMsg
(
"请完成报名,再绑定!"
);
}
else
{
return
Result
.
fail
()
.
setMsg
(
"报名成功,未查询到组委会分配的号码牌!"
);
}
}
RoadUser
user
=
remoteService
.
getEnrollUsersByPhone
(
cmptId
,
purePhoneNumber
);
if
(
user
!=
null
)
{
if
(
user
!=
null
)
{
info
.
setUserMapId
(
user
.
getUserMapId
());
}
return
Result
.
success
().
setMsg
(
"绑定成功!"
).
setContent
(
info
);
return
Result
.
success
()
.
setMsg
(
"绑定成功!"
)
.
setContent
(
info
);
}
catch
(
Exception
e
)
{
log
.
info
(
e
.
getMessage
(),
e
);
...
...
@@ -251,50 +257,57 @@ public class MicroApiController {
/**
* 获取本机手机号方法
* by Linc 2022/08/01
*
* @return
*/
@PostMapping
(
value
=
"/localPhone"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiOperation
(
value
=
"返回本机手机号码"
,
notes
=
"返回本机手机号码"
,
tags
=
"赛事页面"
)
public
Result
<
EnrollInfo
>
localPhone
(
HttpServletRequest
request
,
Integer
userId
,
String
encryptedData
,
String
iv
,
String
code
)
{
public
Result
<
EnrollInfo
>
localPhone
(
HttpServletRequest
request
,
Integer
userId
,
String
encryptedData
,
String
iv
,
String
code
)
{
try
{
Object
session_key
=
valueOperations
.
get
(
KEY
+
userId
);
if
(
session_key
==
null
)
{
log
.
info
(
"session_key:"
+
session_key
);
if
(
StringUtils
.
isNotBlank
(
code
))
{
String
partnerId
=
request
.
getParameter
(
"partnerId"
);
JSONObject
json
=
weixinInfoService
.
getOpenIdAndSessionKey
(
code
,
partnerId
);
JSONObject
json
=
weixinInfoService
.
getOpenIdAndSessionKey
(
code
,
partnerId
);
if
(
null
!=
json
)
{
if
(
json
.
containsKey
(
"errcode"
))
{
//是否有错误
return
Result
.
fail
().
setMsg
(
json
.
getString
(
"errcode"
)
+
" == "
+
json
.
getString
(
"errmsg"
));
}
else
{
//用户的唯一标识(openid)
//获取会话密钥(session_key)
if
(
json
.
containsKey
(
"errcode"
))
{
// 是否有错误
return
Result
.
fail
()
.
setMsg
(
json
.
getString
(
"errcode"
)
+
" == "
+
json
.
getString
(
"errmsg"
));
}
else
{
// 用户的唯一标识(openid)
// 获取会话密钥(session_key)
session_key
=
json
.
getString
(
"session_key"
);
log
.
info
(
"session_key:"
+
session_key
);
valueOperations
.
set
(
KEY
+
userId
,
session_key
);
}
}
else
{
return
Result
.
fail
().
setMsg
(
"获取授权失败"
);
return
Result
.
fail
()
.
setMsg
(
"获取授权失败"
);
}
}
else
{
valueOperations
.
getOperations
().
delete
(
KEY
+
userId
);
return
Result
.
fail
().
setMsg
(
"session失效请重新登录"
).
setCode
(
301
);
valueOperations
.
getOperations
()
.
delete
(
KEY
+
userId
);
return
Result
.
fail
()
.
setMsg
(
"session失效请重新登录"
)
.
setCode
(
301
);
}
}
String
result
=
AesUtil
.
decrypt
(
encryptedData
,
(
String
)
session_key
,
iv
,
"UTF-8"
);
log
.
info
(
"result:"
+
result
);
if
(
result
==
null
)
{
valueOperations
.
getOperations
().
delete
(
KEY
+
userId
);
return
Result
.
fail
().
setMsg
(
"session失效请重新登录"
).
setCode
(
301
);
valueOperations
.
getOperations
()
.
delete
(
KEY
+
userId
);
return
Result
.
fail
()
.
setMsg
(
"session失效请重新登录"
)
.
setCode
(
301
);
}
JSONObject
json
=
JSONObject
.
parseObject
(
result
);
String
purePhoneNumber
=
json
.
getString
(
"purePhoneNumber"
);
log
.
info
(
"获取的手机是:"
+
purePhoneNumber
);
return
Result
.
success
().
setMsg
(
"绑定成功!"
).
setContent
(
purePhoneNumber
);
return
Result
.
success
()
.
setMsg
(
"绑定成功!"
)
.
setContent
(
purePhoneNumber
);
}
catch
(
Exception
e
)
{
log
.
info
(
e
.
getMessage
(),
e
);
}
...
...
@@ -302,149 +315,152 @@ public class MicroApiController {
}
@RequestMapping
(
"bindPhone"
)
public
Result
bindPhone
(
HttpServletRequest
request
,
int
userId
,
String
encryptedData
,
String
iv
,
String
code
){
public
Result
bindPhone
(
HttpServletRequest
request
,
int
userId
,
String
encryptedData
,
String
iv
,
String
code
)
{
try
{
String
session_key
=
null
;
if
(
StringUtils
.
isNotBlank
(
code
))
{
String
partnerId
=
request
.
getParameter
(
"partnerId"
);
JSONObject
json
=
weixinInfoService
.
getOpenIdAndSessionKey
(
code
,
partnerId
);
JSONObject
json
=
weixinInfoService
.
getOpenIdAndSessionKey
(
code
,
partnerId
);
if
(
null
!=
json
)
{
if
(
json
.
containsKey
(
"errcode"
))
{
//是否有错误
return
Result
.
fail
().
setMsg
(
json
.
getString
(
"errcode"
)
+
" == "
+
json
.
getString
(
"errmsg"
));
}
else
{
//用户的唯一标识(openid)
//获取会话密钥(session_key)
if
(
json
.
containsKey
(
"errcode"
))
{
// 是否有错误
return
Result
.
fail
()
.
setMsg
(
json
.
getString
(
"errcode"
)
+
" == "
+
json
.
getString
(
"errmsg"
));
}
else
{
// 用户的唯一标识(openid)
// 获取会话密钥(session_key)
session_key
=
json
.
getString
(
"session_key"
);
log
.
info
(
"session_key:"
+
session_key
);
valueOperations
.
set
(
KEY
+
userId
,
session_key
);
}
}
else
{
return
Result
.
fail
().
setMsg
(
"获取授权失败"
);
return
Result
.
fail
()
.
setMsg
(
"获取授权失败"
);
}
}
else
{
valueOperations
.
getOperations
().
delete
(
KEY
+
userId
);
return
Result
.
fail
().
setMsg
(
"session失效请重新登录"
).
setCode
(
301
);
valueOperations
.
getOperations
()
.
delete
(
KEY
+
userId
);
return
Result
.
fail
()
.
setMsg
(
"session失效请重新登录"
)
.
setCode
(
301
);
}
String
result
=
AesUtil
.
decrypt
(
encryptedData
,
(
String
)
session_key
,
iv
,
"UTF-8"
);
log
.
info
(
"result:"
+
result
);
if
(
result
==
null
)
{
valueOperations
.
getOperations
().
delete
(
KEY
+
userId
);
return
Result
.
fail
().
setMsg
(
"session失效请重新登录"
).
setCode
(
301
);
valueOperations
.
getOperations
()
.
delete
(
KEY
+
userId
);
return
Result
.
fail
()
.
setMsg
(
"session失效请重新登录"
)
.
setCode
(
301
);
}
JSONObject
json
=
JSONObject
.
parseObject
(
result
);
String
purePhoneNumber
=
json
.
getString
(
"purePhoneNumber"
);
json
.
put
(
"phone"
,
purePhoneNumber
);
json
.
put
(
"phone"
,
purePhoneNumber
);
json
.
remove
(
"purePhoneNumber"
);
log
.
info
(
"获取的手机是:"
+
purePhoneNumber
);
GeexekUser
user
=
cmptService
.
getGeexekUser
(
userId
);
log
.
info
(
"获取用户信息:"
+
user
+
",userId:"
+
user
);
if
(
user
==
null
){
return
Result
.
fail
().
setMsg
(
"未找到用户信息"
);
}
else
{
if
(
StringUtils
.
isBlank
(
user
.
getCallPhone
())
||
!
user
.
getCallPhone
().
equals
(
purePhoneNumber
)){
log
.
info
(
"手机号不一致"
+
user
.
getCallPhone
()+
","
+
purePhoneNumber
);
log
.
info
(
"获取用户信息:"
+
user
+
",userId:"
+
user
);
if
(
user
==
null
)
{
return
Result
.
fail
()
.
setMsg
(
"未找到用户信息"
);
}
else
{
if
(
StringUtils
.
isBlank
(
user
.
getCallPhone
())
||
!
user
.
getCallPhone
()
.
equals
(
purePhoneNumber
))
{
log
.
info
(
"手机号不一致"
+
user
.
getCallPhone
()
+
","
+
purePhoneNumber
);
}
if
(
StringUtils
.
isBlank
(
user
.
getCallPhone
()))
{
if
(
StringUtils
.
isBlank
(
user
.
getCallPhone
()))
{
user
.
setCallPhone
(
purePhoneNumber
);
int
i
=
cmptService
.
updateGeexekUser
(
user
);
if
(
i
>
0
)
{
if
(
i
>
0
)
{
log
.
info
(
"补齐手机号成功"
);
}
}
return
Result
.
success
().
setMsg
(
"获取成功"
).
setContent
(
json
);
return
Result
.
success
()
.
setMsg
(
"获取成功"
)
.
setContent
(
json
);
}
}
catch
(
Exception
e
)
{
log
.
info
(
e
.
getMessage
(),
e
);
return
Result
.
fail
().
setMsg
(
e
.
getMessage
());
return
Result
.
fail
()
.
setMsg
(
e
.
getMessage
());
}
}
@PostMapping
(
value
=
"/unbindCmpt"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
)})
@ApiOperation
(
value
=
"解除赛事绑定"
,
notes
=
"解除用户与赛事绑定功能"
,
tags
=
"赛事页面"
)
public
Result
unbind
(
@RequestParam
(
"userId"
)
Integer
userId
,
@RequestParam
(
"enrollId"
)
String
enrollId
,
@RequestParam
(
"cmptId"
)
Integer
cmptId
)
{
public
Result
unbind
(
@RequestParam
(
"userId"
)
Integer
userId
,
@RequestParam
(
"enrollId"
)
String
enrollId
,
@RequestParam
(
"cmptId"
)
Integer
cmptId
)
{
int
code
=
cmptService
.
unbind
(
userId
,
enrollId
,
cmptId
);
if
(
code
<
0
)
{
return
Result
.
fail
().
setMsg
(
"解绑失败"
);
return
Result
.
fail
()
.
setMsg
(
"解绑失败"
);
}
return
Result
.
success
().
setMsg
(
"解绑成功!"
);
return
Result
.
success
()
.
setMsg
(
"解绑成功!"
);
}
@GetMapping
(
value
=
"/cmpt/{userId}"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiOperation
(
value
=
"我的赛事"
,
notes
=
"我的赛事"
,
tags
=
{
"首页接口"
})
public
Result
<
List
<
CmptVo
>>
myCmpt
(
@PathVariable
(
"userId"
)
Integer
userId
)
{
List
<
CmptVo
>
list
=
cmptService
.
queryUserCmptList
(
userId
);
return
Result
.
success
().
setContent
(
list
);
return
Result
.
success
()
.
setContent
(
list
);
}
@GetMapping
(
value
=
"/cmpt/getCmpt/{cmptId}"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiOperation
(
value
=
"赛事"
,
notes
=
"赛事"
,
tags
=
{
"首页接口"
})
public
Result
getCmpt
(
@PathVariable
(
"cmptId"
)
Integer
cmptId
)
{
Cmpt
cmpt
=
cmptService
.
queryCmptBycmptId
(
cmptId
);
return
Result
.
success
().
setContent
(
cmpt
);
return
Result
.
success
()
.
setContent
(
cmpt
);
}
@GetMapping
(
value
=
"/customer/{cmptId}"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
public
Result
getCustomer
(
@PathVariable
(
"cmptId"
)
Integer
cmptId
)
{
// 新增耗时计算
long
startTime
=
System
.
currentTimeMillis
();
Customer
customer
=
customerService
.
getCusomerServiceInfo
(
cmptId
);
FuncSetting
setting
=
funcSettingService
.
getSettingByCmptId
(
cmptId
);
Map
<
String
,
String
>
result
=
new
HashMap
<>();
if
(
setting
==
null
||
setting
.
getCustomer
()
==
null
||
setting
.
getCustomer
()
!=
1
)
{
result
.
put
(
"mobile"
,
""
);
}
else
{
result
.
put
(
"mobile"
,
customer
==
null
?
""
:
customer
.
getMobile
());
Map
<
String
,
String
>
result
=
new
HashMap
<>();
if
(
setting
==
null
||
setting
.
getCustomer
()
==
null
||
setting
.
getCustomer
()
!=
1
)
{
result
.
put
(
"mobile"
,
""
);
}
else
{
result
.
put
(
"mobile"
,
customer
==
null
?
""
:
customer
.
getMobile
());
}
// 新增耗时计算
long
endTime
=
System
.
currentTimeMillis
();
long
duration
=
endTime
-
startTime
;
// log.info("获取合作信息耗时:" + duration + "毫秒");
return
Result
.
success
().
setContent
(
result
);
return
Result
.
success
()
.
setContent
(
result
);
}
/**
* 小程序赛事列表接口
*
* @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"
)})
@ApiImplicitParams
({
@ApiImplicitParam
(
value
=
"页码"
,
name
=
"page"
,
required
=
false
,
paramType
=
"query"
),
@ApiImplicitParam
(
value
=
"条数"
,
name
=
"size"
,
required
=
false
,
paramType
=
"query"
),
@ApiImplicitParam
(
value
=
"关键字"
,
name
=
"keyword"
,
required
=
false
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Page
.
class
,
responseContainer
=
"List"
)})
@ApiImplicitParams
({
@ApiImplicitParam
(
value
=
"页码"
,
name
=
"page"
,
required
=
false
,
paramType
=
"query"
),
@ApiImplicitParam
(
value
=
"条数"
,
name
=
"size"
,
required
=
false
,
paramType
=
"query"
),
@ApiImplicitParam
(
value
=
"关键字"
,
name
=
"keyword"
,
required
=
false
)})
@ApiOperation
(
value
=
"赛事列表"
,
notes
=
"赛事列表,与查询接口一致"
,
tags
=
"首页接口"
)
public
Page
<
List
<
Cmpt
>>
cmpt
(
@ApiIgnore
Pageable
page
,
String
keyword
,
HttpServletRequest
request
)
{
public
Page
<
List
<
Cmpt
>>
cmpt
(
@ApiIgnore
Pageable
page
,
String
keyword
,
HttpServletRequest
request
)
{
int
type
=
NumberUtils
.
toInt
(
request
.
getParameter
(
"type"
),
0
);
String
partnerId
=
request
.
getParameter
(
"partnerId"
);
String
creator
=
request
.
getParameter
(
"userId"
);
Partner
partner
=
cmptService
.
getPartnerById
(
partnerId
);
// log.info("partner:"+partner);
Map
<
String
,
String
>
param
=
new
HashMap
<>();
param
.
put
(
"userId"
,
partner
.
getUserId
()+
""
);
param
.
put
(
"creator"
,
creator
);
param
.
put
(
"type"
,
type
+
""
);
param
.
put
(
"keyword"
,
keyword
);
param
.
put
(
"partnerId"
,
partnerId
);
// log.info("partner:"+partner);
Map
<
String
,
String
>
param
=
new
HashMap
<>();
param
.
put
(
"userId"
,
partner
.
getUserId
()
+
""
);
param
.
put
(
"creator"
,
creator
);
param
.
put
(
"type"
,
type
+
""
);
param
.
put
(
"keyword"
,
keyword
);
param
.
put
(
"partnerId"
,
partnerId
);
Page
<
List
<
Cmpt
>>
result
=
cmptService
.
queryCmpt
(
page
,
param
);
result
.
setCode
(
200
);
return
result
;
...
...
@@ -452,49 +468,48 @@ public class MicroApiController {
@GetMapping
(
value
=
"/queryMyCmpt"
)
public
Result
<
List
<
Cmpt
>>
queryMyCmpt
(
@ApiIgnore
Pageable
page
,
String
keyword
,
HttpServletRequest
request
)
{
int
userId
=
NumberUtils
.
toInt
(
request
.
getParameter
(
"userId"
),-
1
);
public
Result
<
List
<
Cmpt
>>
queryMyCmpt
(
@ApiIgnore
Pageable
page
,
String
keyword
,
HttpServletRequest
request
)
{
int
userId
=
NumberUtils
.
toInt
(
request
.
getParameter
(
"userId"
),
-
1
);
if
(
userId
==
-
1
)
{
return
Result
.
fail
().
setMsg
(
"参数不正常!"
);
return
Result
.
fail
()
.
setMsg
(
"参数不正常!"
);
}
List
<
Cmpt
>
result
=
cmptService
.
queryMyCmpt
(
userId
);
result
.
forEach
(
cmpt
->
{
if
(
StringUtils
.
isBlank
(
cmpt
.
getLogo
()))
{
if
(
StringUtils
.
isBlank
(
cmpt
.
getLogo
()))
{
cmpt
.
setLogo
(
"https://imgoss.geexek.com/micro_defailt.jpg"
);
}
});
return
Result
.
success
().
setContent
(
result
);
return
Result
.
success
()
.
setContent
(
result
);
}
@GetMapping
(
value
=
"/func/{cmptId}"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiImplicitParam
(
name
=
"enrollId"
,
value
=
"赛事用户标识"
,
required
=
false
,
paramType
=
"query"
)
@ApiOperation
(
value
=
"赛事功能模块列表"
,
notes
=
"赛事功能模块列表"
,
tags
=
"赛事页面"
)
public
Result
<
List
<
Func
>>
func
(
@PathVariable
(
"cmptId"
)
int
cmpId
,
HttpServletRequest
request
)
{
public
Result
<
List
<
Func
>>
func
(
@PathVariable
(
"cmptId"
)
int
cmpId
,
HttpServletRequest
request
)
{
// String enrollId = request.getParameter("enrollId");
List
<
Func
>
list
=
cmptSetting
.
queryFuncs
(
cmpId
);
list
=
list
.
stream
()
.
filter
(
v
->
{
if
(
v
.
getNeedTime
()
==
null
||
v
.
getNeedTime
()
!=
1
)
{
return
true
;
// 不需要时间校验的直接保留
}
Date
now
=
new
Date
();
// 检查开始时间条件(如果有)
boolean
startValid
=
v
.
getStartTime
()
==
null
||
!
now
.
before
(
v
.
getStartTime
());
// 检查结束时间条件(如果有)
boolean
endValid
=
v
.
getDeadTime
()
==
null
||
now
.
before
(
v
.
getDeadTime
());
// 必须同时满足开始和结束时间条件
return
startValid
&&
endValid
;
})
.
collect
(
Collectors
.
toList
());
//
list=list
//
.stream()
//
.filter(v -> {
//
if (v.getNeedTime() == null || v.getNeedTime() != 1) {
//
return true; // 不需要时间校验的直接保留
//
}
//
Date now = new Date();
//
// 检查开始时间条件(如果有)
//
boolean startValid = v.getStartTime() == null || !now.before(v.getStartTime());
//
// 检查结束时间条件(如果有)
//
boolean endValid = v.getDeadTime() == null || now.before(v.getDeadTime());
//
//
// 必须同时满足开始和结束时间条件
//
return startValid && endValid;
//
})
//
.collect(Collectors.toList());
list
.
forEach
(
v
->
{
if
(
v
.
getOpenType
().
equals
(
0
)){
if
(
v
.
getOpenType
()
.
equals
(
0
))
{
v
.
setUrl
(
serverURL
+
"gk/cmpt/cmptSetting/page/"
+
v
.
getId
());
}
});
...
...
@@ -503,31 +518,28 @@ public class MicroApiController {
} else { // 绑定后
list = cmptSetting.queryFuncs(cmpId); // 仅公开
}*/
return
Result
.
success
().
setContent
(
list
);
return
Result
.
success
()
.
setContent
(
list
);
}
@GetMapping
(
value
=
"/info/{cmptId}/{markNo}"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiOperation
(
value
=
"个人赛事信息"
,
notes
=
"个人赛事信息"
,
tags
=
"赛事页面"
)
public
Result
<
EnrollInfo
>
userInfo
(
@PathVariable
(
"cmptId"
)
Integer
cmpId
,
@PathVariable
(
"markNo"
)
String
markNo
)
{
EnrollInfo
enrollInfo
=
nameListService
.
getUserInfo
(
markNo
,
cmpId
);
return
Result
.
success
().
setContent
(
enrollInfo
);
return
Result
.
success
()
.
setContent
(
enrollInfo
);
}
@GetMapping
(
value
=
"/route/{cmptId}"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiOperation
(
value
=
"下载gps,kml"
,
notes
=
"下载gps,kml"
,
tags
=
"路线下载"
)
public
Result
<
List
<
Road
>>
route
(
@PathVariable
(
"cmptId"
)
int
cmptId
,
@RequestParam
(
value
=
"userId"
,
required
=
false
)
Integer
userId
)
{
// 判断功能是否开放
// 开放 返回全部 、未开发仅返回当前组别的赛事
List
<
Road
>
roads
=
roadService
.
queryRoads
(
cmptId
);
return
Result
.
success
().
setContent
(
roads
);
return
Result
.
success
()
.
setContent
(
roads
);
}
/**
...
...
@@ -536,32 +548,26 @@ public class MicroApiController {
* @return
*/
@GetMapping
(
value
=
"/route/gps/{roadId}"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiOperation
(
value
=
"获取路线坐标点"
,
notes
=
"获取路线坐标点"
,
tags
=
"路线导入"
)
public
Result
<
RoadGpsPoint
>
route_gps
(
@PathVariable
(
"roadId"
)
Integer
roadId
,
@RequestParam
(
name
=
"pathId"
,
required
=
false
,
defaultValue
=
"-1"
)
int
pathId
)
{
public
Result
<
RoadGpsPoint
>
route_gps
(
@PathVariable
(
"roadId"
)
Integer
roadId
,
@RequestParam
(
name
=
"pathId"
,
required
=
false
,
defaultValue
=
"-1"
)
int
pathId
)
{
RoadGpsPoint
gps
=
roadService
.
getGps
(
roadId
,
pathId
);
return
Result
.
success
().
setContent
(
gps
);
return
Result
.
success
()
.
setContent
(
gps
);
}
@PostMapping
(
value
=
"/gps/upload"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiOperation
(
value
=
"上传坐标"
,
notes
=
"上传坐标"
,
tags
=
"联系救援"
)
public
Result
<
ObjectUtils
.
Null
>
gps
(
@RequestParam
(
"lat"
)
double
lat
,
@RequestParam
(
"lng"
)
double
lng
,
@RequestParam
(
"enrollId"
)
String
markNo
,
@RequestParam
(
"cmptId"
)
Integer
cmptId
)
{
Aid
aid
=
new
Aid
().
setCmptId
(
cmptId
).
setLat
(
lat
)
.
setLng
(
lng
).
setMarkNo
(
markNo
)
public
Result
<
ObjectUtils
.
Null
>
gps
(
@RequestParam
(
"lat"
)
double
lat
,
@RequestParam
(
"lng"
)
double
lng
,
@RequestParam
(
"enrollId"
)
String
markNo
,
@RequestParam
(
"cmptId"
)
Integer
cmptId
)
{
Aid
aid
=
new
Aid
().
setCmptId
(
cmptId
)
.
setLat
(
lat
)
.
setLng
(
lng
)
.
setMarkNo
(
markNo
)
.
setStatus
(
0
);
gpsService
.
save
(
aid
);
return
Result
.
success
().
setContent
(
null
);
return
Result
.
success
()
.
setContent
(
null
);
}
...
...
@@ -572,14 +578,12 @@ public class MicroApiController {
* @return
*/
@GetMapping
(
value
=
"/concat/{cmptId}"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiOperation
(
value
=
"获取联系救助方式"
,
notes
=
"获取联系救助方式"
,
tags
=
"联系救援"
)
public
Result
<
List
<
Contact
>>
concat
(
@PathVariable
(
"cmptId"
)
Integer
cmptId
)
{
List
<
Contact
>
list
=
concatService
.
queryConcat
(
cmptId
);
return
Result
.
success
().
setContent
(
list
);
return
Result
.
success
()
.
setContent
(
list
);
}
...
...
@@ -590,14 +594,12 @@ public class MicroApiController {
* @return
*/
@GetMapping
(
value
=
"/equipment/{cmptId}"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiOperation
(
value
=
"获取强制装备"
,
notes
=
"获取强制装备"
,
tags
=
"强制装备"
)
public
Result
<
List
<
Equipment
>>
equipment
(
@PathVariable
(
"cmptId"
)
Integer
cmptId
)
{
List
<
Equipment
>
list
=
equipmentService
.
queryEquipments
(
cmptId
);
return
Result
.
success
().
setContent
(
list
);
return
Result
.
success
()
.
setContent
(
list
);
}
...
...
@@ -607,86 +609,91 @@ public class MicroApiController {
* @return
*/
@PostMapping
(
value
=
"/bindWx"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiOperation
(
value
=
"微信登录/注册"
,
notes
=
"微信登录/注册"
,
tags
=
"用户信息"
)
public
Result
<
User
>
bindWx
(
HttpServletRequest
request
,
String
encryptedData
,
String
iv
,
String
code
)
{
//////////////// 1、向微信服务器 使用登录凭证 code 获取 session_key 和 openid ////////////////
// log.info("=====bindWx方法,code:" + code + ",encryptedData:" + encryptedData + ",code:" + code);
// log.info("=====bindWx方法,code:" + code + ",encryptedData:" + encryptedData + ",code:" + code);
String
partnerId
=
request
.
getParameter
(
"partnerId"
);
// log.info("=====/bindWx 请求参数:"+request.getQueryString());
// log.info("=====/bindWx 请求参数:"+request.getQueryString());
JSONObject
json
=
weixinInfoService
.
getOpenIdAndSessionKey
(
code
,
partnerId
);
String
openid
=
null
;
String
session_key
;
String
unionId
=
null
;
if
(
null
!=
json
)
{
if
(
json
.
containsKey
(
"errcode"
))
{
//是否有错误
return
Result
.
fail
().
setMsg
(
json
.
getString
(
"errcode"
)
+
" == "
+
json
.
getString
(
"errmsg"
));
}
else
{
//用户的唯一标识(openid)
if
(
json
.
containsKey
(
"errcode"
))
{
// 是否有错误
return
Result
.
fail
()
.
setMsg
(
json
.
getString
(
"errcode"
)
+
" == "
+
json
.
getString
(
"errmsg"
));
}
else
{
// 用户的唯一标识(openid)
openid
=
json
.
getString
(
"openid"
);
//获取会话密钥(session_key)
//
获取会话密钥(session_key)
session_key
=
json
.
getString
(
"session_key"
);
// log.info("=====openId:" + openid + ", session_key:" + session_key);
// log.info("=====openId:" + openid + ", session_key:" + session_key);
}
}
else
{
log
.
info
(
"=====获取授权失败"
);
return
Result
.
fail
().
setMsg
(
"获取授权失败"
);
return
Result
.
fail
()
.
setMsg
(
"获取授权失败"
);
}
//////////////// 2、对encryptedData加密数据进行AES解密 ////////////////
try
{
String
result
=
AesUtil
.
decrypt
(
encryptedData
,
session_key
,
iv
,
"UTF-8"
);
// log.info("=====解密结果:"+result);
// log.info("=====解密结果:"+result);
if
(
null
!=
result
&&
result
.
length
()
>
0
)
{
JSONObject
jsoninfo
=
JSONObject
.
parseObject
(
result
);
String
name
=
jsoninfo
.
getString
(
"nickName"
);
if
(
StringUtils
.
isNotBlank
(
name
)){
name
=
name
.
replaceAll
(
"\\{"
,
""
).
replaceAll
(
"\\}"
,
""
);
if
(
StringUtils
.
isNotBlank
(
name
))
{
name
=
name
.
replaceAll
(
"\\{"
,
""
)
.
replaceAll
(
"\\}"
,
""
);
}
String
imgUrl
=
jsoninfo
.
getString
(
"avatarUrl"
);
// 根据组委会ID判断是否覆盖微信头像(微信小程序获取头像昵称规则变更兼容)
Partner
partner
=
partnerService
.
getPartnerById
(
partnerId
);
// 如果配置为不覆盖头像
if
(
partner
.
getCoverHeadImg
()
==
0
)
{
if
(
partner
.
getCoverHeadImg
()
==
0
)
{
name
=
""
;
imgUrl
=
""
;
log
.
info
(
"=====小程序组委会["
+
partner
.
getName
()+
"]不覆盖微信头像"
);
log
.
info
(
"=====小程序组委会["
+
partner
.
getName
()
+
"]不覆盖微信头像"
);
}
String
url
=
null
;
if
(
jsoninfo
.
getString
(
"unionId"
)
!=
null
&&
!
"null"
.
equals
(
jsoninfo
.
getString
(
"unionId"
))){
url
=
geexekURL
+
"registerInfo/saveOrUpdateByUnionId.do?unionId="
+
jsoninfo
.
getString
(
"unionId"
)
+
"&openId="
+
openid
+
"&userName="
+
name
+
"&nickName="
+
name
+
"&userFrom=3"
;
}
else
{
url
=
geexekURL
+
"registerInfo/saveOrUpdateByOpenId.do?openId="
+
openid
+
"&userName="
+
name
+
"&nickName="
+
name
+
"&userFrom=3"
;
if
(
jsoninfo
.
getString
(
"unionId"
)
!=
null
&&
!
"null"
.
equals
(
jsoninfo
.
getString
(
"unionId"
)))
{
url
=
geexekURL
+
"registerInfo/saveOrUpdateByUnionId.do?unionId="
+
jsoninfo
.
getString
(
"unionId"
)
+
"&openId="
+
openid
+
"&userName="
+
name
+
"&nickName="
+
name
+
"&userFrom=3"
;
}
else
{
url
=
geexekURL
+
"registerInfo/saveOrUpdateByOpenId.do?openId="
+
openid
+
"&userName="
+
name
+
"&nickName="
+
name
+
"&userFrom=3"
;
}
// log.info("=====请求的URL:" + url);
// log.info("=====请求的URL:" + url);
ResponseEntity
<
String
>
forEntity
=
restTemplate
.
getForEntity
(
url
,
String
.
class
);
if
(
forEntity
.
getStatusCode
()
==
HttpStatus
.
OK
)
{
JSONObject
object
=
JSONObject
.
parseObject
(
forEntity
.
getBody
());
// log.info("=====返回的JSON:" + forEntity.getBody());
int
userId
=
object
.
getJSONObject
(
"result"
).
getIntValue
(
"userId"
);
User
user
=
new
User
().
setUserId
(
userId
).
setHeadImgUrl
(
imgUrl
).
setOpenId
(
openid
)
// log.info("=====返回的JSON:" + forEntity.getBody());
int
userId
=
object
.
getJSONObject
(
"result"
)
.
getIntValue
(
"userId"
);
User
user
=
new
User
().
setUserId
(
userId
)
.
setHeadImgUrl
(
imgUrl
)
.
setOpenId
(
openid
)
.
setUnionId
(
jsoninfo
.
getString
(
"unionId"
))
.
setPhone
(
StringUtils
.
isBlank
(
object
.
getJSONObject
(
"result"
).
getString
(
"callPhone"
))?
""
:
object
.
getJSONObject
(
"result"
).
getString
(
"callPhone"
));
.
setPhone
(
StringUtils
.
isBlank
(
object
.
getJSONObject
(
"result"
)
.
getString
(
"callPhone"
))
?
""
:
object
.
getJSONObject
(
"result"
)
.
getString
(
"callPhone"
));
valueOperations
.
set
(
KEY
+
userId
,
session_key
);
// log.info("返回数据:" + user);
return
Result
.
success
().
setContent
(
user
);
// log.info("返回数据:" + user);
return
Result
.
success
()
.
setContent
(
user
);
}
else
{
log
.
info
(
"=====请求平台数据出错!"
);
return
Result
.
fail
().
setMsg
(
"请求平台数据出错!"
);
return
Result
.
fail
()
.
setMsg
(
"请求平台数据出错!"
);
}
}
}
catch
(
Exception
e
)
{
log
.
info
(
e
.
getMessage
(),
e
);
}
return
Result
.
fail
().
setMsg
(
"解密失败出现异常,登录失败"
);
return
Result
.
fail
()
.
setMsg
(
"解密失败出现异常,登录失败"
);
}
...
...
@@ -696,10 +703,7 @@ public class MicroApiController {
* @return
*/
@PostMapping
(
value
=
"/countDownload"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiOperation
(
value
=
"上传KML|GPS文件下载"
,
notes
=
"统计文件下载次数"
,
response
=
Result
.
class
,
tags
=
"路线下载"
)
public
Result
countDownload
(
Integer
roadId
)
{
roadService
.
countDownload
(
roadId
);
...
...
@@ -712,10 +716,7 @@ public class MicroApiController {
* @return
*/
@PostMapping
(
value
=
"/enrollStatus/{cmptId}/{userId}"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiOperation
(
value
=
"获取报名状态"
,
notes
=
"获取报名状态"
,
response
=
Result
.
class
,
tags
=
"获取报名状态"
)
public
Result
enrollStatus
(
@PathVariable
(
"cmptId"
)
Integer
cmptId
,
@PathVariable
(
"userId"
)
Integer
userId
)
{
return
Result
.
success
();
...
...
@@ -728,18 +729,19 @@ public class MicroApiController {
* @return
*/
@GetMapping
(
value
=
"/funcSetting/{cmptId}"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiOperation
(
value
=
"获取赛事设置开关"
,
notes
=
"获取赛事设置开关"
,
response
=
Result
.
class
,
tags
=
"获取赛事设置开关"
)
public
Result
funcSetting
(
@PathVariable
(
"cmptId"
)
Integer
cmptId
)
{
FuncSetting
setting
=
funcSettingService
.
getSettingByCmptId
(
cmptId
);
if
(
setting
==
null
)
{
setting
=
new
FuncSetting
().
setCmptId
(
cmptId
).
setCountDown
(
0
).
setMobile
(
0
).
setNews
(
0
);
setting
=
new
FuncSetting
().
setCmptId
(
cmptId
)
.
setCountDown
(
0
)
.
setMobile
(
0
)
.
setNews
(
0
);
log
.
info
(
"未查询到赛事设置"
);
}
return
Result
.
success
().
setContent
(
setting
);
return
Result
.
success
()
.
setContent
(
setting
);
}
/**
...
...
@@ -748,28 +750,28 @@ public class MicroApiController {
* @return
*/
@GetMapping
(
value
=
"/cmpt/news/{cmptId}"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiOperation
(
value
=
"获取赛事资讯"
,
notes
=
"获取赛事资讯"
,
response
=
Result
.
class
,
tags
=
"获取赛事资讯"
)
public
Result
news
(
@PathVariable
(
"cmptId"
)
Integer
cmptId
)
{
List
<
News
>
news
=
newsService
.
queryNewsByCmptId
(
cmptId
);
if
(
news
==
null
){
return
Result
.
fail
();}
if
(
news
==
null
)
{
return
Result
.
fail
();
}
news
.
forEach
(
newsObj
->
{
newsObj
.
setUrl
(
serverURL
+
"gk/news/page/"
+
newsObj
.
getId
());
// newsObj.setContent("");
});
Map
result
=
new
HashMap
();
FuncSetting
setting
=
funcSettingService
.
getSettingByCmptId
(
cmptId
);
if
(
setting
==
null
){
result
.
put
(
"name"
,
""
);
}
else
{
result
.
put
(
"name"
,
setting
.
getNewsAlias
());
if
(
setting
==
null
)
{
result
.
put
(
"name"
,
""
);
}
else
{
result
.
put
(
"name"
,
setting
.
getNewsAlias
());
}
result
.
put
(
"list"
,
news
);
return
Result
.
success
().
setContent
(
result
);
result
.
put
(
"list"
,
news
);
return
Result
.
success
()
.
setContent
(
result
);
}
/**
...
...
@@ -778,18 +780,16 @@ public class MicroApiController {
* @return
*/
@GetMapping
(
value
=
"/enroll/list/{cmptId}/{userId}"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiOperation
(
value
=
"获取赛事资讯"
,
notes
=
"获取赛事资讯"
,
response
=
Result
.
class
,
tags
=
"获取赛事资讯"
)
public
Result
enroll_list
(
@PathVariable
(
"cmptId"
)
Integer
cmptId
,
@PathVariable
(
"userId"
)
String
userId
)
{
if
(
StringUtils
.
isBlank
(
userId
)
||
"null"
.
equals
(
userId
))
{
if
(
StringUtils
.
isBlank
(
userId
)
||
"null"
.
equals
(
userId
))
{
log
.
info
(
"上传用户Id为null"
);
return
Result
.
fail
();
}
List
<
RoadUser
>
users
=
remoteService
.
getEnrollUsers
(
cmptId
,
Integer
.
valueOf
(
userId
));
return
Result
.
success
().
setContent
(
users
);
return
Result
.
success
()
.
setContent
(
users
);
}
/**
...
...
@@ -894,7 +894,8 @@ public class MicroApiController {
}
else
{
// 获取对比分数
if
(
cpResult
.
get
(
"score"
)
!=
"faceEorro"
&&
!
cpResult
.
get
(
"score"
).
equals
(
"faceEorro"
))
{
if
(
cpResult
.
get
(
"score"
)
!=
"faceEorro"
&&
!
cpResult
.
get
(
"score"
)
.
equals
(
"faceEorro"
))
{
idCardCp
=
Double
.
parseDouble
(
cpResult
.
get
(
"score"
));
if
(
idCardCp
<
75
)
{
result
=
"您上传的身份证照片与头像不是同一个人,请重新上传"
;
...
...
@@ -925,9 +926,12 @@ public class MicroApiController {
}
else
{
if
(
mapw
.
get
(
"code"
)
==
null
)
{
code
=
210
;
result
=
mapw
.
get
(
"msg"
)
!=
null
?
mapw
.
get
(
"msg"
).
toString
()
:
"保存签到头像失败"
;
}
else
if
(!
StringUtils
.
equals
(
"200.0"
,
mapw
.
get
(
"code"
).
toString
()))
{
result
=
mapw
.
get
(
"msg"
)
!=
null
?
mapw
.
get
(
"msg"
).
toString
()
:
"保存签到头像失败"
;
result
=
mapw
.
get
(
"msg"
)
!=
null
?
mapw
.
get
(
"msg"
)
.
toString
()
:
"保存签到头像失败"
;
}
else
if
(!
StringUtils
.
equals
(
"200.0"
,
mapw
.
get
(
"code"
)
.
toString
()))
{
result
=
mapw
.
get
(
"msg"
)
!=
null
?
mapw
.
get
(
"msg"
)
.
toString
()
:
"保存签到头像失败"
;
}
}
}
else
{
...
...
@@ -1002,8 +1006,7 @@ public class MicroApiController {
reader
.
close
();
result
=
sbf
.
toString
();
Gson
gson
=
new
Gson
();
@SuppressWarnings
(
"serial"
)
Map
<
String
,
Object
>
map
=
gson
.
fromJson
(
result
,
(
new
TypeToken
<
HashMap
<
String
,
Object
>>()
{
@SuppressWarnings
(
"serial"
)
Map
<
String
,
Object
>
map
=
gson
.
fromJson
(
result
,
(
new
TypeToken
<
HashMap
<
String
,
Object
>>()
{
}).
getType
());
return
map
;
}
catch
(
Exception
e
)
{
...
...
@@ -1014,15 +1017,17 @@ public class MicroApiController {
}
@RequestMapping
(
value
=
"getRandIdByMarkNo"
,
method
=
RequestMethod
.
GET
)
@RequestMapping
(
value
=
"getRandIdByMarkNo"
,
method
=
RequestMethod
.
GET
)
public
Result
getRandIdByMarkNo
(
String
cmptId
,
String
markNo
)
{
ResponseEntity
<
String
>
result
=
restTemplate
.
getForEntity
(
timerURL
+
"getRandIdByMarkNo.do?cmptId="
+
cmptId
+
"&markNo="
+
markNo
,
String
.
class
);
if
(
result
.
getStatusCode
()
==
HttpStatus
.
OK
)
{
JSONObject
object
=
JSONObject
.
parseObject
(
result
.
getBody
());
if
(
object
!=
null
&&
!
object
.
isEmpty
())
{
String
rankId
=
object
.
getJSONObject
(
"content"
).
getString
(
"rankId"
);
String
rankId
=
object
.
getJSONObject
(
"content"
)
.
getString
(
"rankId"
);
if
(
StringUtils
.
isNotBlank
(
rankId
))
{
return
Result
.
success
().
setContent
(
rankId
);
return
Result
.
success
()
.
setContent
(
rankId
);
}
}
}
...
...
@@ -1036,14 +1041,12 @@ public class MicroApiController {
* @return
*/
@GetMapping
(
value
=
"/banner/{cmptId}"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiOperation
(
value
=
"获取轮播图"
,
notes
=
"获取轮播图"
,
response
=
Result
.
class
,
tags
=
"获取轮播图"
)
public
Result
banner
(
@PathVariable
(
"cmptId"
)
Integer
cmptId
)
{
List
<
Banner
>
banners
=
bannerService
.
queryAll
(
cmptId
);
return
Result
.
success
().
setContent
(
banners
);
return
Result
.
success
()
.
setContent
(
banners
);
}
/**
...
...
@@ -1052,21 +1055,18 @@ public class MicroApiController {
* @return
*/
@GetMapping
(
value
=
"/banner/count/{cmptId}/{id}"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiOperation
(
value
=
"轮播曝光统计"
,
notes
=
"轮播曝光统计"
,
response
=
Result
.
class
,
tags
=
"轮播曝光统计"
)
public
Result
banner_count
(
HttpServletRequest
request
,
@PathVariable
(
"cmptId"
)
Integer
cmptId
,
@PathVariable
(
"id"
)
String
id
)
{
public
Result
banner_count
(
HttpServletRequest
request
,
@PathVariable
(
"cmptId"
)
Integer
cmptId
,
@PathVariable
(
"id"
)
String
id
)
{
String
remoteAddr
=
JService
.
getRemoteAddr
(
request
);
// uv
valueOperations
.
increment
(
CountJob
.
getUvKey
(
cmptId
,
id
),
1L
);
valueOperations
.
increment
(
CountJob
.
getUvKey
(
cmptId
,
id
),
1L
);
// pv
hashOperations
.
put
(
CountJob
.
getPvKey
(
cmptId
,
id
),
remoteAddr
,
"1"
);
hashOperations
.
put
(
CountJob
.
getPvKey
(
cmptId
,
id
),
remoteAddr
,
"1"
);
valueOperations
.
increment
(
CountJob
.
getCmptUvKey
(
cmptId
),
1L
);
hashOperations
.
put
(
CountJob
.
getCmptPvKey
(
cmptId
),
remoteAddr
,
"1"
);
valueOperations
.
increment
(
CountJob
.
getCmptUvKey
(
cmptId
),
1L
);
hashOperations
.
put
(
CountJob
.
getCmptPvKey
(
cmptId
),
remoteAddr
,
"1"
);
return
Result
.
success
();
}
...
...
@@ -1077,199 +1077,229 @@ public class MicroApiController {
* @return
*/
@PostMapping
(
value
=
"/uploadScore"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiOperation
(
value
=
"上传成绩"
,
notes
=
"上传成绩"
,
response
=
Result
.
class
,
tags
=
"上传成绩"
)
public
Result
uploadScore
(
HttpServletRequest
request
)
throws
IOException
{
String
contentType
=
request
.
getContentType
();
//1.获取字符流
//
1.获取字符流
BufferedReader
br
=
request
.
getReader
();
//2.读取数据
//
2.读取数据
String
line
=
null
;
StringBuilder
sb
=
new
StringBuilder
();
while
((
line
=
br
.
readLine
())
!=
null
)
{
while
((
line
=
br
.
readLine
())
!=
null
)
{
sb
.
append
(
line
);
}
log
.
info
(
"contentType:"
+
contentType
+
",body:"
+
sb
.
toString
());
log
.
info
(
"contentType:"
+
contentType
+
",body:"
+
sb
.
toString
());
UserScore
score
=
JSONObject
.
parseObject
(
sb
.
toString
(),
UserScore
.
class
);
log
.
info
(
score
);
//接受前端提交的成绩,校验是否符合规则,并取出本条规则
CmptScoreRule
rule
=
cmptScoreRuleService
.
getCmptScoreRulesByCmptIdAndIndex
(
score
.
getCmptId
(),
score
.
getIndexId
());
if
(
rule
==
null
){
return
Result
.
fail
().
setMsg
(
"未找到规则"
);}
//判断此条规则是否提交过成绩
Integer
scoreId
=
cmptScoreRuleScoreInfoService
.
getCmptScoreRuleScoreInfoIdByruleIdAndMarkNo
(
score
.
getCmptId
(),
score
.
getMarkNo
(),
rule
.
getId
());
if
(
scoreId
!=
null
){
return
Result
.
fail
().
setMsg
(
"已经上传过成绩!"
);
}
//根据里程计算配速,里程来自用户自己填写的里程或者来自项目的里程
int
duration
=
score
.
getScore
().
getDuration
();
float
cmptPace
=
0
;
int
mileage
=
0
;
// 接受前端提交的成绩,校验是否符合规则,并取出本条规则
CmptScoreRule
rule
=
cmptScoreRuleService
.
getCmptScoreRulesByCmptIdAndIndex
(
score
.
getCmptId
(),
score
.
getIndexId
());
if
(
rule
==
null
)
{
return
Result
.
fail
()
.
setMsg
(
"未找到规则"
);
}
// 判断此条规则是否提交过成绩
Integer
scoreId
=
cmptScoreRuleScoreInfoService
.
getCmptScoreRuleScoreInfoIdByruleIdAndMarkNo
(
score
.
getCmptId
(),
score
.
getMarkNo
(),
rule
.
getId
());
if
(
scoreId
!=
null
)
{
return
Result
.
fail
()
.
setMsg
(
"已经上传过成绩!"
);
}
// 根据里程计算配速,里程来自用户自己填写的里程或者来自项目的里程
int
duration
=
score
.
getScore
()
.
getDuration
();
float
cmptPace
=
0
;
int
mileage
=
0
;
FuncSetting
settingByCmptId
=
funcSettingService
.
getSettingByCmptId
(
score
.
getCmptId
());
int
isHasMileage
=
settingByCmptId
.
getMileage
();
//是否开启了里程的填写
if
(
isHasMileage
==
1
){
mileage
=
score
.
getScore
().
getMileage
();
if
(
mileage
==
0
){
return
Result
.
fail
().
setMsg
(
"请输入里程"
);
int
isHasMileage
=
settingByCmptId
.
getMileage
();
// 是否开启了里程的填写
if
(
isHasMileage
==
1
)
{
mileage
=
score
.
getScore
()
.
getMileage
();
if
(
mileage
==
0
)
{
return
Result
.
fail
()
.
setMsg
(
"请输入里程"
);
}
DecimalFormat
df
=
new
DecimalFormat
(
"0.##"
);
cmptPace
=
Float
.
valueOf
(
df
.
format
((
float
)
duration
/
mileage
));
}
else
{
int
distance
=(
int
)
remoteService
.
getTimeSegInfoByRoadId
(
score
.
getCmptId
(),
score
.
getRoadId
()).
get
(
"distance"
);
if
(
distance
==
0
){
return
Result
.
fail
().
setMsg
(
"赛事项目需要设置里程"
);
cmptPace
=
Float
.
valueOf
(
df
.
format
((
float
)
duration
/
mileage
));
}
else
{
int
distance
=
(
int
)
remoteService
.
getTimeSegInfoByRoadId
(
score
.
getCmptId
(),
score
.
getRoadId
())
.
get
(
"distance"
);
if
(
distance
==
0
)
{
return
Result
.
fail
()
.
setMsg
(
"赛事项目需要设置里程"
);
}
mileage
=
distance
;
mileage
=
distance
;
DecimalFormat
df
=
new
DecimalFormat
(
"0.##"
);
cmptPace
=
Float
.
valueOf
(
df
.
format
((
float
)
duration
/
mileage
));
cmptPace
=
Float
.
valueOf
(
df
.
format
((
float
)
duration
/
mileage
));
}
String
subsectionTime
=
score
.
getScore
().
getDate
();
//前端上传json中取出里程,耗时,提交时间,赛事地,规则id,markNo
String
subsectionTime
=
score
.
getScore
()
.
getDate
();
// 前端上传json中取出里程,耗时,提交时间,赛事地,规则id,markNo
CmptScoreRuleScoreInfo
cmptScoreRuleScoreInfo
=
new
CmptScoreRuleScoreInfo
().
setCmptId
(
score
.
getCmptId
())
.
setSubsectionscore
(
score
.
getScore
().
getDuration
()).
setSubsectionMileage
(
mileage
).
setCmptPace
(
cmptPace
)
.
setSubsectionscore
(
score
.
getScore
()
.
getDuration
())
.
setSubsectionMileage
(
mileage
)
.
setCmptPace
(
cmptPace
)
.
setSubsectionTime
(
subsectionTime
)
.
setCmptId
(
score
.
getCmptId
()).
setRuleId
(
rule
.
getId
()).
setMarkNo
(
score
.
getMarkNo
()).
setCheckStatus
(
0
);
if
(
settingByCmptId
.
getSwitchScoreReview
()
==
null
){
.
setCmptId
(
score
.
getCmptId
())
.
setRuleId
(
rule
.
getId
())
.
setMarkNo
(
score
.
getMarkNo
())
.
setCheckStatus
(
0
);
if
(
settingByCmptId
.
getSwitchScoreReview
()
==
null
)
{
settingByCmptId
.
setSwitchScoreReview
(
0
);
}
//如果自动审核开启的话,进行单条成绩的审核处理
if
(
settingByCmptId
.
getSwitchScoreReview
()
!=
null
&&
settingByCmptId
.
getSwitchScoreReview
()==
1
)
{
//
配速小于2"27不能通过审核
if
(
cmptPace
<=(
float
)
147
/
1000
)
{
//
如果自动审核开启的话,进行单条成绩的审核处理
if
(
settingByCmptId
.
getSwitchScoreReview
()
!=
null
&&
settingByCmptId
.
getSwitchScoreReview
()
==
1
)
{
//
配速小于2"27不能通过审核
if
(
cmptPace
<=
(
float
)
147
/
1000
)
{
cmptScoreRuleScoreInfo
.
setCheckStatus
(
2
);
}
else
{
}
else
{
cmptScoreRuleScoreInfo
.
setCheckStatus
(
1
);
}
}
// 保存校验通过的成绩
cmptScoreRuleScoreInfoService
.
saveScoreRuleScoreInfo
(
cmptScoreRuleScoreInfo
);
//设置附加项的参数,并保存附加项
for
(
CmptScoreFieldValue
value
:
score
.
getFields
())
{
//
设置附加项的参数,并保存附加项
for
(
CmptScoreFieldValue
value
:
score
.
getFields
())
{
value
.
setCmptId
(
score
.
getCmptId
());
value
.
setMarkNo
(
score
.
getMarkNo
());
value
.
setRuleId
(
rule
.
getId
());
}
// 提交成绩保存设置附加项(照片等)
cmptScoreFieldValueService
.
saveOrUpdate
(
score
.
getFields
());
//查看自动审核是否开启,如果开启直接将总成绩存入到计时系统remark1,如果没有开启走手动审核的逻辑
cmptScoreRuleScoreInfoService
.
scoreReviewByMarkNo
(
score
.
getCmptId
(),
score
.
getMarkNo
(),
settingByCmptId
.
getSwitchScoreReview
());
return
Result
.
success
().
setContent
(
score
);
// 查看自动审核是否开启,如果开启直接将总成绩存入到计时系统remark1,如果没有开启走手动审核的逻辑
cmptScoreRuleScoreInfoService
.
scoreReviewByMarkNo
(
score
.
getCmptId
(),
score
.
getMarkNo
(),
settingByCmptId
.
getSwitchScoreReview
());
return
Result
.
success
()
.
setContent
(
score
);
}
@GetMapping
(
value
=
"/getScore"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiOperation
(
value
=
"获取成绩"
,
notes
=
"获取成绩"
,
response
=
Result
.
class
,
tags
=
"获取成绩"
)
public
Result
getScore
(
UserScore
score
)
{
log
.
info
(
"用户提交的成绩信息:"
+
score
.
toString
());
CmptScoreRule
rule
=
cmptScoreRuleService
.
getCmptScoreRulesByCmptIdAndIndex
(
score
.
getCmptId
(),
score
.
getIndexId
());
if
(
rule
==
null
){
return
Result
.
fail
().
setContent
(
"未找到匹配的规则"
);}
EnrollInfo
userInfo
=
remoteService
.
getUserInfoByMarkNo
(
score
.
getMarkNo
(),
score
.
getCmptId
());
if
(
userInfo
==
null
){
return
Result
.
fail
().
setMsg
(
"未查询到用户信息,请重新绑定!"
);
log
.
info
(
"用户提交的成绩信息:"
+
score
.
toString
());
CmptScoreRule
rule
=
cmptScoreRuleService
.
getCmptScoreRulesByCmptIdAndIndex
(
score
.
getCmptId
(),
score
.
getIndexId
());
if
(
rule
==
null
)
{
return
Result
.
fail
()
.
setContent
(
"未找到匹配的规则"
);
}
log
.
info
(
"用户信息:"
+
userInfo
);
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
Integer
scoreItemId
=
cmptScoreRuleScoreInfoService
.
getCmptScoreRuleScoreInfoIdByruleIdAndMarkNo
(
score
.
getCmptId
(),
userInfo
.
getMarkNo
(),
rule
.
getId
());
//小程序添加里程的是否需要用户填写
FuncSetting
funcSetting
=
funcSettingService
.
getSettingByCmptId
(
score
.
getCmptId
());
int
switchMileage
=
funcSetting
.
getMileage
();
int
subsectionMileage
=
0
;
if
(
scoreItemId
!=
null
){
CmptScoreRuleScoreInfo
cmptScoreRuleScoreInfo
=
cmptScoreRuleScoreInfoService
.
getCmptScoreRuleScoreInfoByruleIdAndMarkNo
(
score
.
getCmptId
(),
score
.
getMarkNo
(),
rule
.
getId
());
if
(
cmptScoreRuleScoreInfo
.
getSubsectionMileage
()==
0
){
subsectionMileage
=
0
;
}
else
{
subsectionMileage
=
cmptScoreRuleScoreInfo
.
getSubsectionMileage
();
EnrollInfo
userInfo
=
remoteService
.
getUserInfoByMarkNo
(
score
.
getMarkNo
(),
score
.
getCmptId
());
if
(
userInfo
==
null
)
{
return
Result
.
fail
()
.
setMsg
(
"未查询到用户信息,请重新绑定!"
);
}
log
.
info
(
"用户信息:"
+
userInfo
);
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
Integer
scoreItemId
=
cmptScoreRuleScoreInfoService
.
getCmptScoreRuleScoreInfoIdByruleIdAndMarkNo
(
score
.
getCmptId
(),
userInfo
.
getMarkNo
(),
rule
.
getId
());
// 小程序添加里程的是否需要用户填写
FuncSetting
funcSetting
=
funcSettingService
.
getSettingByCmptId
(
score
.
getCmptId
());
int
switchMileage
=
funcSetting
.
getMileage
();
int
subsectionMileage
=
0
;
if
(
scoreItemId
!=
null
)
{
CmptScoreRuleScoreInfo
cmptScoreRuleScoreInfo
=
cmptScoreRuleScoreInfoService
.
getCmptScoreRuleScoreInfoByruleIdAndMarkNo
(
score
.
getCmptId
(),
score
.
getMarkNo
(),
rule
.
getId
());
if
(
cmptScoreRuleScoreInfo
.
getSubsectionMileage
()
==
0
)
{
subsectionMileage
=
0
;
}
else
{
subsectionMileage
=
cmptScoreRuleScoreInfo
.
getSubsectionMileage
();
}
result
.
put
(
"score"
,
new
Score
().
setDate
(
cmptScoreRuleScoreInfo
.
getSubsectionTime
().
substring
(
0
,
10
)).
setDuration
(
cmptScoreRuleScoreInfo
.
getSubsectionscore
()).
setMileage
(
subsectionMileage
).
setSwitchMileage
(
switchMileage
));
}
else
{
//初始阶段没有上传成绩,json也显示score,方便前端判断
result
.
put
(
"score"
,
new
Score
().
setDate
(
"0000-00-00"
).
setDuration
(
0
).
setMileage
(
subsectionMileage
).
setSwitchMileage
(
switchMileage
));
result
.
put
(
"score"
,
new
Score
().
setDate
(
cmptScoreRuleScoreInfo
.
getSubsectionTime
()
.
substring
(
0
,
10
))
.
setDuration
(
cmptScoreRuleScoreInfo
.
getSubsectionscore
())
.
setMileage
(
subsectionMileage
)
.
setSwitchMileage
(
switchMileage
));
}
else
{
// 初始阶段没有上传成绩,json也显示score,方便前端判断
result
.
put
(
"score"
,
new
Score
().
setDate
(
"0000-00-00"
)
.
setDuration
(
0
)
.
setMileage
(
subsectionMileage
)
.
setSwitchMileage
(
switchMileage
));
}
List
<
CmptScoreFieldValue
>
list
=
cmptScoreFieldValueService
.
getCmptScoreFieldValueByCmptIdAndMarkNoAndRuleId
(
score
.
getCmptId
(),
score
.
getMarkNo
(),
rule
.
getId
());
result
.
put
(
"items"
,
list
);
List
<
CmptScoreFieldValue
>
list
=
cmptScoreFieldValueService
.
getCmptScoreFieldValueByCmptIdAndMarkNoAndRuleId
(
score
.
getCmptId
(),
score
.
getMarkNo
(),
rule
.
getId
());
result
.
put
(
"items"
,
list
);
return
Result
.
success
().
setContent
(
result
);
return
Result
.
success
()
.
setContent
(
result
);
}
@GetMapping
(
value
=
"/checkCert.do"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"成功"
),
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiOperation
(
value
=
"上传成绩"
,
notes
=
"上传成绩"
,
response
=
Result
.
class
,
tags
=
"上传成绩"
)
public
Result
getScore
(
HttpServletRequest
request
)
{
String
cmptId
=
request
.
getParameter
(
"cmptId"
);
String
keyword
=
request
.
getParameter
(
"keyword"
);
List
<
CmptScoreRuleScoreInfo
>
cmptScoreRuleScoreInfoList
=
cmptScoreRuleScoreInfoService
.
getScoreRuleScoreInfosBycmptIdAndMarkNo
(
Integer
.
valueOf
(
cmptId
),
keyword
);
//如果有成绩提交记录,先检查成绩提交记录是否都审核完毕,如果没有成绩提交记录,检查扫码、自动打卡是否可以下载证书
if
(
cmptScoreRuleScoreInfoList
.
size
()>
0
){
//查看赛事有几条成绩提交的规则,规则定义了几条,成绩记录也必须大于规则条数
List
<
CmptScoreRule
>
cmptScoreRuleList
=
cmptScoreRuleService
.
getCmptScoreRulesByCmptId
(
Integer
.
valueOf
(
cmptId
));
if
(
cmptScoreRuleScoreInfoList
.
size
()<
cmptScoreRuleList
.
size
()){
return
Result
.
fail
().
setMsg
(
"成绩审核后,才能查看证书,请耐心等待"
);
List
<
CmptScoreRuleScoreInfo
>
cmptScoreRuleScoreInfoList
=
cmptScoreRuleScoreInfoService
.
getScoreRuleScoreInfosBycmptIdAndMarkNo
(
Integer
.
valueOf
(
cmptId
),
keyword
);
// 如果有成绩提交记录,先检查成绩提交记录是否都审核完毕,如果没有成绩提交记录,检查扫码、自动打卡是否可以下载证书
if
(
cmptScoreRuleScoreInfoList
.
size
()
>
0
)
{
// 查看赛事有几条成绩提交的规则,规则定义了几条,成绩记录也必须大于规则条数
List
<
CmptScoreRule
>
cmptScoreRuleList
=
cmptScoreRuleService
.
getCmptScoreRulesByCmptId
(
Integer
.
valueOf
(
cmptId
));
if
(
cmptScoreRuleScoreInfoList
.
size
()
<
cmptScoreRuleList
.
size
())
{
return
Result
.
fail
()
.
setMsg
(
"成绩审核后,才能查看证书,请耐心等待"
);
}
for
(
CmptScoreRuleScoreInfo
cmptScoreRuleScoreInfo
:
cmptScoreRuleScoreInfoList
)
{
//如果存在未审核,审核不通过的记录,不能下载完赛证书
if
(
cmptScoreRuleScoreInfo
.
getCheckStatus
()==
0
||
cmptScoreRuleScoreInfo
.
getCheckStatus
()==
2
){
return
Result
.
fail
().
setMsg
(
"成绩审核后,才能查看证书,请耐心等待"
);
// 如果存在未审核,审核不通过的记录,不能下载完赛证书
if
(
cmptScoreRuleScoreInfo
.
getCheckStatus
()
==
0
||
cmptScoreRuleScoreInfo
.
getCheckStatus
()
==
2
)
{
return
Result
.
fail
()
.
setMsg
(
"成绩审核后,才能查看证书,请耐心等待"
);
}
}
return
Result
.
success
().
setMsg
(
"请下载证书"
);
}
else
{
//扫码打卡,自动打卡走计时证书的逻辑,需要验证是否可以下载证书
return
Result
.
success
()
.
setMsg
(
"请下载证书"
);
}
else
{
// 扫码打卡,自动打卡走计时证书的逻辑,需要验证是否可以下载证书
String
result
=
remoteService
.
checkCert
(
cmptId
,
keyword
);
if
(
request
!=
null
)
{
JSONObject
obj
=
JSONObject
.
parseObject
(
result
);
Integer
status
=
obj
.
getIntValue
(
"status"
);
if
(
status
!=
null
)
{
if
(
status
==
0
)
{
return
Result
.
success
().
setMsg
(
obj
.
getString
(
"message"
));
return
Result
.
success
()
.
setMsg
(
obj
.
getString
(
"message"
));
}
else
if
(
status
==
101
)
{
return
Result
.
fail
().
setMsg
(
"您尚未完赛,无法查看完赛证书"
);
return
Result
.
fail
()
.
setMsg
(
"您尚未完赛,无法查看完赛证书"
);
}
else
if
(
status
==
102
)
{
return
Result
.
fail
().
setMsg
(
"证书未发布,无法查看完赛证书"
);
return
Result
.
fail
()
.
setMsg
(
"证书未发布,无法查看完赛证书"
);
}
else
{
return
Result
.
fail
().
setMsg
(
obj
.
getString
(
"message"
));
return
Result
.
fail
()
.
setMsg
(
obj
.
getString
(
"message"
));
}
}
return
Result
.
fail
().
setMsg
(
obj
.
getString
(
"message"
));
return
Result
.
fail
()
.
setMsg
(
obj
.
getString
(
"message"
));
}
else
{
return
Result
.
fail
().
setMsg
(
"网络异常"
);
return
Result
.
fail
()
.
setMsg
(
"网络异常"
);
}
}
}
/**
* 获取携带gps坐标的打卡点
*
* @param cmptId
* @param roadId
* @return
*/
@GetMapping
(
value
=
"/getRoadsGpsCheckpoint/{cmptId}/{roadId}"
)
@ApiResponses
({
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiResponses
({
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiOperation
(
value
=
"获取携带gps坐标的打卡点"
,
notes
=
"获取携带gps坐标的打卡点"
,
tags
=
"获取携带gps坐标的打卡点"
)
public
Result
getRoadsGpsCheckpoint
(
@PathVariable
(
"cmptId"
)
int
cmptId
,
@PathVariable
(
"roadId"
)
int
roadId
){
List
<
RoadsGpsCheckpointMap
>
roadsGpsCheckpointMapList
=
roadsGpsCheckpointService
.
getRoadsGpsCheckpoint
(
cmptId
,
roadId
);
return
Result
.
success
().
setContent
(
roadsGpsCheckpointMapList
);
public
Result
getRoadsGpsCheckpoint
(
@PathVariable
(
"cmptId"
)
int
cmptId
,
@PathVariable
(
"roadId"
)
int
roadId
)
{
List
<
RoadsGpsCheckpointMap
>
roadsGpsCheckpointMapList
=
roadsGpsCheckpointService
.
getRoadsGpsCheckpoint
(
cmptId
,
roadId
);
return
Result
.
success
()
.
setContent
(
roadsGpsCheckpointMapList
);
}
/**
* 带经纬度坐标的打卡点上传成绩
*
* @param cmptId
* @param markNo
* @param checkPointId
...
...
@@ -1277,103 +1307,107 @@ public class MicroApiController {
* @return
*/
@GetMapping
(
value
=
"/uploadGpsCheckPointScore/{cmptId}/{markNo}/{checkPointId}/{scoreTime}"
)
@ApiResponses
({
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
)})
@ApiOperation
(
value
=
"带经纬度坐标的打卡点上传成绩"
,
notes
=
"带经纬度坐标的打卡点上传成绩"
,
response
=
Result
.
class
,
tags
=
"带经纬度坐标的打卡点上传成绩"
)
public
Result
uploadGpsCheckPointScore
(
@PathVariable
(
"cmptId"
)
int
cmptId
,
@PathVariable
(
"markNo"
)
String
markNo
,
@PathVariable
(
"checkPointId"
)
int
checkPointId
,
@PathVariable
(
"scoreTime"
)
String
scoreTime
)
{
String
records
=
markNo
+
","
+
scoreTime
+
",1,"
+
checkPointId
;
log
.
info
(
"上传成绩的记录="
+
records
);
HashMap
<
String
,
String
>
results
=
remoteService
.
uploadGpsCheckpointScore
(
cmptId
,
records
);
public
Result
uploadGpsCheckPointScore
(
@PathVariable
(
"cmptId"
)
int
cmptId
,
@PathVariable
(
"markNo"
)
String
markNo
,
@PathVariable
(
"checkPointId"
)
int
checkPointId
,
@PathVariable
(
"scoreTime"
)
String
scoreTime
)
{
String
records
=
markNo
+
","
+
scoreTime
+
",1,"
+
checkPointId
;
log
.
info
(
"上传成绩的记录="
+
records
);
HashMap
<
String
,
String
>
results
=
remoteService
.
uploadGpsCheckpointScore
(
cmptId
,
records
);
if
(
results
.
isEmpty
())
{
return
Result
.
fail
().
setContent
(
results
);
if
(
results
.
isEmpty
())
{
return
Result
.
fail
()
.
setContent
(
results
);
}
if
(
"0"
.
equals
(
results
.
get
(
"message"
))){
return
Result
.
success
().
setContent
(
results
);
if
(
"0"
.
equals
(
results
.
get
(
"message"
)))
{
return
Result
.
success
()
.
setContent
(
results
);
}
return
Result
.
fail
().
setContent
(
results
);
return
Result
.
fail
()
.
setContent
(
results
);
}
/**
* 自动打卡获取开枪时间或者结束时间及其是否清空小程序内存
*
* @param cmptId
* @param roadId
* @param markNo
* @return
*/
@GetMapping
(
value
=
"/getRoadOpenTimeAndCloseTime/{cmptId}/{roadId}/{markNo}"
)
@ApiResponses
({
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiResponses
({
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiOperation
(
value
=
"自动打卡获取开枪时间或者结束时间及其是否清空小程序内存"
,
notes
=
"自动打卡获取开枪时间或者结束时间及其是否清空小程序内存"
,
tags
=
"自动打卡获取开枪时间或者结束时间及其是否清空小程序内存"
)
public
Result
getRoadOpenTimeAndCloseTime
(
@PathVariable
(
"cmptId"
)
int
cmptId
,
@PathVariable
(
"roadId"
)
int
roadId
,
@PathVariable
(
"markNo"
)
String
markNo
){
HashMap
<
String
,
Long
>
roadsGpsCheckpointMapList
=
remoteService
.
getRoadOpenTimeAndCloseTime
(
cmptId
,
roadId
);
long
_isclean
=
remoteService
.
getIsCleanByMarkNo
(
cmptId
,
roadId
,
markNo
);
roadsGpsCheckpointMapList
.
put
(
"isClean"
,
_isclean
);
return
Result
.
success
().
setContent
(
roadsGpsCheckpointMapList
);
public
Result
getRoadOpenTimeAndCloseTime
(
@PathVariable
(
"cmptId"
)
int
cmptId
,
@PathVariable
(
"roadId"
)
int
roadId
,
@PathVariable
(
"markNo"
)
String
markNo
)
{
HashMap
<
String
,
Long
>
roadsGpsCheckpointMapList
=
remoteService
.
getRoadOpenTimeAndCloseTime
(
cmptId
,
roadId
);
long
_isclean
=
remoteService
.
getIsCleanByMarkNo
(
cmptId
,
roadId
,
markNo
);
roadsGpsCheckpointMapList
.
put
(
"isClean"
,
_isclean
);
return
Result
.
success
()
.
setContent
(
roadsGpsCheckpointMapList
);
}
/**
* 根据号码牌获取此号码牌的打卡记录和成绩,打卡点对应的经纬度信息
* 扫描打卡时,判断是否在经纬度范围内,在的化允许打卡
*
* @param cmptId
* @param markNo
* @return
*/
@GetMapping
(
value
=
"/getCheckPointRecordByMarkNo/{cmptId}/{roadId}/{markNo}"
)
@ApiResponses
({
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiResponses
({
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiOperation
(
value
=
"根据号码牌获取此号码牌的打卡记录和成绩,打卡点对应的经纬度信息"
,
notes
=
"根据号码牌获取此号码牌的打卡记录和成绩,打卡点对应的经纬度信息"
,
tags
=
"根据号码牌获取此号码牌的打卡记录和成绩,打卡点对应的经纬度信息"
)
public
Result
getCheckPointRecordByMarkNo
(
@PathVariable
(
"cmptId"
)
int
cmptId
,
@PathVariable
(
"roadId"
)
int
roadId
,
@PathVariable
(
"markNo"
)
String
markNo
){
List
<
RoadTimerCheckpoint
>
roadTimerCheckpointList
=
remoteService
.
getAllCPScoreByMarkNo
(
cmptId
,
roadId
,
markNo
);
return
Result
.
success
().
setContent
(
roadTimerCheckpointList
);
public
Result
getCheckPointRecordByMarkNo
(
@PathVariable
(
"cmptId"
)
int
cmptId
,
@PathVariable
(
"roadId"
)
int
roadId
,
@PathVariable
(
"markNo"
)
String
markNo
)
{
List
<
RoadTimerCheckpoint
>
roadTimerCheckpointList
=
remoteService
.
getAllCPScoreByMarkNo
(
cmptId
,
roadId
,
markNo
);
return
Result
.
success
()
.
setContent
(
roadTimerCheckpointList
);
}
@GetMapping
(
value
=
"/getSwitchMileage/{cmptId}"
)
@ApiResponses
({
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiResponses
({
@ApiResponse
(
code
=
-
1
,
message
=
"失败"
,
response
=
ObjectUtils
.
Null
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"成功"
,
response
=
Result
.
class
,
responseContainer
=
"List"
)})
@ApiOperation
(
value
=
"根据赛事Id获取用户是否设置了成绩提交附加项:里程必填项"
,
notes
=
"根据赛事Id获取用户是否设置了成绩提交附加项:里程必填项"
,
tags
=
"根据赛事Id获取用户是否设置了成绩提交附加项:里程必填项"
)
public
Result
getSwitchMileage
(
@PathVariable
(
"cmptId"
)
int
cmptId
){
public
Result
getSwitchMileage
(
@PathVariable
(
"cmptId"
)
int
cmptId
)
{
FuncSetting
settingByCmptId
=
funcSettingService
.
getSettingByCmptId
(
cmptId
);
return
Result
.
success
().
setContent
(
settingByCmptId
);
return
Result
.
success
()
.
setContent
(
settingByCmptId
);
}
/**
* 根据赛事Id获取项目列表
*
* @param cmptId
* @return
*/
@GetMapping
(
value
=
"/getRoadIdsByCmptId/{cmptId}"
)
public
Result
getRoadIdsByCmptId
(
@PathVariable
(
"cmptId"
)
Integer
cmptId
)
{
List
<
Road
>
list
=
roadService
.
queryRoads
(
cmptId
);
return
Result
.
success
().
setContent
(
list
);
return
Result
.
success
()
.
setContent
(
list
);
}
/**
* 根据赛事Id获取项目列表
*
* @param cmptId
* @return
*/
@GetMapping
(
value
=
"/isUploadPortrait"
)
public
Result
isUploadProfile
(
@RequestParam
(
"cmptId"
)
Integer
cmptId
,
@RequestParam
(
"roadId"
)
Integer
roadId
)
{
public
Result
isUploadProfile
(
@RequestParam
(
"cmptId"
)
Integer
cmptId
,
@RequestParam
(
"roadId"
)
Integer
roadId
)
{
boolean
is
=
cmptService
.
isUploadProfile
(
cmptId
);
Map
param
=
new
HashMap
();
if
(
is
)
{
Map
<
String
,
String
>
location
=
cmptService
.
getPhotoLocation
(
cmptId
,
roadId
);
if
(
location
==
null
||
location
.
size
()
==
0
)
{
if
(
is
)
{
Map
<
String
,
String
>
location
=
cmptService
.
getPhotoLocation
(
cmptId
,
roadId
);
if
(
location
==
null
||
location
.
size
()
==
0
)
{
location
=
new
HashMap
<>();
location
.
put
(
"xCoordinate"
,
"0"
);
location
.
put
(
"yCoordinate"
,
"0"
);
location
.
put
(
"width"
,
"0"
);
location
.
put
(
"height"
,
"0"
);
location
.
put
(
"xCoordinate"
,
"0"
);
location
.
put
(
"yCoordinate"
,
"0"
);
location
.
put
(
"width"
,
"0"
);
location
.
put
(
"height"
,
"0"
);
}
param
.
putAll
(
location
);
}
param
.
put
(
"isUploadPortrait"
,
is
);
return
Result
.
success
().
setContent
(
param
);
param
.
put
(
"isUploadPortrait"
,
is
);
return
Result
.
success
()
.
setContent
(
param
);
}
...
...
@@ -1385,24 +1419,27 @@ public class MicroApiController {
@ResponseBody
public
Result
view
(
@PathVariable
(
"cmptId"
)
Integer
cmptId
)
{
Long
increment
=
valueOperations
.
increment
(
"gk:view:"
+
cmptId
,
1
);
return
Result
.
success
().
setContent
(
increment
);
return
Result
.
success
()
.
setContent
(
increment
);
}
/**
* 统计赛事数据
*
* @param partnerId
* @return
*/
@GetMapping
(
value
=
"/cmpt/statistic"
)
@ResponseBody
public
Result
statistic
(
@RequestParam
(
value
=
"partnerId"
,
required
=
false
)
String
partnerId
)
{
public
Result
statistic
(
@RequestParam
(
value
=
"partnerId"
,
required
=
false
)
String
partnerId
)
{
Partner
partner
=
partnerService
.
getPartnerById
(
partnerId
);
if
(
partner
==
null
)
{
if
(
partner
==
null
)
{
partner
=
new
Partner
();
partner
.
setUserId
(-
1
);
}
Map
<
String
,
String
>
param
=
cmptService
.
getAllStatistic
(
partner
.
getUserId
());
return
Result
.
success
().
setContent
(
param
);
Map
<
String
,
String
>
param
=
cmptService
.
getAllStatistic
(
partner
.
getUserId
());
return
Result
.
success
()
.
setContent
(
param
);
}
/**
...
...
@@ -1411,24 +1448,24 @@ public class MicroApiController {
*/
@GetMapping
(
value
=
"/manualMarkNO"
)
@ResponseBody
public
Result
manualMarkNO
(
@RequestParam
(
"cmptId"
)
int
cmptId
,
@RequestParam
(
"userMapId"
)
int
userMapId
,
@RequestParam
(
value
=
"markNo"
,
required
=
false
)
String
markNo
,
@RequestParam
(
"manualMarkNo"
)
String
manualMarkNo
,
@RequestParam
(
"userId"
)
int
userId
)
{
public
Result
manualMarkNO
(
@RequestParam
(
"cmptId"
)
int
cmptId
,
@RequestParam
(
"userMapId"
)
int
userMapId
,
@RequestParam
(
value
=
"markNo"
,
required
=
false
)
String
markNo
,
@RequestParam
(
"manualMarkNo"
)
String
manualMarkNo
,
@RequestParam
(
"userId"
)
int
userId
)
{
log
.
info
(
"c:"
+
cmptId
+
",u:"
+
userMapId
+
"m:"
+
markNo
+
",om:"
+
manualMarkNo
+
",userId:"
+
userId
);
log
.
info
(
"c:"
+
cmptId
+
",u:"
+
userMapId
+
"m:"
+
markNo
+
",om:"
+
manualMarkNo
+
",userId:"
+
userId
);
if
(
StringUtils
.
isNotBlank
(
markNo
))
{
// 未
if
(
StringUtils
.
isNotBlank
(
markNo
))
{
// 未
List
<
CmptScoreRuleScoreInfo
>
scores
=
cmptScoreRuleScoreInfoService
.
getScoreInfosBycmptIdAndMarkNoEnd
(
cmptId
,
markNo
);
if
(
scores
.
size
()
>
0
){
return
Result
.
fail
().
setMsg
(
"已经有成绩数据,无法自选号码牌!"
);
if
(
scores
.
size
()
>
0
)
{
return
Result
.
fail
()
.
setMsg
(
"已经有成绩数据,无法自选号码牌!"
);
}
}
Object
o
=
hashOperations
.
get
(
"manual:markno:"
+
cmptId
,
manualMarkNo
);
if
(
o
!=
null
){
return
Result
.
fail
().
setMsg
(
"该号码牌已经被分配!"
);
if
(
o
!=
null
)
{
return
Result
.
fail
()
.
setMsg
(
"该号码牌已经被分配!"
);
}
String
stock
=
manualMarkNo
.
split
(
"-"
)[
0
];
...
...
@@ -1439,91 +1476,100 @@ public class MicroApiController {
EnrollInfo
userInfoByMarkNo
=
remoteService
.
getUserInfoByMarkNo
(
manualMarkNo
,
cmptId
);
// 获取原计时信息
if
(
userInfoByMarkNo
!=
null
){
return
Result
.
fail
().
setMsg
(
"该号码牌已经被分配!"
);
if
(
userInfoByMarkNo
!=
null
)
{
return
Result
.
fail
()
.
setMsg
(
"该号码牌已经被分配!"
);
}
Boolean
best_mark_no
=
hashOperations
.
hasKey
(
"best_mark_no"
,
markno
);
if
(
best_mark_no
){
return
Result
.
fail
().
setMsg
(
"该号码牌为预留号码牌,不能分配!"
);
if
(
best_mark_no
)
{
return
Result
.
fail
()
.
setMsg
(
"该号码牌为预留号码牌,不能分配!"
);
}
EnrollInfo
userInfo
=
null
;
if
(
StringUtils
.
isNotBlank
(
markNo
))
{
if
(
StringUtils
.
isNotBlank
(
markNo
))
{
userInfo
=
remoteService
.
getUserInfoByMarkNo
(
markNo
,
cmptId
);
// 获取原计时信息
log
.
info
(
"userInfo:"
+
userInfo
);
}
if
(
userInfo
==
null
){
// 根据号码牌判断是否已经存储
Map
<
String
,
String
>
param
=
remoteService
.
getEnrollUsersByUserMapId
(
userMapId
);
param
.
put
(
"cmptId"
,
cmptId
+
""
);
param
.
put
(
"markNo"
,
StringUtils
.
isBlank
(
stock
)
?
manualMarkNo
.
replace
(
"-"
,
""
)
:
manualMarkNo
);
param
.
put
(
"deviceId"
,
StringUtils
.
isBlank
(
stock
)
?
manualMarkNo
.
replace
(
"-"
,
""
)
:
manualMarkNo
);
param
.
put
(
"enrollId"
,
"-1"
);
param
.
put
(
"remark4"
,
stock
);
param
.
put
(
"remark5"
,
markno
);
param
.
put
(
"idCardNo"
,
userInfo
.
getIdentityNo
());
param
.
put
(
"name"
,
userInfo
.
getUserName
());
param
.
put
(
"roadId"
,
userInfo
.
getRoadId
()+
""
);
param
.
put
(
"gender"
,
"男"
.
equals
(
userInfo
.
getGender
())
?
"0"
:
"1"
);
if
(
param
.
get
(
"roadId"
)
==
null
){
return
Result
.
fail
().
setMsg
(
"未找到赛事项目!"
);
log
.
info
(
"userInfo:"
+
userInfo
);
}
if
(
userInfo
==
null
)
{
// 根据号码牌判断是否已经存储
Map
<
String
,
String
>
param
=
remoteService
.
getEnrollUsersByUserMapId
(
userMapId
);
param
.
put
(
"cmptId"
,
cmptId
+
""
);
param
.
put
(
"markNo"
,
StringUtils
.
isBlank
(
stock
)
?
manualMarkNo
.
replace
(
"-"
,
""
)
:
manualMarkNo
);
param
.
put
(
"deviceId"
,
StringUtils
.
isBlank
(
stock
)
?
manualMarkNo
.
replace
(
"-"
,
""
)
:
manualMarkNo
);
param
.
put
(
"enrollId"
,
"-1"
);
param
.
put
(
"remark4"
,
stock
);
param
.
put
(
"remark5"
,
markno
);
param
.
put
(
"idCardNo"
,
userInfo
.
getIdentityNo
());
param
.
put
(
"name"
,
userInfo
.
getUserName
());
param
.
put
(
"roadId"
,
userInfo
.
getRoadId
()
+
""
);
param
.
put
(
"gender"
,
"男"
.
equals
(
userInfo
.
getGender
())
?
"0"
:
"1"
);
if
(
param
.
get
(
"roadId"
)
==
null
)
{
return
Result
.
fail
()
.
setMsg
(
"未找到赛事项目!"
);
}
String
json
=
new
Gson
().
toJson
(
param
);
log
.
info
(
"请求参数:"
+
json
);
ResponseEntity
<
String
>
responseEntity
=
restTemplate
.
getForEntity
(
timerURL
+
"/mergePersonEnroll.do?org-id=1-3&personEnroll={json}"
,
String
.
class
,
json
);
log
.
info
(
"计时2返回结果:"
+
responseEntity
.
getBody
());
log
.
info
(
"请求参数:"
+
json
);
ResponseEntity
<
String
>
responseEntity
=
restTemplate
.
getForEntity
(
timerURL
+
"/mergePersonEnroll.do?org-id=1-3&personEnroll={json}"
,
String
.
class
,
json
);
log
.
info
(
"计时2返回结果:"
+
responseEntity
.
getBody
());
JSONObject
jsonObject
=
JSONObject
.
parseObject
(
responseEntity
.
getBody
());
int
status
=
jsonObject
.
getIntValue
(
"status"
);
if
(
status
==
0
)
{
if
(
status
==
0
)
{
Object
registerId
=
param
.
get
(
"registerId"
);
EnrollInfo
info
=
cmptService
.
bindByManual
(
userId
,
manualMarkNo
,
cmptId
);
hashOperations
.
put
(
"manual:markno:"
+
cmptId
,
manualMarkNo
,
"1"
);
return
Result
.
success
().
setContent
(
info
);
}
else
{
return
Result
.
fail
().
setMsg
(
jsonObject
.
getString
(
"message"
));
}
}
else
{
Map
<
String
,
String
>
param
=
new
HashMap
<
String
,
String
>();
//remoteService.getEnrollUsersByUserMapId(userMapId);
param
.
put
(
"cmptId"
,
cmptId
+
""
);
param
.
put
(
"markNo"
,
StringUtils
.
isBlank
(
stock
)
?
manualMarkNo
.
replace
(
"-"
,
""
)
:
manualMarkNo
);
param
.
put
(
"deviceId"
,
StringUtils
.
isBlank
(
stock
)
?
manualMarkNo
.
replace
(
"-"
,
""
)
:
manualMarkNo
);
param
.
put
(
"roadId"
,
userInfo
.
getRoadId
()+
""
);
param
.
put
(
"name"
,
userInfo
.
getUserName
());
param
.
put
(
"gender"
,
"男"
.
equals
(
userInfo
.
getGender
())
?
"0"
:
"1"
);
param
.
put
(
"mobileNum"
,
userInfo
.
getPhone
());
param
.
put
(
"enrollId"
,
userInfo
.
getEnrollId
());
param
.
put
(
"remark4"
,
stock
);
param
.
put
(
"remark5"
,
markno
);
param
.
put
(
"idCardNo"
,
userInfo
.
getIdentityNo
());
hashOperations
.
put
(
"manual:markno:"
+
cmptId
,
manualMarkNo
,
"1"
);
return
Result
.
success
()
.
setContent
(
info
);
}
else
{
return
Result
.
fail
()
.
setMsg
(
jsonObject
.
getString
(
"message"
));
}
}
else
{
Map
<
String
,
String
>
param
=
new
HashMap
<
String
,
String
>();
// remoteService.getEnrollUsersByUserMapId(userMapId);
param
.
put
(
"cmptId"
,
cmptId
+
""
);
param
.
put
(
"markNo"
,
StringUtils
.
isBlank
(
stock
)
?
manualMarkNo
.
replace
(
"-"
,
""
)
:
manualMarkNo
);
param
.
put
(
"deviceId"
,
StringUtils
.
isBlank
(
stock
)
?
manualMarkNo
.
replace
(
"-"
,
""
)
:
manualMarkNo
);
param
.
put
(
"roadId"
,
userInfo
.
getRoadId
()
+
""
);
param
.
put
(
"name"
,
userInfo
.
getUserName
());
param
.
put
(
"gender"
,
"男"
.
equals
(
userInfo
.
getGender
())
?
"0"
:
"1"
);
param
.
put
(
"mobileNum"
,
userInfo
.
getPhone
());
param
.
put
(
"enrollId"
,
userInfo
.
getEnrollId
());
param
.
put
(
"remark4"
,
stock
);
param
.
put
(
"remark5"
,
markno
);
param
.
put
(
"idCardNo"
,
userInfo
.
getIdentityNo
());
String
json
=
new
Gson
().
toJson
(
param
);
log
.
info
(
"同步请求参数:"
+
json
);
ResponseEntity
<
String
>
responseEntity
=
restTemplate
.
getForEntity
(
timerURL
+
"/mergePersonEnroll.do?org-id=1-3&personEnroll={json}"
,
String
.
class
,
json
);
log
.
info
(
"计时1返回结果:"
+
responseEntity
.
getBody
());
log
.
info
(
"同步请求参数:"
+
json
);
ResponseEntity
<
String
>
responseEntity
=
restTemplate
.
getForEntity
(
timerURL
+
"/mergePersonEnroll.do?org-id=1-3&personEnroll={json}"
,
String
.
class
,
json
);
log
.
info
(
"计时1返回结果:"
+
responseEntity
.
getBody
());
JSONObject
jsonObject
=
JSONObject
.
parseObject
(
responseEntity
.
getBody
());
int
status
=
jsonObject
.
getIntValue
(
"status"
);
if
(
status
==
0
)
{
if
(
status
==
0
)
{
Object
registerId
=
param
.
get
(
"registerId"
);
log
.
info
(
"registerId:"
+
registerId
);
log
.
info
(
"registerId:"
+
registerId
);
EnrollInfo
info
=
cmptService
.
bindByManual
(
userId
,
manualMarkNo
,
cmptId
);
hashOperations
.
put
(
"manual:markno:"
+
cmptId
,
manualMarkNo
,
"1"
);
return
Result
.
success
().
setContent
(
info
);
}
else
{
return
Result
.
fail
().
setMsg
(
jsonObject
.
getString
(
"message"
));
hashOperations
.
put
(
"manual:markno:"
+
cmptId
,
manualMarkNo
,
"1"
);
return
Result
.
success
()
.
setContent
(
info
);
}
else
{
return
Result
.
fail
()
.
setMsg
(
jsonObject
.
getString
(
"message"
));
}
}
}
@RequestMapping
(
"initMark"
)
@ResponseBody
public
Result
init
(
@RequestParam
(
"marknos"
)
String
marksno
){
Arrays
.
stream
(
marksno
.
split
(
","
)).
forEach
(
markno
->{
hashOperations
.
put
(
"best_mark_no"
,
markno
,
1
);
public
Result
init
(
@RequestParam
(
"marknos"
)
String
marksno
)
{
Arrays
.
stream
(
marksno
.
split
(
","
))
.
forEach
(
markno
->
{
hashOperations
.
put
(
"best_mark_no"
,
markno
,
1
);
});
return
Result
.
success
().
setContent
(
hashOperations
.
keys
(
"best_mark_no"
));
return
Result
.
success
()
.
setContent
(
hashOperations
.
keys
(
"best_mark_no"
));
}
@GetMapping
(
value
=
"/getWeatherNow/{areacode}"
)
...
...
@@ -1531,21 +1577,21 @@ public class MicroApiController {
@ApiImplicitParam
(
value
=
"地区编码"
,
name
=
"areacode"
,
required
=
true
,
paramType
=
"path"
,
defaultValue
=
"101090301"
)
public
Result
<
Map
<
String
,
Object
>>
getWeatherNow
(
@PathVariable
(
"areacode"
)
String
areacode
)
{
Map
<
String
,
Object
>
map
=
weatherService
.
getWeatherNow
(
areacode
);
return
Result
.
success
().
setContent
(
map
);
return
Result
.
success
()
.
setContent
(
map
);
}
@GetMapping
(
value
=
"/getWeatherDay/{areacode}/{days}"
)
@ApiOperation
(
value
=
"近期天气"
,
notes
=
"近期天气"
,
tags
=
"近期天气"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
value
=
"地区编码"
,
name
=
"areacode"
,
required
=
true
,
paramType
=
"path"
,
defaultValue
=
"101090301"
),
@ApiImplicitParam
(
value
=
"未来天数"
,
name
=
"days"
,
required
=
true
,
paramType
=
"path"
,
defaultValue
=
"3"
)})
@ApiImplicitParams
({
@ApiImplicitParam
(
value
=
"地区编码"
,
name
=
"areacode"
,
required
=
true
,
paramType
=
"path"
,
defaultValue
=
"101090301"
),
@ApiImplicitParam
(
value
=
"未来天数"
,
name
=
"days"
,
required
=
true
,
paramType
=
"path"
,
defaultValue
=
"3"
)})
public
Result
<
Map
<
String
,
Object
>>
getWeatherDay
(
@PathVariable
(
"areacode"
)
String
areacode
,
@PathVariable
(
"days"
)
String
days
)
{
Map
<
String
,
Object
>
map
=
weatherService
.
getWeatherDay
(
areacode
,
days
);
return
Result
.
success
().
setContent
(
map
);
return
Result
.
success
()
.
setContent
(
map
);
}
public
static
void
main
(
String
[]
args
)
{
System
.
out
.
println
(
"-aaa"
.
split
(
"-"
)[
0
]
+
","
+
"-aaa"
.
split
(
"-"
)[
1
]);
System
.
out
.
println
(
"-aaa"
.
split
(
"-"
)[
0
]
+
","
+
"-aaa"
.
split
(
"-"
)[
1
]);
}
}
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