Jelajahi Sumber

供应商退款详情

chao 3 tahun lalu
induk
melakukan
c3a76277d9

+ 60 - 14
src/main/java/com/caimei365/order/controller/ReceiptApi.java

@@ -140,7 +140,7 @@ public class ReceiptApi {
     @ApiOperation("获取收款列表")
     @ApiOperation("获取收款列表")
     @ApiImplicitParams({
     @ApiImplicitParams({
             @ApiImplicitParam(required = false, name = "receiptType", value = "收款款项类型:1订单款,2非订单款,3返佣款 4订单款或者非订单款(因财务阶段无法区分订单非订单), 5供应商退款"),
             @ApiImplicitParam(required = false, name = "receiptType", value = "收款款项类型:1订单款,2非订单款,3返佣款 4订单款或者非订单款(因财务阶段无法区分订单非订单), 5供应商退款"),
-            @ApiImplicitParam(required = false, name = "receiptStatusStr", value = "收款状态串(逗号隔开):1待确认、2已确认(待审核)、3审核通过、4审核未通过、5收款撤销【线上支付成功为审核通过】"),
+            @ApiImplicitParam(required = false, name = "receiptStatus", value = "收款状态:1待确认、2已确认(待审核)、3审核通过、4审核未通过、5收款撤销【线上支付成功为审核通过】"),
             @ApiImplicitParam(required = false, name = "smsContent", value = "收款短信"),
             @ApiImplicitParam(required = false, name = "smsContent", value = "收款短信"),
             @ApiImplicitParam(required = false, name = "startDate", value = "筛选开始时间"),
             @ApiImplicitParam(required = false, name = "startDate", value = "筛选开始时间"),
             @ApiImplicitParam(required = false, name = "endDate", value = "筛选结束时间"),
             @ApiImplicitParam(required = false, name = "endDate", value = "筛选结束时间"),
@@ -150,7 +150,7 @@ public class ReceiptApi {
     })
     })
     @GetMapping("/list")
     @GetMapping("/list")
     public ResponseJson<PageInfo<ReceiptVo>> getReceiptList(Integer receiptType,
     public ResponseJson<PageInfo<ReceiptVo>> getReceiptList(Integer receiptType,
-                                                            String receiptStatusStr,
+                                                            Integer receiptStatus,
                                                             String smsContent,
                                                             String smsContent,
                                                             String startDate,
                                                             String startDate,
                                                             String endDate,
                                                             String endDate,
@@ -160,7 +160,7 @@ public class ReceiptApi {
         if (!StringUtils.hasLength(openid)) {
         if (!StringUtils.hasLength(openid)) {
             return ResponseJson.error("微信openid不能为空!", null);
             return ResponseJson.error("微信openid不能为空!", null);
         }
         }
-        return receiptService.getReceiptList(receiptType, receiptStatusStr, smsContent, startDate, endDate, openid, pageNum, pageSize);
+        return receiptService.getReceiptList(receiptType, receiptStatus, smsContent, startDate, endDate, openid, pageNum, pageSize);
     }
     }
 
 
     /**
     /**
@@ -209,9 +209,25 @@ public class ReceiptApi {
     }
     }
 
 
     /**
     /**
-     * 供应商退款关联的子订单信息
+     * 获取收款订单详情
+     */
+    @ApiOperation("获取收款订单详情")
+    @ApiImplicitParams({
+            @ApiImplicitParam(required = false, name = "orderId", value = "订单ID"),
+            @ApiImplicitParam(required = false, name = "openid", value = "微信openid")
+    })
+    @GetMapping("/orders/info")
+    public ResponseJson<OrderVo> getReceiptOrderInfo(Integer orderId, String openid) {
+        if (!StringUtils.hasLength(openid)) {
+            return ResponseJson.error("微信openid不能为空!", null);
+        }
+        return receiptService.getReceiptOrderInfo(orderId, openid);
+    }
+
+    /**
+     * 供应商退款列表
      */
      */
-    @ApiOperation("供应商退款关联的子订单信息")
+    @ApiOperation("供应商退款列表")
     @ApiImplicitParams({
     @ApiImplicitParams({
             @ApiImplicitParam(required = false, name = "id", value = "返佣收款ID"),
             @ApiImplicitParam(required = false, name = "id", value = "返佣收款ID"),
             @ApiImplicitParam(required = false, name = "confirmedType", value = "0待确认,2已确认子订单"),
             @ApiImplicitParam(required = false, name = "confirmedType", value = "0待确认,2已确认子订单"),
@@ -221,7 +237,7 @@ public class ReceiptApi {
             @ApiImplicitParam(required = false, name = "pageNum", value = "页码"),
             @ApiImplicitParam(required = false, name = "pageNum", value = "页码"),
             @ApiImplicitParam(required = false, name = "pageSize", value = "每页数量")
             @ApiImplicitParam(required = false, name = "pageSize", value = "每页数量")
     })
     })
-    @GetMapping("/orders/refund")
+    @GetMapping("/refunds")
     public ResponseJson<PageInfo<ShopOrderVo>> getRefundShopOrderList(Integer id,
     public ResponseJson<PageInfo<ShopOrderVo>> getRefundShopOrderList(Integer id,
                                                                       Integer confirmedType,
                                                                       Integer confirmedType,
                                                                       String shopName,
                                                                       String shopName,
@@ -235,32 +251,62 @@ public class ReceiptApi {
         return receiptService.getRefundShopOrderList(id, confirmedType, shopName, keyword, openid, pageNum, pageSize);
         return receiptService.getRefundShopOrderList(id, confirmedType, shopName, keyword, openid, pageNum, pageSize);
     }
     }
 
 
+    // api/user/rebate/orderInfo
+
     /**
     /**
-     * 获取收款订单详情
+     * 供应商退款详情
      */
      */
-    @ApiOperation("获取收款订单详情")
+    @ApiOperation("供应商退款详情")
     @ApiImplicitParams({
     @ApiImplicitParams({
             @ApiImplicitParam(required = false, name = "orderId", value = "订单ID"),
             @ApiImplicitParam(required = false, name = "orderId", value = "订单ID"),
             @ApiImplicitParam(required = false, name = "openid", value = "微信openid")
             @ApiImplicitParam(required = false, name = "openid", value = "微信openid")
     })
     })
-    @GetMapping("/orders/info")
-    public ResponseJson<OrderVo> getReceiptOrderInfo(Integer orderId, String openid) {
+    @GetMapping("/refunds/info")
+    public ResponseJson<OrderVo> getRefundShopOrderInfo(Integer orderId, String openid) {
         if (!StringUtils.hasLength(openid)) {
         if (!StringUtils.hasLength(openid)) {
             return ResponseJson.error("微信openid不能为空!", null);
             return ResponseJson.error("微信openid不能为空!", null);
         }
         }
-        return receiptService.getReceiptOrderInfo(orderId, openid);
+        return receiptService.getRefundShopOrderInfo(orderId, openid);
     }
     }
 
 
     /**
     /**
-     * 关联收款信息
+     * 确认收款-关联收款信息
      */
      */
-    @ApiOperation("关联收款信息")
-    @PostMapping("/associate")
+    @ApiOperation("确认收款-关联收款信息")
+    @PostMapping("/confirm")
     public ResponseJson<ReceiptPo> receiptAssociate(ReceiptAssociateDto receiptAssociateDto) {
     public ResponseJson<ReceiptPo> receiptAssociate(ReceiptAssociateDto receiptAssociateDto) {
         if (!StringUtils.hasLength(receiptAssociateDto.getOpenid())) {
         if (!StringUtils.hasLength(receiptAssociateDto.getOpenid())) {
             return ResponseJson.error("微信openid不能为空!", null);
             return ResponseJson.error("微信openid不能为空!", null);
         }
         }
         return receiptService.receiptAssociate(receiptAssociateDto);
         return receiptService.receiptAssociate(receiptAssociateDto);
     }
     }
+
+    /**
+     * 确认收款-关联供应商退款
+     * api/user/shop/relation
+     */
+    @ApiOperation("确认收款-关联供应商退款")
+    @PostMapping("/confirm/refund")
+    public ResponseJson<ReceiptPo> receiptAssociateRefund(ReceiptAssociateDto receiptAssociateDto) {
+        if (!StringUtils.hasLength(receiptAssociateDto.getOpenid())) {
+            return ResponseJson.error("微信openid不能为空!", null);
+        }
+        return receiptService.receiptAssociateRefund(receiptAssociateDto);
+    }
+
+
+
+
+
+
+
+
+
+
+    // 返佣关联
+    // /api/user/rebate/rebateDetail
+    // /api/user/rebate/rebateShopOrder
+    // /api/user/rebate/relation
+
 }
 }
 
 

+ 4 - 0
src/main/java/com/caimei365/order/mapper/ReceiptMapper.java

@@ -137,4 +137,8 @@ public interface ReceiptMapper {
      * 删除之前与这个收款所有的关系
      * 删除之前与这个收款所有的关系
      */
      */
     void deleteReceiptRelation(Integer receiptId);
     void deleteReceiptRelation(Integer receiptId);
+    /**
+     * 子订单付款类型列表
+     */
+    List<Integer> getRebatePayTypeList(Integer shopOrderId);
 }
 }

+ 5 - 0
src/main/java/com/caimei365/order/model/dto/ReceiptAssociateDto.java

@@ -34,6 +34,11 @@ public class ReceiptAssociateDto implements Serializable {
      */
      */
     @ApiModelProperty("非订单款说明(适用协销确认的时候区分订单和非订单款)")
     @ApiModelProperty("非订单款说明(适用协销确认的时候区分订单和非订单款)")
     private String noOrderReason;
     private String noOrderReason;
+    /**
+     * 关联供应商退款子订单ID
+     */
+    @ApiModelProperty("关联供应商退款子订单ID")
+    private Integer shopOrderId;
     /**
     /**
      * 微信openid
      * 微信openid
      */
      */

+ 8 - 0
src/main/java/com/caimei365/order/model/vo/ShopOrderVo.java

@@ -175,6 +175,14 @@ public class ShopOrderVo implements Serializable {
      * 存在退款中的记录 (0:否,1:是)
      * 存在退款中的记录 (0:否,1:是)
      */
      */
     private String haveReturning;
     private String haveReturning;
+    /**
+     * 子订单返佣标识
+     */
+    private Integer receiptedFlag;
+    /**
+     * 返佣类型 10口头返佣   1或者其他值都是返佣
+     */
+    private Integer receiptedType;
     /**
     /**
      * 返佣订单关联页面展示用
      * 返佣订单关联页面展示用
      */
      */

+ 15 - 4
src/main/java/com/caimei365/order/service/ReceiptService.java

@@ -68,7 +68,7 @@ public interface ReceiptService {
      * 获取收款列表
      * 获取收款列表
      *
      *
      * @param receiptType   收款款项类型:1订单款,2非订单款,3返佣款 4订单款或者非订单款(因财务阶段无法区分订单非订单), 5供应商退款
      * @param receiptType   收款款项类型:1订单款,2非订单款,3返佣款 4订单款或者非订单款(因财务阶段无法区分订单非订单), 5供应商退款
-     * @param receiptStatusStr 收款状态串(逗号隔开):1待确认、2已确认(待审核)、3审核通过、4审核未通过、5收款撤销【线上支付成功为审核通过】
+     * @param receiptStatus 收款状态:1待确认、2已确认(待审核)、3审核通过、4审核未通过、5收款撤销【线上支付成功为审核通过】
      * @param smsContent    收款短信
      * @param smsContent    收款短信
      * @param startDate     筛选开始时间
      * @param startDate     筛选开始时间
      * @param endDate       筛选结束时间
      * @param endDate       筛选结束时间
@@ -76,7 +76,7 @@ public interface ReceiptService {
      * @param pageNum       页码
      * @param pageNum       页码
      * @param pageSize      每页数量
      * @param pageSize      每页数量
      */
      */
-    ResponseJson<PageInfo<ReceiptVo>> getReceiptList(Integer receiptType, String receiptStatusStr, String smsContent, String startDate, String endDate, String openid, int pageNum, int pageSize);
+    ResponseJson<PageInfo<ReceiptVo>> getReceiptList(Integer receiptType, Integer receiptStatus, String smsContent, String startDate, String endDate, String openid, int pageNum, int pageSize);
 
 
     /**
     /**
      * 获取收款详情
      * 获取收款详情
@@ -99,6 +99,13 @@ public interface ReceiptService {
      */
      */
     ResponseJson<PageInfo<OrderVo>> getReceiptOrderList(Integer id, Integer type, Integer organizeId, String orderReceiptStatus, String keyword, String openid, int pageNum, int pageSize);
     ResponseJson<PageInfo<OrderVo>> getReceiptOrderList(Integer id, Integer type, Integer organizeId, String orderReceiptStatus, String keyword, String openid, int pageNum, int pageSize);
 
 
+    /**
+     * 获取收款订单详情
+     * @param orderId 订单Id
+     * @param openid  微信openid
+     */
+    ResponseJson<OrderVo> getReceiptOrderInfo(Integer orderId, String openid);
+
     /**
     /**
      * @param id            返佣收款ID
      * @param id            返佣收款ID
      * @param confirmedType 0待确认,2已确认子订单
      * @param confirmedType 0待确认,2已确认子订单
@@ -111,15 +118,19 @@ public interface ReceiptService {
     ResponseJson<PageInfo<ShopOrderVo>> getRefundShopOrderList(Integer id, Integer confirmedType, String shopName, String keyword, String openid, int pageNum, int pageSize);
     ResponseJson<PageInfo<ShopOrderVo>> getRefundShopOrderList(Integer id, Integer confirmedType, String shopName, String keyword, String openid, int pageNum, int pageSize);
 
 
     /**
     /**
-     * 获取收款订单详情
+     * 供应商退款详情
      * @param orderId 订单Id
      * @param orderId 订单Id
      * @param openid  微信openid
      * @param openid  微信openid
      */
      */
-    ResponseJson<OrderVo> getReceiptOrderInfo(Integer orderId, String openid);
+    ResponseJson<OrderVo> getRefundShopOrderInfo(Integer orderId, String openid);
 
 
     /**
     /**
      * 关联收款信息
      * 关联收款信息
      */
      */
     ResponseJson<ReceiptPo> receiptAssociate(ReceiptAssociateDto receiptAssociateDto);
     ResponseJson<ReceiptPo> receiptAssociate(ReceiptAssociateDto receiptAssociateDto);
 
 
+    /**
+     * 确认收款-关联供应商退款
+     */
+    ResponseJson<ReceiptPo> receiptAssociateRefund(ReceiptAssociateDto receiptAssociateDto);
 }
 }

+ 89 - 18
src/main/java/com/caimei365/order/service/impl/ReceiptServiceImpl.java

@@ -18,6 +18,7 @@ import com.caimei365.order.model.po.ReceiptPo;
 import com.caimei365.order.model.vo.*;
 import com.caimei365.order.model.vo.*;
 import com.caimei365.order.service.ReceiptService;
 import com.caimei365.order.service.ReceiptService;
 import com.caimei365.order.utils.DateUtils;
 import com.caimei365.order.utils.DateUtils;
+import com.caimei365.order.utils.ImageUtil;
 import com.caimei365.order.utils.MathUtil;
 import com.caimei365.order.utils.MathUtil;
 import com.caimei365.order.utils.Md5Util;
 import com.caimei365.order.utils.Md5Util;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageHelper;
@@ -26,6 +27,7 @@ import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.ArrayUtils;
 import org.apache.commons.lang3.ArrayUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.http.HttpHeaders;
 import org.springframework.http.HttpHeaders;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
@@ -33,6 +35,7 @@ import org.springframework.transaction.interceptor.TransactionAspectSupport;
 import org.springframework.util.CollectionUtils;
 import org.springframework.util.CollectionUtils;
 
 
 import javax.annotation.Resource;
 import javax.annotation.Resource;
+import java.math.BigDecimal;
 import java.util.*;
 import java.util.*;
 import java.util.regex.Matcher;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.regex.Pattern;
@@ -46,6 +49,8 @@ import java.util.regex.Pattern;
 @Slf4j
 @Slf4j
 @Service
 @Service
 public class ReceiptServiceImpl implements ReceiptService {
 public class ReceiptServiceImpl implements ReceiptService {
+    @Value("${caimei.wwwDomain}")
+    private String domain;
     @Resource
     @Resource
     private WeChatService weChatService;
     private WeChatService weChatService;
     @Resource
     @Resource
@@ -467,7 +472,7 @@ public class ReceiptServiceImpl implements ReceiptService {
      * 获取收款列表
      * 获取收款列表
      *
      *
      * @param receiptType   收款款项类型:1订单款,2非订单款,3返佣款 4订单款或者非订单款(因财务阶段无法区分订单非订单), 5供应商退款
      * @param receiptType   收款款项类型:1订单款,2非订单款,3返佣款 4订单款或者非订单款(因财务阶段无法区分订单非订单), 5供应商退款
-     * @param receiptStatusStr 收款状态串(逗号隔开):1待确认、2已确认(待审核)、3审核通过、4审核未通过、5收款撤销【线上支付成功为审核通过】
+     * @param receiptStatus 收款状态:1待确认、2已确认(待审核)、3审核通过、4审核未通过、5收款撤销【线上支付成功为审核通过】
      * @param smsContent    收款短信
      * @param smsContent    收款短信
      * @param startDate     筛选开始时间
      * @param startDate     筛选开始时间
      * @param endDate       筛选结束时间
      * @param endDate       筛选结束时间
@@ -476,27 +481,23 @@ public class ReceiptServiceImpl implements ReceiptService {
      * @param pageSize      每页数量
      * @param pageSize      每页数量
      */
      */
     @Override
     @Override
-    public ResponseJson<PageInfo<ReceiptVo>> getReceiptList(Integer receiptType, String receiptStatusStr, String smsContent, String startDate, String endDate, String openid, int pageNum, int pageSize) {
+    public ResponseJson<PageInfo<ReceiptVo>> getReceiptList(Integer receiptType, Integer receiptStatus, String smsContent, String startDate, String endDate, String openid, int pageNum, int pageSize) {
         ReceiptUserVo receiptUser = receiptMapper.getReceiptUserByOpenid(openid);
         ReceiptUserVo receiptUser = receiptMapper.getReceiptUserByOpenid(openid);
         if (null == receiptUser){
         if (null == receiptUser){
             return ResponseJson.error("请重新授权登录!", null);
             return ResponseJson.error("请重新授权登录!", null);
         }
         }
         ReceiptParamsBo paramsBo = new ReceiptParamsBo();
         ReceiptParamsBo paramsBo = new ReceiptParamsBo();
-        Integer receiptStatus = null;
         if (StringUtils.isNotBlank(smsContent)) {
         if (StringUtils.isNotBlank(smsContent)) {
             // 短信内容隐藏余额
             // 短信内容隐藏余额
             String message = hiddenBalance(smsContent);
             String message = hiddenBalance(smsContent);
             paramsBo.setSmsMd5Code(Md5Util.md5(message));
             paramsBo.setSmsMd5Code(Md5Util.md5(message));
         }
         }
-        if (StringUtils.isNotBlank(receiptStatusStr)) {
-            String[] receiptStatusArr = null;
-            if ("1".equals(receiptStatusStr)) {
+        if (null != receiptStatus && receiptStatus > 0) {
+            String[] receiptStatusArr;
+            if (1 == receiptStatus) {
                 receiptStatusArr = "1,4,5".split(",");
                 receiptStatusArr = "1,4,5".split(",");
             } else {
             } else {
-                receiptStatusArr = receiptStatusStr.split(",");
-                if ("2".equals(receiptStatusStr)){
-                    receiptStatus = 2;
-                }
+                receiptStatusArr = receiptStatus.toString().split(",");
             }
             }
             paramsBo.setReceiptStatusArr(receiptStatusArr);
             paramsBo.setReceiptStatusArr(receiptStatusArr);
         }
         }
@@ -669,6 +670,44 @@ public class ReceiptServiceImpl implements ReceiptService {
         return ResponseJson.success(pageInfo);
         return ResponseJson.success(pageInfo);
     }
     }
 
 
+    /**
+     * 获取收款订单详情
+     *
+     * @param orderId 订单Id
+     * @param openid  微信openid
+     */
+    @Override
+    public ResponseJson<OrderVo> getReceiptOrderInfo(Integer orderId, String openid) {
+        // 操作用户
+        ReceiptUserVo receiptUser = checkPermissions(1, openid);
+        if (null == receiptUser) {
+            return ResponseJson.error("无权限操作!", null);
+        }
+        // 订单信息
+        OrderVo order = orderCommonMapper.getOrderByOrderId(orderId);
+        // 设置订单的款项信息
+        setOrderAmountInfo(order);
+        // 子订单信息
+        List<ShopOrderVo> shopOrderList = orderCommonMapper.getShopOrderListByOrderId(order.getOrderId());
+        shopOrderList.removeIf(s -> s.getShopId() == 998);
+        // 订单商品信息
+        double totalAddedValueTax = 0d;
+        for (ShopOrderVo shopOrder : shopOrderList) {
+            // 供应商名称
+            String shopName = baseMapper.getShopNameById(shopOrder.getShopId());
+            shopOrder.setShopName(shopName);
+            List<OrderProductVo> orderProductList = orderCommonMapper.getShopOrderProduct(shopOrder.getShopOrderId());
+            for (OrderProductVo orderProduct : orderProductList) {
+                if (null != orderProduct.getTotalAddedValueTax()) {
+                    totalAddedValueTax = MathUtil.add(totalAddedValueTax, orderProduct.getTotalAddedValueTax()).doubleValue();
+                }
+            }
+            shopOrder.setOrderProductList(orderProductList);
+        }
+        order.setTotalAddedValueTax(totalAddedValueTax);
+        order.setShopOrderList(shopOrderList);
+        return ResponseJson.success(order);
+    }
 
 
     /**
     /**
      * @param id            返佣收款ID
      * @param id            返佣收款ID
@@ -718,13 +757,13 @@ public class ReceiptServiceImpl implements ReceiptService {
     }
     }
 
 
     /**
     /**
-     * 获取收款订单详情
+     * 供应商退款详情
      *
      *
      * @param orderId 订单Id
      * @param orderId 订单Id
      * @param openid  微信openid
      * @param openid  微信openid
      */
      */
     @Override
     @Override
-    public ResponseJson<OrderVo> getReceiptOrderInfo(Integer orderId, String openid) {
+    public ResponseJson<OrderVo> getRefundShopOrderInfo(Integer orderId, String openid) {
         // 操作用户
         // 操作用户
         ReceiptUserVo receiptUser = checkPermissions(1, openid);
         ReceiptUserVo receiptUser = checkPermissions(1, openid);
         if (null == receiptUser) {
         if (null == receiptUser) {
@@ -736,23 +775,44 @@ public class ReceiptServiceImpl implements ReceiptService {
         setOrderAmountInfo(order);
         setOrderAmountInfo(order);
         // 子订单信息
         // 子订单信息
         List<ShopOrderVo> shopOrderList = orderCommonMapper.getShopOrderListByOrderId(order.getOrderId());
         List<ShopOrderVo> shopOrderList = orderCommonMapper.getShopOrderListByOrderId(order.getOrderId());
-        shopOrderList.removeIf(s -> s.getShopId() == 998);
         // 订单商品信息
         // 订单商品信息
-        double totalAddedValueTax = 0d;
+        double needPayAmount = 0d;
         for (ShopOrderVo shopOrder : shopOrderList) {
         for (ShopOrderVo shopOrder : shopOrderList) {
             // 供应商名称
             // 供应商名称
             String shopName = baseMapper.getShopNameById(shopOrder.getShopId());
             String shopName = baseMapper.getShopNameById(shopOrder.getShopId());
             shopOrder.setShopName(shopName);
             shopOrder.setShopName(shopName);
+            needPayAmount += (shopOrder.getNeedPayAmount() == null ? 0d : shopOrder.getNeedPayAmount());
             List<OrderProductVo> orderProductList = orderCommonMapper.getShopOrderProduct(shopOrder.getShopOrderId());
             List<OrderProductVo> orderProductList = orderCommonMapper.getShopOrderProduct(shopOrder.getShopOrderId());
             for (OrderProductVo orderProduct : orderProductList) {
             for (OrderProductVo orderProduct : orderProductList) {
-                if (null != orderProduct.getTotalAddedValueTax()) {
-                    totalAddedValueTax = MathUtil.add(totalAddedValueTax, orderProduct.getTotalAddedValueTax()).doubleValue();
-                }
+                orderProduct.setImage(ImageUtil.getImageUrl("product", orderProduct.getImage(), domain));
             }
             }
             shopOrder.setOrderProductList(orderProductList);
             shopOrder.setOrderProductList(orderProductList);
+            List<Integer> rebatePayType = receiptMapper.getRebatePayTypeList(shopOrder.getShopOrderId());
+            if (CollectionUtils.isEmpty(rebatePayType)){
+                // 没返佣
+                shopOrder.setReceiptedFlag(0);
+            } else if (10 == rebatePayType.get(0)) {
+                // 口头返佣
+                shopOrder.setReceiptedType(10);
+                shopOrder.setReceiptedFlag(1);
+            } else {
+                shopOrder.setReceiptedType(1);
+                shopOrder.setReceiptedFlag(1);
+            }
         }
         }
-        order.setTotalAddedValueTax(totalAddedValueTax);
         order.setShopOrderList(shopOrderList);
         order.setShopOrderList(shopOrderList);
+        //收款金额
+        if (null != order.getRebateFlag() && 1 == order.getRebateFlag()) {
+            order.setReceiptAmount(needPayAmount);
+            double surplusAmount = MathUtil.sub(order.getPayTotalFee(), needPayAmount).doubleValue();
+            order.setSurplusAmount(surplusAmount);
+        } else {
+            // 获取订单已支付金额
+            Double paidAmount = receiptMapper.getPaidAmountByOrderId(order.getOrderId());
+            order.setReceiptAmount(paidAmount);
+            double surplusAmount = MathUtil.sub(order.getPayTotalFee(), paidAmount).doubleValue();
+            order.setSurplusAmount(surplusAmount);
+        }
         return ResponseJson.success(order);
         return ResponseJson.success(order);
     }
     }
 
 
@@ -939,6 +999,17 @@ public class ReceiptServiceImpl implements ReceiptService {
         return ResponseJson.success(receiptPo);
         return ResponseJson.success(receiptPo);
     }
     }
 
 
+    /**
+     * 确认收款-关联供应商退款
+     *
+     * @param receiptAssociateDto
+     */
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public ResponseJson<ReceiptPo> receiptAssociateRefund(ReceiptAssociateDto receiptAssociateDto) {
+        return null;
+    }
+
     /**
     /**
      * 设置订单的款项信息
      * 设置订单的款项信息
      */
      */

+ 7 - 0
src/main/resources/mapper/ReceiptMapper.xml

@@ -686,4 +686,11 @@
           AND cdr.delFlag = '0' AND cdr.receiptStatus = '2'
           AND cdr.delFlag = '0' AND cdr.receiptStatus = '2'
           AND cror.orderID IN (SELECT shopOrderID FROM cm_shop_order cso1 WHERE cso1.orderID = #{orderId})
           AND cror.orderID IN (SELECT shopOrderID FROM cm_shop_order cso1 WHERE cso1.orderID = #{orderId})
     </select>
     </select>
+    <select id="getRebatePayTypeList" resultType="java.lang.Integer">
+        SELECT cdr.payType
+        FROM cm_receipt_order_relation cror
+            LEFT JOIN  cm_discern_receipt cdr ON cdr.id = cror.receiptID
+        WHERE cror.relationType = '1' AND cror.delFlag = '0'
+          AND cror.orderID = #{shopOrderId} and cdr.receiptType = '3'
+    </select>
 </mapper>
 </mapper>