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

Commit cb39105a authored by wangyifan's avatar wangyifan

Merge remote-tracking branch 'origin/dev_fudai_20250418' into container

parents a7f8e169 ea71c54e
...@@ -75,6 +75,9 @@ public class BannersParam implements Serializable { ...@@ -75,6 +75,9 @@ public class BannersParam implements Serializable {
@ApiModelProperty(value = "推广省份 多选 数组", example = "[\"北京市\", \"天津市\", \"沈阳市\"]") @ApiModelProperty(value = "推广省份 多选 数组", example = "[\"北京市\", \"天津市\", \"沈阳市\"]")
private List provincesNameList; private List provincesNameList;
@ApiModelProperty(value = "演出ID")
private String performanceId;
@JsonIgnore @JsonIgnore
public KylinBanners getFields(String bannersId, String createdAt) { public KylinBanners getFields(String bannersId, String createdAt) {
KylinBanners fields = new KylinBanners(); KylinBanners fields = new KylinBanners();
......
...@@ -77,4 +77,10 @@ public class KylinBannersVo implements Serializable { ...@@ -77,4 +77,10 @@ public class KylinBannersVo implements Serializable {
@ApiModelProperty(value = "修改时间") @ApiModelProperty(value = "修改时间")
private String updatedAt; private String updatedAt;
@ApiModelProperty(value = "演出ID")
private String performanceId;
@ApiModelProperty(value = "演出名称")
private String performanceName;
} }
package com.liquidnet.service.kylin.dto.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@Data
@ApiModel(value = "福袋VO")
public class KylinLuckyBagVo implements Serializable {
@ApiModelProperty(value = "福袋列表")
private List<LuckyBagVo> luckyBagVoList;
@ApiModelProperty(value = "福袋活动列表")
private List<LuckyBagActivityVo> luckyBagActivityVoList;
@Data
@ApiModel(value = "福袋活动VO")
public static class LuckyBagActivityVo {
@ApiModelProperty(value = "活动ID")
private String luckyBagActivityId;
@ApiModelProperty(value = "活动名称")
private String name;
@ApiModelProperty(value = "活动简介")
private String detail;
@ApiModelProperty(value = "跳转地址")
private String targetUrl;
}
@Data
@ApiModel(value = "福袋VO")
public static class LuckyBagVo {
@ApiModelProperty(value = "福袋ID")
private String luckyBagId;
@ApiModelProperty(value = "福袋名称")
private String name;
@ApiModelProperty(value = "福袋描述")
private String introduction;
@ApiModelProperty(value = "状态 0:未解锁 1:已解锁")
private int status;
@ApiModelProperty(value = "兑换码")
private List<String> rewardCodeList;
}
}
package com.liquidnet.service.kylin.service;
import com.liquidnet.service.kylin.dto.vo.KylinLuckyBagVo;
import java.util.List;
public interface IKylinLuckyBagService {
List<KylinLuckyBagVo> getLuckyBagBenefitsByOrderId(String orderId);
}
...@@ -9,6 +9,7 @@ import com.liquidnet.service.kylin.dto.param.PerformanceMemberAuditParam; ...@@ -9,6 +9,7 @@ import com.liquidnet.service.kylin.dto.param.PerformanceMemberAuditParam;
import com.liquidnet.service.kylin.dto.param.SysDamaiParam; import com.liquidnet.service.kylin.dto.param.SysDamaiParam;
import com.liquidnet.service.kylin.dto.vo.admin.*; import com.liquidnet.service.kylin.dto.vo.admin.*;
import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformanceMisVo; import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformanceMisVo;
import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformancesVo;
import com.liquidnet.service.kylin.entity.KylinOrderImport; import com.liquidnet.service.kylin.entity.KylinOrderImport;
import com.liquidnet.service.kylin.entity.KylinPerformances; import com.liquidnet.service.kylin.entity.KylinPerformances;
...@@ -320,4 +321,6 @@ public interface IKylinPerformancesAdminService { ...@@ -320,4 +321,6 @@ public interface IKylinPerformancesAdminService {
* @return: com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceAgentVo * @return: com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceAgentVo
**/ **/
List<KylinPerformanceSubscribeTicketStatisticalDao> getPerformanceSubscribe(String performancesId); List<KylinPerformanceSubscribeTicketStatisticalDao> getPerformanceSubscribe(String performancesId);
List<KylinPerformancesVo> searchPerformanceByTitle(String title);
} }
...@@ -19,6 +19,7 @@ public enum BannersDisplayLocation { ...@@ -19,6 +19,7 @@ public enum BannersDisplayLocation {
DISPLAY_LOCATION6("YOUNG BLOOD", 6), DISPLAY_LOCATION6("YOUNG BLOOD", 6),
DISPLAY_LOCATION8("视频", 8), DISPLAY_LOCATION8("视频", 8),
DISPLAY_LOCATION9("正在下单", 9), DISPLAY_LOCATION9("正在下单", 9),
DISPLAY_LOCATION10("福袋", 10),
; ;
private String name; private String name;
private int index; private int index;
......
...@@ -69,7 +69,7 @@ public class KylinBannersAdminController extends BaseController { ...@@ -69,7 +69,7 @@ public class KylinBannersAdminController extends BaseController {
return prefix + "/create"; return prefix + "/create";
} }
@Log(title = "Banner列表", businessType = BusinessType.INSERT) @Log(title = "创建Banner", businessType = BusinessType.INSERT)
@RequiresPermissions("kylin:banners:create") @RequiresPermissions("kylin:banners:create")
@PostMapping("create") @PostMapping("create")
@ResponseBody @ResponseBody
...@@ -105,7 +105,7 @@ public class KylinBannersAdminController extends BaseController { ...@@ -105,7 +105,7 @@ public class KylinBannersAdminController extends BaseController {
return prefix + "/update"; return prefix + "/update";
} }
@Log(title = "Banner列表", businessType = BusinessType.UPDATE) @Log(title = "修改Banner", businessType = BusinessType.UPDATE)
@RequiresPermissions("kylin:banners:update") @RequiresPermissions("kylin:banners:update")
@PostMapping("update") @PostMapping("update")
@ResponseBody @ResponseBody
...@@ -142,7 +142,7 @@ public class KylinBannersAdminController extends BaseController { ...@@ -142,7 +142,7 @@ public class KylinBannersAdminController extends BaseController {
return getDataTable(result.getList()); return getDataTable(result.getList());
} }
@Log(title = "Banner列表", businessType = BusinessType.DELETE) @Log(title = "删除Banner", businessType = BusinessType.DELETE)
@RequiresPermissions("kylin:banners:delete") @RequiresPermissions("kylin:banners:delete")
@PostMapping("delete") @PostMapping("delete")
@ResponseBody @ResponseBody
......
...@@ -8,12 +8,10 @@ import com.liquidnet.client.admin.common.core.domain.AjaxResult; ...@@ -8,12 +8,10 @@ import com.liquidnet.client.admin.common.core.domain.AjaxResult;
import com.liquidnet.client.admin.common.core.page.TableDataInfo; import com.liquidnet.client.admin.common.core.page.TableDataInfo;
import com.liquidnet.client.admin.common.enums.BusinessType; import com.liquidnet.client.admin.common.enums.BusinessType;
import com.liquidnet.client.admin.common.utils.poi.ExcelUtil; import com.liquidnet.client.admin.common.utils.poi.ExcelUtil;
import com.liquidnet.client.admin.zhengzai.kylin.dto.KylinOrderImportDto;
import com.liquidnet.client.admin.zhengzai.kylin.dto.KylinPerformanceSubscribeTicketStatisticalExportDao; import com.liquidnet.client.admin.zhengzai.kylin.dto.KylinPerformanceSubscribeTicketStatisticalExportDao;
import com.liquidnet.client.admin.zhengzai.kylin.dto.PerformanceOrderStatisCountResp; import com.liquidnet.client.admin.zhengzai.kylin.dto.PerformanceOrderStatisCountResp;
import com.liquidnet.client.admin.zhengzai.stone.service.dto.StoneScoreListExportDto;
import com.liquidnet.commons.lang.util.JsonUtils; import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.goblin.param.GoblinFrontCubeParam; import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.dao.PerformanceAdminListDao; import com.liquidnet.service.kylin.dao.PerformanceAdminListDao;
import com.liquidnet.service.kylin.dao.PerformanceMemberAuditDao; import com.liquidnet.service.kylin.dao.PerformanceMemberAuditDao;
import com.liquidnet.service.kylin.dao.PerformanceOrderStatisticalDao; import com.liquidnet.service.kylin.dao.PerformanceOrderStatisticalDao;
...@@ -23,6 +21,7 @@ import com.liquidnet.service.kylin.dto.param.PerformanceMemberAuditParam; ...@@ -23,6 +21,7 @@ import com.liquidnet.service.kylin.dto.param.PerformanceMemberAuditParam;
import com.liquidnet.service.kylin.dto.param.SysDamaiParam; import com.liquidnet.service.kylin.dto.param.SysDamaiParam;
import com.liquidnet.service.kylin.dto.vo.admin.*; import com.liquidnet.service.kylin.dto.vo.admin.*;
import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformanceMisVo; import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformanceMisVo;
import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformancesVo;
import com.liquidnet.service.kylin.entity.KylinOrderImport; import com.liquidnet.service.kylin.entity.KylinOrderImport;
import com.liquidnet.service.kylin.service.admin.IKylinPerformancesAdminService; import com.liquidnet.service.kylin.service.admin.IKylinPerformancesAdminService;
import com.liquidnet.service.kylin.service.other.DamaiService; import com.liquidnet.service.kylin.service.other.DamaiService;
...@@ -365,4 +364,11 @@ public class KylinPerformancesController extends BaseController { ...@@ -365,4 +364,11 @@ public class KylinPerformancesController extends BaseController {
String result = kylinPerformancesService.changeTransferConfig(performancesId, isCanTransfer, transferStartTime, transferEndTime); String result = kylinPerformancesService.changeTransferConfig(performancesId, isCanTransfer, transferStartTime, transferEndTime);
return this.success(result); return this.success(result);
} }
@GetMapping(value = "/search")
@ResponseBody
public ResponseDto<List<KylinPerformancesVo>> searchPerformanceByTitle(@RequestParam(value = "title") String title) {
List<KylinPerformancesVo> kylinPerformancesVoList = kylinPerformancesService.searchPerformanceByTitle(title);
return ResponseDto.success(kylinPerformancesVoList);
}
} }
...@@ -124,6 +124,10 @@ ...@@ -124,6 +124,10 @@
field: 'createdAt', field: 'createdAt',
title: '创建时间' title: '创建时间'
}, },
{
field: 'performanceName',
title: '关联演出名称'
},
{ {
title: '操作', title: '操作',
align: 'center', align: 'center',
......
...@@ -155,39 +155,72 @@ ...@@ -155,39 +155,72 @@
var url9 = "[[${url9}]]"; var url9 = "[[${url9}]]";
var url14 = "[[${url14}]]"; var url14 = "[[${url14}]]";
let count = 0; let count = 0;
function areaSelect (e) { function areaSelect(e) {
console.log(e.value, 'kan') console.log(e.value, 'kan')
if (e.value == 9) { // 清空之前的输入和选择
$("#searchIpt").val('').attr('data-id', '');
$("#selectActivity label").text("选择活动"); // 默认文本
if (e.value == 9 || e.value == 10) {
count++; count++;
if (count % 2) { if (count % 2) {
console.log(count, 'dsa') // 根据不同类型设置参数
let url, keyField, idField, searchTip;
if (e.value == 9) {
url = '/goblin/marketing/zhengzai/list/get?pageSize=10&pageNum=1&orderByColumn=createdAt&isAsc=desc&status=-1&purchaseName=';
keyField = 'name';
idField = 'selfMarketId';
searchTip = '请输入活动名称';
$("#selectActivity label").text("选择活动");
} else if (e.value == 10) {
url = '/kylin/performances/search?title='; // 演出搜索接口
keyField = 'title';
idField = 'performanceId';
searchTip = '请输入演出名称';
$("#selectActivity label").text("选择演出");
}
$("#selectActivity").show(); $("#selectActivity").show();
// 销毁旧的实例并重新初始化
$("#searchIpt").bsSuggest('destroy').attr('placeholder', searchTip);
$("#searchIpt").bsSuggest({ $("#searchIpt").bsSuggest({
idField: 'selfMarketId', // data.value 的第几个数据,作为input输入框的内容 idField: idField,
keyField: 'name', // data.value 的第几个数据,作为input输入框的内容 keyField: keyField,
allowNoKeyword: false, //是否允许无关键字时请求数据 allowNoKeyword: false,
showBtn:false, showBtn: false,
multiWord: true, //以分隔符号分割的多关键字支持 multiWord: true,
hideOnSelect: true, hideOnSelect: true,
getDataMethod: "url", //获取数据的方式,总是从 URL 获取 getDataMethod: "url",
effectiveFields: ['name'], effectiveFields: [keyField],
url: '/goblin/marketing/zhengzai/list/get?pageSize=10&pageNum=1&orderByColumn=createdAt&isAsc=desc&status=-1&purchaseName=', url: url,
/*如果从 url 获取数据,并且需要跨域,则该参数必须设置*/ processData: function(json) {
processData: function (json) { // url 获取数据时,对数据的处理,作为 getData 的回调函数 // 统一处理接口返回数据
//字符串转化为 js 对象 let data = { value: json.data || [] };
console.log(json, 'json') if (e.value == 10) {
let data = {}; // 假设演出接口返回格式为 { data: [{id:1, title:"演出名称"},...] }
data.value = json.data data.value = json.data.map(item => ({
return data [idField]: item.performancesId,
} [keyField]: item.title
}).on('onDataRequestSuccess', function (e, result) { }));
}).on('onSetSelectValue', function (e, selectedData,selectedRawData ) { // 当前行的所有值都能拿到 }
return data;
}).on('onUnsetSelectValue', function (e) { }
});; }).on('onSetSelectValue', function(e, selectedData, selectedRawData) {
// 选中时存储ID
const id = selectedRawData[idField];
$(this).attr('data-id', id);
}).on('onUnsetSelectValue', function() {
// 取消选择时清空ID
$(this).attr('data-id', '');
});
} else { } else {
$("#selectActivity").hide(); $("#selectActivity").hide();
$("#searchIpt").val('').attr('data-id', '');
} }
} else {
$("#selectActivity").hide();
$("#searchIpt").val('').attr('data-id', '');
} }
} }
function submitHandler() { function submitHandler() {
...@@ -202,6 +235,11 @@ ...@@ -202,6 +235,11 @@
layer.msg("请选择展示位置"); layer.msg("请选择展示位置");
return false; return false;
} }
// 新增校验:如果选择了位置10,必须选择演出
if (positionList.split(',').includes('10') && !$('#searchIpt').attr('data-id')) {
layer.msg('请选择演出!');
return false;
}
var targetType = $('#targetType').select2('val'); var targetType = $('#targetType').select2('val');
if (!targetType) { if (!targetType) {
layer.msg("请选择跳转方式"); layer.msg("请选择跳转方式");
...@@ -212,6 +250,13 @@ ...@@ -212,6 +250,13 @@
if (positionList.split(',').includes('9')) { if (positionList.split(',').includes('9')) {
data.push({"name": "marketId", "value": $('#searchIpt').attr('data-id')}); data.push({"name": "marketId", "value": $('#searchIpt').attr('data-id')});
} }
// 添加演出ID到提交数据
if (positionList.split(',').includes('10')) {
data.push({
"name": "performanceId",
"value": $('#searchIpt').attr('data-id')
});
}
var targetObj = ''; var targetObj = '';
var targetObjName = ''; var targetObjName = '';
if (12 == targetType || 100 == targetType) { // 请填写url if (12 == targetType || 100 == targetType) { // 请填写url
......
...@@ -187,26 +187,92 @@ ...@@ -187,26 +187,92 @@
var bannersId = "[[${KylinBannersVo.bannersId}]]"; var bannersId = "[[${KylinBannersVo.bannersId}]]";
var marketName = "[[${KylinBannersVo.marketName}]]"; var marketName = "[[${KylinBannersVo.marketName}]]";
var marketId = "[[${KylinBannersVo.marketId}]]"; var marketId = "[[${KylinBannersVo.marketId}]]";
var performanceId = "[[${KylinBannersVo.performanceId}]]";
let count = 0; let count = 0;
console.log(marketId, marketName) console.log(marketId, marketName)
function areaSelect (e) { function areaSelect(e) {
console.log(e.value, 'kan') console.log(e.value, 'kan')
if (e.value == 9) { // 清空之前的输入和选择
$("#searchIpt").val('').attr('data-id', '');
$("#selectActivity label").text("选择活动"); // 默认文本
if (e.value == 9 || e.value == 10) {
count++; count++;
if (count % 2) { if (count % 2) {
console.log(count, 'dsa') // 根据不同类型设置参数
let url, keyField, idField, searchTip;
if (e.value == 9) {
url = '/goblin/marketing/zhengzai/list/get?pageSize=10&pageNum=1&orderByColumn=createdAt&isAsc=desc&status=-1&purchaseName=';
keyField = 'name';
idField = 'selfMarketId';
searchTip = '请输入活动名称';
$("#selectActivity label").text("选择活动");
} else if (e.value == 10) {
url = '/kylin/performances/search?title='; // 演出搜索接口
keyField = 'title';
idField = 'performanceId';
searchTip = '请输入演出名称';
$("#selectActivity label").text("选择演出");
}
$("#selectActivity").show(); $("#selectActivity").show();
commomSe() // 销毁旧的实例并重新初始化
$("#searchIpt").bsSuggest('destroy').attr('placeholder', searchTip);
$("#searchIpt").bsSuggest({
idField: idField,
keyField: keyField,
allowNoKeyword: false,
showBtn: false,
multiWord: true,
hideOnSelect: true,
getDataMethod: "url",
effectiveFields: [keyField],
url: url,
processData: function(json) {
// 统一处理接口返回数据
let data = { value: json.data || [] };
if (e.value == 10) {
// 假设演出接口返回格式为 { data: [{id:1, title:"演出名称"},...] }
data.value = json.data.map(item => ({
[idField]: item.performancesId,
[keyField]: item.title
}));
}
return data;
}
}).on('onSetSelectValue', function(e, selectedData, selectedRawData) {
// 选中时存储ID
const id = selectedRawData[idField];
$(this).attr('data-id', id);
}).on('onUnsetSelectValue', function() {
// 取消选择时清空ID
$(this).attr('data-id', '');
});
} else { } else {
$("#selectActivity").hide(); $("#selectActivity").hide();
$("#searchIpt").val('').attr('data-id', '');
} }
} else {
$("#selectActivity").hide();
$("#searchIpt").val('').attr('data-id', '');
} }
} }
if (marketId) { if (marketId || performanceId) {
count++; count++;
$("#selectActivity").show() $("#selectActivity").show()
commomSe()
$("#searchIpt").attr('data-id', marketId) // 根据存储的位置类型初始化不同的搜索框
const positionList = "[[${KylinBannersVo.positionList}]]";
if (positionList && positionList.includes('10')) {
performanceCommomSe();
// 设置演出数据回显
$("#searchIpt").val("[[${KylinBannersVo.performanceName}]]") // 新增演出名称字段
.attr('data-id', "[[${KylinBannersVo.performanceId}]]"); // 新增演出ID字段
}else {
commomSe();
$("#searchIpt").attr('data-id', marketId);
}
} }
function commomSe () { function commomSe () {
$("#searchIpt").bsSuggest({ $("#searchIpt").bsSuggest({
...@@ -233,6 +299,34 @@ ...@@ -233,6 +299,34 @@
}).on('onUnsetSelectValue', function (e) { }).on('onUnsetSelectValue', function (e) {
});; });;
} }
// 搜索演出接口
function performanceCommomSe() {
// 初始化演出搜索框
$("#searchIpt").bsSuggest({
idField: 'performanceId', // 演出ID字段
keyField: 'title', // 演出名称字段
allowNoKeyword: false,
showBtn: false,
multiWord: true,
hideOnSelect: true,
getDataMethod: "url",
effectiveFields: ['title'],
url: '/kylin/performances/search?title=', // 演出搜索接口
processData: function(json) {
let data = {};
// 转换数据结构为bsSuggest需要的格式
data.value = json.data.map(item => ({
performanceId: item.performancesId,
title: item.title
}));
return data;
}
}).on('onSetSelectValue', function(e, selectedData, selectedRawData) {
$(this).attr('data-id', selectedRawData.performanceId);
}).on('onUnsetSelectValue', function() {
$(this).attr('data-id', '');
});
}
function submitHandler() { function submitHandler() {
var bannersName = $('#bannersName').val(); var bannersName = $('#bannersName').val();
if (!bannersName) { if (!bannersName) {
...@@ -245,6 +339,11 @@ ...@@ -245,6 +339,11 @@
layer.msg("请选择展示位置"); layer.msg("请选择展示位置");
return false; return false;
} }
// 新增校验:如果选择了位置10,必须选择演出
if (positionList.split(',').includes('10') && !$('#searchIpt').attr('data-id')) {
layer.msg('请选择演出!');
return false;
}
var targetType = $('#targetType').select2('val'); var targetType = $('#targetType').select2('val');
if (!targetType) { if (!targetType) {
layer.msg("请选择跳转方式"); layer.msg("请选择跳转方式");
...@@ -254,6 +353,16 @@ ...@@ -254,6 +353,16 @@
var data = $('#form-post-add').serializeArray(); var data = $('#form-post-add').serializeArray();
if (positionList.split(',').includes('9')) { if (positionList.split(',').includes('9')) {
data.push({"name": "marketId", "value": $('#searchIpt').attr('data-id')}); data.push({"name": "marketId", "value": $('#searchIpt').attr('data-id')});
data.push({"name": "performanceId", "value": ""})
data.push({"name": "performanceName", "value": ""})
}
// 添加演出ID到提交数据
if (positionList.split(',').includes('10')) {
data.push({
"name": "performanceId",
"value": $('#searchIpt').attr('data-id')
});
data.push({"name": "marketId", "value": ""})
} }
var targetObj = ''; var targetObj = '';
var targetObjName = ''; var targetObjName = '';
......
package com.liquidnet.client.admin.zhengzai.kylin.service.impl; package com.liquidnet.client.admin.zhengzai.kylin.service.impl;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
...@@ -10,6 +11,7 @@ import com.liquidnet.common.cache.redis.util.RedisDataSourceUtil; ...@@ -10,6 +11,7 @@ import com.liquidnet.common.cache.redis.util.RedisDataSourceUtil;
import com.liquidnet.commons.lang.util.BeanUtil; import com.liquidnet.commons.lang.util.BeanUtil;
import com.liquidnet.commons.lang.util.DateUtil; import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.IDGenerator; import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.commons.lang.util.StringUtil;
import com.liquidnet.service.goblin.entity.GoblinSelfMarketing; import com.liquidnet.service.goblin.entity.GoblinSelfMarketing;
import com.liquidnet.service.goblin.mapper.GoblinSelfMarketingMapper; import com.liquidnet.service.goblin.mapper.GoblinSelfMarketingMapper;
import com.liquidnet.service.kylin.constant.KylinRedisConst; import com.liquidnet.service.kylin.constant.KylinRedisConst;
...@@ -19,8 +21,10 @@ import com.liquidnet.service.kylin.dto.param.BannersSearchParam; ...@@ -19,8 +21,10 @@ import com.liquidnet.service.kylin.dto.param.BannersSearchParam;
import com.liquidnet.service.kylin.dto.vo.KylinBannersVo; import com.liquidnet.service.kylin.dto.vo.KylinBannersVo;
import com.liquidnet.service.kylin.entity.KylinBanners; import com.liquidnet.service.kylin.entity.KylinBanners;
import com.liquidnet.service.kylin.entity.KylinBannersRelations; import com.liquidnet.service.kylin.entity.KylinBannersRelations;
import com.liquidnet.service.kylin.entity.KylinPerformances;
import com.liquidnet.service.kylin.mapper.KylinBannersMapper; import com.liquidnet.service.kylin.mapper.KylinBannersMapper;
import com.liquidnet.service.kylin.mapper.KylinBannersRelationsMapper; import com.liquidnet.service.kylin.mapper.KylinBannersRelationsMapper;
import com.liquidnet.service.kylin.mapper.KylinPerformancesMapper;
import com.liquidnet.service.kylin.service.admin.IKylinBannersService; import com.liquidnet.service.kylin.service.admin.IKylinBannersService;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -63,6 +67,9 @@ public class KylinBannersServiceImpl extends ServiceImpl<KylinBannersMapper, Kyl ...@@ -63,6 +67,9 @@ public class KylinBannersServiceImpl extends ServiceImpl<KylinBannersMapper, Kyl
@Autowired @Autowired
private GoblinSelfMarketingMapper goblinSelfMarketingMapper; private GoblinSelfMarketingMapper goblinSelfMarketingMapper;
@Autowired
private KylinPerformancesMapper kylinPerformancesMapper;
public boolean create(BannersParam bannersParam) { public boolean create(BannersParam bannersParam) {
try { try {
// 时间 // 时间
...@@ -76,7 +83,15 @@ public class KylinBannersServiceImpl extends ServiceImpl<KylinBannersMapper, Kyl ...@@ -76,7 +83,15 @@ public class KylinBannersServiceImpl extends ServiceImpl<KylinBannersMapper, Kyl
bannersParam.setOnlineEndTime(null); bannersParam.setOnlineEndTime(null);
} }
// 入数据库 // 入数据库
bannersMapper.insert(bannersParam.getFields(bannersId, createdAtString)); KylinBanners kylinBanners = bannersParam.getFields(bannersId, createdAtString);
String performanceName = getPerformanceNameById(bannersParam.getPerformanceId());
if (StringUtil.isBlank(performanceName)) {
kylinBanners.setPerformanceId("");
kylinBanners.setPerformanceName("");
}else {
kylinBanners.setPerformanceName(performanceName);
}
bannersMapper.insert(kylinBanners);
List<String> positionList = bannersParam.getPositionList(); List<String> positionList = bannersParam.getPositionList();
KylinBannersRelations kylinBannersRelations = new KylinBannersRelations(); KylinBannersRelations kylinBannersRelations = new KylinBannersRelations();
...@@ -109,6 +124,19 @@ public class KylinBannersServiceImpl extends ServiceImpl<KylinBannersMapper, Kyl ...@@ -109,6 +124,19 @@ public class KylinBannersServiceImpl extends ServiceImpl<KylinBannersMapper, Kyl
} }
} }
private String getPerformanceNameById(String performanceId) {
if (StringUtil.isBlank(performanceId)) {
return "";
}
List<KylinPerformances> kylinPerformances = kylinPerformancesMapper.selectList(new LambdaUpdateWrapper<KylinPerformances>()
.eq(KylinPerformances::getPerformancesId, performanceId));
if (kylinPerformances.isEmpty()) {
return "";
}
return kylinPerformances.get(0).getTitle();
}
private void setBannerListRedis() { private void setBannerListRedis() {
List<KylinBanners> bannerList = bannersMapper.selectList( List<KylinBanners> bannerList = bannersMapper.selectList(
Wrappers.lambdaQuery(KylinBanners.class).eq(KylinBanners::getIsOnline, 1) Wrappers.lambdaQuery(KylinBanners.class).eq(KylinBanners::getIsOnline, 1)
...@@ -141,6 +169,14 @@ public class KylinBannersServiceImpl extends ServiceImpl<KylinBannersMapper, Kyl ...@@ -141,6 +169,14 @@ public class KylinBannersServiceImpl extends ServiceImpl<KylinBannersMapper, Kyl
KylinBanners params = bannersParam.getFields(null, null); KylinBanners params = bannersParam.getFields(null, null);
params.setUpdatedAt(updatedAtString); params.setUpdatedAt(updatedAtString);
String performanceName = getPerformanceNameById(bannersParam.getPerformanceId());
if (StringUtil.isBlank(performanceName)) {
params.setPerformanceId("");
params.setPerformanceName("");
}else {
params.setPerformanceName(performanceName);
}
/*if (StringUtils.isEmpty(bannersParam.getOnlineStartTime())) { /*if (StringUtils.isEmpty(bannersParam.getOnlineStartTime())) {
params.setOnlineStartTime(null); params.setOnlineStartTime(null);
} }
......
...@@ -25,10 +25,7 @@ import com.liquidnet.service.kylin.dto.vo.admin.*; ...@@ -25,10 +25,7 @@ import com.liquidnet.service.kylin.dto.vo.admin.*;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinOrderTicketEntitiesVo; import com.liquidnet.service.kylin.dto.vo.mongo.KylinOrderTicketEntitiesVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinOrderTicketVo; import com.liquidnet.service.kylin.dto.vo.mongo.KylinOrderTicketVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo; import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformanceMisVo; import com.liquidnet.service.kylin.dto.vo.partner.*;
import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketPartnerVo;
import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketTimesPartnerVo;
import com.liquidnet.service.kylin.dto.vo.partner.TicketTimesTicketCreatePartnerVo;
import com.liquidnet.service.kylin.entity.*; import com.liquidnet.service.kylin.entity.*;
import com.liquidnet.service.kylin.mapper.*; import com.liquidnet.service.kylin.mapper.*;
import com.liquidnet.service.kylin.service.admin.IKylinPerformancesAdminService; import com.liquidnet.service.kylin.service.admin.IKylinPerformancesAdminService;
...@@ -977,6 +974,20 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma ...@@ -977,6 +974,20 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
return performancesMapper.getSubscribeTicketStatisticalByPerformancesId(performancesId); return performancesMapper.getSubscribeTicketStatisticalByPerformancesId(performancesId);
} }
@Override
public List<KylinPerformancesVo> searchPerformanceByTitle(String title) {
LambdaQueryWrapper<KylinPerformances> lambdaQueryWrapper = new QueryWrapper<KylinPerformances>()
.lambda()
.like(KylinPerformances::getTitle, title);
List<KylinPerformances> kylinPerformances = performancesMapper.selectList(lambdaQueryWrapper);
return kylinPerformances.stream().map(k -> {
KylinPerformancesVo vo = new KylinPerformancesVo();
vo.setPerformancesId(k.getPerformancesId());
vo.setTitle(k.getTitle());
return vo;
}).collect(Collectors.toList());
}
//删除演出下所有订单缓存(订单详情,订单列表) //删除演出下所有订单缓存(订单详情,订单列表)
public void delOrderTicketsRedis(KylinPerformanceMisVo vo) { public void delOrderTicketsRedis(KylinPerformanceMisVo vo) {
//找到所有ticketId //找到所有ticketId
......
...@@ -73,7 +73,7 @@ spring: ...@@ -73,7 +73,7 @@ spring:
autoconfigure: autoconfigure:
exclude: exclude:
- org.springframework.cloud.bus.BusAutoConfiguration - org.springframework.cloud.bus.BusAutoConfiguration
- org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration # - org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
redis: redis:
queue: queue:
database: ${liquidnet.redis.queue.database} database: ${liquidnet.redis.queue.database}
...@@ -102,6 +102,17 @@ spring: ...@@ -102,6 +102,17 @@ spring:
uri: mongodb://${liquidnet.mongodb.user}:${liquidnet.mongodb.pwd}@${liquidnet.mongodb.host}/?authSource=admin&maxPoolSize=200&waitQueueMultiple=100 uri: mongodb://${liquidnet.mongodb.user}:${liquidnet.mongodb.pwd}@${liquidnet.mongodb.host}/?authSource=admin&maxPoolSize=200&waitQueueMultiple=100
sslEnabled: ${liquidnet.mongodb.sslEnabled} sslEnabled: ${liquidnet.mongodb.sslEnabled}
database: ${liquidnet.mongodb.database} database: ${liquidnet.mongodb.database}
datasource:
name: ${liquidnet.mysql.database-name}
url: jdbc:mysql://${liquidnet.mysql.urlHostAndPort}/${liquidnet.mysql.database-name}?serverTimezone=UTC&characterEncoding=utf-8&useSSL=false
username: ${liquidnet.mysql.username}
password: ${liquidnet.mysql.password}
# type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
hikari:
maximum-pool-size: 45
minimum-idle: 8
connection-test-query: SELECT 1
# ----------------------------------------------------------- # -----------------------------------------------------------
# ----------------------------------------------------------- # -----------------------------------------------------------
......
...@@ -41,6 +41,16 @@ public class BannerDetailsListDao implements Serializable { ...@@ -41,6 +41,16 @@ public class BannerDetailsListDao implements Serializable {
private String updatedAt; private String updatedAt;
/**
* 演出ID
*/
private String performanceId;
/**
* 演出名称
*/
private String performanceName;
public void setIsOnlineName(Integer isOnline){ public void setIsOnlineName(Integer isOnline){
this.isOnline=isOnline; this.isOnline=isOnline;
switch (isOnline){ switch (isOnline){
......
...@@ -110,6 +110,16 @@ public class KylinBanners implements Serializable, Cloneable { ...@@ -110,6 +110,16 @@ public class KylinBanners implements Serializable, Cloneable {
*/ */
private String updatedAt; private String updatedAt;
/**
* 演出ID
*/
private String performanceId;
/**
* 演出名称
*/
private String performanceName;
private static final KylinBanners obj = new KylinBanners(); private static final KylinBanners obj = new KylinBanners();
public static KylinBanners getNew() { public static KylinBanners getNew() {
......
package com.liquidnet.service.kylin.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* 福袋品牌方表
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class KylinBrands implements Serializable, Cloneable {
private static final long serialVersionUID = 1L;
@TableId(value = "mid", type = IdType.AUTO)
private Integer mid;
/**
* 品牌ID
*/
private String brandId;
/**
* 品牌名称
*/
private String name;
/**
* 品牌地址
*/
private String address;
/**
* 官网URL
*/
private String websiteUrl;
/**
* 简介
*/
private String introduction;
/**
* 联系人
*/
private String contactName;
/**
* 联系电话
*/
private String contactPhone;
/**
* 1-可用, 0-不可用
*/
private Integer state;
/**
* 创建时间
*/
private LocalDateTime createdAt;
/**
* 修改时间
*/
private LocalDateTime updatedAt;
}
package com.liquidnet.service.kylin.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* 福袋配置表
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class KylinLuckyBag implements Serializable, Cloneable{
private static final long serialVersionUID = 1L;
@TableId(value = "mid", type = IdType.AUTO)
private Integer mid;
/**
* 福袋ID
*/
private String luckyBagId;
/**
* 福袋名称
*/
private String name;
/**
* 福袋简介
*/
private String introduction;
/**
* 所属品牌ID
*/
private String brand_id;
/**
* 所属演出ID
*/
private String performances_id;
/**
* 所属场次ID
*/
private String ticket_times_id;
/**
* 所属票种ID
*/
private String tickets_id;
/**
* 上线开始时间
*/
private String onlineStartTime;
/**
* 上线结束时间
*/
private String onlineEndTime;
/**
* 福袋发放时间
*/
private String send_time;
/**
* 状态: 1-可用, 0-不可用
*/
private Integer state;
/**
* 创建时间
*/
private LocalDateTime createdAt;
/**
* 修改时间
*/
private LocalDateTime updatedAt;
}
package com.liquidnet.service.kylin.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* 福袋活动表
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class KylinLuckyBagActivity implements Serializable, Cloneable{
private static final long serialVersionUID = 1L;
@TableId(value = "mid", type = IdType.AUTO)
private Integer mid;
/**
* 福袋活动ID
*/
private String luckyBagActivityId;
/**
* 活动名称
*/
private String name;
/**
* 活动简介
*/
private String detail;
/**
* 跳转地址
*/
private String target_url;
/**
* 上线开始时间
*/
private String onlineStartTime;
/**
* 上线结束时间
*/
private String onlineEndTime;
/**
* 状态: 1-可用, 0-不可用
*/
private Integer state;
/**
* 创建时间
*/
private LocalDateTime createdAt;
/**
* 修改时间
*/
private LocalDateTime updatedAt;
}
package com.liquidnet.service.kylin.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* 兑换码表
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class KylinRewardCode implements Serializable, Cloneable{
private static final long serialVersionUID = 1L;
@TableId(value = "mid", type = IdType.AUTO)
private Integer mid;
/**
* 兑换码
*/
private String code;
/**
* 所属福袋ID
*/
private String luckyBagId;
/**
* 状态: 1-可用, 0-不可用
*/
private Integer state;
/**
* 创建时间
*/
private LocalDateTime createdAt;
/**
* 修改时间
*/
private LocalDateTime updatedAt;
}
package com.liquidnet.service.kylin.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* 用户领取兑换码表
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class KylinUserReward implements Serializable, Cloneable{
private static final long serialVersionUID = 1L;
@TableId(value = "mid", type = IdType.AUTO)
private Integer mid;
/**
* 用户ID
*/
private String uid;
/**
* 所属福袋ID
*/
private String luckyBagId;
/**
* 订单ID(kylin_order_tickets)
*/
private String orderId;
/**
* 订单详情ID(kylin_order_ticket_entities)
*/
private String orderTicketEntitiesId;
/**
* 兑换码
*/
private String code;
/**
* 状态 0不可用 1可用 2删除
*/
private Integer state;
/**
* 创建时间
*/
private LocalDateTime createdAt;
/**
* 修改时间
*/
private LocalDateTime updatedAt;
/**
* 保留字段
*/
private String comment;
}
package com.liquidnet.service.kylin.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.liquidnet.service.kylin.entity.KylinBrands;
public interface KylinBrandsMapper extends BaseMapper<KylinBrands> {
}
package com.liquidnet.service.kylin.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.liquidnet.service.kylin.entity.KylinLuckyBagActivity;
public interface KylinLuckyBagActivityMapper extends BaseMapper<KylinLuckyBagActivity> {
}
package com.liquidnet.service.kylin.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.liquidnet.service.kylin.entity.KylinLuckyBag;
public interface KylinLuckyBagMapper extends BaseMapper<KylinLuckyBag> {
}
package com.liquidnet.service.kylin.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.liquidnet.service.kylin.entity.KylinRewardCode;
public interface KylinRewardCodeMapper extends BaseMapper<KylinRewardCode> {
}
package com.liquidnet.service.kylin.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.liquidnet.service.kylin.entity.KylinUserReward;
public interface KylinUserRewardMapper extends BaseMapper<KylinUserReward> {
}
package com.liquidnet.service; package com.liquidnet.service;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner; import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringApplication;
...@@ -16,6 +17,7 @@ import java.util.Arrays; ...@@ -16,6 +17,7 @@ import java.util.Arrays;
@Slf4j @Slf4j
@EnableFeignClients @EnableFeignClients
@SpringBootApplication(scanBasePackages = {"com.liquidnet"}) @SpringBootApplication(scanBasePackages = {"com.liquidnet"})
@MapperScan(basePackages = {"com.liquidnet.service.*.mapper"})
public class ServiceKylinApplication implements CommandLineRunner { public class ServiceKylinApplication implements CommandLineRunner {
@Autowired @Autowired
private Environment environment; private Environment environment;
......
...@@ -36,17 +36,19 @@ public class KylinBannersController { ...@@ -36,17 +36,19 @@ public class KylinBannersController {
@GetMapping("") @GetMapping("")
@ApiOperation("banner列表") @ApiOperation("banner列表")
@ApiImplicitParams({ @ApiImplicitParams({
@ApiImplicitParam(type = "query", dataType = "String", name = "position", value = "展示位置 1首页 3周边 5积分商城 6YB 8视频", required = true), @ApiImplicitParam(type = "query", dataType = "String", name = "position", value = "展示位置 1首页 3周边 5积分商城 6YB 8视频 10福袋", required = true),
@ApiImplicitParam(type = "query", dataType = "String", name = "provinceName", value = "城市名称"), @ApiImplicitParam(type = "query", dataType = "String", name = "provinceName", value = "城市名称"),
@ApiImplicitParam(type = "query", dataType = "String", name = "marketId", value = "活动id"), @ApiImplicitParam(type = "query", dataType = "String", name = "marketId", value = "活动id"),
@ApiImplicitParam(type = "query", dataType = "String", name = "performanceId", value = "演出id"),
}) })
public ResponseDto<List<KylinBanners>> blist( public ResponseDto<List<KylinBanners>> blist(
@RequestParam() String position, @RequestParam() String position,
@RequestParam(value = "marketId", required = false) String marketId, @RequestParam(value = "marketId", required = false) String marketId,
@RequestParam(defaultValue = "") String provinceName @RequestParam(defaultValue = "") String provinceName,
@RequestParam(value = "performanceId", required = false) String performanceId
) { ) {
try { try {
List<KylinBanners> result = bannersServiceImpl.blist(position, provinceName, marketId); List<KylinBanners> result = bannersServiceImpl.blist(position, provinceName, marketId, performanceId);
return ResponseDto.success(result); return ResponseDto.success(result);
} catch (Exception e) { } catch (Exception e) {
log.error("banner列表Error", e); log.error("banner列表Error", e);
......
package com.liquidnet.service.kylin.controller;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.dto.vo.KylinLuckyBagVo;
import com.liquidnet.service.kylin.service.IKylinLuckyBagService;
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.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@Api(tags = "前端-获取福袋相关")
@RestController
@RequestMapping("/luckyBag")
@Slf4j
public class KylinLuckyBagController {
@Autowired
private IKylinLuckyBagService benefitsService;
@GetMapping("")
@ApiOperation("获取福袋权益列表")
public ResponseDto<KylinLuckyBagVo> getLuckyBagBenefitsByOrderId(@RequestParam(value = "orderId") String orderId) {
String jsonObj = "{\n" +
" \"luckyBagVoList\": [\n" +
" {\n" +
" \"luckyBagId\": \"bag001\",\n" +
" \"name\": \"蛋仔派对专属皮肤\",\n" +
" \"introduction\": \"1. 每个观演人对应发放一张兑换券/n 2. 兑换券为虚拟商品,一旦丢失或泄露,可能被他人使用,请妥善保管/n 3. 兑换码有效期至[具体日期],请及时使用。\",\n" +
" \"status\": 1,\n" +
" \"rewardCodeList\": [\n" +
" \"CODE123\",\n" +
" \"CODE456\"\n" +
" ]\n" +
" },\n" +
" {\n" +
" \"luckyBagId\": \"bag002\",\n" +
" \"name\": \"蛋仔派对新地图\",\n" +
" \"introduction\": \"未解锁的福袋,快来领取吧!\",\n" +
" \"status\": 0,\n" +
" \"rewardCodeList\": []\n" +
" }\n" +
" ],\n" +
" \"luckyBagActivityVoList\": [\n" +
" {\n" +
" \"luckyBagActivityId\": \"activity002\",\n" +
" \"name\": \"本单权益\",\n" +
" \"detail\": \"福袋活动详情\",\n" +
" \"targetUrl\": \"https://baidu.com\"\n" +
" }\n" +
" ]\n" +
"}";
return ResponseDto.success(JsonUtils.fromJson(jsonObj, KylinLuckyBagVo.class));
// return ResponseDto.success(benefitsService.getLuckyBagBenefitsByOrderId(orderId));
}
}
...@@ -3,8 +3,8 @@ package com.liquidnet.service.kylin.service.impl; ...@@ -3,8 +3,8 @@ package com.liquidnet.service.kylin.service.impl;
import com.liquidnet.common.cache.redis.util.RedisUtil; import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.commons.lang.util.CollectionUtil; import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.commons.lang.util.DateUtil; import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.StringUtil;
import com.liquidnet.service.kylin.constant.KylinRedisConst; import com.liquidnet.service.kylin.constant.KylinRedisConst;
import com.liquidnet.service.kylin.dto.vo.KylinBannersVo;
import com.liquidnet.service.kylin.entity.KylinBanners; import com.liquidnet.service.kylin.entity.KylinBanners;
import com.liquidnet.service.kylin.service.admin.IKylinBannersService; import com.liquidnet.service.kylin.service.admin.IKylinBannersService;
import com.liquidnet.service.kylin.utils.ObjectUtil; import com.liquidnet.service.kylin.utils.ObjectUtil;
...@@ -36,7 +36,7 @@ public class BannersServiceImpl implements IKylinBannersService { ...@@ -36,7 +36,7 @@ public class BannersServiceImpl implements IKylinBannersService {
@Autowired @Autowired
RedisUtil redisUtil; RedisUtil redisUtil;
public List<KylinBanners> blist(String position, String provinceName, String marketId) { public List<KylinBanners> blist(String position, String provinceName, String marketId, String performanceId) {
String nowTime = DateUtil.getNowTime(); String nowTime = DateUtil.getNowTime();
Object ListObj = redisUtil.get(KylinRedisConst.ADMIN_BANNER_LIST); Object ListObj = redisUtil.get(KylinRedisConst.ADMIN_BANNER_LIST);
List<KylinBanners> list = ObjectUtil.getKylinBannerListArrayList(); List<KylinBanners> list = ObjectUtil.getKylinBannerListArrayList();
...@@ -61,6 +61,14 @@ public class BannersServiceImpl implements IKylinBannersService { ...@@ -61,6 +61,14 @@ public class BannersServiceImpl implements IKylinBannersService {
} }
} }
// 查询指定演出
if (StringUtil.isNotBlank(performanceId)) {
if (!performanceId.equals(bannerInfo.getPerformanceId())) {
itBannerList.remove();
continue;
}
}
// list // list
List<String> pList = bannerInfo.getPositionList(); List<String> pList = bannerInfo.getPositionList();
Boolean pis = false; Boolean pis = false;
......
package com.liquidnet.service.kylin.service.impl;
import com.liquidnet.common.exception.LiquidnetServiceException;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.service.base.ErrorMapping;
import com.liquidnet.service.kylin.dto.vo.KylinLuckyBagVo;
import com.liquidnet.service.kylin.dto.vo.returns.OrderDetailsVo;
import com.liquidnet.service.kylin.mapper.*;
import com.liquidnet.service.kylin.service.IKylinLuckyBagService;
import com.liquidnet.service.kylin.service.IKylinOrderTicketsService;
import com.liquidnet.service.kylin.utils.DataUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class KylinLuckyBagServiceImpl implements IKylinLuckyBagService {
private static final Logger log = LoggerFactory.getLogger(KylinLuckyBagServiceImpl.class);
@Autowired
private DataUtils dataUtils;
@Autowired
IKylinOrderTicketsService orderTicketsService;
@Autowired
private KylinLuckyBagMapper kylinLuckyBagMapper;
@Autowired
private KylinLuckyBagActivityMapper kylinLuckyBagActivityMapper;
@Autowired
private KylinBrandsMapper kylinBrandsMapper;
@Autowired
private KylinRewardCodeMapper kylinRewardCodeMapper;
@Autowired
private KylinUserRewardMapper kylinUserRewardMapper;
@Override
public List<KylinLuckyBagVo> getLuckyBagBenefitsByOrderId(String orderId) {
//1. 首先校验用户权限
OrderDetailsVo vo = orderTicketsService.orderDetails(orderId);
String uid = CurrentUtil.getCurrentUid();
if (null == vo) {
log.error("获取订单详情为空, orderId: {}, uid: {}.", orderId, uid);
ErrorMapping.ErrorMessage errorMessage = ErrorMapping.get("20003");
throw new LiquidnetServiceException(errorMessage.getCode(), errorMessage.getMessage());
}
//2. 先查询福袋
//3. 再查询满足的权益
return null;
}
}
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