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

Commit 48f7b67d authored by jiangxiulong's avatar jiangxiulong

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

parents 0b82deed f78bdbdf
...@@ -86,7 +86,7 @@ public class KylinOrderTicketsController extends BaseController { ...@@ -86,7 +86,7 @@ public class KylinOrderTicketsController extends BaseController {
* 获取第三方列表 * 获取第三方列表
*/ */
@Log(title = "演出订单-初始化转赠 [只支持 transferStatus = 5]]", businessType = BusinessType.LIST) @Log(title = "演出订单-初始化转赠 [只支持 transferStatus = 5]]", businessType = BusinessType.LIST)
@GetMapping("/orderList/initTransfer") @PostMapping("/orderList/initTransfer")
@ResponseBody @ResponseBody
public AjaxResult initTransfer(@RequestParam("orderId") String orderId) { public AjaxResult initTransfer(@RequestParam("orderId") String orderId) {
String result = iKylinOrderTicketsAdminService.initTransfer(orderId); String result = iKylinOrderTicketsAdminService.initTransfer(orderId);
......
...@@ -132,8 +132,8 @@ ...@@ -132,8 +132,8 @@
<div class="ibox-content"> <div class="ibox-content">
<div class="nav-tabs-custom"> <div class="nav-tabs-custom">
<ul class="nav nav-tabs"> <ul class="nav nav-tabs">
<li class="active"><a href="#memberinfo" data-toggle="tab" aria-expanded="true">基础信息</a></li> <li class="tabs_inner active" onclick="tabChange(0)"><a href="#memberinfo" data-toggle="tab" aria-expanded="true">基础信息</a></li>
<li><a href="#membership" data-toggle="tab" aria-expanded="false">会员套餐</a></li> <li class="tabs_inner" onclick="tabChange(1)"><a href="#membership" data-toggle="tab" aria-expanded="false">会员套餐</a></li>
<!-- <li><a href="#membercode" data-toggle="tab" aria-expanded="false">会员码</a></li>--> <!-- <li><a href="#membercode" data-toggle="tab" aria-expanded="false">会员码</a></li>-->
</ul> </ul>
<div class="tab-content"> <div class="tab-content">
...@@ -420,22 +420,22 @@ ...@@ -420,22 +420,22 @@
<div class="col-sm-10"> <div class="col-sm-10">
<div class="radio-box"> <div class="radio-box">
<label for="radio1" onclick="radioType(this)"> <label for="radio1" onclick="radioType(this)">
<input type="radio" id="coupeAdd1" name="coupeAdd_type" value="0"/> 全场 <input type="radio" id="coupeAdd1" class="coupeAddVal" name="coupeAdd_type" value="0"/> 全场
</label> </label>
</div> </div>
<div class="radio-box"> <div class="radio-box">
<label for="radio2" onclick="radioType(this)"> <label for="radio2" onclick="radioType(this)">
<input type="radio" id="coupeAdd2" onclick="radioType(this)" name="coupeAdd_type" value="1"/>演出 <input type="radio" id="coupeAdd2" class="coupeAddVal" onclick="radioType(this)" name="coupeAdd_type" value="1"/>演出
</label> </label>
</div> </div>
<div class="radio-box"> <div class="radio-box">
<label for="radio2" onclick="radioType(this)"> <label for="radio2" onclick="radioType(this)">
<input type="radio" id="coupeAdd3" onclick="radioType(this)" name="coupeAdd_type" value="2"/>商品 <input type="radio" id="coupeAdd3" class="coupeAddVal" onclick="radioType(this)" name="coupeAdd_type" value="2"/>商品
</label> </label>
</div> </div>
<div class="radio-box"> <div class="radio-box">
<label for="radio2" onclick="radioType(this)"> <label for="radio2" onclick="radioType(this)">
<input type="radio" id="coupeAdd4" onclick="radioType(this)" name="coupeAdd_type" value="3"/>优先购买 <input type="radio" id="coupeAdd4" class="coupeAddVal" onclick="radioType(this)" name="coupeAdd_type" value="3"/>优先购买
</label> </label>
</div> </div>
</div> </div>
...@@ -445,12 +445,12 @@ ...@@ -445,12 +445,12 @@
<div class="col-sm-10"> <div class="col-sm-10">
<div class="radio-box"> <div class="radio-box">
<label for="radio1" onclick="coupetType(this)"> <label for="radio1" onclick="coupetType(this)">
<input type="radio" id="coupetypr1" name="coupe_type" value="1"/>满减券 <input type="radio" id="coupetypr2" class="coupeAddVal" name="coupe_type" value="2"/>满减券
</label> </label>
</div> </div>
<div class="radio-box"> <div class="radio-box">
<label for="radio2" onclick="coupetType(this)"> <label for="radio2" onclick="coupetType(this)">
<input type="radio" id="coupetypr2" name="coupe_type" value="2"/>代金券 <input type="radio" id="coupetypr1" class="coupeAddVal" name="coupe_type" value="1"/>代金券
</label> </label>
</div> </div>
</div> </div>
...@@ -525,8 +525,20 @@ ...@@ -525,8 +525,20 @@
$("#fileinput-demo-1").on("fileuploaded", function (event, data, previewId, index) { $("#fileinput-demo-1").on("fileuploaded", function (event, data, previewId, index) {
$('.coverCon').val('https://img.zhengzai.tv/' + data.response.data.ossPath); $('.coverCon').val('https://img.zhengzai.tv/' + data.response.data.ossPath);
}); });
var tabActive = window.localStorage.getItem('tabActive');
if (tabActive == 1) {
$('.tabs_inner').removeClass('active');
$('.tab-pane').removeClass('active');
$('.tabs_inner').eq(Number(tabActive)).addClass('active');
$('.tab-pane').eq(Number(tabActive)).addClass('active');
}
}); });
function tabChange (num) {
window.localStorage.setItem('tabActive', num);
}
// 弹窗确认取消按钮 // 弹窗确认取消按钮
function popBtn (num) { function popBtn (num) {
if (num == 0) { if (num == 0) {
...@@ -566,20 +578,23 @@ ...@@ -566,20 +578,23 @@
var couType = this.typeCoupe; var couType = this.typeCoupe;
var valOver = $('#valOver').val(); var valOver = $('#valOver').val();
var valMinus = $('#valMinus').val(); var valMinus = $('#valMinus').val();
if (couType == 2) { if (couType == 1) {
var valFace = $('#valFace').val(); var valFace = $('#valFace').val();
} }
} }
var itemIndex = $('.parentsIndex').val(); var itemIndex = $('.parentsIndex').val();
var mrightsId = this.mrightsId;
var couponId = this.couponId;
var MembercoupenData = { var MembercoupenData = {
busiType: Number(busiType), busiType: Number(busiType),
couType: Number(busiType) == 3 ? 101 : Number(couType), couType: Number(busiType) == 3 ? 101 : Number(couType),
couponId: '', couponId: couponId? couponId : '',
couponRuleList: couponRuleList, couponRuleList: couponRuleList,
eventAmt: $('#eventAmt').val(), eventAmt: $('#eventAmt').val(),
label: "标注", label: "标注",
memberId: member.memberId, memberId: member.memberId,
mrightsId: memberRightsList[itemIndex].mrightsId ? memberRightsList[itemIndex].mrightsId : 'string', mrightsId: mrightsId ? mrightsId : memberRightsList[itemIndex].mrightsId ? memberRightsList[itemIndex].mrightsId : 'string',
// overlay: overlay ? overlay : 0, // overlay: overlay ? overlay : 0,
overlay: 1, overlay: 1,
title: coupeTitle, title: coupeTitle,
...@@ -617,7 +632,7 @@ ...@@ -617,7 +632,7 @@
function coupetType (obj) { function coupetType (obj) {
var typeCoupe = $(obj).find('input').val(); var typeCoupe = $(obj).find('input').val();
this.typeCoupe = typeCoupe; this.typeCoupe = typeCoupe;
if (typeCoupe == 2) { if (typeCoupe == 1) {
$('.coupetypr_price').show(); $('.coupetypr_price').show();
$('.coupetypr_discount').hide(); $('.coupetypr_discount').hide();
} else { } else {
...@@ -691,6 +706,62 @@ ...@@ -691,6 +706,62 @@
// 编辑券 // 编辑券
function editCoupes (obj, dataObj) { function editCoupes (obj, dataObj) {
var coupenObj = dataObj; var coupenObj = dataObj;
this.typeRadio = coupenObj.busiType;
this.typeCoupe = coupenObj.couType;
$('.coupeAddVal').parent().removeClass('checked');
$('.coupeAddVal').attr('checked', false);
$('#coupeAdd_title').val(coupenObj.title);
$('#coupeAdd' + (coupenObj.busiType + 1)).attr('checked', true);
$('#coupeAdd' + (coupenObj.busiType + 1)).parent().addClass('checked');
$('#coupetypr' + coupenObj.couType).attr('checked', true);
$('#coupetypr' + coupenObj.couType).parent().addClass('checked');
var parentObj = $(obj).parent().parent().parent();
var couponId = parentObj.find('#mrccouponId').val();
var eventAmt = parentObj.find('#mrceventAmt').val();
var memberId = member.memberId;
var mrightsId = parentObj.find('#mrcmcouponId').val();
var valFace = parentObj.find('#mrvalFace').val();
var valOver = parentObj.find('#mrcvalOver').val();
var valMinus = parentObj.find('#mrcvalMinus').val();
this.mrightsId = mrightsId;
this.couponId = couponId;
$('#eventAmt').val(eventAmt);
$('#valOver').val(valOver);
$('#valMinus').val(valMinus);
$('#valFace').val(valFace);
if (this.typeRadio == 3) {
$('.alltrack').hide();
$('.alltrack_limit').show();
} else {
$('.alltrack').show();
$('.alltrack_limit').hide();
}
if (this.typeCoupe == 1) {
$('.coupetypr_price').show();
$('.coupetypr_discount').hide();
} else {
$('.coupetypr_price').hide();
$('.coupetypr_discount').show();
}
if (this.typeRadio == 0 || this.typeRadio == 1 || this.typeRadio == 3) {
var couponRuleList = [{
useScope: 100,
busiName: '全部演出'
}]
} else {
var couponRuleList = [{
useScope: 100,
busiName: '全部商品'
}]
}
$('.coupe_pop').show(); $('.coupe_pop').show();
} }
......
...@@ -68,7 +68,7 @@ ...@@ -68,7 +68,7 @@
align: 'center', align: 'center',
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 + '\')"><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 ' + viewMemberCodeFlag + '" href="javascript:void(0)" onclick="memberCodeList(\'' + row.memberId + '\')"><i class="fa fa-edit"></i>会员码</a> ');
return actions.join(''); return actions.join('');
} }
...@@ -81,6 +81,10 @@ ...@@ -81,6 +81,10 @@
function memberCodeList(memberId) { function memberCodeList(memberId) {
$.modal.openTab("会员码列表", 'adam/member/code/' + memberId); $.modal.openTab("会员码列表", 'adam/member/code/' + memberId);
} }
function setVipTabs () {
window.localStorage.setItem('tabActive', 0);
}
</script> </script>
</body> </body>
</html> </html>
\ No newline at end of file
...@@ -223,7 +223,7 @@ ...@@ -223,7 +223,7 @@
}); });
function f(id) { function f(id) {
$.post(prefix + "/kylin/initTransfer",{orderId:id},function (res) { $.post(prefix + "/initTransfer",{orderId:id},function (res) {
alert(res.msg) alert(res.msg)
}); });
} }
......
package com.liquidnet.client.admin.zhengzai.adam.service.impl; package com.liquidnet.client.admin.zhengzai.adam.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
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.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.JsonNode;
...@@ -8,10 +9,7 @@ import com.liquidnet.client.admin.common.core.domain.AjaxResult; ...@@ -8,10 +9,7 @@ import com.liquidnet.client.admin.common.core.domain.AjaxResult;
import com.liquidnet.client.admin.common.utils.ShiroUtils; import com.liquidnet.client.admin.common.utils.ShiroUtils;
import com.liquidnet.client.admin.zhengzai.adam.service.IAdamMemberOrderAdminService; import com.liquidnet.client.admin.zhengzai.adam.service.IAdamMemberOrderAdminService;
import com.liquidnet.common.cache.redis.util.RedisUtil; import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.commons.lang.util.BeanUtil; import com.liquidnet.commons.lang.util.*;
import com.liquidnet.commons.lang.util.HttpUtil;
import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.adam.constant.AdamRedisConst; import com.liquidnet.service.adam.constant.AdamRedisConst;
import com.liquidnet.service.adam.dto.MemberOrderDto; import com.liquidnet.service.adam.dto.MemberOrderDto;
import com.liquidnet.service.adam.dto.admin.AdamMemberOrderRefundParam; import com.liquidnet.service.adam.dto.admin.AdamMemberOrderRefundParam;
...@@ -28,6 +26,7 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -28,6 +26,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import org.springframework.util.LinkedMultiValueMap; import org.springframework.util.LinkedMultiValueMap;
import java.beans.IntrospectionException; import java.beans.IntrospectionException;
...@@ -185,6 +184,32 @@ public class AdamMemberOrderAdminServiceImpl extends ServiceImpl<AdamMemberOrder ...@@ -185,6 +184,32 @@ public class AdamMemberOrderAdminServiceImpl extends ServiceImpl<AdamMemberOrder
vos.set(idx, vo); vos.set(idx, vo);
redisUtil.set(moKey, vos); redisUtil.set(moKey, vos);
if (memberRefund.getRenewable() == 2) {
AdamUserMember updateUserMember = new AdamUserMember();
updateUserMember.setState(2);
updateUserMember.setUpdatedAt(now);
updateUserMember.setComment("R");
LambdaUpdateWrapper<AdamUserMember> userMemberLambdaUpdateWrapper = Wrappers.lambdaUpdate(AdamUserMember.class);
userMemberLambdaUpdateWrapper.eq(AdamUserMember::getUid, memberOrder.getUid());
adamUserMemberMapper.update(updateUserMember, userMemberLambdaUpdateWrapper);
String umkey = AdamRedisConst.INFO_USER_MEMBER + memberOrder.getUid();
AdamUserMemberVo userMemberVo = (AdamUserMemberVo) redisUtil.get(umkey);
userMemberVo.setState(2);
userMemberVo.setUpdatedAt(now);
redisUtil.set(umkey, userMemberVo);
List<String> uidBlackList = (List<String>) redisUtil.get(AdamRedisConst.BLK_LIST_MEMBER_UID);
if (CollectionUtils.isEmpty(uidBlackList)) {
uidBlackList = CollectionUtil.arrayListString();
}
uidBlackList.add(memberOrder.getUid());
redisUtil.set(AdamRedisConst.BLK_LIST_MEMBER_UID, uidBlackList);
}
return AjaxResult.success(); return AjaxResult.success();
} }
......
...@@ -21,13 +21,14 @@ public class TestAdam { ...@@ -21,13 +21,14 @@ public class TestAdam {
"adam:info:third_party:2104440", "adam:info:third_party:2104440",
"adam:info:enters:2104440", "adam:info:enters:2104440",
"adam:info:addresses:2104440", "adam:info:addresses:2104440",
"adam:info:member:code:GMRGBUQB30",
"adam:identity:mobile:18505123456", "adam:identity:mobile:18505123456",
"adam:identity:sso:245482441472573441815566", "adam:identity:sso:245482441472573441815566",
"adam:info:user:310508344264376327445470", "adam:info:user:310508344264376327445470",
"adam:morder:2283655", "adam:morder:2283655",
"adam:info:umember:1404935", "adam:info:umember:1364947",
"adam:info:morder:1404935", "adam:info:morder:1364947",
"adam:info:member:simple", "adam:info:member:simple",
"adam:info:member:category:1", "adam:info:member:category:1",
......
...@@ -85,6 +85,7 @@ public class PlatformMemberRefundService extends ServiceImpl<AdamMemberRefundMap ...@@ -85,6 +85,7 @@ public class PlatformMemberRefundService extends ServiceImpl<AdamMemberRefundMap
private void refundSuccProcessing(String orderNo, LocalDateTime now) { private void refundSuccProcessing(String orderNo, LocalDateTime now) {
AdamMemberOrder memberOrder = adamMemberOrderMapper.selectOne(Wrappers.lambdaUpdate(AdamMemberOrder.class).eq(AdamMemberOrder::getOrderNo, orderNo)); AdamMemberOrder memberOrder = adamMemberOrderMapper.selectOne(Wrappers.lambdaUpdate(AdamMemberOrder.class).eq(AdamMemberOrder::getOrderNo, orderNo));
LocalDateTime newExpiryAt = null;
{// 同步用户端信息 {// 同步用户端信息
String moKey = AdamRedisConst.INFO_MEMBER_ORDER + memberOrder.getUid(); String moKey = AdamRedisConst.INFO_MEMBER_ORDER + memberOrder.getUid();
...@@ -99,14 +100,17 @@ public class PlatformMemberRefundService extends ServiceImpl<AdamMemberRefundMap ...@@ -99,14 +100,17 @@ public class PlatformMemberRefundService extends ServiceImpl<AdamMemberRefundMap
String umKey = AdamRedisConst.INFO_USER_MEMBER.concat(memberOrder.getUid()); String umKey = AdamRedisConst.INFO_USER_MEMBER.concat(memberOrder.getUid());
AdamUserMemberVo userMemberVo = (AdamUserMemberVo) redisUtil.get(umKey); AdamUserMemberVo userMemberVo = (AdamUserMemberVo) redisUtil.get(umKey);
userMemberVo.setState(2);
newExpiryAt = userMemberVo.getExpiryAt().minusDays(memberOrder.getDays());
userMemberVo.setExpiryAt(newExpiryAt);
userMemberVo.setUpdatedAt(now); userMemberVo.setUpdatedAt(now);
syncVo = redisUtil.set(umKey, userMemberVo); syncVo = redisUtil.set(umKey, userMemberVo);
log.warn("###会员退款回调处理成功:更新REDIS会员状态{}[orderNo:{},uid:{}]", syncVo ? "成功" : "失败", orderNo, memberOrder.getUid()); log.warn("###会员退款回调处理成功:更新REDIS会员状态{}[orderNo:{},uid:{}]", syncVo ? "成功" : "失败", orderNo, memberOrder.getUid());
} }
AdamUserMember updateInfoUserMember = new AdamUserMember(); AdamUserMember updateInfoUserMember = new AdamUserMember();
updateInfoUserMember.setState(2); updateInfoUserMember.setExpiryAt(newExpiryAt);
updateInfoUserMember.setUpdatedAt(now); updateInfoUserMember.setUpdatedAt(now);
updateInfoUserMember.setComment("R"); updateInfoUserMember.setComment("R");
int updateRst = adamUserMemberMapper.update(updateInfoUserMember, Wrappers.lambdaUpdate(AdamUserMember.class).eq(AdamUserMember::getUid, memberOrder.getUid())); int updateRst = adamUserMemberMapper.update(updateInfoUserMember, Wrappers.lambdaUpdate(AdamUserMember.class).eq(AdamUserMember::getUid, memberOrder.getUid()));
......
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