记得上下班打卡 | git大法好,push需谨慎

Commit 470448a7 authored by jiangxiulong's avatar jiangxiulong

Merge remote-tracking branch 'origin/new_member' into new_member

parents d9f7ffc1 831616ff
package com.liquidnet.service.adam.dto.admin; package com.liquidnet.service.adam.dto.admin;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.Max; import javax.validation.constraints.Max;
...@@ -10,22 +8,17 @@ import javax.validation.constraints.NotBlank; ...@@ -10,22 +8,17 @@ import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import java.io.Serializable; import java.io.Serializable;
@ApiModel(value = "AdamMemberCodeListParam", description = "会员码列表入参")
@Data @Data
public class AdamMemberCodeGenParam implements Serializable { public class AdamMemberCodeGenParam implements Serializable {
private static final long serialVersionUID = 7212595876649709617L; private static final long serialVersionUID = 7212595876649709617L;
@NotBlank(message = "会员类型ID不能为空") @NotBlank(message = "会员类型ID不能为空")
@ApiModelProperty(required = true, value = "会员类型ID[64]", example = "1")
private String memberId; private String memberId;
@NotBlank(message = "会员价格ID不能为空") @NotBlank(message = "会员价格ID不能为空")
@ApiModelProperty(required = true, value = "会员价格ID[64]", example = "1")
private String memberPriceId; private String memberPriceId;
@NotNull(message = "有效期不能为空")
@ApiModelProperty(required = true, value = "有效期", example = "30")
private Integer validity;
@NotNull(message = "生成数量不能为空") @NotNull(message = "生成数量不能为空")
@Min(1) @Min(1)
@Max(100) @Max(100)
@ApiModelProperty(required = true, value = "生成数量[1-100]", example = "1")
private Integer genNum; private Integer genNum;
@NotBlank(message = "备注描述不能为空")
private String detail;
} }
package com.liquidnet.service.adam.dto.admin; package com.liquidnet.service.adam.dto.admin;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
@ApiModel(value = "AdamMemberCodeListParam", description = "会员码列表入参") //@ApiModel(value = "AdamMemberCodeListParam", description = "会员码列表入参")
@Data @Data
public class AdamMemberCodeListParam implements Serializable { public class AdamMemberCodeListParam implements Serializable {
private static final long serialVersionUID = -8454342033562304457L; private static final long serialVersionUID = -8454342033562304457L;
@ApiModelProperty(required = false, value = "会员类型ID[64]") // @ApiModelProperty(required = false, value = "会员码批次号[64]")
private String memberId; private String batchNo;
@ApiModelProperty(required = false, value = "状态[0-可用|1-已用|2-无效|3-过期|4-失效|5-退回]") // @ApiModelProperty(required = false, value = "状态[0-可用|1-已用|2-无效|3-过期|4-失效|5-退回]")
private Integer state; private Integer state;
} }
...@@ -10,10 +10,12 @@ import lombok.Data; ...@@ -10,10 +10,12 @@ import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime; import java.time.LocalDateTime;
@ApiModel(value = "AdamMemberCodeAdminVo", description = "会员码兑换") @ApiModel(value = "AdamMemberCodeVo", description = "会员兑换码")
@Data @Data
public class AdamMemberCodeVo implements Serializable, Cloneable { public class AdamMemberCodeVo implements Serializable, Cloneable {
private static final long serialVersionUID = -2822442493419088086L; private static final long serialVersionUID = -2822442493419088086L;
@ApiModelProperty(position = 0, value = "会员码批次号")
private String batchNo;
@ApiModelProperty(position = 0, value = "会员码") @ApiModelProperty(position = 0, value = "会员码")
private String code; private String code;
@ApiModelProperty(position = 1, value = "会员类型id") @ApiModelProperty(position = 1, value = "会员类型id")
......
...@@ -91,6 +91,7 @@ public class AdamMemberAdminController extends BaseController { ...@@ -91,6 +91,7 @@ public class AdamMemberAdminController extends BaseController {
AdamMember::getInterestsDetail, AdamMember::getInterestsDetail,
AdamMember::getNotes, AdamMember::getNotes,
AdamMember::getType, AdamMember::getType,
AdamMember::getOnsale,
AdamMember::getIntegralRate AdamMember::getIntegralRate
) )
); );
......
...@@ -31,9 +31,9 @@ ...@@ -31,9 +31,9 @@
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="adam:member:export:code"> <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="adam:member:export:code">
<i class="fa fa-download"></i> 导出 <i class="fa fa-download"></i> 导出
</a> </a>
<a class="btn btn-primary multiple disabled" onclick="invalidHandler()" shiro:hasPermission="adam:member:invalid:code"> <!-- <a class="btn btn-primary multiple disabled" onclick="invalidHandler()" shiro:hasPermission="adam:member:invalid:code">-->
<i class="fa fa-edit"></i> 批量失效 <!-- <i class="fa fa-edit"></i> 批量失效-->
</a> <!-- </a>-->
<!-- <a class="btn btn-danger multiple disabled" onclick="recoverHandler()" shiro:hasPermission="adam:member:recover:code">--> <!-- <a class="btn btn-danger multiple disabled" onclick="recoverHandler()" shiro:hasPermission="adam:member:recover:code">-->
<!-- <i class="fa fa-remove"></i> 批量退回--> <!-- <i class="fa fa-remove"></i> 批量退回-->
<!-- </a>--> <!-- </a>-->
...@@ -47,24 +47,24 @@ ...@@ -47,24 +47,24 @@
<th:block th:include="include :: footer" /> <th:block th:include="include :: footer" />
<th:block th:include="include :: select2-js" /> <th:block th:include="include :: select2-js" />
<script th:inline="javascript"> <script th:inline="javascript">
var invalidFlag = [[${@permission.hasPermi('adam:member:invalid:code')}]]; // var invalidFlag = [[${@permission.hasPermi('adam:member:code:invalid')}]];
var recoverFlag = [[${@permission.hasPermi('adam:member:recover:code')}]]; // var recoverFlag = [[${@permission.hasPermi('adam:member:code:recover')}]];
var datas = [[${@dict.getType('zhengzai_coupon_code_state')}]];// 样例:[{"dictLabel":"未支付","dictValue":"0"},{"dictLabel":"已支付","dictValue":"1"},{"dictLabel":"已关闭","dictValue":"2"}] var datas = [[${@dict.getType('zhengzai_coupon_code_state')}]];// 样例:[{"dictLabel":"未支付","dictValue":"0"},{"dictLabel":"已支付","dictValue":"1"},{"dictLabel":"已关闭","dictValue":"2"}]
var memberId = [[${memberId}]]; var memberId = [[${memberId}]];
var prefix = ctx + "adam/member"; var prefix = ctx + "adam/mcode";
$(function() { $(function() {
var options = { var options = {
url: prefix + "/list_code", url: prefix + "/list",
exportUrl: prefix + "/export_code", exportUrl: prefix + "/export",
detailUrl: ctx + "adam/order/orderList/detail/{id}",
sortName: "code", sortName: "code",
sortOrder: "asc", sortOrder: "asc",
modalName: "会员码", modalName: "会员码",
columns: [{ columns: [
checkbox: true {
}, checkbox: true
},
{ {
field: 'code', field: 'code',
title: '会员码' title: '会员码'
...@@ -98,19 +98,20 @@ ...@@ -98,19 +98,20 @@
return $.table.selectDictLabel(datas, value); return $.table.selectDictLabel(datas, value);
} }
}, },
{ // {
title: '操作', // title: '操作',
align: 'center', // align: 'center',
formatter: function(value, row, index) { // formatter: function(value, row, index) {
var actions = []; // var actions = [];
if (row.state === 0) { // if (row.state === 0) {
actions.push('<a class="btn btn-primary btn-xs ' + (invalidFlag && row.state===0) + '" href="javascript:void(0)" onclick="invalidHandler(\'' + row.code + '\')"><i class="fa fa-edit"></i>失效</a> '); // actions.push('<a class="btn btn-primary btn-xs ' + (invalidFlag && row.state===0) + '" href="javascript:void(0)" onclick="invalidHandler(\'' + row.code + '\')"><i class="fa fa-edit"></i>失效</a> ');
} else if (row.state === 1) { // } else if (row.state === 1) {
// actions.push('<a class="btn btn-danger btn-xs ' + (recoverFlag && row.state==0) + '" href="javascript:void(0)" onclick="recoverHandler(\'' + row.code + '\')"><i class="fa fa-remove"></i>退回</a>'); // // actions.push('<a class="btn btn-danger btn-xs ' + (recoverFlag && row.state==0) + '" href="javascript:void(0)" onclick="recoverHandler(\'' + row.code + '\')"><i class="fa fa-remove"></i>退回</a>');
} // }
return actions.join(''); // return actions.join('');
} // }
}] // }
]
}; };
$.table.init(options); $.table.init(options);
}); });
...@@ -119,29 +120,29 @@ ...@@ -119,29 +120,29 @@
$.form.reset(); $.form.reset();
} }
function invalidHandler(code) { // function invalidHandler(code) {
let invalidCodeUrl = prefix + '/invalid_code'; // let invalidCodeUrl = prefix + '/invalid_code';
if (code !== null && code !== undefined) { // if (code !== null && code !== undefined) {
var data = {"memberId": memberId,"codes": code}; // var data = {"memberId": memberId,"codes": code};
$.operate.submit(invalidCodeUrl, "post", "json", data); // $.operate.submit(invalidCodeUrl, "post", "json", data);
} else { // } else {
var rows = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId); // var rows = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId);
var data = {"memberId": memberId, "codes": rows.join()}; // var data = {"memberId": memberId, "codes": rows.join()};
$.operate.batchProcessing(invalidCodeUrl, '失效', data); // $.operate.batchProcessing(invalidCodeUrl, '失效', data);
} // }
} // }
//
function recoverHandler(code) { // function recoverHandler(code) {
let recoverCodeUrl = prefix + '/recover_code'; // let recoverCodeUrl = prefix + '/recover_code';
if (code !== null && code !== undefined) { // if (code !== null && code !== undefined) {
var data = {"memberId": memberId,"codes": code}; // var data = {"memberId": memberId,"codes": code};
$.operate.submit(recoverCodeUrl, "post", "json", data); // $.operate.submit(recoverCodeUrl, "post", "json", data);
} else { // } else {
var rows = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId); // var rows = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId);
var data = {"memberId": memberId, "codes": rows.join()}; // var data = {"memberId": memberId, "codes": rows.join()};
$.operate.batchProcessing(recoverCodeUrl, '失效', data); // $.operate.batchProcessing(recoverCodeUrl, '失效', data);
} // }
} // }
</script> </script>
</body> </body>
</html> </html>
\ No newline at end of file
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
<head>
<th:block th:include="include :: header('创建会员码')" />
</head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-code-add">
<input >
<div class="form-group">
<label class="col-sm-3 control-label is-required">生产数量:</label>
<div class="col-sm-8">
<input class="form-control" type="text" name="genNum" id="genNum" required>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">备注:</label>
<div class="col-sm-8">
<textarea id="remark" name="detail" class="form-control"></textarea>
</div>
</div>
</form>
</div>
<th:block th:include="include :: footer" />
<script type="text/javascript">
var prefix = ctx + "system/dict";
$("#form-code-add").validate({
onkeyup: false,
rules:{
dictType:{
minlength: 5,
remote: {
url: prefix + "/checkDictTypeUnique",
type: "post",
dataType: "json",
data: {
name : function() {
return $.common.trim($("#dictType").val());
}
},
dataFilter: function(data, type) {
return $.validate.unique(data);
}
}
},
},
messages: {
"dictType": {
remote: "该字典类型已经存在"
}
},
focusCleanup: true
});
function submitHandler() {
if ($.validate.form()) {
$.operate.save(prefix + "/add", $('#form-code-add').serialize());
}
}
</script>
</body>
</html>
...@@ -5,109 +5,70 @@ ...@@ -5,109 +5,70 @@
<th:block th:include="include :: select2-css" /> <th:block th:include="include :: select2-css" />
</head> </head>
<body class="gray-bg"> <body class="gray-bg">
<div class="container-div"> <div class="container-div">
<div class="row"> <div class="row">
<div class="col-sm-12 search-collapse"> <div class="btn-group-sm" id="toolbar" role="group">
<form id="data-form"> <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="adam:member:code:creation">
<div class="select-list"> <i class="fa fa-plus"></i> 创建
<ul> </a>
<input type="text" name="memberId" hidden="hidden" th:value="${memberId}" readonly/> </div>
<li>
状态:<select name="state" th:with="type=${@dict.getType('zhengzai_coupon_code_state')}">
<option value="">所有</option>
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
</select>
</li>
<li>
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
<a class="btn btn-warning btn-rounded btn-sm" onclick="resetPre()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
</li>
</ul>
</div>
</form>
</div>
<div class="btn-group-sm" id="toolbar" role="group">
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="adam:member:export:code">
<i class="fa fa-download"></i> 导出
</a>
<a class="btn btn-primary multiple disabled" onclick="invalidHandler()" shiro:hasPermission="adam:member:invalid:code">
<i class="fa fa-edit"></i> 批量失效
</a>
<!-- <a class="btn btn-danger multiple disabled" onclick="recoverHandler()" shiro:hasPermission="adam:member:recover:code">-->
<!-- <i class="fa fa-remove"></i> 批量退回-->
<!-- </a>-->
</div>
<div class="col-sm-12 select-table table-striped"> <div class="col-sm-12 select-table table-striped">
<table id="bootstrap-table"></table> <table id="bootstrap-table"></table>
</div>
</div> </div>
</div> </div>
</div>
<th:block th:include="include :: footer" /> <th:block th:include="include :: footer" />
<th:block th:include="include :: select2-js" /> <th:block th:include="include :: select2-js" />
<script th:inline="javascript"> <script th:inline="javascript">
var invalidFlag = [[${@permission.hasPermi('adam:member:invalid:code')}]];
var recoverFlag = [[${@permission.hasPermi('adam:member:recover:code')}]];
var datas = [[${@dict.getType('zhengzai_coupon_code_state')}]];// 样例:[{"dictLabel":"未支付","dictValue":"0"},{"dictLabel":"已支付","dictValue":"1"},{"dictLabel":"已关闭","dictValue":"2"}]
var memberId = [[${memberId}]]; var memberId = [[${memberId}]];
var prefix = ctx + "adam/member"; var prefix = ctx + "adam/mcode";
$(function() { $(function() {
var options = { var options = {
url: prefix + "/list_code", url: prefix + "/mgt/list?memberId=" + memberId,
exportUrl: prefix + "/export_code", exportUrl: prefix + "/export_code",
detailUrl: ctx + "adam/order/orderList/detail/{id}", detailUrl: ctx + "adam/order/orderList/detail/{id}",
sortName: "code", sortName: "code",
sortOrder: "asc", sortOrder: "asc",
modalName: "会员码", modalName: "会员码创建记录",
columns: [{ columns: [{
checkbox: true checkbox: true
}, },
{ {
field: 'code', field: 'memberName',
title: '会员' title: '会员名称'
}, },
{ {
field: 'expireAt', field: 'memberCombo',
title: '到期时间' title: '会员套餐名称'
}, },
{ {
field: 'useAt', field: 'genNum',
title: '使用时间' title: '生产数量'
}, },
{ {
field: 'useOrderNo', field: 'useNum',
title: '兑换订单号', title: '使用数量'
formatter: function(value, row, index) {
var actions = [];
if ($.common.isEmpty(value)) {
actions.push('<a href="javascript:void(0)">-</a>');
} else {
actions.push('<a href="javascript:void(0)" onclick="$.operate.detailTab(\'' + value + '\')">' + value + '</a>');
}
return actions.join('');
}
}, },
{ {
field: 'state', field: 'detail',
title: '状态', title: '备注'
align: 'center', },
formatter: function(value, row, index) { {
return $.table.selectDictLabel(datas, value); field: 'operator',
} title: '创建人'
},
{
field: 'createdAt',
title: '创建时间'
}, },
{ {
title: '操作', title: '操作',
align: 'center', align: 'center',
formatter: function(value, row, index) { formatter: function(value, row, index) {
var actions = []; var actions = [];
if (row.state === 0) { actions.push('<a class="btn btn-primary btn-xs ' + (invalidFlag && row.state===0) + '" href="javascript:void(0)" onclick="memberCodeList(\'' + row.batchNo + '\')"><i class="fa fa-edit"></i>查看码列表</a> ');
actions.push('<a class="btn btn-primary btn-xs ' + (invalidFlag && row.state===0) + '" href="javascript:void(0)" onclick="invalidHandler(\'' + row.code + '\')"><i class="fa fa-edit"></i>失效</a> ');
} else if (row.state === 1) {
// actions.push('<a class="btn btn-danger btn-xs ' + (recoverFlag && row.state==0) + '" href="javascript:void(0)" onclick="recoverHandler(\'' + row.code + '\')"><i class="fa fa-remove"></i>退回</a>');
}
return actions.join(''); return actions.join('');
} }
}] }]
...@@ -115,32 +76,9 @@ ...@@ -115,32 +76,9 @@
$.table.init(options); $.table.init(options);
}); });
function resetPre() { /* 会员码列表 */
$.form.reset(); function memberCodeList(batchNo) {
} $.modal.openTab("会员码列表", 'adam/mcode/view?batchNo=' + batchNo);
function invalidHandler(code) {
let invalidCodeUrl = prefix + '/invalid_code';
if (code !== null && code !== undefined) {
var data = {"memberId": memberId,"codes": code};
$.operate.submit(invalidCodeUrl, "post", "json", data);
} else {
var rows = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId);
var data = {"memberId": memberId, "codes": rows.join()};
$.operate.batchProcessing(invalidCodeUrl, '失效', data);
}
}
function recoverHandler(code) {
let recoverCodeUrl = prefix + '/recover_code';
if (code !== null && code !== undefined) {
var data = {"memberId": memberId,"codes": code};
$.operate.submit(recoverCodeUrl, "post", "json", data);
} else {
var rows = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId);
var data = {"memberId": memberId, "codes": rows.join()};
$.operate.batchProcessing(recoverCodeUrl, '失效', data);
}
} }
</script> </script>
</body> </body>
......
...@@ -201,11 +201,11 @@ ...@@ -201,11 +201,11 @@
<label class="col-sm-2 control-label">是否开售:</label> <label class="col-sm-2 control-label">是否开售:</label>
<div class="col-sm-10"> <div class="col-sm-10">
<div class="radio-box"> <div class="radio-box">
<input type="radio" id="radio1" th:field="*{onsale}" name="onsale" value="2"> <input type="radio" id="radio1" th:checked="*{onsale==2}" name="onsale" value="2">
<label for="radio1"></label> <label for="radio1"></label>
</div> </div>
<div class="radio-box"> <div class="radio-box">
<input type="radio" id="radio2" th:field="*{onsale}" name="onsale" value="1"> <input type="radio" id="radio2" th:checked="*{onsale==1}" name="onsale" value="1">
<label for="radio2"></label> <label for="radio2"></label>
</div> </div>
</div> </div>
......
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
<th:block th:include="include :: select2-js" /> <th:block th:include="include :: select2-js" />
<script th:inline="javascript"> <script th:inline="javascript">
var editFlag = [[${@permission.hasPermi('adam:member:view:edit')}]]; var editFlag = [[${@permission.hasPermi('adam:member:view:edit')}]];
var viewMemberCodeFlag = [[${@permission.hasPermi('adam:member:list:code')}]]; var viewMemberCodeMgtFlag = [[${@permission.hasPermi('adam:member:code:mgt:list')}]];
var prefix = ctx + "adam/member"; var prefix = ctx + "adam/member";
$(function() { $(function() {
...@@ -69,7 +69,7 @@ ...@@ -69,7 +69,7 @@
formatter: function(value, row, index) { formatter: function(value, row, index) {
var actions = []; var actions = [];
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.editTab(\'' + row.memberId + '\'); setVipTabs()"><i class="fa fa-edit"></i>编辑</a> '); actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.editTab(\'' + row.memberId + '\'); setVipTabs()"><i class="fa fa-edit"></i>编辑</a> ');
actions.push('<a class="btn btn-success btn-xs ' + viewMemberCodeFlag + '" href="javascript:void(0)" onclick="memberCodeList(\'' + row.memberId + '\')"><i class="fa fa-edit"></i>会员码</a> '); actions.push('<a class="btn btn-success btn-xs ' + viewMemberCodeMgtFlag + '" href="javascript:void(0)" onclick="memberCodeMgt(\'' + row.memberId + '\')"><i class="fa fa-edit"></i>会员码管理</a> ');
return actions.join(''); return actions.join('');
} }
}] }]
...@@ -77,9 +77,9 @@ ...@@ -77,9 +77,9 @@
$.table.init(options); $.table.init(options);
}); });
/* 查看码列表 */ /* 会员码管理 */
function memberCodeList(memberId) { function memberCodeMgt(memberId) {
$.modal.openTab("会员码列表", 'adam/member/code/' + memberId); $.modal.openTab("会员码管理", 'adam/mcode/mgt?memberId=' + memberId);
} }
function setVipTabs () { function setVipTabs () {
......
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
<head>
<th:block th:include="include :: header('请上传banner')"/>
<th:block th:include="include :: bootstrap-fileinput-css"/>
</head>
<body class="white-bg">
<th:block th:include="include :: footer"/>
<th:block th:include="include :: bootstrap-fileinput-js"/>
<th:block th:include="include :: bootstrap-fileinput-css" />
<script type="text/javascript">
$(function () {
$("#fileinput-demo-1").fileinput({
'theme': 'explorer-fas',
// 'uploadUrl': "/kylin/banners/upload3",
// 'uploadUrl': "http://127.0.0.1:9003" + "/platform/basicServices/alOss/upload",
'uploadUrl': platformUrl + "/platform/basicServices/alOss/upload",
"uploadExtraData": {
"pathName" : "banner",
"buckType" : 1
},
// overwriteInitial: false,
// initialPreviewAsData: true,
autoReplace: true,
dropZoneTitle: "请上传文件",
maxFileCount: 1
});
})
</script>
</body>
</html>
...@@ -52,9 +52,9 @@ public class AdamMemberCodeAdminServiceImpl extends ServiceImpl<AdamMemberCodeMa ...@@ -52,9 +52,9 @@ public class AdamMemberCodeAdminServiceImpl extends ServiceImpl<AdamMemberCodeMa
// 需要主动生成会员编号 // 需要主动生成会员编号
//initMemberCode.setMemberNo(getNextMemberNo(param.getMemberId())); //initMemberCode.setMemberNo(getNextMemberNo(param.getMemberId()));
initMemberCode.setState(0);// 状态[0-可用|1-已用|2-无效|3-过期|4-失效|5-退回] initMemberCode.setState(0);// 状态[0-可用|1-已用|2-无效|3-过期|4-失效|5-退回]
initMemberCode.setValidity(param.getValidity()); // initMemberCode.setValidity(param.getValidity());
initMemberCode.setEffectAt(now); // initMemberCode.setEffectAt(now);
initMemberCode.setExpireAt(now.plusDays(param.getValidity()).withHour(23).withMinute(59).withSecond(59)); // initMemberCode.setExpireAt(now.plusDays(param.getValidity()).withHour(23).withMinute(59).withSecond(59));
initMemberCode.setCreatedAt(now); initMemberCode.setCreatedAt(now);
memberCodeList.add(initMemberCode); memberCodeList.add(initMemberCode);
......
...@@ -16,6 +16,11 @@ public class AdamMemberCode { ...@@ -16,6 +16,11 @@ public class AdamMemberCode {
@TableId(value = "mid", type = IdType.AUTO) @TableId(value = "mid", type = IdType.AUTO)
private Long mid; private Long mid;
/**
* 会员码批次号
*/
private String batchNo;
/** /**
* 会员码 * 会员码
*/ */
...@@ -54,7 +59,7 @@ public class AdamMemberCode { ...@@ -54,7 +59,7 @@ public class AdamMemberCode {
private LocalDateTime expireAt; private LocalDateTime expireAt;
/** /**
* type=2时记录创建 * 操作
*/ */
private String operator; private String operator;
......
...@@ -62,7 +62,7 @@ public class AdamMemberCodeBatch implements Serializable { ...@@ -62,7 +62,7 @@ public class AdamMemberCodeBatch implements Serializable {
/** /**
* 描述 * 描述
*/ */
private String describe; private String detail;
/** /**
* 有效期(单位天) * 有效期(单位天)
......
...@@ -37,7 +37,7 @@ public class PlatformAdamMemberOrderCallbackController { ...@@ -37,7 +37,7 @@ public class PlatformAdamMemberOrderCallbackController {
}) })
@PostMapping("refund") @PostMapping("refund")
public String refund(HttpServletRequest request) { public String refund(HttpServletRequest request) {
log.debug("/amorder/callack/refund:[mapParameter:{},token:{}]", JsonUtils.toJson(request.getParameterMap()), request.getHeader("token")); log.info("/amorder/callack/refund:[mapParameter:{},token:{}]", JsonUtils.toJson(request.getParameterMap()), request.getHeader("token"));
// TODO: 2021/6/13 验签 // TODO: 2021/6/13 验签
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment