Merge remote-tracking branch 'origin/test' into dev

This commit is contained in:
2024-08-30 16:25:25 +08:00
9 changed files with 106 additions and 21 deletions

View File

@@ -66,11 +66,6 @@ public class NotifyController {
}
@RequestMapping("test")
public void test(@RequestParam String payOrderNO){
payService.test(payOrderNO);
}
@RequestMapping("notifyCallBack")
public String notifyCallBack(HttpServletRequest request){

View File

@@ -101,12 +101,14 @@ public class TbOrderInfo implements Serializable {
private List<TbOrderDetail> detailList;
private String winnnerNo;
private String isWinner;
private String shopName;
//根据状态返回 需付款 已付款 未付款 已退
private String description;
public void setDescription() {
public void setDescription(String shopName) {
this.shopName = shopName;
switch (status) {
case "closed":
this.description = "已付款";

View File

@@ -21,6 +21,11 @@ public class TbShopUserFlow implements Serializable {
private String type;
private String isReturn;
private String remark;
private static final long serialVersionUID = 1L;
public Integer getId() {
@@ -86,4 +91,20 @@ public class TbShopUserFlow implements Serializable {
public void setType(String type) {
this.type = type == null ? null : type.trim();
}
public String getIsReturn() {
return isReturn;
}
public void setIsReturn(String isReturn) {
this.isReturn = isReturn;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
}

View File

@@ -62,4 +62,10 @@ public interface RabbitConstants {
// 库存记录交换机
String EXCHANGE_STOCK_RECORD = "exchange.stock.record";
String ROUTING_STOCK_RECORD_SALE = "routing.stock.record.sale";
public static final String BALANCE_PUT="balance_put";
public static final String BALANCE_QUEUE_PUT="balance_queue_put";
public static final String BALANCE_ROUTINGKEY_PUT="balance_routingkey_put";
}

View File

@@ -58,6 +58,15 @@ public class RabbitProducer implements RabbitTemplate.ConfirmCallback {
rabbitTemplate.convertAndSend(RabbitConstants.CONS_MSG_COLLECT_PUT, RabbitConstants.CONS_MSG_COLLECT_ROUTINGKEY_PUT, content, correlationId);
}
public void balance(String content){
CorrelationData correlationId = new CorrelationData(UUID.randomUUID().toString());
rabbitTemplate.convertAndSend(RabbitConstants.BALANCE_PUT, RabbitConstants.BALANCE_ROUTINGKEY_PUT, content, correlationId);
}
@Override
public void confirm(CorrelationData correlationData, boolean ack, String cause) {
logger.info(" 回调id:" + correlationData);

View File

@@ -220,9 +220,11 @@ public class OrderService {
// }
PageHelper.startPage(page, size);
List<TbOrderInfo> tbOrderInfos = orderInfoMapper.selectByUserId(userId, status);
String shopName = "";
for (TbOrderInfo orderInfo : tbOrderInfos) {
orderInfo.setDescription();
TbShopInfo tbShopInfo = tbShopInfoMapper.selectByPrimaryKey(Integer.valueOf(orderInfo.getShopId()));
shopName = tbShopInfo.getShopName();
orderInfo.setDescription(shopName);
List<TbOrderDetail> list = tbOrderDetailMapper.selectAllByOrderId(orderInfo.getId());
int num = 0;
for (TbOrderDetail orderDetail : list) {

View File

@@ -381,11 +381,12 @@ public class PayService {
TbShopUserFlow flow = new TbShopUserFlow();
flow.setShopUserId(Integer.valueOf(user.getId()));
flow.setBizCode("accountPay");
flow.setBizName("会员储值卡支付");
flow.setBizName("余额支付");
flow.setType("-");
flow.setAmount(orderInfo.getOrderAmount());
flow.setBalance(user.getAmount());
flow.setCreateTime(new Date());
flow.setIsReturn("0");
tbShopUserFlowMapper.insert(flow);
@@ -420,6 +421,22 @@ public class PayService {
data.put("orderId", orderInfo.getId());
data.put("plat", "miniApp");
mQUtils.sendStockSaleMsg(data);
JSONObject baObj=new JSONObject();
baObj.put("userId",userInfo.getId());
baObj.put("shopId",user.getShopId());
baObj.put("amount",orderInfo.getOrderAmount());
baObj.put("balance",user.getAmount());
baObj.put("type","消费");
baObj.put("time",flow.getCreateTime());
producer.balance(baObj.toString());
return Result.success(CodeEnum.SUCCESS, "1");
}
@@ -466,6 +483,7 @@ public class PayService {
flow.setAmount(orderInfo.getOrderAmount());
flow.setBalance(user.getAmount());
flow.setCreateTime(new Date());
flow.setIsReturn("0");
tbShopUserFlowMapper.insert(flow);
for (int i = 0; i < orderInfo.getNumber(); i++) {
@@ -1092,6 +1110,7 @@ public class PayService {
flow.setAmount(memberIn.getAmount());
flow.setBalance(tbShopUser.getAmount());
flow.setCreateTime(new Date());
flow.setIsReturn("0");
tbShopUserFlowMapper.insert(flow);
//会员活动
giveActivate(tbShopUser,memberIn.getAmount(),flow.getId());
@@ -1104,7 +1123,7 @@ public class PayService {
return "success";
}
public void giveActivate(TbShopUser tbShopUser, BigDecimal memAmount,Integer flowId){
public BigDecimal giveActivate(TbShopUser tbShopUser, BigDecimal memAmount,Integer flowId){
TbActivate activate = tbActivateMapper.selectByAmount(tbShopUser.getShopId(), memAmount);
if (ObjectUtil.isNotEmpty(activate) && ObjectUtil.isNotNull(activate)) {
if (activate.getIsGiftPro() != null && activate.getIsGiftPro() == 1) {
@@ -1138,8 +1157,12 @@ public class PayService {
flow.setAmount(amount);
flow.setBalance(tbShopUser.getAmount());
flow.setCreateTime(new Date());
flow.setIsReturn("0");
tbShopUserFlowMapper.insert(flow);
return amount;
}
return null;
}
@@ -1185,14 +1208,28 @@ public class PayService {
flow.setAmount(memberIn.getAmount());
flow.setBalance(tbShopUser.getAmount());
flow.setCreateTime(new Date());
flow.setRemark(payOrderNO);
flow.setIsReturn("0");
tbShopUserFlowMapper.insert(flow);
//会员活动
giveActivate(tbShopUser,memberIn.getAmount(),flow.getId());
BigDecimal awardAmount= giveActivate(tbShopUser,memberIn.getAmount(),flow.getId());
JSONObject jsonObject = new JSONObject();
jsonObject.put("shopId", memberIn.getShopId());
jsonObject.put("type", "wxMemberIn");
jsonObject.put("amount", memberIn.getAmount());
producer.putOrderCollect(jsonObject.toJSONString());
JSONObject baObj=new JSONObject();
baObj.put("userId", tbShopUser.getUserId());
baObj.put("shopId",tbShopUser.getShopId());
baObj.put("amount",ObjectUtil.isNull(awardAmount)?memberIn.getAmount():memberIn.getAmount().add(awardAmount));
baObj.put("balance",tbShopUser.getAmount());
baObj.put("type","充值");
baObj.put("time",flow.getCreateTime());
producer.balance(baObj.toString());
return "SUCCESS";
}

View File

@@ -274,19 +274,30 @@ public class UserService {
public Result openMember(OpenMemberVo memberVo) {
TbShopUser tbShopUser = shopUserMapper.selectByUserIdAndShopId(memberVo.getId().toString(), memberVo.getShopId().toString());
if(tbShopUser!=null){
tbShopUser.setName(StringUtils.isNotBlank(memberVo.getNickName())?memberVo.getNickName():null);
tbShopUser.setHeadImg(StringUtils.isNotBlank(memberVo.getHeadImg())?memberVo.getHeadImg():null);
if (tbShopUser != null) {
tbShopUser.setName(StringUtils.isNotBlank(memberVo.getNickName()) ? memberVo.getNickName() : null);
tbShopUser.setHeadImg(StringUtils.isNotBlank(memberVo.getHeadImg()) ? memberVo.getHeadImg() : null);
tbShopUser.setTelephone(memberVo.getTelephone());
tbShopUser.setBirthDay(StringUtils.isNotBlank(memberVo.getBirthDay())?memberVo.getBirthDay():null);
tbShopUser.setBirthDay(StringUtils.isNotBlank(memberVo.getBirthDay()) ? memberVo.getBirthDay() : null);
tbShopUser.setIsVip(Byte.parseByte("1"));
shopUserMapper.updateByPrimaryKeySelective(tbShopUser);
}else {
} else {
TbUserInfo tbUserInfo = userInfoMapper.selectByPrimaryKey(memberVo.getId());
tbShopUser = shopUserMapper.selectPCByPhoneAndShopId(memberVo.getTelephone(), memberVo.getShopId().toString());
if (tbShopUser != null) {
tbShopUser.setName(StringUtils.isNotBlank(memberVo.getNickName()) ? memberVo.getNickName() : null);
tbShopUser.setHeadImg(StringUtils.isNotBlank(memberVo.getHeadImg()) ? memberVo.getHeadImg() : null);
tbShopUser.setTelephone(memberVo.getTelephone());
tbShopUser.setBirthDay(StringUtils.isNotBlank(memberVo.getBirthDay()) ? memberVo.getBirthDay() : null);
tbShopUser.setUserId(tbUserInfo.getId().toString());
tbShopUser.setMiniOpenId(tbUserInfo.getMiniAppOpenId());
shopUserMapper.updateByPrimaryKeySelective(tbShopUser);
return Result.success(CodeEnum.SUCCESS);
}
tbShopUser = new TbShopUser();
tbShopUser.setName(StringUtils.isNotBlank(memberVo.getNickName())?memberVo.getNickName():null);
tbShopUser.setName(StringUtils.isNotBlank(memberVo.getNickName()) ? memberVo.getNickName() : null);
tbShopUser.setSex(Byte.parseByte("1"));
tbShopUser.setBirthDay(StringUtils.isNotBlank(memberVo.getBirthDay())?memberVo.getBirthDay():null);
tbShopUser.setBirthDay(StringUtils.isNotBlank(memberVo.getBirthDay()) ? memberVo.getBirthDay() : null);
tbShopUser.setLevel(Byte.parseByte("1"));
String dynamicCode = RandomUtil.randomNumbers(8);
tbShopUser.setCode(dynamicCode);

View File

@@ -10,9 +10,11 @@
<result column="biz_name" jdbcType="VARCHAR" property="bizName" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
<result column="type" jdbcType="VARCHAR" property="type" />
<result column="is_return" jdbcType="VARCHAR" property="isReturn" />
<result column="remark" jdbcType="VARCHAR" property="remark" />
</resultMap>
<sql id="Base_Column_List">
id, shop_user_id, amount, balance, biz_code, biz_name, create_time, type
id, shop_user_id, amount, balance, biz_code, biz_name, create_time, type,is_return,remark
</sql>
<select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
select
@@ -27,10 +29,10 @@
<insert id="insert" parameterType="com.chaozhanggui.system.cashierservice.entity.TbShopUserFlow" useGeneratedKeys="true" keyProperty="id" keyColumn="id">
insert into tb_shop_user_flow (id, shop_user_id, amount,
balance, biz_code, biz_name,
create_time, type)
create_time, type,is_return,remark)
values (#{id,jdbcType=INTEGER}, #{shopUserId,jdbcType=INTEGER}, #{amount,jdbcType=DECIMAL},
#{balance,jdbcType=DECIMAL}, #{bizCode,jdbcType=VARCHAR}, #{bizName,jdbcType=VARCHAR},
#{createTime,jdbcType=TIMESTAMP}, #{type,jdbcType=VARCHAR})
#{createTime,jdbcType=TIMESTAMP}, #{type,jdbcType=VARCHAR},#{isReturn,jdbcType=VARCHAR},#{remark,jdbcType=VARCHAR})
</insert>
<insert id="insertSelective" parameterType="com.chaozhanggui.system.cashierservice.entity.TbShopUserFlow">
insert into tb_shop_user_flow