Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Q
qk_backend
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
quanku
qk_backend
Commits
2669276e
Commit
2669276e
authored
Jan 15, 2025
by
shiyu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
分享信息
parent
4eff475a
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
133 additions
and
8 deletions
+133
-8
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/qiandao/QdHomePageServiceImpl.java
...va/com/wwdz/ch/wx/impl/qiandao/QdHomePageServiceImpl.java
+1
-1
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/qiandao/QdUserSignInServiceImpl.java
.../com/wwdz/ch/wx/impl/qiandao/QdUserSignInServiceImpl.java
+73
-3
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/qiandao/QdUserSignInService.java
...a/com/wwdz/ch/wx/service/qiandao/QdUserSignInService.java
+9
-0
ch-wx-api/src/main/java/com/wwdz/ch/wx/web/qiandao/QdUserSignInController.java
...va/com/wwdz/ch/wx/web/qiandao/QdUserSignInController.java
+50
-4
No files found.
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/qiandao/QdHomePageServiceImpl.java
View file @
2669276e
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/qiandao/QdUserSignInServiceImpl.java
View file @
2669276e
package
com.wwdz.ch.wx.impl.qiandao
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.wwdz.ch.core.api.wxpay.WxPayServiceApi
;
import
com.wwdz.ch.core.consts.CommConsts
;
import
com.wwdz.ch.core.consts.DisposableSubscribeRecordEnum
;
import
com.wwdz.ch.core.consts.DistributionEnum
;
import
com.wwdz.ch.core.consts.SigninEnum
;
import
com.wwdz.ch.core.consts.qiandao.SignInTaskEnum
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.core.util.IdUtils
;
import
com.wwdz.ch.core.util.OkHttpUtil
;
import
com.wwdz.ch.db.dao.distribution.DistributionOrderDao
;
import
com.wwdz.ch.db.dao.qiandao.
QdUserSignInDao
;
import
com.wwdz.ch.db.d
ao.qiandao.QdUserSignInNoteDao
;
import
com.wwdz.ch.db.d
ao.qiandao.SignInTaskDao
;
import
com.wwdz.ch.db.dao.qiandao.
*
;
import
com.wwdz.ch.db.d
omain.SignInShareImage
;
import
com.wwdz.ch.db.d
omain.User
;
import
com.wwdz.ch.db.domain.distribution.DistributionOrder
;
import
com.wwdz.ch.db.domain.qiandao.QdUser
;
import
com.wwdz.ch.db.domain.qiandao.QdUserSignIn
;
import
com.wwdz.ch.db.domain.qiandao.QdUserSignInNote
;
import
com.wwdz.ch.db.domain.qiandao.SignInTask
;
import
com.wwdz.ch.db.dto.request.qiandao.QdUserSignInRequestDto
;
import
com.wwdz.ch.wx.service.qiandao.QdUserSignInService
;
import
com.xxdxxs.utils.DateUtils
;
import
com.xxdxxs.utils.JsonUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.text.SimpleDateFormat
;
import
java.time.DayOfWeek
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
import
java.time.LocalTime
;
...
...
@@ -30,6 +36,7 @@ import java.time.format.DateTimeFormatter;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.Objects
;
@Service
public
class
QdUserSignInServiceImpl
implements
QdUserSignInService
{
...
...
@@ -51,6 +58,12 @@ public class QdUserSignInServiceImpl implements QdUserSignInService {
@Autowired
QdUserSignInNoteDao
qdUserSignInNoteDao
;
@Autowired
QdUserDao
qdUserDao
;
@Autowired
QdUserSignInTaskDao
qdUserSignInTaskDao
;
@Override
public
Result
check
(
QdUserSignInRequestDto
dto
)
{
...
...
@@ -281,4 +294,61 @@ public class QdUserSignInServiceImpl implements QdUserSignInService {
}
return
Result
.
failed
();
}
@Override
public
Result
getShareInfo
(
QdUserSignInRequestDto
dto
)
{
try
{
long
taskId
=
dto
.
getTaskId
();
LocalDate
today
=
LocalDate
.
now
();
DateTimeFormatter
formatter
=
DateTimeFormatter
.
ofPattern
(
"yyyy-MM"
);
String
formattedDate
=
today
.
format
(
formatter
);
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
String
backgroundImage
=
"https://cdn.wanwudezhi.com/static/web-static/image/78f4b7643dd2d41717d3040665dde669_1472x2616.png"
;
map
.
put
(
"backgroundImage"
,
backgroundImage
);
QdUser
qdUser
=
qdUserDao
.
queryById
(
dto
.
getUserId
());
map
.
put
(
"userName"
,
qdUser
.
getNickName
());
map
.
put
(
"avatar"
,
qdUser
.
getAvatar
());
map
.
put
(
"date"
,
formattedDate
);
map
.
put
(
"day"
,
today
.
getDayOfMonth
());
LocalTime
now
=
LocalTime
.
now
();
DateTimeFormatter
timeFormatter
=
DateTimeFormatter
.
ofPattern
(
"HH:mm"
);
String
formattedTime
=
now
.
format
(
timeFormatter
);
map
.
put
(
"time"
,
formattedTime
);
DayOfWeek
dayOfWeek
=
today
.
getDayOfWeek
();
String
weekDay
=
dayOfWeek
.
getDisplayName
(
java
.
time
.
format
.
TextStyle
.
FULL
,
java
.
util
.
Locale
.
CHINESE
);
map
.
put
(
"weekDay"
,
weekDay
);
QdUserSignIn
qdUserSignIn
=
qdUserSignInDao
.
findLastedRecord
(
dto
.
getUserId
(),
taskId
);
if
(
qdUserSignIn
!=
null
)
{
LocalDate
yesterday
=
today
.
minusDays
(
1
);
DateTimeFormatter
dateFormatter
=
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd"
);
String
yesterdayString
=
yesterday
.
format
(
dateFormatter
);
String
todayStr
=
today
.
format
(
dateFormatter
);
if
(
qdUserSignIn
.
getSignInDate
().
equals
(
yesterdayString
)
||
qdUserSignIn
.
getSignInDate
().
equals
(
todayStr
))
{
map
.
put
(
"consecutiveDays"
,
qdUserSignIn
.
getConsecutiveDays
());
}
else
{
map
.
put
(
"consecutiveDays"
,
0
);
}
}
else
{
map
.
put
(
"consecutiveDays"
,
0
);
}
//查询累计签到天数
long
totalDays
=
qdUserSignInDao
.
countTotalRecord
(
dto
.
getUserId
(),
taskId
);
map
.
put
(
"totalDays"
,
totalDays
);
long
joinPeopleNum
=
qdUserSignInTaskDao
.
countByTaskId
(
taskId
);
map
.
put
(
"joinPeopleNum"
,
joinPeopleNum
);
//查询任务信息
SignInTask
signInTask
=
signInTaskDao
.
findById
(
taskId
);
map
.
put
(
"taskName"
,
signInTask
.
getName
());
map
.
put
(
"taskId"
,
taskId
);
return
Result
.
success
(
map
);
}
catch
(
Exception
e
)
{
logger
.
error
(
"获取分享信息失败 error : {}"
,
e
);
}
return
Result
.
failed
();
}
}
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/qiandao/QdUserSignInService.java
View file @
2669276e
package
com.wwdz.ch.wx.service.qiandao
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.db.dto.request.UserSignInRequestDto
;
import
com.wwdz.ch.db.dto.request.qiandao.QdUserSignInRequestDto
;
public
interface
QdUserSignInService
{
...
...
@@ -34,4 +35,12 @@ public interface QdUserSignInService {
*/
Result
findInfo
(
QdUserSignInRequestDto
dto
);
/**
* 获取分享信息
* @param dto
* @return
*/
Result
getShareInfo
(
QdUserSignInRequestDto
dto
);
}
ch-wx-api/src/main/java/com/wwdz/ch/wx/web/qiandao/QdUserSignInController.java
View file @
2669276e
package
com.wwdz.ch.wx.web.qiandao
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.wwdz.ch.core.consts.ResultCode
;
import
com.wwdz.ch.core.storage.StorageService
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.core.util.ImgUtil
;
import
com.wwdz.ch.core.util.ResponseUtil
;
import
com.wwdz.ch.db.dao.qiandao.QdUserSignInDao
;
import
com.wwdz.ch.db.domain.qiandao.QdUserSignIn
;
import
com.wwdz.ch.db.dto.request.UserSignInRequestDto
;
...
...
@@ -17,10 +21,15 @@ import org.apache.commons.lang3.StringUtils;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.imageio.ImageIO
;
import
java.awt.image.BufferedImage
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.util.HashMap
;
import
java.util.Map
;
@RestController
@RequestMapping
(
"/wx/qdUserSignIn"
)
...
...
@@ -31,6 +40,43 @@ public class QdUserSignInController {
@Autowired
QdUserSignInService
qdUserSignInService
;
@Autowired
StorageService
storageService
;
/**
* 上传文件
*
* @param file
* @return
* @throws IOException
*/
@PostMapping
(
"/upload"
)
@ApiOperation
(
"上传文件"
)
public
Object
upload
(
@RequestParam
(
"file"
)
MultipartFile
file
)
throws
IOException
{
logger
.
info
(
"【请求开始】乾岛上传文件,请求参数,file:{}"
,
file
.
getOriginalFilename
());
String
originalFilename
=
file
.
getOriginalFilename
();
InputStream
targetInput
=
null
;
try
(
InputStream
inputStream
=
file
.
getInputStream
())
{
BufferedImage
image
=
ImageIO
.
read
(
inputStream
);
ImgUtil
.
ImageOrientationWithNameResult
orientationResult
=
ImgUtil
.
getImageFileNameWithWithRepaintInfo
(
file
,
image
,
null
);
if
(
orientationResult
.
getNeedRepaint
())
{
logger
.
info
(
"当前图片需要进行重绘,旋转角度:【{}】"
,
orientationResult
.
getAngel
());
targetInput
=
ImgUtil
.
repaintImage2InputStream
(
image
,
orientationResult
.
getAngel
(),
orientationResult
.
getType
());
}
else
{
targetInput
=
file
.
getInputStream
();
}
}
catch
(
Exception
e
)
{
logger
.
error
(
"get image size failed : "
,
e
);
}
String
url
=
storageService
.
store
(
targetInput
,
file
.
getSize
(),
file
.
getContentType
(),
originalFilename
);
Map
<
String
,
Object
>
data
=
new
HashMap
<>();
data
.
put
(
"url"
,
url
);
logger
.
info
(
"【请求结束】乾岛上传文件,响应结果:{}"
,
JSONObject
.
toJSONString
(
data
));
return
ResponseUtil
.
ok
(
data
);
}
@ApiOperation
(
value
=
"签到前置校验"
)
@PostMapping
(
"/check"
)
...
...
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