Merge pull request '积分专区的实现' (#3) from main-cx into main
Reviewed-on: #3
This commit is contained in:
@@ -4,6 +4,8 @@ import com.buy507.mall.model.OmsOrder;
|
||||
import com.buy507.mall.model.OmsOrderExample;
|
||||
import java.util.List;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
|
||||
public interface OmsOrderMapper {
|
||||
long countByExample(OmsOrderExample example);
|
||||
@@ -27,4 +29,6 @@ public interface OmsOrderMapper {
|
||||
int updateByPrimaryKeySelective(OmsOrder record);
|
||||
|
||||
int updateByPrimaryKey(OmsOrder record);
|
||||
}
|
||||
|
||||
|
||||
int selectPointsAreaStatus(@Param("orderSn") String orderSn);}
|
||||
@@ -874,4 +874,14 @@
|
||||
settlement_time = #{settlementTime,jdbcType=TIMESTAMP}
|
||||
where id = #{id,jdbcType=BIGINT}
|
||||
</update>
|
||||
|
||||
<select id="selectPointsAreaStatus" resultType="int">
|
||||
<![CDATA[
|
||||
SELECT p.points_area_status
|
||||
FROM pms_product p
|
||||
JOIN oms_order_item oi ON p.product_sn = oi.product_sn
|
||||
JOIN oms_order o ON oi.order_sn = o.order_sn
|
||||
WHERE o.order_sn = #{orderSn}
|
||||
]]>
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -1775,23 +1775,45 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
|
||||
//TODO
|
||||
try {
|
||||
//verifyResult = true;//AlipaySignature.rsaCheckV1(params, alipayPublicKey, charset, signType); mcoo
|
||||
verifyResult = AlipaySignature.rsaCheckV1(params, alipayPublicKey, charset, signType);
|
||||
verifyResult = AlipaySignature.rsaCheckV1(params, alipayPublicKey, charset, signType);
|
||||
if (verifyResult) {
|
||||
// 签名验证通过
|
||||
//String tradeStatus = params.get("trade_status"); 支付宝改版后 没有trade_status
|
||||
String outTradeNo = params.get("out_trade_no");
|
||||
//if ("TRADE_SUCCESS".equals(tradeStatus) || "TRADE_FINISHED".equals(tradeStatus)) {
|
||||
// 处理支付成功的业务逻辑
|
||||
OmsOrderExample example = new OmsOrderExample();
|
||||
example.createCriteria().andOrderSnEqualTo(outTradeNo);
|
||||
List<OmsOrder> list = orderMapper.selectByExample(example);
|
||||
if(list != null && !list.isEmpty()) {
|
||||
OmsOrder order = list.get(0);
|
||||
// 处理支付成功的业务逻辑
|
||||
OmsOrderExample example = new OmsOrderExample();
|
||||
example.createCriteria().andOrderSnEqualTo(outTradeNo);
|
||||
List<OmsOrder> list = orderMapper.selectByExample(example);
|
||||
if (list != null && !list.isEmpty()) {
|
||||
OmsOrder order = list.get(0);
|
||||
|
||||
//获取积分专区状态
|
||||
int pointsAreaStatus = orderMapper.selectPointsAreaStatus(outTradeNo);
|
||||
//如果是积分专区的商品则进行积分专区相对应的逻辑
|
||||
if (pointsAreaStatus == 1) {
|
||||
//奖励积分是购买的价格的100%
|
||||
BigDecimal rewardPoints = order.getPayAmount();
|
||||
// 获取用户信息
|
||||
UmsMember member = memberMapper.selectByPrimaryKey(order.getMemberId());
|
||||
// 增加用户积分
|
||||
if (member != null) {
|
||||
|
||||
if (member.getIntegration() == null) {
|
||||
member.setIntegration(rewardPoints.intValue());
|
||||
} else {
|
||||
member.setIntegration(member.getIntegration() + rewardPoints.intValue());
|
||||
}
|
||||
|
||||
// 更新用户积分
|
||||
memberMapper.updateByPrimaryKey(member);
|
||||
|
||||
}
|
||||
//订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单
|
||||
if (order != null && order.getStatus() == 0) {
|
||||
Date date = new Date();
|
||||
//提货方式:0->自提;1->物流
|
||||
if(order.getDeliveryType() == 0) {
|
||||
if (order.getDeliveryType() == 0) {
|
||||
order.setStatus(2); //已发货
|
||||
} else {
|
||||
order.setStatus(1); //待发货
|
||||
@@ -1801,6 +1823,8 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
|
||||
order.setModifyTime(date);
|
||||
order.setPaymentTime(date);
|
||||
orderMapper.updateByPrimaryKey(order);
|
||||
|
||||
|
||||
/**
|
||||
* 会员分润,升级逻辑
|
||||
*/
|
||||
@@ -1809,12 +1833,13 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
|
||||
}
|
||||
}
|
||||
}
|
||||
//}
|
||||
}
|
||||
|
||||
} catch (AlipayApiException e) {
|
||||
e.printStackTrace();
|
||||
} catch(AlipayApiException e){
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public List<UmsMemberOrderQueue> outOrderInfo() { //优化mcoo
|
||||
UmsMemberOrderQueueExample example = new UmsMemberOrderQueueExample();
|
||||
|
||||
Reference in New Issue
Block a user