提交修改
This commit is contained in:
parent
755ed1c5d5
commit
715d429a1b
@ -0,0 +1,36 @@
|
|||||||
|
package com.heyu.api.data.dao.vv;
|
||||||
|
/**
|
||||||
|
* <p>
|
||||||
|
* sku详描 服务类
|
||||||
|
* </p>
|
||||||
|
*
|
||||||
|
* @author quyixiao
|
||||||
|
* @since 2025-12-04
|
||||||
|
*/
|
||||||
|
import com.heyu.api.data.entity.vv.VvOutTradeNoEntity;
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
@Mapper
|
||||||
|
public interface VvOutTradeNoDao extends BaseMapper<VvOutTradeNoEntity> {
|
||||||
|
|
||||||
|
|
||||||
|
VvOutTradeNoEntity selectVvOutTradeNoById(@Param("id")Long id);
|
||||||
|
|
||||||
|
|
||||||
|
Long insertVvOutTradeNo(VvOutTradeNoEntity vvOutTradeNo);
|
||||||
|
|
||||||
|
|
||||||
|
Long insertOrUpdateVvOutTradeNo(VvOutTradeNoEntity vvOutTradeNo);
|
||||||
|
|
||||||
|
|
||||||
|
int updateVvOutTradeNoById(VvOutTradeNoEntity vvOutTradeNo);
|
||||||
|
|
||||||
|
|
||||||
|
int updateCoverVvOutTradeNoById(VvOutTradeNoEntity vvOutTradeNo);
|
||||||
|
|
||||||
|
|
||||||
|
int deleteVvOutTradeNoById(@Param("id")Long id);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@ -65,5 +65,12 @@ public interface VvReverseOrderDao extends BaseMapper<VvReverseOrderEntity> {
|
|||||||
@OrderBy(VvReverseOrderEntity.id_)
|
@OrderBy(VvReverseOrderEntity.id_)
|
||||||
@LIMIT
|
@LIMIT
|
||||||
VvReverseOrderEntity selectVvReverseOrderByTrackNumber(String trackNumber);
|
VvReverseOrderEntity selectVvReverseOrderByTrackNumber(String trackNumber);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@LIMIT
|
||||||
|
VvReverseOrderEntity selectVvReverseOrderByOutRefundNo(String outRefundNo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -66,4 +66,10 @@ public interface VvTradeOrderDao extends BaseMapper<VvTradeOrderEntity> {
|
|||||||
|
|
||||||
|
|
||||||
List<VvTradeOrderEntity> selectAppTradeOrderByTradeOrderIds(@IFNullReturnEmpty @IN List<Long> id);
|
List<VvTradeOrderEntity> selectAppTradeOrderByTradeOrderIds(@IFNullReturnEmpty @IN List<Long> id);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@LIMIT
|
||||||
|
VvTradeOrderEntity selectVvTradeOrderByOutTradeNo(String outTradeNo);
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -0,0 +1,106 @@
|
|||||||
|
package com.heyu.api.data.entity.vv;
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import lombok.Data;
|
||||||
|
import com.lz.mybatis.plugin.annotations.AS;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;import java.util.Date;
|
||||||
|
/**
|
||||||
|
*sku详描
|
||||||
|
* @author quyixiao
|
||||||
|
* @since 2025-12-04
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@TableName("vv_out_trade_no")
|
||||||
|
public class VvOutTradeNoEntity implements java.io.Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
public final static String CLASS_NAME ="com.heyu.api.data.entity.vv.VvOutTradeNoEntity:";
|
||||||
|
|
||||||
|
public final static String all = CLASS_NAME + "*";
|
||||||
|
public final static String id_ = CLASS_NAME + "id"; //
|
||||||
|
public final static String is_delete = CLASS_NAME + "is_delete"; // 是否删除:0 否 1 删除
|
||||||
|
public final static String create_time = CLASS_NAME + "create_time"; // 创建时间
|
||||||
|
public final static String modify_time = CLASS_NAME + "modify_time"; // 修改时间
|
||||||
|
//
|
||||||
|
@TableId(value = "id", type = IdType.AUTO)
|
||||||
|
private Long id;
|
||||||
|
//是否删除:0 否 1 删除
|
||||||
|
private Integer isDelete;
|
||||||
|
//创建时间
|
||||||
|
private Date createTime;
|
||||||
|
//修改时间
|
||||||
|
private Date modifyTime;
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public Long getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param id
|
||||||
|
*/
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否删除:0 否 1 删除
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public Integer getIsDelete() {
|
||||||
|
return isDelete;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 是否删除:0 否 1 删除
|
||||||
|
* @param isDelete
|
||||||
|
*/
|
||||||
|
public void setIsDelete(Integer isDelete) {
|
||||||
|
this.isDelete = isDelete;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建时间
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public Date getCreateTime() {
|
||||||
|
return createTime;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 创建时间
|
||||||
|
* @param createTime
|
||||||
|
*/
|
||||||
|
public void setCreateTime(Date createTime) {
|
||||||
|
this.createTime = createTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改时间
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public Date getModifyTime() {
|
||||||
|
return modifyTime;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 修改时间
|
||||||
|
* @param modifyTime
|
||||||
|
*/
|
||||||
|
public void setModifyTime(Date modifyTime) {
|
||||||
|
this.modifyTime = modifyTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "VvOutTradeNoEntity{" +
|
||||||
|
",id=" + id +
|
||||||
|
",isDelete=" + isDelete +
|
||||||
|
",createTime=" + createTime +
|
||||||
|
",modifyTime=" + modifyTime +
|
||||||
|
"}";
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -10,7 +10,7 @@ import java.util.Date;import java.util.Date;
|
|||||||
/**
|
/**
|
||||||
*逆向表
|
*逆向表
|
||||||
* @author quyixiao
|
* @author quyixiao
|
||||||
* @since 2025-11-19
|
* @since 2025-12-04
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@ -77,6 +77,7 @@ private static final long serialVersionUID = 1L;
|
|||||||
public final static String agree_sign_receipt_user = CLASS_NAME + "agree_sign_receipt_user"; // 同意签收用户
|
public final static String agree_sign_receipt_user = CLASS_NAME + "agree_sign_receipt_user"; // 同意签收用户
|
||||||
public final static String return_seller_id = CLASS_NAME + "return_seller_id"; // 退回到哪个卖家id
|
public final static String return_seller_id = CLASS_NAME + "return_seller_id"; // 退回到哪个卖家id
|
||||||
public final static String return_seller_warehouse_id = CLASS_NAME + "return_seller_warehouse_id"; // 退回到卖家仓库id
|
public final static String return_seller_warehouse_id = CLASS_NAME + "return_seller_warehouse_id"; // 退回到卖家仓库id
|
||||||
|
public final static String out_refund_no = CLASS_NAME + "out_refund_no"; // 退款编号
|
||||||
//
|
//
|
||||||
@TableId(value = "id", type = IdType.AUTO)
|
@TableId(value = "id", type = IdType.AUTO)
|
||||||
private Long id;
|
private Long id;
|
||||||
@ -190,6 +191,8 @@ private static final long serialVersionUID = 1L;
|
|||||||
private Long returnSellerId;
|
private Long returnSellerId;
|
||||||
//退回到卖家仓库id
|
//退回到卖家仓库id
|
||||||
private Long returnSellerWarehouseId;
|
private Long returnSellerWarehouseId;
|
||||||
|
//退款编号
|
||||||
|
private String outRefundNo;
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @return
|
* @return
|
||||||
@ -1030,6 +1033,21 @@ private static final long serialVersionUID = 1L;
|
|||||||
this.returnSellerWarehouseId = returnSellerWarehouseId;
|
this.returnSellerWarehouseId = returnSellerWarehouseId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 退款编号
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public String getOutRefundNo() {
|
||||||
|
return outRefundNo;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 退款编号
|
||||||
|
* @param outRefundNo
|
||||||
|
*/
|
||||||
|
public void setOutRefundNo(String outRefundNo) {
|
||||||
|
this.outRefundNo = outRefundNo;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return "VvReverseOrderEntity{" +
|
return "VvReverseOrderEntity{" +
|
||||||
@ -1089,6 +1107,7 @@ private static final long serialVersionUID = 1L;
|
|||||||
",agreeSignReceiptUser=" + agreeSignReceiptUser +
|
",agreeSignReceiptUser=" + agreeSignReceiptUser +
|
||||||
",returnSellerId=" + returnSellerId +
|
",returnSellerId=" + returnSellerId +
|
||||||
",returnSellerWarehouseId=" + returnSellerWarehouseId +
|
",returnSellerWarehouseId=" + returnSellerWarehouseId +
|
||||||
|
",outRefundNo=" + outRefundNo +
|
||||||
"}";
|
"}";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -10,7 +10,7 @@ import java.util.Date;import java.util.Date;
|
|||||||
/**
|
/**
|
||||||
*购物车
|
*购物车
|
||||||
* @author quyixiao
|
* @author quyixiao
|
||||||
* @since 2025-11-17
|
* @since 2025-12-04
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@ -49,6 +49,7 @@ private static final long serialVersionUID = 1L;
|
|||||||
public final static String transaction_id = CLASS_NAME + "transaction_id"; // 事务id
|
public final static String transaction_id = CLASS_NAME + "transaction_id"; // 事务id
|
||||||
public final static String buyer_address_id = CLASS_NAME + "buyer_address_id"; // 买家地址id
|
public final static String buyer_address_id = CLASS_NAME + "buyer_address_id"; // 买家地址id
|
||||||
public final static String promotion_price = CLASS_NAME + "promotion_price"; // 促销价
|
public final static String promotion_price = CLASS_NAME + "promotion_price"; // 促销价
|
||||||
|
public final static String out_trade_no = CLASS_NAME + "out_trade_no"; //
|
||||||
//
|
//
|
||||||
@TableId(value = "id", type = IdType.AUTO)
|
@TableId(value = "id", type = IdType.AUTO)
|
||||||
private Long id;
|
private Long id;
|
||||||
@ -106,6 +107,8 @@ private static final long serialVersionUID = 1L;
|
|||||||
private Long buyerAddressId;
|
private Long buyerAddressId;
|
||||||
//促销价
|
//促销价
|
||||||
private BigDecimal promotionPrice;
|
private BigDecimal promotionPrice;
|
||||||
|
//
|
||||||
|
private String outTradeNo;
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @return
|
* @return
|
||||||
@ -526,6 +529,21 @@ private static final long serialVersionUID = 1L;
|
|||||||
this.promotionPrice = promotionPrice;
|
this.promotionPrice = promotionPrice;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public String getOutTradeNo() {
|
||||||
|
return outTradeNo;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param outTradeNo
|
||||||
|
*/
|
||||||
|
public void setOutTradeNo(String outTradeNo) {
|
||||||
|
this.outTradeNo = outTradeNo;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return "VvTradeOrderEntity{" +
|
return "VvTradeOrderEntity{" +
|
||||||
@ -557,6 +575,7 @@ private static final long serialVersionUID = 1L;
|
|||||||
",transactionId=" + transactionId +
|
",transactionId=" + transactionId +
|
||||||
",buyerAddressId=" + buyerAddressId +
|
",buyerAddressId=" + buyerAddressId +
|
||||||
",promotionPrice=" + promotionPrice +
|
",promotionPrice=" + promotionPrice +
|
||||||
|
",outTradeNo=" + outTradeNo +
|
||||||
"}";
|
"}";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -0,0 +1,68 @@
|
|||||||
|
package com.heyu.api.data.service.impl.vv;
|
||||||
|
/**
|
||||||
|
* <p>
|
||||||
|
* sku详描 服务类
|
||||||
|
* </p>
|
||||||
|
*
|
||||||
|
* @author quyixiao
|
||||||
|
* @since 2025-12-04
|
||||||
|
*/
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import com.heyu.api.data.dao.vv.VvOutTradeNoDao;
|
||||||
|
import com.heyu.api.data.entity.vv.VvOutTradeNoEntity;
|
||||||
|
import com.heyu.api.data.service.vv.VvOutTradeNoService;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
@Service
|
||||||
|
public class VvOutTradeNoServiceImpl extends ServiceImpl<VvOutTradeNoDao, VvOutTradeNoEntity> implements VvOutTradeNoService {
|
||||||
|
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private VvOutTradeNoDao vvOutTradeNoDao;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public VvOutTradeNoEntity selectVvOutTradeNoById(Long id){
|
||||||
|
return vvOutTradeNoDao.selectVvOutTradeNoById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Long insertVvOutTradeNo(VvOutTradeNoEntity vvOutTradeNo){
|
||||||
|
return vvOutTradeNoDao.insertVvOutTradeNo(vvOutTradeNo);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Long insertOrUpdateVvOutTradeNo(VvOutTradeNoEntity vvOutTradeNo){
|
||||||
|
return vvOutTradeNoDao.insertOrUpdateVvOutTradeNo(vvOutTradeNo);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int updateVvOutTradeNoById(VvOutTradeNoEntity vvOutTradeNo){
|
||||||
|
return vvOutTradeNoDao.updateVvOutTradeNoById(vvOutTradeNo);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int updateCoverVvOutTradeNoById(VvOutTradeNoEntity vvOutTradeNo){
|
||||||
|
return vvOutTradeNoDao.updateCoverVvOutTradeNoById(vvOutTradeNo);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int deleteVvOutTradeNoById(Long id){
|
||||||
|
return vvOutTradeNoDao.deleteVvOutTradeNoById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,34 @@
|
|||||||
|
package com.heyu.api.data.service.vv;
|
||||||
|
/**
|
||||||
|
* <p>
|
||||||
|
* sku详描 服务类
|
||||||
|
* </p>
|
||||||
|
*
|
||||||
|
* @author quyixiao
|
||||||
|
* @since 2025-12-04
|
||||||
|
*/
|
||||||
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
import com.heyu.api.data.entity.vv.VvOutTradeNoEntity;
|
||||||
|
public interface VvOutTradeNoService extends IService<VvOutTradeNoEntity> {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
VvOutTradeNoEntity selectVvOutTradeNoById(Long id);
|
||||||
|
|
||||||
|
|
||||||
|
Long insertVvOutTradeNo(VvOutTradeNoEntity vvOutTradeNo);
|
||||||
|
|
||||||
|
|
||||||
|
Long insertOrUpdateVvOutTradeNo(VvOutTradeNoEntity vvOutTradeNo);
|
||||||
|
|
||||||
|
|
||||||
|
int updateVvOutTradeNoById(VvOutTradeNoEntity vvOutTradeNo);
|
||||||
|
|
||||||
|
|
||||||
|
int updateCoverVvOutTradeNoById(VvOutTradeNoEntity vvOutTradeNo);
|
||||||
|
|
||||||
|
|
||||||
|
int deleteVvOutTradeNoById(Long id);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,6 @@
|
|||||||
|
<?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.heyu.api.data.dao.vv.VvOutTradeNoDao">
|
||||||
|
|
||||||
|
</mapper>
|
||||||
|
|
||||||
@ -94,7 +94,7 @@ public class MysqlMain_insert {
|
|||||||
|
|
||||||
List<TablesBean> list = new ArrayList<TablesBean>();
|
List<TablesBean> list = new ArrayList<TablesBean>();
|
||||||
|
|
||||||
list.add(new TablesBean("vv_promoter"));
|
list.add(new TablesBean("vv_out_trade_no"));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -48,7 +48,7 @@ public class MysqlMain_update {
|
|||||||
}
|
}
|
||||||
List<TablesBean> list = new ArrayList<TablesBean>();
|
List<TablesBean> list = new ArrayList<TablesBean>();
|
||||||
|
|
||||||
list.add(new TablesBean("vv_sku"));
|
list.add(new TablesBean("vv_reverse_order"));
|
||||||
|
|
||||||
Map<String, String> map = MysqlUtil2ShowCreateTable.getComments();
|
Map<String, String> map = MysqlUtil2ShowCreateTable.getComments();
|
||||||
for (int i = 0; i < list.size(); i++) {
|
for (int i = 0; i < list.size(); i++) {
|
||||||
|
|||||||
@ -4,8 +4,10 @@ package com.heyu.api.jsapi;
|
|||||||
|
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.heyu.api.alibaba.request.mm.order.ProfitSharingDTO;
|
import com.heyu.api.alibaba.request.mm.order.ProfitSharingDTO;
|
||||||
|
import com.heyu.api.data.dao.vv.VvOutTradeNoDao;
|
||||||
import com.heyu.api.data.dao.vv.VvReverseOrderDao;
|
import com.heyu.api.data.dao.vv.VvReverseOrderDao;
|
||||||
import com.heyu.api.data.dao.vv.VvTradeOrderDao;
|
import com.heyu.api.data.dao.vv.VvTradeOrderDao;
|
||||||
|
import com.heyu.api.data.entity.vv.VvOutTradeNoEntity;
|
||||||
import com.heyu.api.data.entity.vv.VvReverseOrderEntity;
|
import com.heyu.api.data.entity.vv.VvReverseOrderEntity;
|
||||||
import com.heyu.api.data.entity.vv.VvTradeOrderEntity;
|
import com.heyu.api.data.entity.vv.VvTradeOrderEntity;
|
||||||
import com.heyu.api.data.utils.BigDecimalUtil;
|
import com.heyu.api.data.utils.BigDecimalUtil;
|
||||||
@ -71,6 +73,9 @@ public class JsapiPrepay {
|
|||||||
private VvReverseOrderDao vvReverseOrderDao;
|
private VvReverseOrderDao vvReverseOrderDao;
|
||||||
|
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private VvOutTradeNoDao vvOutTradeNoDao;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Value("${eb.config.weixin.pay.notifyUrl}")
|
@Value("${eb.config.weixin.pay.notifyUrl}")
|
||||||
@ -107,7 +112,7 @@ public class JsapiPrepay {
|
|||||||
* https://pay.weixin.qq.com/doc/v3/merchant/4012791897
|
* https://pay.weixin.qq.com/doc/v3/merchant/4012791897
|
||||||
* JSAPI/小程序下单
|
* JSAPI/小程序下单
|
||||||
*/
|
*/
|
||||||
public DirectAPIv3JsapiPrepayResponse prePay(Long tradeOrderId,
|
public DirectAPIv3JsapiPrepayResponse prePay(String outTradeNo,
|
||||||
Long amount,
|
Long amount,
|
||||||
String openid) {
|
String openid) {
|
||||||
DirectAPIv3JsapiPrepayRequest request = new DirectAPIv3JsapiPrepayRequest();
|
DirectAPIv3JsapiPrepayRequest request = new DirectAPIv3JsapiPrepayRequest();
|
||||||
@ -115,7 +120,7 @@ public class JsapiPrepay {
|
|||||||
request.setMchid(mchid);
|
request.setMchid(mchid);
|
||||||
request.setNotifyUrl(notifyUrl);
|
request.setNotifyUrl(notifyUrl);
|
||||||
request.setDescription(System.currentTimeMillis() + "");
|
request.setDescription(System.currentTimeMillis() + "");
|
||||||
request.setOutTradeNo(tradeOrderId + "");
|
request.setOutTradeNo(outTradeNo );
|
||||||
request.setTimeExpire(WXPayUtility.generateExpireTime()); // 2025-11-05T21:02:16+08:00
|
request.setTimeExpire(WXPayUtility.generateExpireTime()); // 2025-11-05T21:02:16+08:00
|
||||||
request.setAttach("自定义数据说明");
|
request.setAttach("自定义数据说明");
|
||||||
request.setGoodsTag("WXG");
|
request.setGoodsTag("WXG");
|
||||||
@ -219,6 +224,7 @@ public class JsapiPrepay {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/****
|
/****
|
||||||
* https://pay.weixin.qq.com/doc/v3/merchant/4012791903
|
* https://pay.weixin.qq.com/doc/v3/merchant/4012791903
|
||||||
* 退款申请
|
* 退款申请
|
||||||
@ -229,8 +235,16 @@ public class JsapiPrepay {
|
|||||||
CreateRequest request = new CreateRequest();
|
CreateRequest request = new CreateRequest();
|
||||||
request.transactionId = vvTradeOrderEntity.getTransactionId(); // 【微信支付订单号】 微信支付侧订单的唯一标识,订单支付成功后,查询订单和支付成功回调通知会返回该参数。transaction_id和out_trade_no必须二选一进行传参。
|
request.transactionId = vvTradeOrderEntity.getTransactionId(); // 【微信支付订单号】 微信支付侧订单的唯一标识,订单支付成功后,查询订单和支付成功回调通知会返回该参数。transaction_id和out_trade_no必须二选一进行传参。
|
||||||
|
|
||||||
request.outTradeNo = tradeOrderId + ""; // 【商户订单号】 商户下单时传入的商户系统内部订单号。transaction_id和out_trade_no必须二选一进行传参。
|
|
||||||
request.outRefundNo = reverseOrderId + ""; //【商户退款单号】 商户系统内部的退款单号,商户系统内部唯一,只能是数字、大小写字母_-|*@ ,同一商户退款单号多次请求只退一笔。不可超过64个字节数。
|
VvOutTradeNoEntity vvOutTradeNo = new VvOutTradeNoEntity();
|
||||||
|
vvOutTradeNoDao.insertOrUpdateVvOutTradeNo(vvOutTradeNo);
|
||||||
|
|
||||||
|
vvReverseOrderEntity.setOutRefundNo(vvOutTradeNo.getId()+"");
|
||||||
|
vvReverseOrderDao.updateVvReverseOrderById(vvReverseOrderEntity);
|
||||||
|
|
||||||
|
|
||||||
|
request.outTradeNo = vvTradeOrderEntity.getOutTradeNo() + ""; // 【商户订单号】 商户下单时传入的商户系统内部订单号。transaction_id和out_trade_no必须二选一进行传参。
|
||||||
|
request.outRefundNo = vvReverseOrderEntity.getOutRefundNo() + ""; //【商户退款单号】 商户系统内部的退款单号,商户系统内部唯一,只能是数字、大小写字母_-|*@ ,同一商户退款单号多次请求只退一笔。不可超过64个字节数。
|
||||||
request.reason = vvReverseOrderEntity.getRefundReason(); // 【退款原因】 若商户传了退款原因,该原因将在下发给用户的退款消息中显示,具体展示可参见退款通知UI示意图。请注意:1、该退款原因参数的长度不得超过80个字节;2、当订单退款金额小于等于1元且为部分退款时,退款原因将不会在消息中体现。
|
request.reason = vvReverseOrderEntity.getRefundReason(); // 【退款原因】 若商户传了退款原因,该原因将在下发给用户的退款消息中显示,具体展示可参见退款通知UI示意图。请注意:1、该退款原因参数的长度不得超过80个字节;2、当订单退款金额小于等于1元且为部分退款时,退款原因将不会在消息中体现。
|
||||||
request.notifyUrl = refundNotifyUrl; // 【退款结果回调url】 异步接收微信支付退款结果通知的回调地址,通知url必须为外网可访问的url,不能携带参数。 如果传了该参数,则商户平台上配置的回调地址(商户平台-交易中心-退款管理-退款配置)将不会生效,优先回调当前传的这个地址。
|
request.notifyUrl = refundNotifyUrl; // 【退款结果回调url】 异步接收微信支付退款结果通知的回调地址,通知url必须为外网可访问的url,不能携带参数。 如果传了该参数,则商户平台上配置的回调地址(商户平台-交易中心-退款管理-退款配置)将不会生效,优先回调当前传的这个地址。
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -129,6 +129,9 @@ public class AppOrderController {
|
|||||||
private VvPromoterTradeOrderAwardDao vvPromoterTradeOrderAwardDao;
|
private VvPromoterTradeOrderAwardDao vvPromoterTradeOrderAwardDao;
|
||||||
|
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private VvOutTradeNoDao vvOutTradeNoDao;
|
||||||
|
|
||||||
|
|
||||||
/***
|
/***
|
||||||
* https://api.1024api.com/api-interface/app/order/list
|
* https://api.1024api.com/api-interface/app/order/list
|
||||||
@ -499,7 +502,12 @@ public class AppOrderController {
|
|||||||
vvProductDao.updateShowSaleCountAndSaleCount(map.getValue(), map.getValue(), map.getKey());
|
vvProductDao.updateShowSaleCountAndSaleCount(map.getValue(), map.getValue(), map.getKey());
|
||||||
}
|
}
|
||||||
|
|
||||||
DirectAPIv3JsapiPrepayResponse jsapiPrepayResponse = jsapiPrepay.prePay(vvTradeOrderEntity.getId(),
|
VvOutTradeNoEntity vvOutTradeNo = new VvOutTradeNoEntity();
|
||||||
|
vvOutTradeNoDao.insertOrUpdateVvOutTradeNo(vvOutTradeNo);
|
||||||
|
vvTradeOrderEntity.setOutTradeNo(vvOutTradeNo.getId()+"");
|
||||||
|
vvTradeOrderDao.updateVvTradeOrderById(vvTradeOrderEntity);
|
||||||
|
|
||||||
|
DirectAPIv3JsapiPrepayResponse jsapiPrepayResponse = jsapiPrepay.prePay(vvTradeOrderEntity.getOutTradeNo(),
|
||||||
BigDecimalUtil.multiply(vvTradeOrderEntity.getPayAmount(), new BigDecimal(100)).longValue(),
|
BigDecimalUtil.multiply(vvTradeOrderEntity.getPayAmount(), new BigDecimal(100)).longValue(),
|
||||||
vvBuyerEntity.getOpenid()
|
vvBuyerEntity.getOpenid()
|
||||||
);
|
);
|
||||||
@ -516,6 +524,7 @@ public class AppOrderController {
|
|||||||
vvTradeOrderLineEntity.setGmtPrePay(new Date());
|
vvTradeOrderLineEntity.setGmtPrePay(new Date());
|
||||||
vvTradeOrderLineDao.updateVvTradeOrderLineById(vvTradeOrderLineEntity);
|
vvTradeOrderLineDao.updateVvTradeOrderLineById(vvTradeOrderLineEntity);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 发送订单关单的消息
|
// 发送订单关单的消息
|
||||||
Date currentTime = new Date();
|
Date currentTime = new Date();
|
||||||
Date after30 = DateUtils.addMinutes(currentTime, 30);
|
Date after30 = DateUtils.addMinutes(currentTime, 30);
|
||||||
@ -567,13 +576,19 @@ public class AppOrderController {
|
|||||||
VvTradeOrderEntity vvTradeOrderEntity = vvTradeOrderDao.selectVvTradeOrderById(vvOrderRequest.getTradeOrderId());
|
VvTradeOrderEntity vvTradeOrderEntity = vvTradeOrderDao.selectVvTradeOrderById(vvOrderRequest.getTradeOrderId());
|
||||||
|
|
||||||
VvBuyerEntity vvBuyerEntity = vvBuyerDao.selectVvBuyerById(vvOrderRequest.getBuyerId());
|
VvBuyerEntity vvBuyerEntity = vvBuyerDao.selectVvBuyerById(vvOrderRequest.getBuyerId());
|
||||||
|
VvOutTradeNoEntity vvOutTradeNo = new VvOutTradeNoEntity();
|
||||||
|
vvOutTradeNoDao.insertOrUpdateVvOutTradeNo(vvOutTradeNo);
|
||||||
|
|
||||||
DirectAPIv3JsapiPrepayResponse jsapiPrepayResponse = jsapiPrepay.prePay(vvTradeOrderEntity.getId(),
|
vvTradeOrderEntity.setOutTradeNo(vvOutTradeNo.getId()+"");
|
||||||
|
vvTradeOrderDao.updateVvTradeOrderById(vvTradeOrderEntity);
|
||||||
|
|
||||||
|
DirectAPIv3JsapiPrepayResponse jsapiPrepayResponse = jsapiPrepay.prePay(vvTradeOrderEntity.getOutTradeNo(),
|
||||||
BigDecimalUtil.multiply(vvTradeOrderEntity.getPayAmount(), new BigDecimal(100)).longValue(),
|
BigDecimalUtil.multiply(vvTradeOrderEntity.getPayAmount(), new BigDecimal(100)).longValue(),
|
||||||
vvBuyerEntity.getOpenid()
|
vvBuyerEntity.getOpenid()
|
||||||
);
|
);
|
||||||
|
|
||||||
String prepay_id = jsapiPrepayResponse.getPrepayId();
|
String prepay_id = jsapiPrepayResponse.getPrepayId();
|
||||||
|
|
||||||
if (jsapiPrepayResponse != null && jsapiPrepayResponse.getPrepayId() != null) {
|
if (jsapiPrepayResponse != null && jsapiPrepayResponse.getPrepayId() != null) {
|
||||||
List<VvTradeOrderLineEntity> vvTradeOrderLineEntities = vvTradeOrderLineDao.selectVvTradeOrderLineByTradeOrderId(vvTradeOrderEntity.getId());
|
List<VvTradeOrderLineEntity> vvTradeOrderLineEntities = vvTradeOrderLineDao.selectVvTradeOrderLineByTradeOrderId(vvTradeOrderEntity.getId());
|
||||||
for (VvTradeOrderLineEntity vvTradeOrderLineEntity : vvTradeOrderLineEntities) {
|
for (VvTradeOrderLineEntity vvTradeOrderLineEntity : vvTradeOrderLineEntities) {
|
||||||
|
|||||||
@ -4,13 +4,12 @@ package com.heyu.api.controller.vv;
|
|||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.fasterxml.jackson.databind.JsonNode;
|
import com.fasterxml.jackson.databind.JsonNode;
|
||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
import com.heyu.api.data.enums.OrderStatusEnums;
|
|
||||||
import com.heyu.api.common.annotation.Describe;
|
import com.heyu.api.common.annotation.Describe;
|
||||||
import com.heyu.api.data.dao.vv.VvTradeOrderDao;
|
import com.heyu.api.data.dao.vv.VvTradeOrderDao;
|
||||||
import com.heyu.api.data.dao.vv.VvTradeOrderLineDao;
|
import com.heyu.api.data.dao.vv.VvTradeOrderLineDao;
|
||||||
import com.heyu.api.data.entity.vv.VvTradeOrderEntity;
|
import com.heyu.api.data.entity.vv.VvTradeOrderEntity;
|
||||||
import com.heyu.api.data.entity.vv.VvTradeOrderLineEntity;
|
import com.heyu.api.data.entity.vv.VvTradeOrderLineEntity;
|
||||||
import com.heyu.api.data.utils.NumberUtil;
|
import com.heyu.api.data.enums.OrderStatusEnums;
|
||||||
import com.heyu.api.jsapi.JsapiPrepay;
|
import com.heyu.api.jsapi.JsapiPrepay;
|
||||||
import com.heyu.api.jsapi.dto.pay.DirectAPIv3QueryResponse;
|
import com.heyu.api.jsapi.dto.pay.DirectAPIv3QueryResponse;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
@ -107,22 +106,24 @@ public class AppWeiXinPayNotifyController {
|
|||||||
private void updateOrderStatus(String outTradeNo, String transactionId) {
|
private void updateOrderStatus(String outTradeNo, String transactionId) {
|
||||||
try {
|
try {
|
||||||
DirectAPIv3QueryResponse response = jsapiPrepay.queryOrder(transactionId);
|
DirectAPIv3QueryResponse response = jsapiPrepay.queryOrder(transactionId);
|
||||||
VvTradeOrderEntity tradeOrderEntity = tradeOrderDao.selectVvTradeOrderById(NumberUtil.objToLong(outTradeNo));
|
VvTradeOrderEntity tradeOrderEntity = tradeOrderDao.selectVvTradeOrderByOutTradeNo(outTradeNo);
|
||||||
tradeOrderEntity.setTradeInfo(JSON.toJSONString(response));
|
tradeOrderEntity.setTradeInfo(JSON.toJSONString(response));
|
||||||
tradeOrderEntity.setTransactionId(transactionId);
|
tradeOrderEntity.setTransactionId(transactionId);
|
||||||
tradeOrderDao.updateVvTradeOrderById(tradeOrderEntity);
|
tradeOrderDao.updateVvTradeOrderById(tradeOrderEntity);
|
||||||
|
|
||||||
|
// 这里是更新商户订单状态的逻辑,例如标记订单已支付
|
||||||
|
log.info("handleWeChatPayCallback 订单 " + outTradeNo + " 已支付,交易号:" + transactionId + "开始更新子订单信息");
|
||||||
|
List<VvTradeOrderLineEntity> vvTradeOrderLineEntityList = vvTradeOrderLineDao.selectVvTradeOrderLineByTradeOrderId(tradeOrderEntity.getId());
|
||||||
|
for (VvTradeOrderLineEntity vvTradeOrderLineEntity : vvTradeOrderLineEntityList) {
|
||||||
|
vvTradeOrderLineEntity.setStatus(OrderStatusEnums.wait_shipping.getStatus());
|
||||||
|
vvTradeOrderLineEntity.setGmtPay(new Date());
|
||||||
|
vvTradeOrderLineEntity.setTransactionId(transactionId);
|
||||||
|
vvTradeOrderLineDao.updateVvTradeOrderLineById(vvTradeOrderLineEntity);
|
||||||
|
}
|
||||||
}catch ( Exception e ){
|
}catch ( Exception e ){
|
||||||
log.error("AppWeiXinPayNotifyController updateOrderStatus error:{}",e.getMessage());
|
log.error("AppWeiXinPayNotifyController updateOrderStatus error:{}",e.getMessage());
|
||||||
}
|
}
|
||||||
// 这里是更新商户订单状态的逻辑,例如标记订单已支付
|
|
||||||
log.info("handleWeChatPayCallback 订单 " + outTradeNo + " 已支付,交易号:" + transactionId + "开始更新子订单信息");
|
|
||||||
List<VvTradeOrderLineEntity> vvTradeOrderLineEntityList = vvTradeOrderLineDao.selectVvTradeOrderLineByTradeOrderId(NumberUtil.objToLong(outTradeNo));
|
|
||||||
for (VvTradeOrderLineEntity vvTradeOrderLineEntity : vvTradeOrderLineEntityList) {
|
|
||||||
vvTradeOrderLineEntity.setStatus(OrderStatusEnums.wait_shipping.getStatus());
|
|
||||||
vvTradeOrderLineEntity.setGmtPay(new Date());
|
|
||||||
vvTradeOrderLineEntity.setTransactionId(transactionId);
|
|
||||||
vvTradeOrderLineDao.updateVvTradeOrderLineById(vvTradeOrderLineEntity);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2,7 +2,6 @@ package com.heyu.api.controller.vv;
|
|||||||
|
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.heyu.api.data.enums.ReverseStatusEnums;
|
|
||||||
import com.heyu.api.data.dao.vv.VvReverseOrderDao;
|
import com.heyu.api.data.dao.vv.VvReverseOrderDao;
|
||||||
import com.heyu.api.data.dao.vv.VvReverseOrderLineDao;
|
import com.heyu.api.data.dao.vv.VvReverseOrderLineDao;
|
||||||
import com.heyu.api.data.dao.vv.VvTradeOrderDao;
|
import com.heyu.api.data.dao.vv.VvTradeOrderDao;
|
||||||
@ -10,7 +9,7 @@ import com.heyu.api.data.dao.vv.VvTradeOrderLineDao;
|
|||||||
import com.heyu.api.data.entity.vv.VvReverseOrderEntity;
|
import com.heyu.api.data.entity.vv.VvReverseOrderEntity;
|
||||||
import com.heyu.api.data.entity.vv.VvReverseOrderLineEntity;
|
import com.heyu.api.data.entity.vv.VvReverseOrderLineEntity;
|
||||||
import com.heyu.api.data.entity.vv.VvTradeOrderLineEntity;
|
import com.heyu.api.data.entity.vv.VvTradeOrderLineEntity;
|
||||||
import com.heyu.api.data.utils.NumberUtil;
|
import com.heyu.api.data.enums.ReverseStatusEnums;
|
||||||
import com.heyu.api.data.utils.StringUtils;
|
import com.heyu.api.data.utils.StringUtils;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@ -110,15 +109,18 @@ public class AppWeiXinRefundNotifyController {
|
|||||||
log.info("AppWeiXinRefundNotifyController refundNotifyUrl out_trade_no:{} ,out_refund_no:{} refund_status:{} resultStr :{} " ,out_trade_no,out_refund_no,refund_status,resultStr);
|
log.info("AppWeiXinRefundNotifyController refundNotifyUrl out_trade_no:{} ,out_refund_no:{} refund_status:{} resultStr :{} " ,out_trade_no,out_refund_no,refund_status,resultStr);
|
||||||
Map<String, Object> parm = new HashMap<>();
|
Map<String, Object> parm = new HashMap<>();
|
||||||
if (!StringUtils.isEmpty(refund_status) && "SUCCESS".equals(refund_status)) {
|
if (!StringUtils.isEmpty(refund_status) && "SUCCESS".equals(refund_status)) {
|
||||||
VvReverseOrderEntity vvReverseOrderEntity = reverseOrderDao.selectVvReverseOrderById(NumberUtil.objToLong(out_refund_no));
|
|
||||||
|
VvReverseOrderEntity vvReverseOrderEntity = reverseOrderDao.selectVvReverseOrderByOutRefundNo(out_refund_no);
|
||||||
|
|
||||||
log.info("AppWeiXinRefundNotifyController refundNotifyUrl reverseStatus:{}", vvReverseOrderEntity.getStatus());
|
log.info("AppWeiXinRefundNotifyController refundNotifyUrl reverseStatus:{}", vvReverseOrderEntity.getStatus());
|
||||||
|
|
||||||
if(ReverseStatusEnums.weixin_refunding.getStatus().equals(vvReverseOrderEntity.getStatus())){
|
if(ReverseStatusEnums.weixin_refunding.getStatus().equals(vvReverseOrderEntity.getStatus())){
|
||||||
vvReverseOrderEntity.setGmtRefunded(new Date());
|
vvReverseOrderEntity.setGmtRefunded(new Date());
|
||||||
vvReverseOrderEntity.setStatus(ReverseStatusEnums.refunded.getStatus());
|
vvReverseOrderEntity.setStatus(ReverseStatusEnums.refunded.getStatus());
|
||||||
vvReverseOrderEntity.setGmtRefundNotify(new Date());
|
vvReverseOrderEntity.setGmtRefundNotify(new Date());
|
||||||
reverseOrderDao.updateVvReverseOrderById(vvReverseOrderEntity);
|
reverseOrderDao.updateVvReverseOrderById(vvReverseOrderEntity);
|
||||||
|
|
||||||
List<VvReverseOrderLineEntity > vvReverseOrderLineEntities = vvReverseOrderLineDao.selectVvReverseOrderLineByReverseOrderId(NumberUtil.objToLong(out_refund_no));;
|
List<VvReverseOrderLineEntity > vvReverseOrderLineEntities = vvReverseOrderLineDao.selectVvReverseOrderLineByReverseOrderId(vvReverseOrderEntity.getId());
|
||||||
List<Long> tradeOrderLineIds = new ArrayList<>();
|
List<Long> tradeOrderLineIds = new ArrayList<>();
|
||||||
for (VvReverseOrderLineEntity vvReverseOrderLineEntity : vvReverseOrderLineEntities) {
|
for (VvReverseOrderLineEntity vvReverseOrderLineEntity : vvReverseOrderLineEntities) {
|
||||||
tradeOrderLineIds.add(vvReverseOrderLineEntity.getTradeOrderLineId());
|
tradeOrderLineIds.add(vvReverseOrderLineEntity.getTradeOrderLineId());
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user