Browse Source

Merge remote-tracking branch 'origin/developer' into developerJ

Duan_xu 3 years ago
parent
commit
5d4f21fa6f

+ 16 - 9
src/main/java/com/caimei/modules/bulkpurchase/web/CmRefundsProductController.java

@@ -278,6 +278,8 @@ public class CmRefundsProductController extends BaseController {
             if (null != cmReturnedPurchase.getOnlineShopOrderId()) {
                 //1未结算2部分结算3已结算
                 status = cmReturnedPurchaseDao.findShopOrderSettleStatus(cmReturnedPurchase.getOnlineShopOrderId());
+                cmReturnedPurchase.setRefundFee(newOrder.getNewShopOrders().get(0).getReceiptAmount());
+                cmReturnedPurchase.setRefundOnlineFee(cmReturnedPurchase.getFreeRefundFee());
             }
             Integer count = cmReturnedPurchaseDao.findRefundType(cmReturnedPurchase.getOrderID());
             if (count > 0) {
@@ -429,12 +431,14 @@ public class CmRefundsProductController extends BaseController {
 
             //线上退款
             if ("2".equals(cmReturnedPurchase.getReturnedWay())) {
-                double refundOnlineFee = refundFee - newOrder.getBalancePayFee();
-                cmReturnedPurchase.setRefundOnlineFee(refundOnlineFee);
-                cmReturnedPurchase.setRefundBalanceFee(newOrder.getBalancePayFee());
+                Double paid = cmReturnedPurchaseDao.findShopOrderPaid(shopOrderId);
+                cmReturnedPurchase.setRefundFee(paid);
+                cmReturnedPurchase.setRefundOnlineFee(paid);
                 if (2 == cmReturnedPurchase.getRefundType()) {
                     //查找线上订单已支付金额,申请退款金额不能大于此金额
-                    Double onlinePay = cmReturnedPurchaseDao.findOnlinePay(shopOrderId);
+                    Double onlinePay = null == cmReturnedPurchaseDao.findOnlinePay(shopOrderId) ? 0d : cmReturnedPurchaseDao.findOnlinePay(shopOrderId);
+                    cmReturnedPurchase.setRefundFee(cmReturnedPurchase.getFreeRefundFee());
+                    cmReturnedPurchase.setRefundOnlineFee(cmReturnedPurchase.getFreeRefundFee());
                     if (cmReturnedPurchase.getFreeRefundFee() > onlinePay) {
                         model.addAttribute("errorMsg", "退款金额不能大于已付金额");
                         cmReturnedPurchase.setOnlineShopOrderId(shopOrderId);
@@ -456,7 +460,7 @@ public class CmRefundsProductController extends BaseController {
             }
 
             //判断退款金额和打款金额是否一致
-            if (1 == cmReturnedPurchase.getRefundType()) {
+            if (1 == cmReturnedPurchase.getRefundType() && !"2".equals(cmReturnedPurchase.getReturnedWay())) {
                 double v = totalRefundFee - refundFee;
                 if (v > 0.1 || v < -0.1) {
                     model.addAttribute("errorMsg", "各退款方式的金额之和不等于退款总金额,请重新计算后再提交申请");
@@ -472,7 +476,9 @@ public class CmRefundsProductController extends BaseController {
                 }
             }
 
-            cmReturnedPurchase.setRefundFee(refundFee);
+            if (!"2".equals(cmReturnedPurchase.getReturnedWay())) {
+                cmReturnedPurchase.setRefundFee(refundFee);
+            }
             String saveInfo = cmReturnedPurchaseService.save(cmReturnedPurchase, freightNum, request, response, model);
             if (StringUtils.isNotEmpty(saveInfo)) {
                 model.addAttribute("errorMsg", saveInfo);
@@ -752,7 +758,7 @@ public class CmRefundsProductController extends BaseController {
                 List<CmPayShopRecord> payShopRecordList = newShopOrderService.getPayedRecords(shopOrderID.toString());
                 pr.addAll(payShopRecordList);
             }
-            model.addAttribute("pr",pr);
+            model.addAttribute("pr", pr);
             model.addAttribute("cmReturnedPurchaseList", dataList);
             model.addAttribute("order", newOrder);
             model.addAttribute("receipt", listRelation);
@@ -777,8 +783,8 @@ public class CmRefundsProductController extends BaseController {
                     refundFee += bean.getRefundFee();
                 }
             }
-            List<SettleRecord> settleRecord=newOrderService.findSettleRecord(cmReturnedPurchase.getOrderID());
-            model.addAttribute("settleRecord",settleRecord);
+            List<SettleRecord> settleRecord = newOrderService.findSettleRecord(cmReturnedPurchase.getOrderID());
+            model.addAttribute("settleRecord", settleRecord);
             model.addAttribute("order", newOrder);
             model.addAttribute("receipt", listRelation);
             model.addAttribute("refundFee", refundFee);
@@ -789,6 +795,7 @@ public class CmRefundsProductController extends BaseController {
         }
         return "modules/bulkpurchase/settlementRecord";
     }
+
     /**
      * @return
      * @Author ye.qin

+ 2 - 0
src/main/java/com/caimei/modules/order/dao/CmReturnedPurchaseDao.java

@@ -49,4 +49,6 @@ public interface CmReturnedPurchaseDao extends CrudDao<CmReturnedPurchase> {
     String findShopOrderSettleStatus(Integer onlineShopOrderId);
 
     Integer findRefundType(Integer orderID);
+
+    Double findShopOrderPaid(Integer shopOrderID);
 }

+ 0 - 56
src/main/java/com/caimei/modules/order/entity/CmReturnedPurchase.java

@@ -506,60 +506,4 @@ public class CmReturnedPurchase extends DataEntity<CmReturnedPurchase> {
     public void setEndTime(String endTime) {
         this.endTime = endTime;
     }
-
-    @Override
-    public String toString() {
-        return "CmReturnedPurchase{" +
-                "returnedNo='" + returnedNo + '\'' +
-                ", orderID=" + orderID +
-                ", organizeID=" + organizeID +
-                ", orderNo='" + orderNo + '\'' +
-                ", userName='" + userName + '\'' +
-                ", userID=" + userID +
-                ", status='" + status + '\'' +
-                ", returnedWay='" + returnedWay + '\'' +
-                ", payType='" + payType + '\'' +
-                ", operatingOrderStatus='" + operatingOrderStatus + '\'' +
-                ", returnedPurchaseFee=" + returnedPurchaseFee +
-                ", refundFee=" + refundFee +
-                ", freeRefundFee=" + freeRefundFee +
-                ", image1='" + image1 + '\'' +
-                ", image2='" + image2 + '\'' +
-                ", image3='" + image3 + '\'' +
-                ", image4='" + image4 + '\'' +
-                ", image5='" + image5 + '\'' +
-                ", reviewImage1='" + reviewImage1 + '\'' +
-                ", reviewImage2='" + reviewImage2 + '\'' +
-                ", reviewImage3='" + reviewImage3 + '\'' +
-                ", reviewImage4='" + reviewImage4 + '\'' +
-                ", reviewImage5='" + reviewImage5 + '\'' +
-                ", reviewRemarks='" + reviewRemarks + '\'' +
-                ", returnTime='" + returnTime + '\'' +
-                ", confirmReturnTime='" + confirmReturnTime + '\'' +
-                ", beginReturnTime=" + beginReturnTime +
-                ", endReturnTime=" + endReturnTime +
-                ", beginConfirmReturnTime=" + beginConfirmReturnTime +
-                ", endConfirmReturnTime=" + endConfirmReturnTime +
-                ", cmReturnedPurchaseProductList=" + cmReturnedPurchaseProductList +
-                ", shopOrderReturnedList=" + shopOrderReturnedList +
-                ", productList=" + productList +
-                ", bankAccountName='" + bankAccountName + '\'' +
-                ", bankAccountNo='" + bankAccountNo + '\'' +
-                ", openBank='" + openBank + '\'' +
-                ", bankAccountType='" + bankAccountType + '\'' +
-                ", refundBalanceFee=" + refundBalanceFee +
-                ", refundOnlineFee=" + refundOnlineFee +
-                ", refundOfflineFee=" + refundOfflineFee +
-                ", applicationUserID=" + applicationUserID +
-                ", reviewUserID=" + reviewUserID +
-                ", applicationUserName='" + applicationUserName + '\'' +
-                ", reviewUserName='" + reviewUserName + '\'' +
-                ", name='" + name + '\'' +
-                ", orderType=" + orderType +
-                ", refundType=" + refundType +
-                ", beginTime='" + beginTime + '\'' +
-                ", endTime='" + endTime + '\'' +
-                ", onlineShopOrderId=" + onlineShopOrderId +
-                '}';
-    }
 }

+ 0 - 5
src/main/java/com/caimei/modules/order/service/CmDiscernReceiptService.java

@@ -156,11 +156,6 @@ public class CmDiscernReceiptService extends CrudService<CmDiscernReceiptDao, Cm
                         BigDecimal refundsAmount = MathUtil.add(roi.getRefundsAmount(), shopRefundAmount);
                         roi.setRefundsAmount(refundsAmount.doubleValue());*/
                     }
-                    if (0 == roi.getOnlinePayFlag()) {
-                        // 可以线上支付,查询子订单信息
-                        List<NewShopOrder> shopOrderInfos = cmDiscernReceiptDao.getShopOrderInfos(relation.getOrderID(), null);
-                        roi.setShopOrderInfos(shopOrderInfos);
-                    }
                 }
             }
             if ("2".equals(relation.getRelationType())) { // relation.orderID 指的是主订单id

+ 5 - 5
src/main/java/com/caimei/modules/order/service/CmReturnedPurchaseService.java

@@ -126,6 +126,10 @@ public class CmReturnedPurchaseService extends CrudService<CmReturnedPurchaseDao
             model.addAttribute("errorMsg", "待确认,待收待发订单 不能申请退款");
             return "待确认,待收待发订单 不能申请退款";
         }
+        Integer changeFlag=0;
+        if("2".equals(cmReturnedPurchase.getReturnedWay())){
+            changeFlag=1;
+        }
         cmReturnedPurchase.setReturnedWay("1");
         if (NewOrderStatus.isNotPay(newOrder.getStatus())) {
             //未支付订单无退款
@@ -177,10 +181,6 @@ public class CmReturnedPurchaseService extends CrudService<CmReturnedPurchaseDao
         if (num <= 0) {
             return "请填写退货/取消数量";
         }
-        if (2 == cmReturnedPurchase.getRefundType()) {
-            cmReturnedPurchase.setRefundFee(cmReturnedPurchase.getFreeRefundFee());
-            cmReturnedPurchase.setReturnedPurchaseFee(cmReturnedPurchase.getFreeRefundFee());
-        }
         String id = cmReturnedPurchase.getId();//存在Id则是重申或者再次申请
         if (StringUtils.isEmpty(id)) {
             //正常插入数据流程---新申请
@@ -234,7 +234,7 @@ public class CmReturnedPurchaseService extends CrudService<CmReturnedPurchaseDao
                 }
             }
         }
-        if (1 == cmReturnedPurchase.getRefundType()) {
+        if (1 == cmReturnedPurchase.getRefundType() && 0==changeFlag) {
             if (newOrder.getPromotionFullReduction() != null) {
                 //减去促销满减金额
                 returnedPurchaseFee = returnedPurchaseFee - newOrder.getPromotionFullReduction();

+ 6 - 0
src/main/resources/mappings/modules/order/CmReturnedPurchaseMapper.xml

@@ -461,4 +461,10 @@
 		  AND delflag = 0
 		  AND refundtype=2
 	</select>
+	<select id="findShopOrderPaid" resultType="java.lang.Double">
+		SELECT SUM(associateAmount)
+		FROM cm_receipt_order_relation
+		WHERE shopOrderId=#{shopOrderID}
+		AND delflag=0
+	</select>
 </mapper>

+ 2 - 2
src/main/webapp/WEB-INF/views/modules/bulkpurchase/applyRefoundForm.jsp

@@ -120,8 +120,8 @@
                     }else if (${returnOnline}){
                         var obj = document.getElementsByClassName("check-item-review");
                         var checked0 = obj[0].checked;
-                        var checked1 = obj[1].checked;
-                        if(!checked1 && !checked0){
+                        // var checked1 = obj[1].checked;
+                        if(!checked0){
                             alertx("请选择退款方式");
                             return;
                         }

+ 26 - 25
src/main/webapp/WEB-INF/views/modules/order/cmDiscernReceiptForm.jsp

@@ -251,18 +251,18 @@
                         </div>
                     </c:if>
                     <div class="receipt-order-row2">
-                    <span class="font-blue"><label>订单编号:</label><a
+                        <span class="font-blue"><label>订单编号:</label><a
                             href="${ctx}/order/detail?id=${orderInfo.orderID}">${orderInfo.orderNo}(${orderInfo.orderID})</a></span>
-                        <span><label>订单金额:</label>¥<fmt:formatNumber
-                                value="${orderInfo.orderAmount}"
-                                pattern="#0.00"/></span>
-                        <span>
-                        <span><label>应收金额:</label>¥<fmt:formatNumber value="${orderInfo.payableAmount}"
+                            <span><label>订单金额:</label>¥<fmt:formatNumber
+                                    value="${orderInfo.orderAmount}"
+                                    pattern="#0.00"/></span>
+                            <span>
+                            <span><label>应收金额:</label>¥<fmt:formatNumber value="${orderInfo.payableAmount}"
                                                                          pattern="#0.00"/></span>
-                        <span>
-                        <label>已收金额:</label>¥<fmt:formatNumber
-                                value="${empty orderInfo.receiptAmount ? 0 : orderInfo.receiptAmount}"
-                                pattern="#0.00"/>
+                            <span>
+                            <label>已收金额:</label>¥<fmt:formatNumber
+                                    value="${empty orderInfo.receiptAmount ? 0 : orderInfo.receiptAmount}"
+                                    pattern="#0.00"/>
                             <span>
                                     <c:forEach items="${orderInfo.receiptRecordVo}" var="receiptRecord"
                                                varStatus="index">
@@ -308,20 +308,21 @@
                                     </c:forEach>
                                 </span>
                             </span>
-                        <span><label>机构名称:</label>
-                                    <c:if test="${orderInfo.organizeID == 1}">
-                                        <span class="org-note">星范</span>
-                                    </c:if>
-                                        ${orderInfo.customerName}
-                        <c:if test="${orderInfo.organizeID == 3}">
+                            <span><label>机构名称:</label>
+                                        <c:if test="${orderInfo.organizeID == 1}">
+                                            <span class="org-note">星范</span>
+                                        </c:if>
+                                            ${orderInfo.customerName}
+                                <c:if test="${orderInfo.organizeID == 3}">
 
-                        </c:if>
-                                </span>
-                        <span><label>订单状态:</label>
-                                    <c:if test="${orderInfo.receiptStatus == 1}">待收款</c:if>
-                                    <c:if test="${orderInfo.receiptStatus == 2}">部分收款</c:if>
-                                    <c:if test="${orderInfo.receiptStatus == 3}">已收款</c:if>
-                                </span>
+                                </c:if>
+                            </span>
+                            <span><label>订单状态:</label>
+                                        <c:if test="${orderInfo.receiptStatus == 1}">待收款</c:if>
+                                        <c:if test="${orderInfo.receiptStatus == 2}">部分收款</c:if>
+                                        <c:if test="${orderInfo.receiptStatus == 3}">已收款</c:if>
+                            </span>
+                        </span>
                     </div>
                     <div class="receipt-order-row3">
                                 <span><label>订单类型:</label><c:if test="${orderInfo.orderType == 0}">协销订单</c:if>
@@ -332,9 +333,9 @@
                         <c:forEach items="${orderInfo.shopOrderInfos}" var="shopOrder" varStatus="index">
                             <span>子订单编号:${shopOrder.shopOrderNo}(${shopOrder.shopOrderID})</span>
                             <span>子订单应收金额:¥<fmt:formatNumber value="${shopOrder.realPay}"
-                                                           pattern="#0.00"/></span>
+                                                             pattern="#0.00"/></span>
                             <span>子订单已收金额:¥<fmt:formatNumber value="${shopOrder.receiptAmount}"
-                                                           pattern="#0.00"/></span>
+                                                             pattern="#0.00"/></span>
                             <span>子订单收款状态:${fns:getDictLabel(shopOrder.shopReceiptStatus,'receiptStatus' ,'' )}</span>
                         </c:forEach>
                     </div>