Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
xunj
/
festival-activites
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit 9204c4c4
authored
Jan 26, 2021
by
xunj
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
sha1加密
1 parent
391b0ec2
Show whitespace changes
Inline
Side-by-side
Showing
31 changed files
with
657 additions
and
344 deletions
activity-admin/Dockerfile
activity-admin/pom.xml
activity-admin/src/main/java/com/polysoft/activity/config/SwaggerConfig.java
activity-admin/src/main/java/com/polysoft/activity/config/exception/RRExceptionHandler.java
activity-admin/src/main/java/com/polysoft/activity/controller/CaseController.java
activity-admin/src/main/java/com/polysoft/activity/controller/UserController.java
activity-admin/src/main/java/com/polysoft/activity/controller/WishController.java
activity-admin/src/main/java/com/polysoft/activity/entity/CallResultEntity.java
activity-admin/src/main/java/com/polysoft/activity/mapper/UserInfoMapper.java
activity-admin/src/main/java/com/polysoft/activity/mapper/CaseMapper.java → activity-admin/src/main/java/com/polysoft/activity/mapper/WishMapper.java
activity-admin/src/main/java/com/polysoft/activity/model/dto/AddWishDto.java
activity-admin/src/main/java/com/polysoft/activity/model/param/AddWishParam.java
activity-admin/src/main/java/com/polysoft/activity/model/param/UserInfoParam.java
activity-admin/src/main/java/com/polysoft/activity/model/vo/UserInfoVO.java
activity-admin/src/main/java/com/polysoft/activity/service/CaseTagService.java
activity-admin/src/main/java/com/polysoft/activity/service/UserInfoService.java
activity-admin/src/main/java/com/polysoft/activity/service/WishService.java
activity-admin/src/main/java/com/polysoft/activity/service/impl/CaseTagServiceImpl.java
activity-admin/src/main/java/com/polysoft/activity/service/impl/UserInfoServiceImpl.java
activity-admin/src/main/java/com/polysoft/activity/service/impl/WishServiceImpl.java
activity-admin/src/main/resources/application-prod.yml
activity-admin/src/main/resources/logback-spring.xml
activity-admin/src/main/resources/mapper/CaseMapper.xml
activity-admin/src/main/resources/mapper/UserInfoMapper.xml
activity-admin/src/main/resources/mapper/WishMapper.xml
activity-common/src/main/java/com/polysoft/activity/datasource/config/JsonSerializerConfig.java
activity-admin/src/main/java/com/polysoft/activity/utils/R.java → activity-common/src/main/java/com/polysoft/activity/utils/ApiResult.java
activity-common/src/main/java/com/polysoft/activity/utils/FileUtils.java
activity-common/src/main/java/com/polysoft/activity/utils/SHA1.java
activity-common/src/main/java/com/polysoft/activity/utils/SnowFlakeUtil.java
pom.xml
activity-admin/Dockerfile
View file @
9204c4c
...
...
@@ -2,6 +2,6 @@ FROM java:8
EXPOSE
10301
VOLUME
/tmp
ADD
./target/
outbound
-admin-0.0.1-SNAPSHOT.jar /app.jar
ADD
./target/
activity
-admin-0.0.1-SNAPSHOT.jar /app.jar
RUN
bash -c
'touch /app.jar'
ENTRYPOINT
["java","-jar","/app.jar"]
activity-admin/pom.xml
View file @
9204c4c
...
...
@@ -101,26 +101,6 @@
<artifactId>
spring-boot-starter-validation
</artifactId>
</dependency>
<dependency>
<groupId>
axis
</groupId>
<artifactId>
axis
</artifactId>
<version>
1.4
</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.axis/axis-jaxrpc -->
<dependency>
<groupId>
org.apache.axis
</groupId>
<artifactId>
axis-jaxrpc
</artifactId>
<version>
1.4
</version>
</dependency>
<dependency>
<groupId>
org.projectlombok
</groupId>
<artifactId>
lombok
</artifactId>
<version>
1.16.18
</version>
<scope>
provided
</scope>
</dependency>
</dependencies>
...
...
@@ -133,7 +113,7 @@
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-maven-plugin
</artifactId>
<configuration>
<mainClass>
com.
moxi.outbound
.AdminApplication
</mainClass>
<mainClass>
com.
polysoft.activity
.AdminApplication
</mainClass>
<includeSystemScope>
true
</includeSystemScope>
<jvmArguments>
-Dfile.encoding=UTF-8
</jvmArguments>
</configuration>
...
...
activity-admin/src/main/java/com/polysoft/activity/config/SwaggerConfig.java
View file @
9204c4c
/**
* Copyright (c) 2016-2019 人人开源 All rights reserved.
*
* https://www.renren.io
*
* 版权所有,侵权必究!
*/
package
com
.
polysoft
.
activity
.
config
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
springfox.documentation.builders.ApiInfoBuilder
;
...
...
@@ -19,35 +9,28 @@ import springfox.documentation.spi.DocumentationType;
import
springfox.documentation.spring.web.plugins.Docket
;
import
springfox.documentation.swagger2.annotations.EnableSwagger2
;
/**
* Swagger配置
*
* @author moxi moxi@xi-ai.com
* Created by zengwenjia on 18/3/21.
*/
@Configuration
@EnableSwagger2
public
class
SwaggerConfig
{
public
class
SwaggerConfig
{
@Bean
public
Docket
createRestApi
()
{
return
new
Docket
(
DocumentationType
.
SWAGGER_2
)
.
apiInfo
(
apiInfo
())
return
new
Docket
(
DocumentationType
.
SWAGGER_2
).
apiInfo
(
apiInfo
())
.
select
()
//加了ApiOperation注解的类,生成接口文档
.
apis
(
RequestHandlerSelectors
.
withMethodAnnotation
(
ApiOperation
.
class
))
//包下的类,生成接口文档
//.apis(RequestHandlerSelectors.basePackage("com.moxi.outbound.enity.job.controller"))
.
apis
(
RequestHandlerSelectors
.
basePackage
(
"com.polysoft.activity.controller"
))
.
paths
(
PathSelectors
.
any
())
.
build
();
}
private
ApiInfo
apiInfo
()
{
return
new
ApiInfoBuilder
()
.
title
(
"宝利"
)
.
description
(
"宝利春节活动"
)
.
termsOfServiceUrl
(
"https://www.xi-ai.com"
)
.
version
(
"1.0.0"
)
public
ApiInfo
apiInfo
()
{
return
new
ApiInfoBuilder
().
title
(
"宝利"
)
.
description
(
"宝利"
)
.
version
(
"1.0"
)
.
build
();
}
}
\ No newline at end of file
activity-admin/src/main/java/com/polysoft/activity/config/exception/RRExceptionHandler.java
View file @
9204c4c
package
com
.
polysoft
.
activity
.
config
.
exception
;
import
com.polysoft.activity.common.exception.RRException
;
import
com.polysoft.activity.utils.
R
;
import
com.polysoft.activity.utils.
ApiResult
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.dao.DuplicateKeyException
;
import
org.springframework.validation.BindingResult
;
import
org.springframework.web.bind.MethodArgumentNotValidException
;
import
org.springframework.web.bind.annotation.ExceptionHandler
;
import
org.springframework.web.bind.annotation.ResponseBody
;
import
org.springframework.web.bind.annotation.RestControllerAdvice
;
/**
...
...
@@ -21,8 +24,8 @@ public class RRExceptionHandler {
* 处理自定义异常
*/
@ExceptionHandler
(
RRException
.
class
)
public
R
handleRRException
(
RRException
e
){
R
r
=
new
R
();
public
ApiResult
handleRRException
(
RRException
e
){
ApiResult
r
=
new
ApiResult
();
r
.
put
(
"code"
,
e
.
getCode
());
r
.
put
(
"msg"
,
e
.
getMessage
());
...
...
@@ -30,15 +33,33 @@ public class RRExceptionHandler {
}
@ExceptionHandler
(
DuplicateKeyException
.
class
)
public
R
handleDuplicateKeyException
(
DuplicateKeyException
e
){
public
ApiResult
handleDuplicateKeyException
(
DuplicateKeyException
e
){
logger
.
error
(
e
.
getMessage
(),
e
);
return
R
.
error
(
"数据库中已存在该记录"
);
return
ApiResult
.
error
(
"数据库中已存在该记录"
);
}
@ExceptionHandler
(
Exception
.
class
)
public
R
handleException
(
Exception
e
){
public
ApiResult
handleException
(
Exception
e
){
logger
.
error
(
e
.
getMessage
(),
e
);
return
R
.
error
(
e
);
return
ApiResult
.
error
(
e
);
}
/**
* 参数校验统一处理
* @param e
* @return
*/
@ExceptionHandler
(
MethodArgumentNotValidException
.
class
)
@ResponseBody
public
ApiResult
handlerValidException
(
MethodArgumentNotValidException
e
)
{
BindingResult
bindingResult
=
e
.
getBindingResult
();
String
msg
=
"参数不能为空!"
;
System
.
out
.
println
(
bindingResult
.
getFieldError
());
if
(
bindingResult
.
getFieldError
()
!=
null
){
msg
=
bindingResult
.
getFieldError
().
getDefaultMessage
();
}
logger
.
info
(
"<统一异常处理>请求参数验证失败:{}"
,
msg
);
return
ApiResult
.
error
(
500
,
msg
);
}
}
activity-admin/src/main/java/com/polysoft/activity/controller/CaseController.java
deleted
100644 → 0
View file @
391b0ec
package
com
.
polysoft
.
activity
.
controller
;
import
com.polysoft.activity.service.CaseTagService
;
import
com.polysoft.activity.utils.R
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
@RestController
@RequestMapping
(
"/case"
)
public
class
CaseController
{
@Autowired
private
CaseTagService
caseTagService
;
@GetMapping
(
"/addOrUpdate"
)
@ResponseBody
public
R
addOrUpdateCase
(
String
c
)
{
String
ss
=
caseTagService
.
getSms
();
return
R
.
data
(
ss
);
}
}
activity-admin/src/main/java/com/polysoft/activity/controller/UserController.java
0 → 100644
View file @
9204c4c
package
com
.
polysoft
.
activity
.
controller
;
import
com.polysoft.activity.model.param.UserInfoParam
;
import
com.polysoft.activity.service.UserInfoService
;
import
com.polysoft.activity.utils.ApiResult
;
import
io.swagger.annotations.Api
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
@RestController
@RequestMapping
(
"/user"
)
@Api
(
value
=
"用户"
,
description
=
"用户接口"
)
public
class
UserController
{
@Resource
private
UserInfoService
userInfoService
;
@PostMapping
(
"/queryAuthUser"
)
@ResponseBody
public
ApiResult
queryAuthUser
(
@RequestBody
@Validated
UserInfoParam
param
)
{
return
userInfoService
.
queryAuthUser
(
param
.
getPhone
());
}
}
activity-admin/src/main/java/com/polysoft/activity/controller/WishController.java
0 → 100644
View file @
9204c4c
package
com
.
polysoft
.
activity
.
controller
;
import
com.polysoft.activity.model.param.AddWishParam
;
import
com.polysoft.activity.service.UserInfoService
;
import
com.polysoft.activity.service.WishService
;
import
com.polysoft.activity.utils.ApiResult
;
import
io.swagger.annotations.Api
;
import
org.springframework.validation.annotation.Validated
;
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.ResponseBody
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.annotation.Resource
;
@RestController
@RequestMapping
(
"/wish"
)
@Api
(
value
=
"心愿"
,
description
=
"心愿接口"
)
public
class
WishController
{
@Resource
private
WishService
wishService
;
@PostMapping
(
"/addWish"
)
@ResponseBody
public
ApiResult
addWish
(
@RequestBody
@Validated
AddWishParam
param
)
{
return
wishService
.
addWish
(
param
);
}
}
activity-admin/src/main/java/com/polysoft/activity/entity/CallResultEntity.java
deleted
100644 → 0
View file @
391b0ec
package
com
.
polysoft
.
activity
.
entity
;
import
java.io.Serializable
;
import
java.util.Date
;
public
class
CallResultEntity
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
private
Integer
id
;
//案件id
private
Integer
callCaseId
;
//被叫人姓名
private
String
name
;
//当前拨打伦次
private
Integer
rebotTime
;
//案件金额
private
String
casePrice
;
//借款应还日期
private
Date
returnTime
;
//逾期天数
private
Integer
overdueDays
;
//去电时间
private
Date
callStartTime
;
//结束时间
private
Date
callEndTime
;
//session
private
String
dmSessionId
;
//workspace
private
Integer
dmWorkspaceId
;
//流程id
private
String
intentId
;
//进入意图文本
private
String
intentText
;
//外呼号码
private
String
callNumber
;
//分机号
private
String
extNumber
;
//公司id
private
Integer
companyId
;
//用户id
private
Integer
userId
;
//拨打状态
private
String
callStatus
;
//记录类型
private
String
type
;
private
String
resultId
;
public
Integer
getId
()
{
return
id
;
}
public
void
setId
(
Integer
id
)
{
this
.
id
=
id
;
}
public
Integer
getCallCaseId
()
{
return
callCaseId
;
}
public
void
setCallCaseId
(
Integer
callCaseId
)
{
this
.
callCaseId
=
callCaseId
;
}
public
String
getName
()
{
return
name
;
}
public
void
setName
(
String
name
)
{
this
.
name
=
name
;
}
public
Integer
getRebotTime
()
{
return
rebotTime
;
}
public
void
setRebotTime
(
Integer
rebotTime
)
{
this
.
rebotTime
=
rebotTime
;
}
public
String
getCasePrice
()
{
return
casePrice
;
}
public
void
setCasePrice
(
String
casePrice
)
{
this
.
casePrice
=
casePrice
;
}
public
Date
getReturnTime
()
{
return
returnTime
;
}
public
void
setReturnTime
(
Date
returnTime
)
{
this
.
returnTime
=
returnTime
;
}
public
Integer
getOverdueDays
()
{
return
overdueDays
;
}
public
void
setOverdueDays
(
Integer
overdueDays
)
{
this
.
overdueDays
=
overdueDays
;
}
public
Date
getCallStartTime
()
{
return
callStartTime
;
}
public
void
setCallStartTime
(
Date
callStartTime
)
{
this
.
callStartTime
=
callStartTime
;
}
public
Date
getCallEndTime
()
{
return
callEndTime
;
}
public
void
setCallEndTime
(
Date
callEndTime
)
{
this
.
callEndTime
=
callEndTime
;
}
public
String
getDmSessionId
()
{
return
dmSessionId
;
}
public
void
setDmSessionId
(
String
dmSessionId
)
{
this
.
dmSessionId
=
dmSessionId
;
}
public
Integer
getDmWorkspaceId
()
{
return
dmWorkspaceId
;
}
public
void
setDmWorkspaceId
(
Integer
dmWorkspaceId
)
{
this
.
dmWorkspaceId
=
dmWorkspaceId
;
}
public
String
getIntentId
()
{
return
intentId
;
}
public
void
setIntentId
(
String
intentId
)
{
this
.
intentId
=
intentId
;
}
public
String
getIntentText
()
{
return
intentText
;
}
public
void
setIntentText
(
String
intentText
)
{
this
.
intentText
=
intentText
;
}
public
String
getCallNumber
()
{
return
callNumber
;
}
public
void
setCallNumber
(
String
callNumber
)
{
this
.
callNumber
=
callNumber
;
}
public
String
getExtNumber
()
{
return
extNumber
;
}
public
void
setExtNumber
(
String
extNumber
)
{
this
.
extNumber
=
extNumber
;
}
public
Integer
getCompanyId
()
{
return
companyId
;
}
public
void
setCompanyId
(
Integer
companyId
)
{
this
.
companyId
=
companyId
;
}
public
Integer
getUserId
()
{
return
userId
;
}
public
void
setUserId
(
Integer
userId
)
{
this
.
userId
=
userId
;
}
public
String
getCallStatus
()
{
return
callStatus
;
}
public
void
setCallStatus
(
String
callStatus
)
{
this
.
callStatus
=
callStatus
;
}
public
String
getType
()
{
return
type
;
}
public
void
setType
(
String
type
)
{
this
.
type
=
type
;
}
public
String
getResultId
()
{
return
resultId
;
}
public
void
setResultId
(
String
resultId
)
{
this
.
resultId
=
resultId
;
}
}
activity-admin/src/main/java/com/polysoft/activity/mapper/UserInfoMapper.java
0 → 100644
View file @
9204c4c
package
com
.
polysoft
.
activity
.
mapper
;
import
com.polysoft.activity.model.vo.UserInfoVO
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
@Mapper
public
interface
UserInfoMapper
{
UserInfoVO
queryAuthUser
(
@Param
(
"phone"
)
String
phone
);
}
activity-admin/src/main/java/com/polysoft/activity/mapper/
Case
Mapper.java
→
activity-admin/src/main/java/com/polysoft/activity/mapper/
Wish
Mapper.java
View file @
9204c4c
package
com
.
polysoft
.
activity
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.polysoft.activity.model.dto.AddWishDto
;
import
org.apache.ibatis.annotations.Mapper
;
@Mapper
public
interface
CaseMapper
{
String
getSms
();
public
interface
WishMapper
extends
BaseMapper
<
AddWishDto
>
{
}
activity-admin/src/main/java/com/polysoft/activity/model/dto/AddWishDto.java
0 → 100644
View file @
9204c4c
package
com
.
polysoft
.
activity
.
model
.
dto
;
import
cn.hutool.core.date.DateUtil
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.validation.constraints.NotBlank
;
import
java.util.Date
;
/**
* @author lvyp
* @date 2021/1/26
*/
@Data
public
class
AddWishDto
{
private
Long
wishId
;
@ApiModelProperty
(
"用户主键"
)
@NotBlank
(
message
=
"用户主键不能为空"
)
private
Long
userId
;
@ApiModelProperty
(
"姓名"
)
@NotBlank
(
message
=
"姓名不能为空"
)
private
String
userName
;
@ApiModelProperty
(
"城市地址"
)
@NotBlank
(
message
=
"城市地址不能为空"
)
private
String
address
;
@ApiModelProperty
(
"心愿语录内容"
)
@NotBlank
(
message
=
"心愿语录内容不能为空"
)
private
String
wishContext
;
@ApiModelProperty
(
"用户主键"
)
private
int
prizeFalg
=
0
;
@ApiModelProperty
(
"创建日期"
)
private
String
createTime
;
@ApiModelProperty
(
"发布日期 示例:2020-01-21"
)
private
String
pushDate
;
@ApiModelProperty
(
"0 未删除 1 已删除"
)
private
int
deleteFalg
=
0
;
public
void
setCreateTime
(
Date
date
)
{
this
.
createTime
=
DateUtil
.
format
(
new
Date
(),
"yyyy-MM-dd HH:mm:ss"
);
}
public
void
setPushDate
(
Date
date
)
{
this
.
pushDate
=
DateUtil
.
format
(
new
Date
(),
"yyyy-MM-dd"
);;
}
}
activity-admin/src/main/java/com/polysoft/activity/model/param/AddWishParam.java
0 → 100644
View file @
9204c4c
package
com
.
polysoft
.
activity
.
model
.
param
;
import
cn.hutool.core.date.DateUtil
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.validation.constraints.NotBlank
;
import
java.util.Date
;
/**
* @author lvyp
* @date 2021/1/26
*/
@Data
public
class
AddWishParam
{
private
Long
wishId
;
@ApiModelProperty
(
"用户主键"
)
@NotBlank
(
message
=
"用户主键不能为空"
)
private
Long
userId
;
@ApiModelProperty
(
"姓名"
)
@NotBlank
(
message
=
"姓名不能为空"
)
private
String
userName
;
@ApiModelProperty
(
"城市地址"
)
@NotBlank
(
message
=
"城市地址不能为空"
)
private
String
address
;
@ApiModelProperty
(
"心愿语录内容"
)
@NotBlank
(
message
=
"心愿语录内容不能为空"
)
private
String
wishContext
;
@ApiModelProperty
(
"0 未中奖 1 中奖"
)
private
int
prizeFalg
=
0
;
}
activity-admin/src/main/java/com/polysoft/activity/model/param/UserInfoParam.java
0 → 100644
View file @
9204c4c
package
com
.
polysoft
.
activity
.
model
.
param
;
import
com.polysoft.activity.common.utils.PageQuery
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.validation.constraints.NotBlank
;
import
java.io.Serializable
;
@ApiModel
(
"用户信息类"
)
@Data
public
class
UserInfoParam
extends
PageQuery
{
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
"手机号"
)
@NotBlank
(
message
=
"手机号不能为空"
)
private
String
phone
;
}
activity-admin/src/main/java/com/polysoft/activity/model/vo/UserInfoVO.java
0 → 100644
View file @
9204c4c
package
com
.
polysoft
.
activity
.
model
.
vo
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.io.Serializable
;
@ApiModel
(
"用户信息类"
)
@Data
public
class
UserInfoVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
"用户主键"
)
private
Long
userId
;
@ApiModelProperty
(
"用户名"
)
private
String
userName
;
@ApiModelProperty
(
"用户名"
)
private
String
phone
;
@ApiModelProperty
(
"用户名"
)
private
double
redBalance
;
}
activity-admin/src/main/java/com/polysoft/activity/service/CaseTagService.java
deleted
100644 → 0
View file @
391b0ec
package
com
.
polysoft
.
activity
.
service
;
public
interface
CaseTagService
{
String
getSms
();
}
activity-admin/src/main/java/com/polysoft/activity/service/UserInfoService.java
0 → 100644
View file @
9204c4c
package
com
.
polysoft
.
activity
.
service
;
import
com.polysoft.activity.utils.ApiResult
;
public
interface
UserInfoService
{
ApiResult
queryAuthUser
(
String
phone
);
}
activity-admin/src/main/java/com/polysoft/activity/service/WishService.java
0 → 100644
View file @
9204c4c
package
com
.
polysoft
.
activity
.
service
;
import
com.polysoft.activity.model.dto.AddWishDto
;
import
com.polysoft.activity.model.param.AddWishParam
;
import
com.polysoft.activity.utils.ApiResult
;
public
interface
WishService
{
ApiResult
addWish
(
AddWishParam
param
);
}
activity-admin/src/main/java/com/polysoft/activity/service/impl/CaseTagServiceImpl.java
deleted
100644 → 0
View file @
391b0ec
package
com
.
polysoft
.
activity
.
service
.
impl
;
import
com.polysoft.activity.mapper.CaseMapper
;
import
com.polysoft.activity.service.CaseTagService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
@Service
public
class
CaseTagServiceImpl
implements
CaseTagService
{
@Autowired
private
CaseMapper
mapper
;
@Override
public
String
getSms
()
{
return
mapper
.
getSms
();
}
}
activity-admin/src/main/java/com/polysoft/activity/service/impl/UserInfoServiceImpl.java
0 → 100644
View file @
9204c4c
package
com
.
polysoft
.
activity
.
service
.
impl
;
import
com.polysoft.activity.mapper.UserInfoMapper
;
import
com.polysoft.activity.model.vo.UserInfoVO
;
import
com.polysoft.activity.service.UserInfoService
;
import
com.polysoft.activity.utils.ApiResult
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
@Service
public
class
UserInfoServiceImpl
implements
UserInfoService
{
@Resource
private
UserInfoMapper
mapper
;
@Override
public
ApiResult
queryAuthUser
(
String
phone
)
{
UserInfoVO
user
=
mapper
.
queryAuthUser
(
phone
);
if
(
user
==
null
){
return
ApiResult
.
error
(
500
,
"【很抱歉,您非宝利成员无法领取红包】"
);
}
return
ApiResult
.
ok
(
user
);
}
}
activity-admin/src/main/java/com/polysoft/activity/service/impl/WishServiceImpl.java
0 → 100644
View file @
9204c4c
package
com
.
polysoft
.
activity
.
service
.
impl
;
import
com.polysoft.activity.common.utils.BeanTransferUtils
;
import
com.polysoft.activity.mapper.WishMapper
;
import
com.polysoft.activity.model.dto.AddWishDto
;
import
com.polysoft.activity.model.param.AddWishParam
;
import
com.polysoft.activity.service.WishService
;
import
com.polysoft.activity.utils.ApiResult
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
import
java.util.Date
;
@Service
public
class
WishServiceImpl
implements
WishService
{
@Resource
private
WishMapper
mapper
;
@Override
public
ApiResult
addWish
(
AddWishParam
param
)
{
AddWishDto
dto
=
BeanTransferUtils
.
transfer
(
param
,
AddWishDto
.
class
);
dto
.
setCreateTime
(
new
Date
());
dto
.
setPushDate
(
new
Date
());
int
i
=
mapper
.
insert
(
dto
);
try
{
if
(
i
>
0
){
return
ApiResult
.
ok
(
"心愿发布成功"
);
}
else
{
return
ApiResult
.
error
(
"心愿发布失败"
);
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
return
ApiResult
.
error
();
}
}
}
activity-admin/src/main/resources/application-prod.yml
View file @
9204c4c
...
...
@@ -3,16 +3,17 @@ server:
session
:
cookie
:
http-only
:
false
context-path
:
/api
tomcat
:
uri-encoding
:
UTF-8
max-threads
:
1000
min-spare-threads
:
30
port
:
10301
port
:
21000
spring
:
datasource
:
druid
:
password
:
Moxi123#
url
:
jdbc:mysql://114.112.96.30:30029/
voice_quality_feichexian
?useUnicode=true&characterEncoding=UTF8&useSSL=false
url
:
jdbc:mysql://114.112.96.30:30029/
spring_activity
?useUnicode=true&characterEncoding=UTF8&useSSL=false
username
:
root
type
:
com.alibaba.druid.pool.DruidDataSource
driver-class-name
:
com.mysql.cj.jdbc.Driver
...
...
@@ -28,7 +29,7 @@ spring:
mybatis-plus
:
mapper-locations
:
classpath:/mapper/**/*.xml
#实体扫描,多个package用逗号或者分号分隔
typeAliasesPackage
:
com.
moxi.outbound.enity.*.entity
typeAliasesPackage
:
com.
polysoft.activity.*.vo
global-config
:
#数据库相关配置
db-config
:
...
...
activity-admin/src/main/resources/logback-spring.xml
View file @
9204c4c
...
...
@@ -175,15 +175,15 @@
<!--开发环境:打印控制台-->
<springProfile
name=
"dev"
>
<logger
name=
"com.
moxi
"
level=
"debug"
>
<logger
name=
"com.
polysoft
"
level=
"debug"
>
</logger>
</springProfile>
<springProfile
name=
"prod"
>
<logger
name=
"com.
moxi
"
level=
"debug"
>
<logger
name=
"com.
polysoft
"
level=
"debug"
>
</logger>
</springProfile>
<springProfile
name=
"dev"
>
<logger
name=
"com.
moxi
"
level=
"debug"
>
<logger
name=
"com.
polysoft
"
level=
"debug"
>
</logger>
</springProfile>
<root
level=
"debug"
>
...
...
activity-admin/src/main/resources/mapper/CaseMapper.xml
deleted
100644 → 0
View file @
391b0ec
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.polysoft.activity.mapper.CaseMapper"
>
<select
id=
"getSms"
resultType=
"java.lang.String"
>
select seat_code from t_seat_info limit 1
</select>
</mapper>
activity-admin/src/main/resources/mapper/UserInfoMapper.xml
0 → 100644
View file @
9204c4c
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.polysoft.activity.mapper.UserInfoMapper"
>
<select
id=
"queryAuthUser"
resultType=
"com.polysoft.activity.model.vo.UserInfoVO"
>
select
user_id ,
user_name,
red_balance,
phone
from
t_user where phone=#{phone}
</select>
</mapper>
activity-admin/src/main/resources/mapper/WishMapper.xml
0 → 100644
View file @
9204c4c
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.polysoft.activity.mapper.WishMapper"
>
<!--<insert id="addWish" parameterType="com.polysoft.activity.model.dto.AddWishDto">
insert into t_wish (
wish_id,
user_id,
user_name,
address,
wish_context,
prize_falg,
create_time,
push_date,
delete_falg
)VALUES (
#{wishId},
#{wishId},
#{wishId},
#{wishId},
#{wishId},
#{wishId},
#{wishId},
#{wishId},
)
</insert>-->
</mapper>
activity-common/src/main/java/com/polysoft/activity/datasource/config/JsonSerializerConfig.java
0 → 100644
View file @
9204c4c
package
com
.
polysoft
.
activity
.
datasource
.
config
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.fasterxml.jackson.databind.module.SimpleModule
;
import
com.fasterxml.jackson.databind.ser.std.ToStringSerializer
;
import
org.springframework.boot.jackson.JsonComponent
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.http.converter.json.Jackson2ObjectMapperBuilder
;
import
javax.annotation.PostConstruct
;
import
java.util.TimeZone
;
@JsonComponent
public
class
JsonSerializerConfig
{
@Bean
public
ObjectMapper
jacksonObjectMapper
(
Jackson2ObjectMapperBuilder
builder
)
{
ObjectMapper
objectMapper
=
builder
.
createXmlMapper
(
false
).
build
();
objectMapper
.
setSerializationInclusion
(
JsonInclude
.
Include
.
ALWAYS
);
SimpleModule
module
=
new
SimpleModule
();
module
.
addSerializer
(
Long
.
class
,
ToStringSerializer
.
instance
);
module
.
addSerializer
(
Long
.
TYPE
,
ToStringSerializer
.
instance
);
objectMapper
.
registerModule
(
module
);
return
objectMapper
;
}
@PostConstruct
public
void
loadTimeZone
()
{
TimeZone
.
setDefault
(
TimeZone
.
getTimeZone
(
"GMT+8"
));
}
}
activity-
admin/src/main/java/com/polysoft/activity/utils/R
.java
→
activity-
common/src/main/java/com/polysoft/activity/utils/ApiResult
.java
View file @
9204c4c
...
...
@@ -16,55 +16,60 @@ import java.util.Map;
*
* @author moxi moxi@xi-ai.com
*/
public
class
R
extends
HashMap
<
String
,
Object
>
{
public
class
ApiResult
extends
HashMap
<
String
,
Object
>
{
private
static
final
long
serialVersionUID
=
1L
;
public
R
()
{
public
ApiResult
()
{
put
(
"code"
,
200
);
put
(
"msg"
,
"success"
);
}
public
static
R
error
(
Exception
e
)
{
public
static
ApiResult
error
(
Exception
e
)
{
return
error
(
500
,
e
.
getMessage
());
}
public
static
R
error
()
{
public
static
ApiResult
error
()
{
return
error
(
500
,
"未知异常,请联系管理员"
);
}
public
static
R
error
(
String
msg
)
{
public
static
ApiResult
error
(
String
msg
)
{
return
error
(
500
,
msg
);
}
public
static
R
error
(
int
code
,
String
msg
)
{
R
r
=
new
R
();
public
static
ApiResult
error
(
int
code
,
String
msg
)
{
ApiResult
r
=
new
ApiResult
();
r
.
put
(
"code"
,
code
);
r
.
put
(
"msg"
,
msg
);
return
r
;
}
public
static
R
ok
(
String
msg
)
{
R
r
=
new
R
();
public
static
ApiResult
ok
(
String
msg
)
{
ApiResult
r
=
new
ApiResult
();
r
.
put
(
"msg"
,
msg
);
return
r
;
}
public
static
R
ok
(
Map
<
String
,
Object
>
map
)
{
R
r
=
new
R
();
public
static
ApiResult
ok
(
Map
<
String
,
Object
>
map
)
{
ApiResult
r
=
new
ApiResult
();
r
.
putAll
(
map
);
return
r
;
}
public
static
R
data
(
Object
data
)
{
R
r
=
R
.
ok
();
public
static
ApiResult
data
(
Object
data
)
{
ApiResult
r
=
ApiResult
.
ok
();
r
.
put
(
"data"
,
data
);
return
r
;
}
public
static
ApiResult
ok
(
Object
data
)
{
ApiResult
r
=
ApiResult
.
ok
();
r
.
put
(
"data"
,
data
);
return
r
;
}
public
static
R
ok
()
{
return
new
R
();
public
static
ApiResult
ok
()
{
return
new
ApiResult
();
}
@Override
public
R
put
(
String
key
,
Object
value
)
{
public
ApiResult
put
(
String
key
,
Object
value
)
{
super
.
put
(
key
,
value
);
return
this
;
}
...
...
activity-common/src/main/java/com/polysoft/activity/utils/FileUtils.java
0 → 100644
View file @
9204c4c
package
com
.
polysoft
.
activity
.
utils
;
import
cn.hutool.core.util.IdUtil
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.codec.digest.DigestUtils
;
import
org.springframework.stereotype.Component
;
import
org.springframework.web.multipart.MultipartFile
;
import
java.io.*
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.UUID
;
/**
* @Description: 上传工具类
* @Author: 吕远征
* @CreateDate: 2020/8/12 15:27
* @Email: 344302421@qq.com
* @Version: v1.0.1
*/
@Slf4j
@Component
public
class
FileUtils
{
private
static
String
uploadpath
;
public
static
ApiResult
upload
(
MultipartFile
file
,
String
fileType
,
Long
wishId
)
{
if
(
file
.
isEmpty
())
{
return
ApiResult
.
error
();
}
String
fileName
=
file
.
getOriginalFilename
();
String
uuid
=
IdUtil
.
simpleUUID
();
String
date
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
).
format
(
new
Date
());
File
dest
=
null
;
try
{
String
path
=
uploadpath
+
fileType
+
File
.
separator
+
date
+
File
.
separator
+
uuid
+
fileName
;
dest
=
new
File
(
path
);
if
(!
dest
.
getParentFile
().
exists
())
{
dest
.
getParentFile
().
mkdirs
();
}
file
.
transferTo
(
dest
);
log
.
info
(
"上传成功"
);
return
ApiResult
.
ok
();
}
catch
(
Exception
e
){
e
.
printStackTrace
();
return
ApiResult
.
error
();
}
}
public
static
void
main
(
String
[]
args
)
{
//1:获取access_token
//请求地址:https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
//2:通过access_token 获取车票
//请求地址:https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=ACCESS_TOKEN&type=jsapi
//3:拿着车票上车,请求分享接口
String
appId
=
"wx747674121d6fd50a"
;
String
jsapi_ticket
=
"41_B_mOhQbJYcSwKo3RyjXmsmKGHHlaav-8QasIYhl1KkX-tZYQd6cBbXP10xf-3hfBzZSXbLQPN7Pc9ug_TPRYexLsEK9Md_A4rHYSXg-JyqegcuiyL5w5oyG-ylOschhT0Ij6jE8mA6F4w-q7GLDcCBAOTL"
;
String
noncestr
=
UUID
.
randomUUID
().
toString
().
replaceAll
(
"-"
,
""
);
Long
timestamp
=
System
.
currentTimeMillis
()/
1000
;
String
signStr
=
"jsapi_ticket"
+
jsapi_ticket
+
"&noncestr"
+
noncestr
+
"×tamp"
+
timestamp
;
//Sha1加密,生成签名
String
sign
=
SHA1
.
encode
(
signStr
);
System
.
out
.
println
(
sign
);
}
}
activity-common/src/main/java/com/polysoft/activity/utils/SHA1.java
0 → 100644
View file @
9204c4c
package
com
.
polysoft
.
activity
.
utils
;
import
java.security.MessageDigest
;
/**
* @author lvyp
* @date 2021/1/26
*/
public
class
SHA1
{
private
static
final
char
[]
HEX_DIGITS
=
{
'0'
,
'1'
,
'2'
,
'3'
,
'4'
,
'5'
,
'6'
,
'7'
,
'8'
,
'9'
,
'a'
,
'b'
,
'c'
,
'd'
,
'e'
,
'f'
};
private
static
String
getFormattedText
(
byte
[]
bytes
)
{
int
len
=
bytes
.
length
;
StringBuilder
buf
=
new
StringBuilder
(
len
*
2
);
// 把密文转换成十六进制的字符串形式
for
(
int
j
=
0
;
j
<
len
;
j
++)
{
buf
.
append
(
HEX_DIGITS
[(
bytes
[
j
]
>>
4
)
&
0x0f
]);
buf
.
append
(
HEX_DIGITS
[
bytes
[
j
]
&
0x0f
]);
}
return
buf
.
toString
();
}
public
static
String
encode
(
String
str
)
{
if
(
str
==
null
)
{
return
null
;
}
try
{
MessageDigest
messageDigest
=
MessageDigest
.
getInstance
(
"SHA1"
);
messageDigest
.
update
(
str
.
getBytes
());
return
getFormattedText
(
messageDigest
.
digest
());
}
catch
(
Exception
e
)
{
throw
new
RuntimeException
(
e
);
}
}
}
activity-common/src/main/java/com/polysoft/activity/utils/SnowFlakeUtil.java
0 → 100644
View file @
9204c4c
package
com
.
polysoft
.
activity
.
utils
;
import
java.lang.management.ManagementFactory
;
import
java.lang.management.RuntimeMXBean
;
import
java.net.NetworkInterface
;
import
java.net.SocketException
;
import
java.util.Enumeration
;
/**
* @description: 雪花算法
* @author: DINGZIYAO
* @date: 2020/9/14 13:59
* @version: v1.0
*/
public
class
SnowFlakeUtil
{
private
final
static
long
TWEPOCH
=
12888349746579L
;
// 机器标识位数
private
final
static
long
WORKER_ID_BITS
=
5L
;
// 数据中心标识位数
private
final
static
long
DATACENTER_ID_BITS
=
5L
;
// 毫秒内自增位数
private
final
static
long
SEQUENCE_BITS
=
12L
;
// 机器ID偏左移12位
private
final
static
long
WORKER_ID_SHIFT
=
SEQUENCE_BITS
;
// 数据中心ID左移17位
private
final
static
long
DATACENTER_ID_SHIFT
=
SEQUENCE_BITS
+
WORKER_ID_BITS
;
// 时间毫秒左移22位
private
final
static
long
TIMESTAMP_LEFT_SHIFT
=
SEQUENCE_BITS
+
WORKER_ID_BITS
+
DATACENTER_ID_BITS
;
//sequence掩码,确保sequnce不会超出上限
private
final
static
long
SEQUENCE_MASK
=
~(-
1L
<<
SEQUENCE_BITS
);
//上次时间戳
private
static
long
lastTimestamp
=
-
1L
;
//序列
private
long
sequence
=
0L
;
//服务器ID
private
long
workerId
=
1L
;
private
static
final
long
WORKER_MASK
=
~(-
1L
<<
WORKER_ID_BITS
);
//进程编码
private
long
processId
=
1L
;
private
static
final
long
PROCESS_MASK
=
~(-
1L
<<
DATACENTER_ID_BITS
);
private
static
SnowFlakeUtil
snowFlake
=
null
;
static
{
snowFlake
=
new
SnowFlakeUtil
();
}
public
static
synchronized
long
nextId
(){
return
snowFlake
.
getNextId
();
}
private
SnowFlakeUtil
()
{
//获取机器编码
this
.
workerId
=
this
.
getMachineNum
();
//获取进程编码
RuntimeMXBean
runtimeMXBean
=
ManagementFactory
.
getRuntimeMXBean
();
this
.
processId
=
Long
.
parseLong
(
runtimeMXBean
.
getName
().
split
(
"@"
)[
0
]);
//避免编码超出最大值
this
.
workerId
=
workerId
&
WORKER_MASK
;
this
.
processId
=
processId
&
PROCESS_MASK
;
}
public
synchronized
long
getNextId
()
{
//获取时间戳
long
timestamp
=
timeGen
();
//如果时间戳小于上次时间戳则报错
if
(
timestamp
<
lastTimestamp
)
{
try
{
throw
new
Exception
(
"Clock moved backwards. Refusing to generate id for "
+
(
lastTimestamp
-
timestamp
)
+
" milliseconds"
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
}
//如果时间戳与上次时间戳相同
if
(
lastTimestamp
==
timestamp
)
{
// 当前毫秒内,则+1,与sequenceMask确保sequence不会超出上限
sequence
=
(
sequence
+
1
)
&
SEQUENCE_MASK
;
if
(
sequence
==
0
)
{
// 当前毫秒内计数满了,则等待下一秒
timestamp
=
tilNextMillis
(
lastTimestamp
);
}
}
else
{
sequence
=
0
;
}
lastTimestamp
=
timestamp
;
// ID偏移组合生成最终的ID,并返回ID
long
nextId
=
((
timestamp
-
TWEPOCH
)
<<
TIMESTAMP_LEFT_SHIFT
)
|
(
processId
<<
DATACENTER_ID_SHIFT
)
|
(
workerId
<<
WORKER_ID_SHIFT
)
|
sequence
;
return
nextId
;
}
/**
* 再次获取时间戳直到获取的时间戳与现有的不同
* @param lastTimestamp
* @return 下一个时间戳
*/
private
long
tilNextMillis
(
final
long
lastTimestamp
)
{
long
timestamp
=
this
.
timeGen
();
while
(
timestamp
<=
lastTimestamp
)
{
timestamp
=
this
.
timeGen
();
}
return
timestamp
;
}
private
long
timeGen
()
{
return
System
.
currentTimeMillis
();
}
/**
* 获取机器编码
* @return
*/
private
long
getMachineNum
(){
long
machinePiece
;
StringBuilder
sb
=
new
StringBuilder
();
Enumeration
<
NetworkInterface
>
e
=
null
;
try
{
e
=
NetworkInterface
.
getNetworkInterfaces
();
}
catch
(
SocketException
e1
)
{
e1
.
printStackTrace
();
}
while
(
e
.
hasMoreElements
())
{
NetworkInterface
ni
=
e
.
nextElement
();
sb
.
append
(
ni
.
toString
());
}
machinePiece
=
sb
.
toString
().
hashCode
();
return
machinePiece
;
}
public
static
void
main
(
String
[]
args
)
{
System
.
out
.
println
(
SnowFlakeUtil
.
nextId
());
}
}
pom.xml
View file @
9204c4c
...
...
@@ -12,7 +12,7 @@
</modules>
<packaging>
pom
</packaging>
<name>
outbound
</name>
<name>
activity
</name>
<description>
Demo project for Spring Boot
</description>
<parent>
...
...
@@ -136,6 +136,12 @@
<version>
3.0.4
</version>
<type>
pom
</type>
</dependency>
<dependency>
<groupId>
org.projectlombok
</groupId>
<artifactId>
lombok
</artifactId>
<version>
1.16.18
</version>
<scope>
provided
</scope>
</dependency>
</dependencies>
...
...
Write
Preview
Markdown
is supported
Attach a file
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 post a comment