记得上下班打卡 | git大法好,push需谨慎
Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
liquidnet-bus-v1
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
董敬伟
liquidnet-bus-v1
Commits
9d3e0109
Commit
9d3e0109
authored
Jul 15, 2022
by
胡佳晨
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev-0712activity' into dev_pre
parents
13110a54
184205ce
Changes
24
Show whitespace changes
Inline
Side-by-side
Showing
24 changed files
with
1107 additions
and
1 deletion
+1107
-1
KylinRedisConst.java
...com/liquidnet/service/kylin/constant/KylinRedisConst.java
+4
-0
KylinAcitveParam.java
...m/liquidnet/service/kylin/dto/param/KylinAcitveParam.java
+73
-0
IKylinArActiveService.java
...iquidnet/service/kylin/service/IKylinArActiveService.java
+16
-0
IKylinAcitveService.java
...dnet/service/kylin/service/admin/IKylinAcitveService.java
+23
-0
IKylinTicketActiveService.java
...ervice/kylin/service/admin/IKylinTicketActiveService.java
+20
-0
LocalAdminController.java
...t/admin/web/controller/zhengzai/LocalAdminController.java
+16
-0
KylinAcitveController.java
.../web/controller/zhengzai/kylin/KylinAcitveController.java
+75
-0
activityList.html
...ates/zhengzai/sweet/performanceActivity/activityList.html
+114
-0
createActivity.html
...es/zhengzai/sweet/performanceActivity/createActivity.html
+110
-0
ticketList.html
...plates/zhengzai/sweet/performanceActivity/ticketList.html
+91
-0
ActiveTicketExportVo.java
...client/admin/zhengzai/kylin/dto/ActiveTicketExportVo.java
+39
-0
KylinAcitveServiceImpl.java
...n/zhengzai/kylin/service/impl/KylinAcitveServiceImpl.java
+87
-0
KylinTicketActiveServiceImpl.java
...gzai/kylin/service/impl/KylinTicketActiveServiceImpl.java
+58
-0
IDGenerator.java
...ain/java/com/liquidnet/commons/lang/util/IDGenerator.java
+26
-0
KylinAcitve.java
...ain/java/com/liquidnet/service/kylin/dao/KylinAcitve.java
+66
-0
KylinTicketActive.java
...va/com/liquidnet/service/kylin/dao/KylinTicketActive.java
+73
-0
KylinAcitveMapper.java
...com/liquidnet/service/kylin/mapper/KylinAcitveMapper.java
+16
-0
KylinTicketActiveMapper.java
...quidnet/service/kylin/mapper/KylinTicketActiveMapper.java
+16
-0
db_kylin_structure.sql
.../liquidnet-service-kylin-impl/docu/db_kylin_structure.sql
+45
-0
KylinArActiveController.java
...net/service/kylin/controller/KylinArActiveController.java
+53
-0
KylinArActiveServiceImpl.java
.../service/kylin/service/impl/KylinArActiveServiceImpl.java
+60
-0
DataUtils.java
...ain/java/com/liquidnet/service/kylin/utils/DataUtils.java
+19
-0
sqlmap.properties
...t-service-kylin-impl/src/main/resources/sqlmap.properties
+3
-1
TestDataUtil.java
...c/test/java/com/liquidnet/service/kylin/TestDataUtil.java
+4
-0
No files found.
liquidnet-bus-api/liquidnet-service-kylin-api/src/main/java/com/liquidnet/service/kylin/constant/KylinRedisConst.java
View file @
9d3e0109
...
@@ -91,4 +91,8 @@ public class KylinRedisConst {
...
@@ -91,4 +91,8 @@ public class KylinRedisConst {
public
static
final
String
REDIS_WQ_ORDER_FIX
=
"kylin:wq:order:"
;
//纪录万青 订单填写快递地址
public
static
final
String
REDIS_WQ_ORDER_FIX
=
"kylin:wq:order:"
;
//纪录万青 订单填写快递地址
public
static
final
String
REDIS_WQ_ORDER_EXPRESS
=
"kylin:wq:pxress:order:"
;
//万青补偿快递vo 订单填写快递地址
public
static
final
String
REDIS_WQ_ORDER_EXPRESS
=
"kylin:wq:pxress:order:"
;
//万青补偿快递vo 订单填写快递地址
public
static
final
String
ACTIVE_TICKET_AR_TICKET
=
"kylin:active:ar:ticket:"
;
//互动券
public
static
final
String
ACTIVE_TICKET_AR_USER
=
"kylin:active:ar:user:"
;
//互动券 绑定的用户
}
}
liquidnet-bus-api/liquidnet-service-kylin-api/src/main/java/com/liquidnet/service/kylin/dto/param/KylinAcitveParam.java
0 → 100644
View file @
9d3e0109
package
com
.
liquidnet
.
service
.
kylin
.
dto
.
param
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
/**
* <p>
*
* </p>
*
* @author liquidnet
* @since 2022-07-12
*/
@Data
@EqualsAndHashCode
(
callSuper
=
false
)
public
class
KylinAcitveParam
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
private
Long
mid
;
/**
* 活动名称
*/
@ApiModelProperty
(
value
=
"活动名称"
)
private
String
activeName
;
/**
* 券的数量
*/
@ApiModelProperty
(
value
=
"券的数量"
)
private
Integer
number
;
/**
* activeId
*/
@ApiModelProperty
(
value
=
"activeId"
)
private
String
activeId
;
/**
* 创建时间
*/
@ApiModelProperty
(
value
=
"创建时间"
)
@JsonFormat
(
shape
=
JsonFormat
.
Shape
.
STRING
,
pattern
=
DateUtil
.
DATE_FULL_STR
)
private
LocalDateTime
createdAt
;
/**
* 修改时间
*/
@ApiModelProperty
(
value
=
"修改时间"
)
@JsonFormat
(
shape
=
JsonFormat
.
Shape
.
STRING
,
pattern
=
DateUtil
.
DATE_FULL_STR
)
private
LocalDateTime
updatedAt
;
/**
* 0未删除1已删除
*/
@ApiModelProperty
(
value
=
"0未删除1已删除"
)
private
Integer
delTag
;
/**
* 演出id
*/
@ApiModelProperty
(
value
=
"演出id"
)
private
String
performanceId
;
}
liquidnet-bus-api/liquidnet-service-kylin-api/src/main/java/com/liquidnet/service/kylin/service/IKylinArActiveService.java
0 → 100644
View file @
9d3e0109
package
com
.
liquidnet
.
service
.
kylin
.
service
;
import
com.liquidnet.service.base.ResponseDto
;
/**
* ar前端接口
*/
public
interface
IKylinArActiveService
{
/**
* 兑换
* @param code
* @param uid
* @return
*/
ResponseDto
exchange
(
String
code
,
String
uid
);
}
liquidnet-bus-api/liquidnet-service-kylin-api/src/main/java/com/liquidnet/service/kylin/service/admin/IKylinAcitveService.java
0 → 100644
View file @
9d3e0109
package
com
.
liquidnet
.
service
.
kylin
.
service
.
admin
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.kylin.dao.KylinAcitve
;
import
java.util.List
;
/**
* <p>
* 服务类
* </p>
*
* @author liquidnet
* @since 2022-07-12
*/
public
interface
IKylinAcitveService
extends
IService
<
KylinAcitve
>
{
boolean
addKylinAcitve
(
KylinAcitve
kylinAcitve
);
List
<
KylinAcitve
>
pageKylinAcitve
(
int
pageSize
,
int
pageNumber
);
}
liquidnet-bus-api/liquidnet-service-kylin-api/src/main/java/com/liquidnet/service/kylin/service/admin/IKylinTicketActiveService.java
0 → 100644
View file @
9d3e0109
package
com
.
liquidnet
.
service
.
kylin
.
service
.
admin
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.liquidnet.service.kylin.dao.KylinTicketActive
;
import
java.util.List
;
/**
* <p>
* 跟活动绑定的券 服务类
* </p>
*
* @author liquidnet
* @since 2022-07-12
*/
public
interface
IKylinTicketActiveService
extends
IService
<
KylinTicketActive
>
{
List
<
KylinTicketActive
>
pageKylinAcitve
(
int
pageSize
,
int
pageNumber
,
String
activeId
);
}
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-web/src/main/java/com/liquidnet/client/admin/web/controller/zhengzai/LocalAdminController.java
View file @
9d3e0109
...
@@ -19,6 +19,7 @@ public class LocalAdminController extends BaseController
...
@@ -19,6 +19,7 @@ public class LocalAdminController extends BaseController
private
final
String
stonePrefix
=
"zhengzai/stone"
;
private
final
String
stonePrefix
=
"zhengzai/stone"
;
private
final
String
storePrefix
=
"zhengzai/store"
;
private
final
String
storePrefix
=
"zhengzai/store"
;
private
final
String
smilePrefix
=
"zhengzai/smile"
;
private
final
String
smilePrefix
=
"zhengzai/smile"
;
private
final
String
activityPrefix
=
"zhengzai/sweet"
;
@Value
(
"${liquidnet.client.admin.platformUrl}"
)
@Value
(
"${liquidnet.client.admin.platformUrl}"
)
private
String
platformUrl
;
private
String
platformUrl
;
...
@@ -184,5 +185,20 @@ public class LocalAdminController extends BaseController
...
@@ -184,5 +185,20 @@ public class LocalAdminController extends BaseController
{
{
return
storePrefix
+
"/homeSet/newRecommended"
;
return
storePrefix
+
"/homeSet/newRecommended"
;
}
}
@GetMapping
(
"/performanceActivity"
)
// 活动关联券部分
public
String
performanceActivity
()
{
return
activityPrefix
+
"/performanceActivity/activityList"
;
}
@GetMapping
(
"/createActivityModal"
)
// 创建活动
public
String
createActivityModal
()
{
return
activityPrefix
+
"/performanceActivity/createActivity"
;
}
@GetMapping
(
"/activityTicketList"
)
// 活动关联券部分
public
String
activityTicketList
()
{
return
activityPrefix
+
"/performanceActivity/ticketList"
;
}
}
}
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-web/src/main/java/com/liquidnet/client/admin/web/controller/zhengzai/kylin/KylinAcitveController.java
0 → 100644
View file @
9d3e0109
package
com
.
liquidnet
.
client
.
admin
.
web
.
controller
.
zhengzai
.
kylin
;
import
com.liquidnet.client.admin.common.core.controller.BaseController
;
import
com.liquidnet.client.admin.common.core.domain.AjaxResult
;
import
com.liquidnet.client.admin.common.core.page.TableDataInfo
;
import
com.liquidnet.client.admin.common.utils.poi.ExcelUtil
;
import
com.liquidnet.client.admin.zhengzai.kylin.dto.ActiveTicketExportVo
;
import
com.liquidnet.client.admin.zhengzai.kylin.service.impl.KylinAcitveServiceImpl
;
import
com.liquidnet.client.admin.zhengzai.kylin.service.impl.KylinTicketActiveServiceImpl
;
import
com.liquidnet.service.kylin.dao.KylinAcitve
;
import
com.liquidnet.service.kylin.dto.param.KylinAcitveParam
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.List
;
/**
* <p>
* 前端控制器 活动有关的
* </p>
* @author zhangfuxin
* @since 2022-07-12
*/
@Api
(
tags
=
"活动和券的接口"
)
@RestController
@RequestMapping
(
"/kylin-acitve"
)
public
class
KylinAcitveController
extends
BaseController
{
@Autowired
private
KylinAcitveServiceImpl
kylinAcitveService
;
@Autowired
private
KylinTicketActiveServiceImpl
kylinTicketActiveService
;
@PostMapping
(
"add"
)
@ApiOperation
(
value
=
"增加活动"
)
@ResponseBody
public
AjaxResult
add
(
@RequestBody
KylinAcitveParam
kylinAcitveParam
)
{
KylinAcitve
kylinAcitve
=
new
KylinAcitve
();
BeanUtils
.
copyProperties
(
kylinAcitveParam
,
kylinAcitve
);
kylinAcitveService
.
addKylinAcitve
(
kylinAcitve
);
return
AjaxResult
.
success
(
"操作成功"
,
""
);
}
@PostMapping
(
"pageActive"
)
@ApiOperation
(
value
=
"分页活动"
)
@ResponseBody
public
TableDataInfo
pageActive
(
@RequestParam
(
name
=
"pageSize"
,
required
=
true
)
int
pageSize
,
@RequestParam
(
name
=
"pageNum"
,
required
=
true
)
int
pageNum
)
{
//return AjaxResult.success(kylinAcitveService.pageKylinAcitve(pageSize,pageNum));
return
getDataTable
(
kylinAcitveService
.
pageKylinAcitve
(
pageSize
,
pageNum
));
}
@PostMapping
(
"pageActiveTicket"
)
@ApiOperation
(
value
=
"分页券"
)
@ResponseBody
public
TableDataInfo
pageActiveTicket
(
@RequestParam
(
name
=
"pageSize"
,
required
=
true
)
int
pageSize
,
@RequestParam
(
name
=
"pageNum"
,
required
=
true
)
int
pageNum
,
@RequestParam
(
name
=
"activeId"
,
required
=
true
)
String
activeId
)
{
//return AjaxResult.success(kylinTicketActiveService.pageKylinAcitve(pageSize,pageNum,activeId));
return
getDataTable
(
kylinTicketActiveService
.
pageKylinAcitve
(
pageSize
,
pageNum
,
activeId
));
}
@PostMapping
(
"exportTicket"
)
@ApiOperation
(
value
=
"导出券"
)
@ResponseBody
public
AjaxResult
exportTicket
(
@RequestParam
(
name
=
"activeId"
,
required
=
true
)
String
activeId
,
@RequestParam
(
name
=
"activeName"
,
required
=
true
)
String
activeName
)
{
List
<
ActiveTicketExportVo
>
list
=
kylinTicketActiveService
.
exportTicket
(
activeId
);
if
(
list
.
size
()>
0
){
ExcelUtil
<
ActiveTicketExportVo
>
util
=
new
ExcelUtil
(
ActiveTicketExportVo
.
class
);
return
util
.
exportExcel
(
list
,
activeName
+
""
);
}
return
error
(
"查无信息!"
);
}
}
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-web/src/main/resources/templates/zhengzai/sweet/performanceActivity/activityList.html
0 → 100644
View file @
9d3e0109
<!DOCTYPE html>
<html
lang=
"zh"
xmlns:th=
"http://www.thymeleaf.org"
xmlns:shiro=
"http://www.pollix.at/thymeleaf/shiro"
>
<head>
<th:block
th:include=
"include :: header('积分明细')"
/>
<style>
body
.layui-layer-btn
{
display
:
none
!important
;
}
</style>
</head>
<body
class=
"gray-bg"
>
<div
class=
"container-div"
>
<div
class=
"row"
>
<!-- <div class="col-sm-12 search-collapse">
<form id="coupon-form">
<div class="select-list">
<ul>
<input type="hidden" name="couType" th:value="${couType}"/>
<li>
<input type="text" name="mobile" placeholder="请输入手机号码"/>
</li>
<li>
状态:
<select name="status" id="">
<option value="0">全部</option>
<option value="1">正常</option>
<option value="2">冻结</option>
</select>
</li>
<li>
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 搜索</a>
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i> 重置</a>
</li>
</ul>
</div>
</form>
</div> -->
<div
class=
"btn-group-sm"
id=
"toolbar"
role=
"group"
>
<a
class=
"btn btn-primary"
onclick=
"exportSelected()"
shiro:hasPermission=
"monitor:job:export"
>
创建活动
</a>
</div>
<div
class=
"col-sm-12 select-table table-striped"
>
<table
id=
"bootstrap-table"
></table>
</div>
</div>
</div>
<th:block
th:include=
"include :: footer"
/>
<script
th:inline=
"javascript"
>
var
prefix
=
ctx
+
"stone/logs"
;
var
prefix2
=
ctx
+
"local"
;
var
couType
=
[[
$
{
couType
}]];
$
(
function
()
{
var
options
=
{
url
:
'/kylin-acitve/pageActive'
,
pagination
:
true
,
modalName
:
"积分"
,
columns
:
[
{
field
:
'activeName'
,
title
:
'活动名称'
},
{
field
:
'number'
,
title
:
'券数量'
},
{
title
:
'操作'
,
// align: 'center',
formatter
:
function
(
value
,
row
,
index
)
{
let
dataArr
=
[];
dataArr
.
push
(
`<span class="btn btn-warning btn-xs" href="javascript:void(0)" onclick="opendTicketList('
${
row
.
activeId
}
')"><i class="fa fa-search"></i>查看券列表</span>`
)
return
dataArr
.
join
(
' '
)
}
}]
};
$
.
table
.
init
(
options
);
});
function
opendTicketList
(
id
)
{
console
.
log
(
id
,
'121212121212activityTicketList'
)
var
url
=
prefix2
+
'/activityTicketList?id='
+
id
;
$
.
modal
.
openTab
(
"活动券列表"
,
url
);
}
function
openModal
(
uid
,
status
,
title
)
{
$
.
modal
.
confirm
(
title
,
function
()
{
let
data
=
{
status
,
uid
}
$
.
ajax
({
type
:
'put'
,
url
:
prefix
+
'/change/status'
,
data
,
success
:
function
(
e
)
{
$
(
"button[name=refresh]"
).
click
();
}
})
});
}
// 导出数据
function
exportSelected
()
{
// console.log(userIds.toString(), 'dataParam')
$
.
modal
.
open
(
'创建活动'
,
prefix2
+
"/createActivityModal"
,
500
,
260
,
cancel
)
}
function
cancel
()
{
console
.
log
(
'确定按钮?'
)
}
</script>
</body>
</html>
\ No newline at end of file
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-web/src/main/resources/templates/zhengzai/sweet/performanceActivity/createActivity.html
0 → 100644
View file @
9d3e0109
<!DOCTYPE html>
<html
lang=
"zh"
xmlns:th=
"http://www.thymeleaf.org"
xmlns:shiro=
"http://www.pollix.at/thymeleaf/shiro"
>
<head>
<th:block
th:include=
"include :: header('创建活动')"
/>
<th:block
th:include=
"include :: bootstrap-fileinput-css"
/>
<style>
.create_activity_box
{
padding
:
20px
;
}
.items
{
/* border: 1px dashed #ccc; */
border-radius
:
10px
;
padding
:
12px
;
margin-bottom
:
10px
;
}
label
{
width
:
80px
;
text-align
:
right
;
}
input
{
width
:
200px
;
height
:
30px
;
}
.footer_btn
{
margin-top
:
20px
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
}
select
{
height
:
30px
;
width
:
200px
;
}
</style>
</head>
<body>
<div
class=
"create_activity_box"
>
<div
class=
"items"
>
<label><span
style=
"color: red;"
>
*
</span>
活动名称:
</label>
<input
type=
"text"
id=
"activityName"
/>
</div>
<!-- <div class="items">
关联演出:
<select name="tagType">
<option value="">全部</option>
<option>1</option>
<option>1</option>
<option>1</option>
<option>1</option>
</select>
</div> -->
<div
class=
"items"
>
<label><span
style=
"color: red;"
>
*
</span>
券数量:
</label>
<input
type=
"text"
id=
"ticketNum"
/>
</div>
<div
class=
"footer_btn"
>
<button
type=
"button"
class=
"btn btn-success"
onclick=
"save()"
>
保存
</button>
</div>
</div>
<th:block
th:include=
"include :: footer"
/>
<th:block
th:include=
"include :: bootstrap-fileinput-js"
/>
<th:block
th:include=
"include :: bootstrap-suggest-js"
/>
<script
th:inline=
"javascript"
>
var
prefix2
=
ctx
+
"local"
;
var
platformUrl
=
[[
$
{
platformUrl
}]];
let
count
=
0
;
let
compilationsId
=
''
;
let
createTime
=
''
;
let
cubeId
=
''
;
let
mid
=
''
;
let
updateTime
=
''
;
function
save
()
{
let
activityName
=
$
(
"#activityName"
).
val
();
let
ticketNum
=
$
(
"#ticketNum"
).
val
();
if
(
!
activityName
||
!
ticketNum
)
{
layer
.
msg
(
'请将表单填写完整!'
)
}
let
data
=
{
"activeId"
:
""
,
"activeName"
:
activityName
,
"delTag"
:
0
,
"mid"
:
0
,
"number"
:
ticketNum
,
"performanceId"
:
""
}
promiseMethods
(
'/kylin-acitve/add'
,
'post'
,
JSON
.
stringify
(
data
),
'application/json'
).
then
((
res
)
=>
{
layer
.
msg
(
"保存成功!"
)
$
(
"#activityName"
).
val
(
''
)
$
(
"#ticketNum"
).
val
(
''
)
$
.
operate
.
successCallback
(
res
);
})
}
function
promiseMethods
(
url
,
type
,
data
,
contentType
)
{
return
new
Promise
((
resolve
,
reject
)
=>
{
$
.
ajax
({
url
,
type
,
data
,
contentType
,
success
:
function
(
res
)
{
resolve
(
res
);
}
})
})
}
</script>
</body>
</html>
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-web/src/main/resources/templates/zhengzai/sweet/performanceActivity/ticketList.html
0 → 100644
View file @
9d3e0109
<!DOCTYPE html>
<html
lang=
"zh"
xmlns:th=
"http://www.thymeleaf.org"
xmlns:shiro=
"http://www.pollix.at/thymeleaf/shiro"
>
<head>
<th:block
th:include=
"include :: header('积分明细')"
/>
<style>
body
.layui-layer-btn
{
display
:
none
!important
;
}
</style>
</head>
<body
class=
"gray-bg"
>
<div
class=
"container-div"
>
<div
class=
"row"
>
<div
class=
"btn-group-sm"
id=
"toolbar"
role=
"group"
>
<a
class=
"btn btn-warning"
onclick=
"exportSelected()"
>
<i
class=
"fa fa-download"
></i>
导出
</a>
</div>
<div
class=
"col-sm-12 select-table table-striped"
>
<table
id=
"bootstrap-table"
></table>
</div>
</div>
</div>
<th:block
th:include=
"include :: footer"
/>
<script
th:inline=
"javascript"
>
var
prefix
=
ctx
+
"stone/logs"
;
var
prefix2
=
ctx
+
"local"
;
var
couType
=
[[
$
{
couType
}]];
let
id
=
''
$
(
function
()
{
var
options
=
{
url
:
'/kylin-acitve/pageActiveTicket'
,
pagination
:
true
,
modalName
:
"积分"
,
queryParams
:
queryParams
,
columns
:
[
{
field
:
'code'
,
title
:
'券码'
},
{
field
:
'state'
,
title
:
'券状态'
,
formatter
:
function
(
value
,
row
)
{
if
(
value
==
1
)
{
return
'未兑换'
}
else
if
(
value
==
2
)
{
return
'已兑换'
}
else
{
return
'已失效'
}
}
},
{
field
:
'redeemAt'
,
title
:
'使用时间'
}]
};
$
.
table
.
init
(
options
);
});
function
queryParams
(
params
)
{
let
name
=
'id'
;
var
reg
=
new
RegExp
(
"(^|&)"
+
name
+
"=([^&]*)(&|$)"
);
var
r
=
window
.
location
.
search
.
substr
(
1
).
match
(
reg
);
id
=
unescape
(
r
[
2
]);
var
search
=
$
.
table
.
queryParams
(
params
);
search
.
activeId
=
id
;
return
search
;
}
function
opendTicketList
(
id
)
{
var
url
=
prefix2
+
'activityTicketList?id='
+
id
;
$
.
modal
.
openTab
(
"活动券列表"
,
url
);
}
// 导出数据
function
exportSelected
()
{
$
.
ajax
({
type
:
'post'
,
url
:
'/kylin-acitve/exportTicket'
,
data
:
{
activeId
:
id
,
activeName
:
'dasdas'
},
success
:
function
(
res
)
{
console
.
log
(
res
,
'????'
)
window
.
location
.
href
=
ctx
+
"common/download?fileName="
+
encodeURI
(
res
.
msg
)
+
"&delete="
+
true
;
}
})
}
</script>
</body>
</html>
\ No newline at end of file
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-zhengzai/src/main/java/com/liquidnet/client/admin/zhengzai/kylin/dto/ActiveTicketExportVo.java
0 → 100644
View file @
9d3e0109
package
com
.
liquidnet
.
client
.
admin
.
zhengzai
.
kylin
.
dto
;
import
com.liquidnet.client.admin.common.annotation.Excel
;
import
lombok.Data
;
import
java.io.Serializable
;
@Data
public
class
ActiveTicketExportVo
implements
Serializable
,
Cloneable
{
@Excel
(
name
=
"券码"
,
cellType
=
Excel
.
ColumnType
.
STRING
)
private
String
code
;
/**
* 兑换码状态 1未兑换 2已兑换 3已失效
*/
@Excel
(
name
=
"兑换码状态"
,
cellType
=
Excel
.
ColumnType
.
STRING
)
private
String
state
;
/**
* 兑换用户id
*/
@Excel
(
name
=
"兑换用户id"
,
cellType
=
Excel
.
ColumnType
.
STRING
)
private
String
redeemUid
;
private
static
final
ActiveTicketExportVo
obj
=
new
ActiveTicketExportVo
();
public
static
ActiveTicketExportVo
getNew
()
{
try
{
return
(
ActiveTicketExportVo
)
obj
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
e
.
printStackTrace
();
}
return
new
ActiveTicketExportVo
();
}
}
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-zhengzai/src/main/java/com/liquidnet/client/admin/zhengzai/kylin/service/impl/KylinAcitveServiceImpl.java
0 → 100644
View file @
9d3e0109
package
com
.
liquidnet
.
client
.
admin
.
zhengzai
.
kylin
.
service
.
impl
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.github.pagehelper.PageHelper
;
import
com.liquidnet.common.cache.redis.util.RedisDataSourceUtil
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.service.kylin.constant.KylinRedisConst
;
import
com.liquidnet.service.kylin.dao.KylinAcitve
;
import
com.liquidnet.service.kylin.dao.KylinTicketActive
;
import
com.liquidnet.service.kylin.mapper.KylinAcitveMapper
;
import
com.liquidnet.service.kylin.mapper.KylinTicketActiveMapper
;
import
com.liquidnet.service.kylin.service.admin.IKylinTicketActiveService
;
import
com.liquidnet.service.kylin.service.admin.IKylinAcitveService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
* <p>
* 服务实现类
* </p>
*
* @author liquidnet
* @since 2022-07-12
*/
@Service
public
class
KylinAcitveServiceImpl
extends
ServiceImpl
<
KylinAcitveMapper
,
KylinAcitve
>
implements
IKylinAcitveService
{
@Autowired
private
KylinAcitveMapper
kylinAcitveMapper
;
@Autowired
private
KylinTicketActiveMapper
kylinTicketActiveMapper
;
@Autowired
private
IKylinTicketActiveService
iKylinTicketActiveService
;
@Autowired
RedisDataSourceUtil
redisDataSourceUtil
;
@Override
@Transactional
public
boolean
addKylinAcitve
(
KylinAcitve
kylinAcitve
)
{
kylinAcitve
.
setActiveId
(
IDGenerator
.
nextSnowId
());
kylinAcitve
.
setCreatedAt
(
LocalDateTime
.
now
());
kylinAcitve
.
setUpdatedAt
(
LocalDateTime
.
now
());
kylinAcitve
.
setDelTag
(
0
);
//保存活动
kylinAcitveMapper
.
insert
(
kylinAcitve
);
//创建券
iKylinTicketActiveService
.
saveBatch
(
getKylinTicketActive
(
kylinAcitve
.
getNumber
(),
kylinAcitve
.
getActiveId
()));
return
true
;
}
@Override
public
List
<
KylinAcitve
>
pageKylinAcitve
(
int
pageSize
,
int
pageNumber
)
{
PageHelper
.
startPage
(
pageNumber
,
pageSize
);
LambdaQueryWrapper
<
KylinAcitve
>
queryWrapper
=
Wrappers
.
lambdaQuery
(
KylinAcitve
.
class
);
List
<
KylinAcitve
>
list
=
kylinAcitveMapper
.
selectList
(
queryWrapper
);
return
list
;
}
public
List
<
KylinTicketActive
>
getKylinTicketActive
(
int
number
,
String
activeId
){
List
<
KylinTicketActive
>
list
=
new
ArrayList
<>();
if
(
number
>
0
){
for
(
int
i
=
0
;
i
<
number
;
i
++){
KylinTicketActive
kylinTicketActive
=
new
KylinTicketActive
();
kylinTicketActive
.
setTicketId
(
IDGenerator
.
nextSnowId
());
kylinTicketActive
.
setActivityId
(
activeId
);
kylinTicketActive
.
setCode
(
IDGenerator
.
createCodeAz
(
3
,
4
,
true
));
kylinTicketActive
.
setState
(
1
);
kylinTicketActive
.
setCreatedAt
(
LocalDateTime
.
now
());
kylinTicketActive
.
setUpdatedAt
(
LocalDateTime
.
now
());
kylinTicketActive
.
setDelTag
(
0
);
list
.
add
(
kylinTicketActive
);
//redis 存
redisDataSourceUtil
.
getRedisKylinUtil
().
set
(
KylinRedisConst
.
ACTIVE_TICKET_AR_TICKET
+
kylinTicketActive
.
getCode
(),
kylinTicketActive
);
}
return
list
;
}
return
null
;
}
}
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-zhengzai/src/main/java/com/liquidnet/client/admin/zhengzai/kylin/service/impl/KylinTicketActiveServiceImpl.java
0 → 100644
View file @
9d3e0109
package
com
.
liquidnet
.
client
.
admin
.
zhengzai
.
kylin
.
service
.
impl
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.github.pagehelper.PageHelper
;
import
com.liquidnet.client.admin.zhengzai.kylin.dto.ActiveTicketExportVo
;
import
com.liquidnet.service.kylin.dao.KylinTicketActive
;
import
com.liquidnet.service.kylin.mapper.KylinTicketActiveMapper
;
import
com.liquidnet.service.kylin.service.admin.IKylinTicketActiveService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
* <p>
* 跟活动绑定的券 服务实现类
* </p>
*
* @author liquidnet
* @since 2022-07-12
*/
@Service
public
class
KylinTicketActiveServiceImpl
extends
ServiceImpl
<
KylinTicketActiveMapper
,
KylinTicketActive
>
implements
IKylinTicketActiveService
{
@Autowired
private
KylinTicketActiveMapper
kylinTicketActiveMapper
;
@Override
public
List
<
KylinTicketActive
>
pageKylinAcitve
(
int
pageSize
,
int
pageNumber
,
String
activeId
)
{
PageHelper
.
startPage
(
pageNumber
,
pageSize
);
LambdaQueryWrapper
<
KylinTicketActive
>
queryWrapper
=
Wrappers
.
lambdaQuery
(
KylinTicketActive
.
class
);
queryWrapper
.
eq
(
KylinTicketActive:
:
getActivityId
,
activeId
);
List
<
KylinTicketActive
>
list
=
kylinTicketActiveMapper
.
selectList
(
queryWrapper
);
return
list
;
}
public
List
<
ActiveTicketExportVo
>
exportTicket
(
String
activeId
)
{
LambdaQueryWrapper
<
KylinTicketActive
>
queryWrapper
=
Wrappers
.
lambdaQuery
(
KylinTicketActive
.
class
);
queryWrapper
.
eq
(
KylinTicketActive:
:
getActivityId
,
activeId
);
List
<
KylinTicketActive
>
list
=
kylinTicketActiveMapper
.
selectList
(
queryWrapper
);
List
<
ActiveTicketExportVo
>
voList
=
new
ArrayList
();
for
(
KylinTicketActive
item
:
list
)
{
ActiveTicketExportVo
activeTicketExportVo
=
ActiveTicketExportVo
.
getNew
();
activeTicketExportVo
.
setCode
(
item
.
getCode
());
activeTicketExportVo
.
setRedeemUid
(
item
.
getRedeemUid
()==
null
?
""
:
item
.
getRedeemUid
());
if
(
item
.
getState
()==
1
){
activeTicketExportVo
.
setState
(
"未兑换"
);
}
else
if
(
item
.
getState
()==
2
){
activeTicketExportVo
.
setState
(
"已兑换"
);
}
else
{
activeTicketExportVo
.
setState
(
"已失效"
);
}
voList
.
add
(
activeTicketExportVo
);
}
return
voList
;
}
}
liquidnet-bus-common/liquidnet-common-base/src/main/java/com/liquidnet/commons/lang/util/IDGenerator.java
View file @
9d3e0109
...
@@ -180,4 +180,30 @@ public class IDGenerator {
...
@@ -180,4 +180,30 @@ public class IDGenerator {
return
str
.
toString
()+
"CH"
;
return
str
.
toString
()+
"CH"
;
}
}
/**
*创建互动兑换券的code
*/
public
static
String
createCodeAz
(
int
num
,
int
sec
,
boolean
bol
)
{
StringBuffer
str
=
new
StringBuffer
();
for
(
int
k
=
0
;
k
<
num
;
k
++)
{
for
(
int
i
=
0
;
i
<
sec
;
i
++){
int
intVal
=(
int
)(
Math
.
random
()*
58
+
65
);
if
(
intVal
>=
91
&&
intVal
<=
122
){
i
--;
}
if
(
intVal
<
91
||
intVal
>
122
){
if
(
intVal
%
2
==
0
){
str
.
append
((
char
)
intVal
);
}
else
{
str
.
append
((
int
)(
Math
.
random
()*
10
));
}
}
}
if
(
bol
){
str
.
append
(
"-"
);
}
}
return
str
.
toString
()+
"AZ"
;
}
}
}
liquidnet-bus-do/liquidnet-service-kylin-do/src/main/java/com/liquidnet/service/kylin/dao/KylinAcitve.java
0 → 100644
View file @
9d3e0109
package
com
.
liquidnet
.
service
.
kylin
.
dao
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
/**
* <p>
*
* </p>
*
* @author liquidnet
* @since 2022-07-12
*/
@Data
@EqualsAndHashCode
(
callSuper
=
false
)
public
class
KylinAcitve
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
@TableId
(
value
=
"mid"
,
type
=
IdType
.
AUTO
)
private
Long
mid
;
/**
* 活动名称
*/
@TableField
(
"activeName"
)
private
String
activeName
;
/**
* 券的数量
*/
private
Integer
number
;
/**
* activeId
*/
private
String
activeId
;
/**
* 创建时间
*/
private
LocalDateTime
createdAt
;
/**
* 修改时间
*/
private
LocalDateTime
updatedAt
;
/**
* 0未删除1已删除
*/
private
Integer
delTag
;
/**
* 演出id
*/
private
String
performanceId
;
}
liquidnet-bus-do/liquidnet-service-kylin-do/src/main/java/com/liquidnet/service/kylin/dao/KylinTicketActive.java
0 → 100644
View file @
9d3e0109
package
com
.
liquidnet
.
service
.
kylin
.
dao
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
java.time.LocalDateTime
;
import
java.io.Serializable
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
/**
* <p>
* 跟活动绑定的券
* </p>
*
* @author liquidnet
* @since 2022-07-12
*/
@Data
@EqualsAndHashCode
(
callSuper
=
false
)
public
class
KylinTicketActive
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
@TableId
(
value
=
"mid"
,
type
=
IdType
.
AUTO
)
private
Long
mid
;
/**
* 票id
*/
private
String
ticketId
;
/**
* 兑换码
*/
private
String
code
;
/**
* 兑换码状态 1未兑换 2已兑换 3已失效
*/
private
Integer
state
;
/**
* 兑换用户id
*/
private
String
redeemUid
;
/**
* 兑换时间
*/
private
LocalDateTime
redeemAt
;
/**
* 活动id
*/
private
String
activityId
;
/**
* 创建时间
*/
private
LocalDateTime
createdAt
;
/**
* 更新时间
*/
private
LocalDateTime
updatedAt
;
/**
* 0未删除1已删除
*/
private
Integer
delTag
;
}
liquidnet-bus-do/liquidnet-service-kylin-do/src/main/java/com/liquidnet/service/kylin/mapper/KylinAcitveMapper.java
0 → 100644
View file @
9d3e0109
package
com
.
liquidnet
.
service
.
kylin
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.liquidnet.service.kylin.dao.KylinAcitve
;
/**
* <p>
* Mapper 接口
* </p>
*
* @author liquidnet
* @since 2022-07-12
*/
public
interface
KylinAcitveMapper
extends
BaseMapper
<
KylinAcitve
>
{
}
liquidnet-bus-do/liquidnet-service-kylin-do/src/main/java/com/liquidnet/service/kylin/mapper/KylinTicketActiveMapper.java
0 → 100644
View file @
9d3e0109
package
com
.
liquidnet
.
service
.
kylin
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.liquidnet.service.kylin.dao.KylinTicketActive
;
/**
* <p>
* 跟活动绑定的券 Mapper 接口
* </p>
*
* @author liquidnet
* @since 2022-07-12
*/
public
interface
KylinTicketActiveMapper
extends
BaseMapper
<
KylinTicketActive
>
{
}
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-impl/docu/db_kylin_structure.sql
View file @
9d3e0109
...
@@ -1000,3 +1000,48 @@ CREATE TABLE `admin_upush`
...
@@ -1000,3 +1000,48 @@ CREATE TABLE `admin_upush`
)
ENGINE
=
InnoDB
)
ENGINE
=
InnoDB
DEFAULT
CHARSET
utf8mb4
DEFAULT
CHARSET
utf8mb4
COLLATE
utf8mb4_unicode_ci
COMMENT
'友盟消息推送'
;
COLLATE
utf8mb4_unicode_ci
COMMENT
'友盟消息推送'
;
DROP
TABLE
IF
EXISTS
`kylin_acitve`
;
CREATE
TABLE
`kylin_acitve`
(
`mid`
bigint
NOT
NULL
AUTO_INCREMENT
,
`activeName`
varchar
(
255
)
COLLATE
utf8mb4_unicode_ci
DEFAULT
NULL
COMMENT
'活动名称'
,
`number`
int
DEFAULT
NULL
COMMENT
'券的数量'
,
`active_id`
varchar
(
64
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
DEFAULT
NULL
COMMENT
'活动id'
,
`created_at`
datetime
DEFAULT
NULL
COMMENT
'创建时间'
,
`updated_at`
datetime
DEFAULT
NULL
COMMENT
'修改时间'
,
`del_tag`
int
DEFAULT
NULL
COMMENT
'0未删除1已删除'
,
`performance_id`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
DEFAULT
NULL
COMMENT
'演出id'
,
PRIMARY
KEY
(
`mid`
)
)
ENGINE
=
InnoDB
AUTO_INCREMENT
=
12
DEFAULT
CHARSET
=
utf8mb4
COLLATE
=
utf8mb4_unicode_ci
COMMENT
=
'活动表'
;
SET
FOREIGN_KEY_CHECKS
=
1
;
DROP
TABLE
IF
EXISTS
`kylin_ticket_active`
;
CREATE
TABLE
`kylin_ticket_active`
(
`mid`
bigint
NOT
NULL
AUTO_INCREMENT
,
`ticket_id`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
DEFAULT
NULL
COMMENT
'票id'
,
`code`
varchar
(
64
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
DEFAULT
NULL
COMMENT
'兑换码'
,
`state`
tinyint
DEFAULT
NULL
COMMENT
'兑换码状态 1未兑换 2已兑换 3已失效'
,
`redeem_uid`
varchar
(
64
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
DEFAULT
NULL
COMMENT
'兑换用户id'
,
`redeem_at`
datetime
DEFAULT
NULL
COMMENT
'兑换时间'
,
`activity_id`
varchar
(
64
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
DEFAULT
NULL
COMMENT
'活动id'
,
`created_at`
datetime
DEFAULT
NULL
COMMENT
'创建时间'
,
`updated_at`
datetime
DEFAULT
NULL
COMMENT
'更新时间'
,
`del_tag`
int
DEFAULT
NULL
COMMENT
'0未删除1已删除'
,
PRIMARY
KEY
(
`mid`
)
)
ENGINE
=
InnoDB
AUTO_INCREMENT
=
1104
DEFAULT
CHARSET
=
utf8mb4
COLLATE
=
utf8mb4_unicode_ci
COMMENT
=
'跟活动绑定的券'
;
SET
FOREIGN_KEY_CHECKS
=
1
;
DROP
TABLE
IF
EXISTS
`kylin_acitve`
;
CREATE
TABLE
`kylin_acitve`
(
`mid`
bigint
NOT
NULL
AUTO_INCREMENT
,
`activeName`
varchar
(
255
)
COLLATE
utf8mb4_unicode_ci
DEFAULT
NULL
COMMENT
'活动名称'
,
`number`
int
DEFAULT
NULL
COMMENT
'券的数量'
,
`active_id`
varchar
(
64
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
DEFAULT
NULL
COMMENT
'活动id'
,
`created_at`
datetime
DEFAULT
NULL
COMMENT
'创建时间'
,
`updated_at`
datetime
DEFAULT
NULL
COMMENT
'修改时间'
,
`del_tag`
int
DEFAULT
NULL
COMMENT
'0未删除1已删除'
,
`performance_id`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_unicode_ci
DEFAULT
NULL
COMMENT
'演出id'
,
PRIMARY
KEY
(
`mid`
)
)
ENGINE
=
InnoDB
AUTO_INCREMENT
=
12
DEFAULT
CHARSET
=
utf8mb4
COLLATE
=
utf8mb4_unicode_ci
COMMENT
=
'活动表'
;
SET
FOREIGN_KEY_CHECKS
=
1
;
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-impl/src/main/java/com/liquidnet/service/kylin/controller/KylinArActiveController.java
0 → 100644
View file @
9d3e0109
package
com
.
liquidnet
.
service
.
kylin
.
controller
;
import
com.liquidnet.commons.lang.util.CurrentUtil
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.kylin.service.impl.KylinArActiveServiceImpl
;
import
com.liquidnet.service.kylin.utils.DataUtils
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
/**
* <p>
* ar活动
* </p>
*
*/
@Api
(
tags
=
"ar活动有关接口"
)
@RestController
@RequestMapping
(
"arActive"
)
@Slf4j
public
class
KylinArActiveController
{
@Autowired
private
KylinArActiveServiceImpl
kylinArActiveService
;
@Autowired
private
DataUtils
dataUtils
;
@PostMapping
(
"getUserStatus"
)
@ApiOperation
(
"查看用户是否绑定(0没有绑定、1绑定了、2失效[目前失效没有用]"
)
public
ResponseDto
<
String
>
getUserStatus
()
{
String
uid
=
CurrentUtil
.
getCurrentUid
();
if
(
null
==
dataUtils
.
getUserStatus
(
uid
)){
return
ResponseDto
.
success
(
"0"
);
}
else
{
return
ResponseDto
.
success
(
dataUtils
.
getUserStatus
(
uid
));
}
}
@PostMapping
(
"exchangeCode"
)
@ApiOperation
(
"兑换码兑换"
)
public
ResponseDto
<
String
>
exchangeCode
(
@RequestParam
(
value
=
"code"
)
String
code
)
{
String
uid
=
CurrentUtil
.
getCurrentUid
();
return
kylinArActiveService
.
exchange
(
code
.
trim
(),
uid
);
}
}
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-impl/src/main/java/com/liquidnet/service/kylin/service/impl/KylinArActiveServiceImpl.java
0 → 100644
View file @
9d3e0109
package
com
.
liquidnet
.
service
.
kylin
.
service
.
impl
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.base.SqlMapping
;
import
com.liquidnet.service.base.constant.MQConst
;
import
com.liquidnet.service.kylin.dao.KylinTicketActive
;
import
com.liquidnet.service.kylin.service.IKylinArActiveService
;
import
com.liquidnet.service.kylin.utils.DataUtils
;
import
com.liquidnet.service.kylin.utils.QueueUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.time.LocalDateTime
;
/**
* <p>
* 人流量检测记录表 服务实现类
* </p>
*
* @author jiangxiulong
* @since 2022-01-10
*/
@Service
public
class
KylinArActiveServiceImpl
implements
IKylinArActiveService
{
@Autowired
private
DataUtils
dataUtils
;
@Autowired
private
QueueUtils
queueUtils
;
@Override
public
ResponseDto
exchange
(
String
code
,
String
uid
)
{
//1 查看是否有兑换码
KylinTicketActive
kylinTicketActive
=
dataUtils
.
getArTicket
(
code
);
if
(
null
==
kylinTicketActive
){
return
ResponseDto
.
failure
(
"请输入正确的激活码"
);
}
//2、查看该用户是否绑定
if
(
null
!=
dataUtils
.
getUserStatus
(
uid
)){
return
ResponseDto
.
failure
(
"该用户已激活"
);
}
//判断是否用过卷了
if
(
kylinTicketActive
.
getState
()==
2
){
return
ResponseDto
.
failure
(
"该激活码已经兑换"
);
}
//开始绑定
//修改redis缓存
dataUtils
.
setUser
(
uid
,
"1"
);
kylinTicketActive
.
setState
(
2
);
dataUtils
.
setArTicket
(
kylinTicketActive
);
//队列 修改券的状态。
queueUtils
.
sendMsgByRedis
(
MQConst
.
KylinQueue
.
SQL_PERFORMANCE_LACK
.
getKey
(),
SqlMapping
.
get
(
"kylin_ar_ticket.update"
,
new
Object
[]{
2
,
uid
,
LocalDateTime
.
now
(),
code
}
));
return
ResponseDto
.
success
();
}
}
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-impl/src/main/java/com/liquidnet/service/kylin/utils/DataUtils.java
View file @
9d3e0109
...
@@ -5,6 +5,7 @@ import com.liquidnet.commons.lang.util.CollectionUtil;
...
@@ -5,6 +5,7 @@ import com.liquidnet.commons.lang.util.CollectionUtil;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.service.kylin.constant.KylinRedisConst
;
import
com.liquidnet.service.kylin.constant.KylinRedisConst
;
import
com.liquidnet.service.kylin.constant.KylinTableStatusConst
;
import
com.liquidnet.service.kylin.constant.KylinTableStatusConst
;
import
com.liquidnet.service.kylin.dao.KylinTicketActive
;
import
com.liquidnet.service.kylin.dto.vo.KylinApiCameraDevicesVo
;
import
com.liquidnet.service.kylin.dto.vo.KylinApiCameraDevicesVo
;
import
com.liquidnet.service.kylin.dto.vo.WqTempVo
;
import
com.liquidnet.service.kylin.dto.vo.WqTempVo
;
import
com.liquidnet.service.kylin.dto.vo.admin.OrderRefundAddress
;
import
com.liquidnet.service.kylin.dto.vo.admin.OrderRefundAddress
;
...
@@ -946,4 +947,22 @@ public class DataUtils {
...
@@ -946,4 +947,22 @@ public class DataUtils {
}
}
}
}
// 获取用户状态
public
String
getUserStatus
(
String
userId
)
{
return
(
String
)
redisUtil
.
get
(
KylinRedisConst
.
ACTIVE_TICKET_AR_USER
+
userId
);
}
//获得 ar券
public
KylinTicketActive
getArTicket
(
String
code
){
return
(
KylinTicketActive
)
redisUtil
.
get
(
KylinRedisConst
.
ACTIVE_TICKET_AR_TICKET
+
code
);
}
//设置 tikcet
public
void
setArTicket
(
KylinTicketActive
kylinTicketActive
){
redisUtil
.
set
(
KylinRedisConst
.
ACTIVE_TICKET_AR_TICKET
+
kylinTicketActive
.
getCode
(),
kylinTicketActive
);
}
//设置用户状态。
public
void
setUser
(
String
userId
,
String
value
){
redisUtil
.
set
(
KylinRedisConst
.
ACTIVE_TICKET_AR_USER
+
userId
,
value
);
}
}
}
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-impl/src/main/resources/sqlmap.properties
View file @
9d3e0109
...
@@ -36,3 +36,5 @@ kylin_perform_sub.insert=INSERT INTO kylin_perform_sub (perform_sub_id,performan
...
@@ -36,3 +36,5 @@ kylin_perform_sub.insert=INSERT INTO kylin_perform_sub (perform_sub_id,performan
# ------------------------ 万青弥补订单 ----------------------------
# ------------------------ 万青弥补订单 ----------------------------
kylin_order_express_ex.insert
=
INSERT INTO kylin_order_express_ex (`order_id`,`express_contacts`,`express_address`,`province`,`city`,`county`,`express_phone`,`created_at`) VALUES (?,?,?,?,?,?,?,?)
kylin_order_express_ex.insert
=
INSERT INTO kylin_order_express_ex (`order_id`,`express_contacts`,`express_address`,`province`,`city`,`county`,`express_phone`,`created_at`) VALUES (?,?,?,?,?,?,?,?)
kylin_order_express_ex.sendMail
=
UPDATE kylin_order_express_ex SET mail_no = ? , updated_at = ? where order_id = ?
kylin_order_express_ex.sendMail
=
UPDATE kylin_order_express_ex SET mail_no = ? , updated_at = ? where order_id = ?
# ------------------------ ar演出队列 ----------------------------
kylin_ar_ticket.update
=
update kylin_ticket_active set state=?,redeem_uid= ?,redeem_at= ? where `code`= ?
\ No newline at end of file
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-impl/src/test/java/com/liquidnet/service/kylin/TestDataUtil.java
View file @
9d3e0109
...
@@ -28,7 +28,11 @@ import java.util.List;
...
@@ -28,7 +28,11 @@ import java.util.List;
public
class
TestDataUtil
{
public
class
TestDataUtil
{
@Autowired
@Autowired
private
DataUtils
dataUtils
;
private
DataUtils
dataUtils
;
@Test
public
void
test
(){
System
.
out
.
println
(
dataUtils
.
getUserStatus
(
"312"
));
}
@Test
@Test
public
void
myPerformancesList
(){
public
void
myPerformancesList
(){
...
...
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