From 1d324cf1f3d108cdd47afbcf87a1aa1fa398fa70 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期二, 27 八月 2024 17:35:32 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TExchangeOrderServiceImpl.java | 142 +++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 142 insertions(+), 0 deletions(-)
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TExchangeOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TExchangeOrderServiceImpl.java
index 84f4764..9b71839 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TExchangeOrderServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TExchangeOrderServiceImpl.java
@@ -1,10 +1,31 @@
package com.ruoyi.order.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.account.api.feignClient.AppUserAddressClient;
+import com.ruoyi.account.api.model.TAppUserAddress;
+import com.ruoyi.common.core.web.page.PageInfo;
+import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.order.api.model.TExchangeOrder;
+import com.ruoyi.order.api.model.TShoppingOrder;
+import com.ruoyi.order.api.query.ShoppingOrderQuery;
+import com.ruoyi.order.dto.ExchangeOrderGoodsInfo;
+import com.ruoyi.order.dto.GetMyExchangeOrder;
+import com.ruoyi.order.dto.MyExchangeOrderList;
import com.ruoyi.order.mapper.TExchangeOrderMapper;
import com.ruoyi.order.service.TExchangeOrderService;
+import com.ruoyi.other.api.domain.TCoupon;
+import com.ruoyi.other.api.domain.TGoods;
+import com.ruoyi.other.api.feignClient.CouponClient;
+import com.ruoyi.other.api.feignClient.GoodsClient;
+import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
+
+import javax.annotation.Resource;
+import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
+import java.util.List;
/**
* <p>
@@ -16,5 +37,126 @@
*/
@Service
public class TExchangeOrderServiceImpl extends ServiceImpl<TExchangeOrderMapper, TExchangeOrder> implements TExchangeOrderService {
+
+ @Resource
+ private TokenService tokenService;
+
+ @Resource
+ private GoodsClient goodsClient;
+
+ @Resource
+ private CouponClient couponClient;
+
+ @Resource
+ private AppUserAddressClient appUserAddressClient;
+
+
+
+
+
+
+ /**
+ * 获取小程序兑换记录
+ * @param query
+ * @return
+ */
+ @Override
+ public List<MyExchangeOrderList> getMyExchangeOrder(GetMyExchangeOrder query) {
+ Long userid = tokenService.getLoginUserApplet().getUserId();
+ LambdaQueryWrapper<TExchangeOrder> wrapper = new LambdaQueryWrapper<TExchangeOrder>().eq(TExchangeOrder::getDelFlag, 0).eq(TExchangeOrder::getAppUserId, userid);
+ if(query.getStatus() == 0){
+ wrapper.ne(TExchangeOrder::getStatus, 4);
+ }else{
+ wrapper.eq(TExchangeOrder::getStatus, query.getStatus());
+ }
+ List<TExchangeOrder> list = this.list(wrapper.orderByDesc(TExchangeOrder::getCreateTime).last(" limit " + query.getPageCurr() + "," + query.getPageSize()));
+ List<MyExchangeOrderList> pageList = new ArrayList<>();
+ for (TExchangeOrder tExchangeOrder : list) {
+ MyExchangeOrderList exchangeOrderList = new MyExchangeOrderList();
+ exchangeOrderList.setId(tExchangeOrder.getId().toString());
+ exchangeOrderList.setUnitPoints(tExchangeOrder.getPoints() / tExchangeOrder.getPurchaseQuantity());
+ exchangeOrderList.setPoints(tExchangeOrder.getPoints());
+ exchangeOrderList.setPurchaseQuantity(tExchangeOrder.getPurchaseQuantity());
+ exchangeOrderList.setOrderType(tExchangeOrder.getOrderType());
+ exchangeOrderList.setStatus(tExchangeOrder.getStatus());
+ String name = "";
+ String imgUrl = "";
+ if(tExchangeOrder.getOrderType() == 1){
+ TGoods goods = goodsClient.getGoodsById(tExchangeOrder.getGoodsId()).getData();
+ name = goods.getName();
+ imgUrl = goods.getCoverPicture();
+ }else{
+ TCoupon coupon = couponClient.getCouponById1(tExchangeOrder.getGoodsId()).getData();
+ name = coupon.getName();
+ imgUrl = coupon.getCoverPicture();
+ }
+ exchangeOrderList.setName(name);
+ exchangeOrderList.setImgUrl(imgUrl);
+ pageList.add(exchangeOrderList);
+ }
+ return pageList;
+ }
+
+
+ /**
+ * 获取兑换订单详情
+ * @param id
+ * @return
+ */
+ @Override
+ public ExchangeOrderGoodsInfo getGoodsExchangeOrder(String id) {
+ TExchangeOrder exchangeOrder = this.getById(id);
+ ExchangeOrderGoodsInfo info = new ExchangeOrderGoodsInfo();
+ info.setId(id);
+ info.setStatus(exchangeOrder.getStatus());
+ TAppUserAddress userAddress = appUserAddressClient.getAppUserAddressById(exchangeOrder.getAppUserAddressId()).getData();
+ info.setConsignee(userAddress.getName());
+ info.setPhone(userAddress.getPhone());
+ info.setAddress(userAddress.getAddress());
+ info.setExpressCompany(exchangeOrder.getExpressCompany());
+ info.setExpressNumber(exchangeOrder.getExpressNumber());
+ String name = "";
+ String imgUrl = "";
+ if(exchangeOrder.getOrderType() == 1){
+ TGoods goods = goodsClient.getGoodsById(exchangeOrder.getGoodsId()).getData();
+ name = goods.getName();
+ imgUrl = goods.getCoverPicture();
+ }else{
+ TCoupon coupon = couponClient.getCouponById1(exchangeOrder.getGoodsId()).getData();
+ info.setCouponType(coupon.getType());
+ info.setDays(coupon.getDays());
+ info.setEndTime(coupon.getEndTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
+ name = coupon.getName();
+ imgUrl = coupon.getCoverPicture();
+ }
+ info.setName(name);
+ info.setImgUrl(imgUrl);
+ info.setPurchaseQuantity(exchangeOrder.getPurchaseQuantity());
+ info.setUnitPoints(exchangeOrder.getPoints() / exchangeOrder.getPurchaseQuantity());
+ info.setCode(exchangeOrder.getCode());
+ info.setCreateTime(exchangeOrder.getCreateTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
+ info.setPoints(exchangeOrder.getPoints());
+ info.setRemark(exchangeOrder.getRemark());
+ info.setDeliveryTime(exchangeOrder.getConsignerTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
+ info.setFinishTime(exchangeOrder.getReceivingTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
+ return info;
+ }
+ @Override
+ public PageInfo<TExchangeOrder> pageList(ShoppingOrderQuery query) {
+ String startTime1 = null;
+ String startTime2 = null;
+
+
+ if (StringUtils.hasLength(query.getStartTime())){
+ String[] split = query.getStartTime().split(" - ");
+ startTime1 = split[0];
+ startTime2 = split[1];
+ }
+ PageInfo<TExchangeOrder> pageInfo = new PageInfo<>(query.getPageCurr(),query.getPageSize());
+ List<TExchangeOrder> list = this.baseMapper.pageList(pageInfo,query,startTime1,startTime2);
+
+ pageInfo.setRecords(list);
+ return pageInfo;
+ }
}
--
Gitblit v1.7.1