积分专区的实现
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>
|
||||
@@ -1785,13 +1785,35 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
|
||||
OmsOrderExample example = new OmsOrderExample();
|
||||
example.createCriteria().andOrderSnEqualTo(outTradeNo);
|
||||
List<OmsOrder> list = orderMapper.selectByExample(example);
|
||||
if(list != null && !list.isEmpty()) {
|
||||
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,13 +1833,14 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
|
||||
}
|
||||
}
|
||||
}
|
||||
//}
|
||||
}
|
||||
|
||||
} catch (AlipayApiException e) {
|
||||
} catch(AlipayApiException e){
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public List<UmsMemberOrderQueue> outOrderInfo() { //优化mcoo
|
||||
UmsMemberOrderQueueExample example = new UmsMemberOrderQueueExample();
|
||||
example.createCriteria().andQuitQueueMarkEqualTo(UmsMemberOrderQueue.QUEUE_STATUS_QUIT)
|
||||
|
||||
Reference in New Issue
Block a user