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

Commit b76a66ff authored by 张国柄's avatar 张国柄

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

parents 8ef9dbe8 66c948e4
...@@ -20,4 +20,7 @@ public class SlimeRedisConst { ...@@ -20,4 +20,7 @@ public class SlimeRedisConst {
// 无敌账号 // 无敌账号
public static final String SUPER_ACCOUNT = PREFIX.concat("super:account:"); public static final String SUPER_ACCOUNT = PREFIX.concat("super:account:");
// 临时可扫二维码演出列表
public static final String QR_CODE_PERFORMANCE = PREFIX.concat("qrCode:performance");
} }
...@@ -101,7 +101,7 @@ public class GoblinFrontSelectGoodsController extends BaseController { ...@@ -101,7 +101,7 @@ public class GoblinFrontSelectGoodsController extends BaseController {
* @Description:精选商品保存 * @Description:精选商品保存
* @date 2022/1/4 下午2:49 * @date 2022/1/4 下午2:49
*/ */
@PostMapping("create") /*@PostMapping("create")
@ApiOperation(value = "精选商品保存") @ApiOperation(value = "精选商品保存")
@ResponseBody @ResponseBody
public AjaxResult create(@RequestBody GoblinFrontSelectGoodsParam goblinFrontSelectGoodsParam) { public AjaxResult create(@RequestBody GoblinFrontSelectGoodsParam goblinFrontSelectGoodsParam) {
...@@ -115,7 +115,7 @@ public class GoblinFrontSelectGoodsController extends BaseController { ...@@ -115,7 +115,7 @@ public class GoblinFrontSelectGoodsController extends BaseController {
return error("操作失败"); return error("操作失败");
} }
} }
*/
/** /**
* @author zhangfuxin * @author zhangfuxin
* @Description:精选商品修改 * @Description:精选商品修改
......
...@@ -253,7 +253,72 @@ ...@@ -253,7 +253,72 @@
$("input[name=optionsRadios]").change(function(e){ $("input[name=optionsRadios]").change(function(e){
$("#bannerList").empty(); $("#bannerList").empty();
count = e.target.value; count = e.target.value;
addItem (count); promiseMethods('/goblin-front-cube/list', 'post').then(res => {
let { data } = res;
if (data && data.length > 0) {
let arr = data[0].spuId.split(',');
if (count == data[0].rowType) {
for (var i = 0; i < data.length; i++) {
let str = '';
str += `<div class="items" data-id="${data[i].mid}">
<div class="first_content">
<div class="hot_title">
页面属性:
</div>
<div class="tags">
<label>
<input type="radio" checked value="1" id="pageAttribute${i}" name="pageAttribute${i}"><span>单商品</span></label>
</div>
</div>
<div class="first_content" style="align-items: flex-start;">
<div class="hot_title">
选择商品:
</div>
<div class="tags_content" style="width: 553px;">
<div class="input-group">
<input id="goodsName${i}" data-id="${arr[i]}" type="text" class="form-control storeList" placeholder="${data[i].goblinGoods.name}">
<div class="input-group-btn">
<ul class="dropdown-menu dropdown-menu-right" role="menu">
</ul>
</div>
</div>
<div class="img_box">
<img id="goodsImg${i}" src="${data[i].goblinGoods.coverPic}" alt="" style="max-height: 180px;max-width:180px;margin: 12px 0;">
<p id="goodsTitle${i}" style="width:180px;">${data[i].goblinGoods.name}</p>
<p id="goodsPrice${i}">${data[i].goblinGoods.priceLe}</p>
</div>
<button id="del${i}" type="button" class="btn btn-danger" style="width: 60px;" onclick="del('${i}')">删除</button>
</div>
</div>
<div class="first_content" style="align-items: flex-start;">
<div class="hot_title">
推荐文案:
</div>
<div class="tags">`;
if (i == 0) {
str+= `<textarea id="text${i}" class="form-control txtIpt" value="" name="" style="width: 553px;height: 150px;">${data[i].informationA}</textarea>`
} else if (i == 1) {
str+= `<textarea id="text${i}" class="form-control txtIpt" value="" name="" style="width: 553px;height: 150px;">${data[i].informationB}</textarea>`
} else if (i == 2) {
str+= `<textarea id="text${i}" class="form-control txtIpt" value="" name="" style="width: 553px;height: 150px;">${data[i].informationC}</textarea>`
} else {
str+= `<textarea id="text${i}" class="form-control txtIpt" value="" name="" style="width: 553px;height: 150px;">${data[i].informationD}</textarea>`
}
str+=`</div>
</div>
</div>`
$("#bannerList").append(str);
common(i)
}
} else {
addItem (count);
}
} else {
addItem (count);
}
// refreshItem()
})
}) })
function addItem (num) { function addItem (num) {
let str = ''; let str = '';
......
...@@ -158,6 +158,7 @@ ...@@ -158,6 +158,7 @@
let num = 0; let num = 0;
let jumpType = 1; let jumpType = 1;
let hang = 1; let hang = 1;
let returnData = [];
$(function() { $(function() {
let url = window.location.hostname; let url = window.location.hostname;
if (url.includes('test')) { if (url.includes('test')) {
...@@ -167,119 +168,142 @@ ...@@ -167,119 +168,142 @@
} else { } else {
} }
showDetail (1)
})
function showDetail (numType) {
promiseMethods('/navigation/list', 'post').then(res => { promiseMethods('/navigation/list', 'post').then(res => {
let { data } = res; let { data } = res;
if (data&&data.length>0) { if (data&&data.length>0) {
if (data[0].displayType == 1) { if (numType == 1) {
$('#optionsRadios1').attr('checked', true) if (data[0].displayType == 1) {
$('#optionsRadios2').removeAttr('checked') $('#optionsRadios1').attr('checked', true)
} else { $('#optionsRadios2').removeAttr('checked')
$('#optionsRadios2').attr('checked', true) } else {
$('#optionsRadios1').removeAttr('checked') $('#optionsRadios2').attr('checked', true)
$('#optionsRadios1').removeAttr('checked')
}
} }
if (hang == data[0].displayType) {
for (var i = 0; i < data.length; i++) { for (var i = 0; i < data.length; i++) {
let str = ''; let str = '';
str += `<div class="banner_item" data-id="${data[i].mid}"> str += `<div class="banner_item" data-id="${data[i].mid}">
<div class="img_show"> <div class="img_show">
<div class="title">
图片展示:
</div>
<div class="ibox-content" style="border: none;">
<img id="viewImg${i}" class="imgBox" src="${data[i].picUrl}" alt="">
<div class="form-group">
<div class="file-loading">
<input id="fileinput${i}" type="file" name="file" data-browse-on-zone-click="true" data-theme="fas">
</div>
</div>
</div>
</div>
<div class="set_method" style="margin-bottom: 20px;">
<div class="jump">
<div class="title"> <div class="title">
类型 图片展示
</div> </div>
<div class="iptOrSelect" style="margin-right: 12px;"> <div class="ibox-content" style="border: none;">
<select id="jumpType${i}" onchange="changeJump(this)" value="${data[i].navigationType}" class="typeSelect type form-control" data-first-title="请选择"> <img id="viewImg${i}" class="imgBox" src="${data[i].picUrl}" alt="">
<option value="1">分类</option> <div class="form-group">
<option value="2">专题页</option> <div class="file-loading">
<option value="3">商品单品</option> <input id="fileinput${i}" type="file" name="file" data-browse-on-zone-click="true" data-theme="fas">
</select> </div>
</div>
</div> </div>
</div> </div>
<div class="ticket_name"> <div class="set_method" style="margin-bottom: 20px;">
<div class="title titleDiv${i}"> <div class="jump">
选择分类: <div class="title">
</div> 类型:
<div class="typeSelect${i}" style="display:flex;flex:1">
<div class="iptOrSelect">
<select id="jumpSelectOne${i}" onchange="selectFirst(this)" class="type1 form-control" data-first-title="请选择">
<option value="">请选择</option>
</select>
</div> </div>
<div class="iptOrSelect"> <div class="iptOrSelect" style="margin-right: 12px;">
<select id="jumpSelectTwo${i}" class="type2 form-control" data-first-title="请选择"> <select id="jumpType${i}" onchange="changeJump(this)" value="${data[i].navigationType}" class="typeSelect type form-control" data-first-title="请选择">
<option value="">请选择</option> <option value="1">分类</option>
<option value="2">专题页</option>
<option value="3">商品单品</option>
</select> </select>
</div> </div>
</div>` </div>
if (data[i].goblinGoods) { <div class="ticket_name">
str+= `<div class="input-group iptOrSelect shwoSelect${i}" style="display:none;"> <div class="title titleDiv${i}">
<input id="searchIpt${i}" type="text" class="form-control storeList" onFocus="focusMethod(this)" value="${data[i].goblinGoods.spuId}" placeholder="${data[i].goblinGoods.name}"> 选择分类:
</div>
<div class="typeSelect${i}" style="display:flex;flex:1">
<div class="iptOrSelect">
<select id="jumpSelectOne${i}" onchange="selectFirst(this)" class="type1 form-control" data-first-title="请选择">
<option value="">请选择</option>
</select>
</div>
<div class="iptOrSelect">
<select id="jumpSelectTwo${i}" class="type2 form-control" data-first-title="请选择">
<option value="">请选择</option>
</select>
</div>
</div>`
if (data[i].goblinGoods) {
str+= `<div class="input-group iptOrSelect shwoSelect${i}" style="display:none;">
<input id="searchIpt${i}" type="text" class="form-control storeList" onFocus="focusMethod(this)" data-id="${data[i].goblinGoods.spuId}" value="${data[i].goblinGoods.name}" placeholder="">
<div class="input-group-btn">
<ul class="dropdown-menu dropdown-menu-right" role="menu">
</ul>
</div>
</div>`
} else {
str+=`<div class="input-group iptOrSelect shwoSelect${i}" style="display:none;">
<input id="searchIpt${i}" type="text" class="form-control storeList" onFocus="focusMethod(this)" value="" placeholder="">
<div class="input-group-btn"> <div class="input-group-btn">
<ul class="dropdown-menu dropdown-menu-right" role="menu"> <ul class="dropdown-menu dropdown-menu-right" role="menu">
</ul> </ul>
</div> </div>
</div>` </div>`
} else { }
str+=`<div class="input-group iptOrSelect shwoSelect${i}" style="display:none;">
<input id="searchIpt${i}" type="text" class="form-control storeList" onFocus="focusMethod(this)" value="" placeholder=""> str+= `<div class="link${i}" style="display:none;">
<div class="input-group-btn"> <input id="linkUrl${i}" type="text" class="layui-input form-control linkUrl" value="${data[i].activityUrl}" placeholder="请输入活动链接">
<ul class="dropdown-menu dropdown-menu-right" role="menu"> </div>
</ul>
</div>
</div>`
}
str+= `<div class="link${i}" style="display:none;">
<input id="linkUrl${i}" type="text" class="layui-input form-control linkUrl" value="${data[i].activityUrl}" placeholder="请输入活动链接">
</div> </div>
</div> </div>
</div> <div class="set_function">
<div class="set_function"> <div class="set_function_time">
<div class="set_function_time"> <div class="title">
<div class="title"> 标题:
标题: </div>
</div> <div class="select_tiem">
<div class="select_tiem"> <input type="text" class="layui-input form-control titleIpt" id="startTime${i}" value="${data[i].title}" autocomplete="off" placeholder="请输入标题">
<input type="text" class="layui-input form-control titleIpt" id="startTime${i}" value="${data[i].title}" autocomplete="off" placeholder="请输入标题"> </div>
</div> </div>
</div> </div>
</div> </div>`
</div>` $("#bannerList").append(str);
$("#bannerList").append(str); common(i)
common(i) // setTimeout(() => {
// setTimeout(() => { let type = data[i].navigationType;
let type = data[i].navigationType; showOrhide (type, i, data[i].categoryType)
showOrhide (type, i, data[i].categoryType)
$("#jumpType"+i+" option[value="+type+"]").attr('selected','selected');
$("#jumpType"+i+" option[value="+type+"]").attr('selected','selected'); returnData = [];
// }, 500); // }, 500);
}
} else {
returnData = data.map((item, index) => {
item.delTag = 1;
return {...item}
})
console.log(returnData, 'returnData')
if (hang == 1) {
addItem (4);
} else {
addItem (8);
}
} }
} else { } else {
console.log('?') console.log('?')
addItem (4); if (hang == 1) {
addItem (4);
} else {
addItem (8);
}
} }
}) })
}) }
$("input[name=optionsRadios]").change(function(e){ $("input[name=optionsRadios]").change(function(e){
$("#bannerList").empty(); $("#bannerList").empty();
if (e.target.value == 2) { if (e.target.value == 2) {
hang = 2; hang = 2;
addItem (8); // addItem (8);
showDetail (2)
} else { } else {
hang = 1; hang = 1;
addItem (4); showDetail (2)
} }
}) })
function addItem (num) { function addItem (num) {
...@@ -388,6 +412,8 @@ ...@@ -388,6 +412,8 @@
obj['updateTime'] = ''; obj['updateTime'] = '';
arr.push({...obj}) arr.push({...obj})
});//foreach js6章封装的方法 });//foreach js6章封装的方法
arr = arr.concat(returnData);
console.log(arr,returnData, 'arr')
promiseMethods('/navigation/createOrUpdate', 'post', JSON.stringify(arr), 'application/json').then(() => { promiseMethods('/navigation/createOrUpdate', 'post', JSON.stringify(arr), 'application/json').then(() => {
let data = { let data = {
"mid": 2, "mid": 2,
......
package com.liquidnet.client.admin.zhengzai.goblin.service.impl; package com.liquidnet.client.admin.zhengzai.goblin.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
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;
import com.liquidnet.client.admin.zhengzai.goblin.service.IGoblinFrontSelectGoodsService; import com.liquidnet.client.admin.zhengzai.goblin.service.IGoblinFrontSelectGoodsService;
import com.liquidnet.common.cache.redis.util.RedisGoblinUtil; import com.liquidnet.common.cache.redis.util.RedisGoblinUtil;
import com.liquidnet.commons.lang.util.IDGenerator; import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.commons.lang.util.StringUtil; import com.liquidnet.commons.lang.util.StringUtil;
import com.liquidnet.service.goblin.constant.GoblinRedisConst; import com.liquidnet.service.goblin.constant.GoblinRedisConst;
import com.liquidnet.service.goblin.entity.GoblinFrontSelectGoods; import com.liquidnet.service.goblin.entity.GoblinFrontSelectGoods;
...@@ -15,7 +13,6 @@ import com.liquidnet.service.goblin.entity.GoblinGoods; ...@@ -15,7 +13,6 @@ import com.liquidnet.service.goblin.entity.GoblinGoods;
import com.liquidnet.service.goblin.mapper.GoblinFrontSelectGoodsMapper; import com.liquidnet.service.goblin.mapper.GoblinFrontSelectGoodsMapper;
import com.liquidnet.service.goblin.mapper.GoblinGoodsMapper; import com.liquidnet.service.goblin.mapper.GoblinGoodsMapper;
import com.liquidnet.service.goblin.param.GoblinFrontSelectGoodsParam; import com.liquidnet.service.goblin.param.GoblinFrontSelectGoodsParam;
import com.mongodb.BasicDBObject;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.MongoTemplate;
...@@ -76,26 +73,64 @@ public class GoblinFrontSelectGoodsServiceImpl extends ServiceImpl<GoblinFrontSe ...@@ -76,26 +73,64 @@ public class GoblinFrontSelectGoodsServiceImpl extends ServiceImpl<GoblinFrontSe
} }
public boolean update(GoblinFrontSelectGoods goblinFrontSelectGoods){ public boolean update(GoblinFrontSelectGoods goblinFrontSelectGoods){
if(goblinFrontSelectGoods.getMid()>0){ //清空精选商品
goblinFrontSelectGoodsMapper.deleteAll();
//重新创建
String spuIds=goblinFrontSelectGoods.getSpuId();
if(StringUtil.isNotBlank(spuIds)){
String[] spuIdss=spuIds.split(",");
int index=0;
for(String spuId:spuIdss){
index++;
GoblinFrontSelectGoods goblinFrontSelectGoods1=new GoblinFrontSelectGoods();
goblinFrontSelectGoods1.setIndexs(index);
goblinFrontSelectGoods1.setUpdateTime(LocalDateTime.now());
goblinFrontSelectGoods1.setDelTag(0);
goblinFrontSelectGoods1.setCreateTime(LocalDateTime.now());
goblinFrontSelectGoods1.setSelectGoodsId(IDGenerator.nextSnowId());
goblinFrontSelectGoods1.setSpuId(spuId);
goblinFrontSelectGoods1.setOrderType(goblinFrontSelectGoods.getOrderType());
goblinFrontSelectGoodsMapper.insert(goblinFrontSelectGoods1);
}
}
/* if(goblinFrontSelectGoods.getMid()>0){
goblinFrontSelectGoods.setUpdateTime(LocalDateTime.now()); goblinFrontSelectGoods.setUpdateTime(LocalDateTime.now());
goblinFrontSelectGoodsMapper.updateById(goblinFrontSelectGoods); goblinFrontSelectGoodsMapper.updateById(goblinFrontSelectGoods);
}else{ }else{
this.create(goblinFrontSelectGoods); this.create(goblinFrontSelectGoods);
} }*/
return true; return true;
} }
public List getList(){ public List getList(){
LambdaQueryWrapper<GoblinFrontSelectGoods> queryWrapper = Wrappers.lambdaQuery(GoblinFrontSelectGoods.class); LambdaQueryWrapper<GoblinFrontSelectGoods> queryWrapper = Wrappers.lambdaQuery(GoblinFrontSelectGoods.class);
queryWrapper.eq(GoblinFrontSelectGoods::getDelTag,0); queryWrapper.eq(GoblinFrontSelectGoods::getDelTag,0);
List<GoblinFrontSelectGoods> list= goblinFrontSelectGoodsMapper.selectList(queryWrapper); queryWrapper.orderByAsc(GoblinFrontSelectGoods::getIndexs);
List<GoblinGoods> goblinGoodsList =new ArrayList<>(); List<GoblinFrontSelectGoods> list= goblinFrontSelectGoodsMapper.selectList(queryWrapper);
List<GoblinFrontSelectGoodsParam> goodsP =new ArrayList<>(); String spuIds="";
for(GoblinFrontSelectGoods goblinFrontSelectGoods:list){ for(GoblinFrontSelectGoods goblinFrontSelectGoods:list){
String spuids=goblinFrontSelectGoods.getSpuId(); if(StringUtil.isBlank(spuIds)){
if(StringUtil.isNotBlank(spuids)){ spuIds=goblinFrontSelectGoods.getSpuId();
String[] spuIds=spuids.split(","); }else{
for(String id:spuIds){ spuIds=spuIds+","+goblinFrontSelectGoods.getSpuId();
}
}
if(list.size()>0){
GoblinFrontSelectGoods p=list.get(0);
GoblinFrontSelectGoods a=new GoblinFrontSelectGoods();
a.setOrderType(p.getOrderType());
a.setSelectGoodsId(spuIds);
a.setCreateTime(p.getCreateTime());
a.setDelTag(p.getDelTag());
a.setUpdateTime(p.getUpdateTime());
a.setSpuId(spuIds);
a.setSelectGoodsId("1");
a.setMid(1l);
List<GoblinGoods> goblinGoodsList =new ArrayList<>();
List<GoblinFrontSelectGoodsParam> goodsP =new ArrayList<>();
if(StringUtil.isNotBlank(spuIds)){
String[] dd=spuIds.split(",");
for(String id:dd){
LambdaQueryWrapper<GoblinGoods> queryWrappers = Wrappers.lambdaQuery(GoblinGoods.class); LambdaQueryWrapper<GoblinGoods> queryWrappers = Wrappers.lambdaQuery(GoblinGoods.class);
queryWrappers.ne(GoblinGoods::getDelFlg,"1"); queryWrappers.ne(GoblinGoods::getDelFlg,"1");
queryWrappers.eq(GoblinGoods::getSpuId,id); queryWrappers.eq(GoblinGoods::getSpuId,id);
...@@ -104,35 +139,29 @@ public class GoblinFrontSelectGoodsServiceImpl extends ServiceImpl<GoblinFrontSe ...@@ -104,35 +139,29 @@ public class GoblinFrontSelectGoodsServiceImpl extends ServiceImpl<GoblinFrontSe
goblinGoodsList.add(goodsList.get(0)); goblinGoodsList.add(goodsList.get(0));
} }
} }
GoblinFrontSelectGoodsParam goblinFrontSelectGoodsParam=new GoblinFrontSelectGoodsParam();
BeanUtils.copyProperties(a,goblinFrontSelectGoodsParam);
goblinFrontSelectGoodsParam.setGoblinGoodsList(goblinGoodsList);
goodsP.add(goblinFrontSelectGoodsParam);
return goodsP;
} }
GoblinFrontSelectGoodsParam goblinFrontSelectGoodsParam=new GoblinFrontSelectGoodsParam(); }else{
BeanUtils.copyProperties(goblinFrontSelectGoods,goblinFrontSelectGoodsParam); return null;
goblinFrontSelectGoodsParam.setGoblinGoodsList(goblinGoodsList);
goodsP.add(goblinFrontSelectGoodsParam);
} }
return null;
return goodsP;
} }
public boolean online(){ public boolean online(){
//查询 //查询
LambdaQueryWrapper<GoblinFrontSelectGoods> queryWrapper = Wrappers.lambdaQuery(GoblinFrontSelectGoods.class); LambdaQueryWrapper<GoblinFrontSelectGoods> queryWrapper = Wrappers.lambdaQuery(GoblinFrontSelectGoods.class);
queryWrapper.eq(GoblinFrontSelectGoods::getDelTag,0); queryWrapper.eq(GoblinFrontSelectGoods::getDelTag,0);
queryWrapper.orderByAsc(GoblinFrontSelectGoods::getIndexs);
List<GoblinFrontSelectGoods> list=goblinFrontSelectGoodsMapper.selectList(queryWrapper); List<GoblinFrontSelectGoods> list=goblinFrontSelectGoodsMapper.selectList(queryWrapper);
//删除 mogndob
Query query = Query.query(Criteria.where("delTag").is("0"));
mongoTemplate.findAllAndRemove(query, GoblinFrontSelectGoods.class);
if(list.size()>0){ if(list.size()>0){
//放入mongodb for(GoblinFrontSelectGoods goblinFrontSelectGoods:list){
GoblinFrontSelectGoods goblinFrontSelectGoods= list.get(0);
GoblinFrontSelectGoods goblinFrontSelectGoods1= mongoTemplate.findOne(Query.query(Criteria.where("selectGoodsId").is(goblinFrontSelectGoods.getSelectGoodsId())), GoblinFrontSelectGoods.class, GoblinFrontSelectGoods.class.getSimpleName());
if(null==goblinFrontSelectGoods1){
mongoTemplate.save(goblinFrontSelectGoods,GoblinFrontSelectGoods.class.getSimpleName()); mongoTemplate.save(goblinFrontSelectGoods,GoblinFrontSelectGoods.class.getSimpleName());
}else{
BasicDBObject orderObject = new BasicDBObject("$set", JSON.parse(JsonUtils.toJson(goblinFrontSelectGoods)));
mongoTemplate.getCollection(GoblinFrontSelectGoods.class.getSimpleName()).updateOne(
Query.query(Criteria.where("selectGoodsId").is(goblinFrontSelectGoods.getSelectGoodsId())).getQueryObject(),
orderObject
);
} }
redisGoblinUtil.set(GoblinRedisConst.SELECT_GOODS,list); redisGoblinUtil.set(GoblinRedisConst.SELECT_GOODS,list);
} }
......
...@@ -41,6 +41,10 @@ public class GoblinFrontSelectGoods implements Serializable { ...@@ -41,6 +41,10 @@ public class GoblinFrontSelectGoods implements Serializable {
*/ */
private Integer delTag; private Integer delTag;
/*顺序
*/
private Integer indexs;
/** /**
* 创建时间 * 创建时间
*/ */
......
...@@ -5,7 +5,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; ...@@ -5,7 +5,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/** /**
* <p> * <p>
* 精选商品 * 精选商品
Mapper 接口 Mapper 接口
* </p> * </p>
* *
...@@ -13,5 +13,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; ...@@ -13,5 +13,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
* @since 2022-01-04 * @since 2022-01-04
*/ */
public interface GoblinFrontSelectGoodsMapper extends BaseMapper<GoblinFrontSelectGoods> { public interface GoblinFrontSelectGoodsMapper extends BaseMapper<GoblinFrontSelectGoods> {
public void deleteAll();
} }
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.liquidnet.service.goblin.mapper.GoblinFrontSelectGoodsMapper">
<delete id="deleteAll">
delete from goblin_front_select_goods
</delete>
</mapper>
...@@ -56,7 +56,7 @@ goblin.self.market.delSpuRelation=UPDATE goblin_marketing_zhengzai SET del_flag ...@@ -56,7 +56,7 @@ goblin.self.market.delSpuRelation=UPDATE goblin_marketing_zhengzai SET del_flag
#---- 订单创建&支付 #---- 订单创建&支付
goblin.order.create.order_insert=INSERT INTO goblin_store_order (`master_order_code`,`order_id`,`store_id`,`store_name`,`order_code`,`user_id`,`user_name`,`user_mobile`,`price_total`,`price_actual`,`price_refund`,`price_express`,`price_coupon`,`price_voucher`,`status`,`ucoupon_id`,`pay_type`,`device_from`,`source`,`version`,`is_member`,`order_type`,`write_off_code`,`pay_countdown_minute`,`ip_address`,`pay_code`,`market_id`,`market_type`,`created_at`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?) goblin.order.create.order_insert=INSERT INTO goblin_store_order (`master_order_code`,`order_id`,`store_id`,`store_name`,`order_code`,`user_id`,`user_name`,`user_mobile`,`price_total`,`price_actual`,`price_refund`,`price_express`,`price_coupon`,`price_voucher`,`status`,`ucoupon_id`,`pay_type`,`device_from`,`source`,`version`,`is_member`,`order_type`,`write_off_code`,`pay_countdown_minute`,`ip_address`,`pay_code`,`market_id`,`market_type`,`created_at`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
goblin.order.create.attr_insert=INSERT INTO goblin_order_attr (`order_attr_id`,`order_id`,`express_contacts`,`express_address`,`express_address_detail`,`express_phone`,`express_type`,`created_at`) VALUES (?,?,?,?,?,?,?,?) goblin.order.create.attr_insert=INSERT INTO goblin_order_attr (`order_attr_id`,`order_id`,`express_contacts`,`express_address`,`express_address_detail`,`express_phone`,`express_type`,`created_at`) VALUES (?,?,?,?,?,?,?,?)
goblin.order.create.sku_insert=INSERT INTO goblin_order_sku (`order_sku_id`,`order_id`,`spu_id`,`spu_name`,`spu_pic`,`sku_id`,`num`,`sku_price`,`sku_price_actual`,`sku_name`,`sku_no`,`sku_image`,`sku_specs`,`price_voucher`,`created_at`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?) goblin.order.create.sku_insert=INSERT INTO goblin_order_sku (`order_sku_id`,`order_id`,`spu_id`,`spu_name`,`spu_pic`,`sku_id`,`num`,`sku_price`,`sku_price_actual`,`sku_name`,`sku_no`,`sku_image`,`sku_specs`,`price_voucher`,`created_at`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
goblin_order.pay.order=UPDATE goblin_store_order SET payment_type = ? ,payment_id=?,pay_code = ? ,pay_time = ?,write_off_code = ? ,status = ? ,updated_at = ? WHERE order_id = ? and (updated_at <= ? or created_at = ? or updated_at is null) goblin_order.pay.order=UPDATE goblin_store_order SET payment_type = ? ,payment_id=?,pay_code = ? ,pay_time = ?,write_off_code = ? ,status = ? ,updated_at = ? WHERE order_id = ? and (updated_at <= ? or created_at = ? or updated_at is null)
goblin_order.pay.sku=UPDATE goblin_order_sku SET status = ? ,updated_at = ? WHERE order_sku_id = ? and (updated_at <= ? or created_at = ? or updated_at is null) goblin_order.pay.sku=UPDATE goblin_order_sku SET status = ? ,updated_at = ? WHERE order_sku_id = ? and (updated_at <= ? or created_at = ? or updated_at is null)
#---- 再次支付 #---- 再次支付
......
...@@ -8,6 +8,7 @@ import com.liquidnet.service.kylin.dto.vo.middle.KylinBuyNoticeVo; ...@@ -8,6 +8,7 @@ import com.liquidnet.service.kylin.dto.vo.middle.KylinBuyNoticeVo;
import com.liquidnet.service.kylin.service.partner.IKylinBuyNoticePartnerService; import com.liquidnet.service.kylin.service.partner.IKylinBuyNoticePartnerService;
import com.liquidnet.service.slime.util.InnerUtils; import com.liquidnet.service.slime.util.InnerUtils;
import com.liquidnet.service.slime.util.PerformanceUtils; import com.liquidnet.service.slime.util.PerformanceUtils;
import com.liquidnet.service.slime.util.RedisSlimeUtils;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse; import io.swagger.annotations.ApiResponse;
...@@ -18,6 +19,7 @@ import org.springframework.web.bind.annotation.RequestParam; ...@@ -18,6 +19,7 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.Arrays; import java.util.Arrays;
import java.util.HashMap;
import java.util.List; import java.util.List;
/** /**
...@@ -39,6 +41,8 @@ public class KylinBuyNoticeParnterController { ...@@ -39,6 +41,8 @@ public class KylinBuyNoticeParnterController {
InnerUtils innerUtils; InnerUtils innerUtils;
@Autowired @Autowired
PerformanceUtils performanceUtils; PerformanceUtils performanceUtils;
@Autowired
RedisSlimeUtils redisSlimeUtils;
@GetMapping(value = "buyNotice") @GetMapping(value = "buyNotice")
@ApiOperation(value = "购票须知列表", position = 1) @ApiOperation(value = "购票须知列表", position = 1)
...@@ -65,4 +69,11 @@ public class KylinBuyNoticeParnterController { ...@@ -65,4 +69,11 @@ public class KylinBuyNoticeParnterController {
public ResponseDto<List<KylinExpressModuleVo>> getExpressList() { public ResponseDto<List<KylinExpressModuleVo>> getExpressList() {
return buyNoticePartnerService.getExpressList(); return buyNoticePartnerService.getExpressList();
} }
@GetMapping(value = "qrPerformance")
@ApiOperation(value = "可扫二维码的演出列表", position = 1)
@ApiResponse(code = 200, message = "接口返回对象参数")
public ResponseDto<List<HashMap<String, String>>> qrPerformance() {
return ResponseDto.success(redisSlimeUtils.qrPerformance());
}
} }
package com.liquidnet.service.slime.util; package com.liquidnet.service.slime.util;
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.service.kylin.constant.KylinRedisConst; import com.liquidnet.service.kylin.constant.KylinRedisConst;
import com.liquidnet.service.kylin.dto.vo.KylinExpressModuleVo; import com.liquidnet.service.kylin.dto.vo.KylinExpressModuleVo;
import com.liquidnet.service.kylin.dto.vo.middle.KylinBuyNoticeVo; import com.liquidnet.service.kylin.dto.vo.middle.KylinBuyNoticeVo;
...@@ -12,6 +13,8 @@ import com.liquidnet.service.slime.service.SlimeRdmService; ...@@ -12,6 +13,8 @@ import com.liquidnet.service.slime.service.SlimeRdmService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List; import java.util.List;
@Component @Component
...@@ -272,4 +275,25 @@ public class RedisSlimeUtils { ...@@ -272,4 +275,25 @@ public class RedisSlimeUtils {
String redisKey = SlimeRedisConst.SUPER_ACCOUNT.concat(merchantId); String redisKey = SlimeRedisConst.SUPER_ACCOUNT.concat(merchantId);
return redisUtil.hasKey(redisKey); return redisUtil.hasKey(redisKey);
} }
/**
* 是否为超级权限账户
*
* @return
*/
public List<HashMap<String, String>> qrPerformance() {
String redisKey = SlimeRedisConst.QR_CODE_PERFORMANCE;
Object obj = redisUtil.get(redisKey);
if (obj == null) {
List<HashMap<String, String>> listMap = new ArrayList<>();
HashMap<String, String> map = CollectionUtil.mapStringString();
map.put("name", "测试演出");
map.put("id", "112233");
listMap.add(map);
redisUtil.set(redisKey, listMap);
return listMap;
} else {
return (List<HashMap<String, String>>) redisUtil.get(redisKey);
}
}
} }
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