空字符串的sql处理
充值流水id填充
This commit is contained in:
@@ -4,6 +4,7 @@ import com.czg.account.dto.ShopActivateDTO;
|
|||||||
import com.czg.account.service.ShopActivateService;
|
import com.czg.account.service.ShopActivateService;
|
||||||
import com.czg.annotation.SaAdminCheckPermission;
|
import com.czg.annotation.SaAdminCheckPermission;
|
||||||
import com.czg.resp.CzgResult;
|
import com.czg.resp.CzgResult;
|
||||||
|
import com.czg.sa.StpKit;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
@@ -39,6 +40,7 @@ public class ShopActivateController {
|
|||||||
@SaAdminCheckPermission("activate:add")
|
@SaAdminCheckPermission("activate:add")
|
||||||
@PostMapping
|
@PostMapping
|
||||||
public CzgResult<Boolean> add(@RequestBody @Validated ShopActivateDTO activateDTO) {
|
public CzgResult<Boolean> add(@RequestBody @Validated ShopActivateDTO activateDTO) {
|
||||||
|
activateDTO.setShopId(StpKit.USER.getShopId());
|
||||||
return CzgResult.success(shopActivateService.add(activateDTO));
|
return CzgResult.success(shopActivateService.add(activateDTO));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -25,6 +25,12 @@ public class ShopUserMoneyEditDTO {
|
|||||||
*/
|
*/
|
||||||
@NotNull
|
@NotNull
|
||||||
private Integer type;
|
private Integer type;
|
||||||
|
/**
|
||||||
|
* 关联id,
|
||||||
|
* 霸王餐时 订单id
|
||||||
|
* 支付/退款 tb_order_payment.id
|
||||||
|
*/
|
||||||
|
private Long relationId;
|
||||||
/**
|
/**
|
||||||
* 浮动金额
|
* 浮动金额
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -55,9 +55,11 @@ public class ShopUserFlow implements Serializable {
|
|||||||
private String remark;
|
private String remark;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 关联订单编号,支付单号,退款单号
|
* 关联id,
|
||||||
|
* 霸王餐时 订单id
|
||||||
|
* 支付/退款 tb_order_payment.id
|
||||||
*/
|
*/
|
||||||
private String relationOrderNo;
|
private Long relationId;
|
||||||
|
|
||||||
@Column(onInsertValue = "now()")
|
@Column(onInsertValue = "now()")
|
||||||
private LocalDateTime createTime;
|
private LocalDateTime createTime;
|
||||||
|
|||||||
@@ -0,0 +1,18 @@
|
|||||||
|
package com.czg.utils;
|
||||||
|
|
||||||
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author ww
|
||||||
|
* @description
|
||||||
|
*/
|
||||||
|
public class CzgStrUtils {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 如果str为空,返回null,否则返回str
|
||||||
|
* flex sql查询时 自动忽略null 不忽略''
|
||||||
|
*/
|
||||||
|
public static String getStrOrNull(String str) {
|
||||||
|
return StrUtil.isNotBlank(str) ? str : null;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -23,8 +23,10 @@ public class ShopActivateServiceImpl extends ServiceImpl<ShopActivateMapper, Sho
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<ShopActivateDTO> getList() {
|
public List<ShopActivateDTO> getList() {
|
||||||
return queryChain().select().eq(ShopActivate::getShopId, StpKit.USER.getShopId())
|
return queryChain().select()
|
||||||
.orderBy(ShopActivate::getAmount, true).listAs(ShopActivateDTO.class);
|
.eq(ShopActivate::getShopId, StpKit.USER.getShopId())
|
||||||
|
.orderBy(ShopActivate::getAmount, true)
|
||||||
|
.listAs(ShopActivateDTO.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -99,6 +99,7 @@ public class ShopUserServiceImpl extends ServiceImpl<ShopUserMapper, ShopUser> i
|
|||||||
userFlow.setBizCode(shopUserEditDTO.getBizEnum().getCode());
|
userFlow.setBizCode(shopUserEditDTO.getBizEnum().getCode());
|
||||||
userFlow.setType(shopUserEditDTO.getType() == 0 ? "-" : "+");
|
userFlow.setType(shopUserEditDTO.getType() == 0 ? "-" : "+");
|
||||||
userFlow.setRemark(shopUserEditDTO.getRemark());
|
userFlow.setRemark(shopUserEditDTO.getRemark());
|
||||||
|
userFlow.setRelationId(shopUserEditDTO.getRelationId());
|
||||||
return shopUserFlowService.save(userFlow);
|
return shopUserFlowService.save(userFlow);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ import com.czg.order.vo.OrderDetailSmallVO;
|
|||||||
import com.czg.order.vo.OrderInfoVo;
|
import com.czg.order.vo.OrderInfoVo;
|
||||||
import com.czg.service.order.enums.OrderStatusEnums;
|
import com.czg.service.order.enums.OrderStatusEnums;
|
||||||
import com.czg.service.order.mapper.OrderInfoMapper;
|
import com.czg.service.order.mapper.OrderInfoMapper;
|
||||||
|
import com.czg.utils.CzgStrUtils;
|
||||||
import com.czg.utils.PageUtil;
|
import com.czg.utils.PageUtil;
|
||||||
import com.mybatisflex.core.paginate.Page;
|
import com.mybatisflex.core.paginate.Page;
|
||||||
import com.mybatisflex.core.query.QueryWrapper;
|
import com.mybatisflex.core.query.QueryWrapper;
|
||||||
@@ -65,11 +66,11 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|||||||
QueryWrapper queryWrapper = PageUtil.buildSortQueryWrapper();
|
QueryWrapper queryWrapper = PageUtil.buildSortQueryWrapper();
|
||||||
|
|
||||||
queryWrapper.eq(OrderInfo::getShopId, param.getShopId())
|
queryWrapper.eq(OrderInfo::getShopId, param.getShopId())
|
||||||
.eq(OrderInfo::getStatus, param.getStatus())
|
.eq(OrderInfo::getStatus, CzgStrUtils.getStrOrNull(param.getStatus()))
|
||||||
.eq(OrderInfo::getPayType, param.getPayType())
|
.eq(OrderInfo::getPayType, CzgStrUtils.getStrOrNull(param.getPayType()))
|
||||||
.eq(OrderInfo::getUserId, param.getUserId())
|
.eq(OrderInfo::getUserId, param.getUserId())
|
||||||
.eq(OrderInfo::getTableCode, param.getTableCode())
|
.eq(OrderInfo::getTableCode, CzgStrUtils.getStrOrNull(param.getTableCode()))
|
||||||
.eq(OrderInfo::getOrderNo, param.getOrderNo())
|
.eq(OrderInfo::getOrderNo, CzgStrUtils.getStrOrNull(param.getOrderNo()))
|
||||||
.gt(OrderInfo::getCreateTime, param.getStartTime())
|
.gt(OrderInfo::getCreateTime, param.getStartTime())
|
||||||
.le(OrderInfo::getCreateTime, param.getEndTime())
|
.le(OrderInfo::getCreateTime, param.getEndTime())
|
||||||
.in(OrderInfo::getId, like);
|
.in(OrderInfo::getId, like);
|
||||||
@@ -77,7 +78,8 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|||||||
orderInfoVoPage.getRecords().parallelStream().forEach(s -> {
|
orderInfoVoPage.getRecords().parallelStream().forEach(s -> {
|
||||||
List<OrderDetailSmallVO> orderDetails = orderDetailService.queryChain().select()
|
List<OrderDetailSmallVO> orderDetails = orderDetailService.queryChain().select()
|
||||||
.eq(OrderDetail::getShopId, s.getShopId())
|
.eq(OrderDetail::getShopId, s.getShopId())
|
||||||
.eq(OrderDetail::getOrderId, s.getId()).listAs(OrderDetailSmallVO.class);
|
.eq(OrderDetail::getOrderId, s.getId())
|
||||||
|
.listAs(OrderDetailSmallVO.class);
|
||||||
s.setGoods(orderDetails);
|
s.setGoods(orderDetails);
|
||||||
});
|
});
|
||||||
return orderInfoVoPage;
|
return orderInfoVoPage;
|
||||||
@@ -88,7 +90,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|||||||
public void payCallBackOrder(@NotBlank String orderNo, @NotBlank JSONObject resultJson) {
|
public void payCallBackOrder(@NotBlank String orderNo, @NotBlank JSONObject resultJson) {
|
||||||
CzgPayNotifyDTO czgCallBackDto = JSONObject.parseObject(resultJson.toString(), CzgPayNotifyDTO.class);
|
CzgPayNotifyDTO czgCallBackDto = JSONObject.parseObject(resultJson.toString(), CzgPayNotifyDTO.class);
|
||||||
OrderPayment payment = paymentService.queryChain().eq(OrderPayment::getOrderNo, orderNo).one();
|
OrderPayment payment = paymentService.queryChain().eq(OrderPayment::getOrderNo, orderNo).one();
|
||||||
paymentService.updateChain().of(OrderPayment.class)
|
paymentService.updateChain()
|
||||||
.set(OrderPayment::getTradeNumber, czgCallBackDto.getPayOrderId())
|
.set(OrderPayment::getTradeNumber, czgCallBackDto.getPayOrderId())
|
||||||
.set(OrderPayment::getRespJson, resultJson.toString())
|
.set(OrderPayment::getRespJson, resultJson.toString())
|
||||||
.where(OrderPayment::getId).eq(payment.getId())
|
.where(OrderPayment::getId).eq(payment.getId())
|
||||||
@@ -96,7 +98,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|||||||
|
|
||||||
if ("TRADE_SUCCESS".equals(czgCallBackDto.getState())) {
|
if ("TRADE_SUCCESS".equals(czgCallBackDto.getState())) {
|
||||||
if ("order".equals(payment.getPayType())) {
|
if ("order".equals(payment.getPayType())) {
|
||||||
updateChain().of(OrderInfo.class)
|
updateChain()
|
||||||
.set(OrderInfo::getPayAmount, new BigDecimal(czgCallBackDto.getAmount() / 100L))
|
.set(OrderInfo::getPayAmount, new BigDecimal(czgCallBackDto.getAmount() / 100L))
|
||||||
.set(OrderInfo::getStatus, OrderStatusEnums.DONE.getCode())
|
.set(OrderInfo::getStatus, OrderStatusEnums.DONE.getCode())
|
||||||
.set(OrderInfo::getPaidTime, DateUtil.parseLocalDateTime(czgCallBackDto.getPayTime()))
|
.set(OrderInfo::getPaidTime, DateUtil.parseLocalDateTime(czgCallBackDto.getPayTime()))
|
||||||
@@ -117,13 +119,16 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|||||||
.id(payment.getSourceId())
|
.id(payment.getSourceId())
|
||||||
.money(new BigDecimal(czgCallBackDto.getAmount() / 100L))
|
.money(new BigDecimal(czgCallBackDto.getAmount() / 100L))
|
||||||
.type(1)
|
.type(1)
|
||||||
|
.relationId(payment.getId())
|
||||||
.build();
|
.build();
|
||||||
if ("WECHAT".equals(czgCallBackDto.getPayType())) {
|
if ("WECHAT".equals(czgCallBackDto.getPayType())) {
|
||||||
shopUserMoneyEditDTO.setBizEnum(ShopUserFlowBizEnum.WECHAT_IN);
|
shopUserMoneyEditDTO.setBizEnum(ShopUserFlowBizEnum.WECHAT_IN);
|
||||||
}else if("ALIPAY".equals(czgCallBackDto.getPayType())){
|
} else if ("ALIPAY".equals(czgCallBackDto.getPayType())) {
|
||||||
shopUserMoneyEditDTO.setBizEnum(ShopUserFlowBizEnum.ADMIN_IN);
|
shopUserMoneyEditDTO.setBizEnum(ShopUserFlowBizEnum.ADMIN_IN);
|
||||||
}
|
}
|
||||||
shopUserService.updateMoney(shopUser.getShopId(),shopUserMoneyEditDTO);
|
//更新会员余额 并生成流水
|
||||||
|
shopUserService.updateMoney(shopUser.getShopId(), shopUserMoneyEditDTO);
|
||||||
|
//会员活动
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user