绿满眶商城微信小程序-uniapp
xiangpei
2025-07-03 aea728e413903d03639d228e9d036bf6113dcb09
pages/order/myOrder.vue
@@ -143,8 +143,18 @@
                  >
                    退款/售后
                  </view>
              <view
                ripple
                shape="circle"
                class="cancel-btn"
                size="mini"
                v-if="order.orderStatus === 'COMPLETED' "
                @click="buyBack(order)"
              >
                再来一单
              </view>
                  <!-- TODO 后续完善 -->
                  <!-- <u-button ripple shape="circle" class="rebuy-btn" size="mini" v-if="
<!--                  <u-button ripple shape="circle" class="rebuy-btn" size="mini" v-if="
                      order.orderStatus === 'CANCELLED' ||
                      order.orderStatus === 'COMPLETE'
                    " @click="reBuy(order)">
@@ -213,22 +223,13 @@
</template>
<script>
import UEmpty from '@/uview-components/uview-ui/components/u-empty/u-empty.vue';
import UImage from '@/uview-components/uview-ui/components/u-image/u-image.vue';
import UPopup from '@/uview-components/uview-ui/components/u-popup/u-popup.vue';
import URadioGroup from '@/uview-components/uview-ui/components/u-radio-group/u-radio-group.vue';
import URadio from '@/uview-components/uview-ui/components/u-radio/u-radio.vue';
import UButton from '@/uview-components/uview-ui/components/u-button/u-button.vue';
import UToast from '@/uview-components/uview-ui/components/u-toast/u-toast.vue';
import UModal from '@/uview-components/uview-ui/components/u-modal/u-modal.vue';
import uniLoadMore from "@/components/uni-load-more/uni-load-more.vue";
import { getOrderList, cancelOrder, confirmReceipt } from "@/api/order.js";
import '@/components/uview-components/uview-ui';
import { getOrderXcxList, cancelOrder, confirmReceipt } from "@/api/order.js";
import { getClearReason } from "@/api/after-sale.js";
import LiLiWXPay from "@/js_sdk/lili-pay/wx-pay.js";
import {buyBack} from "@/api/trade.js";
export default {
  components: {
    uniLoadMore,UEmpty,UImage,UPopup,URadioGroup,URadio,UButton,UToast,UModal
  },
  data() {
    return {
      lightColor: this.$lightColor,
@@ -372,6 +373,26 @@
    },
  },
  methods: {
     //再来一单
     buyBack(order){
      console.log(JSON.stringify(order))
      const param = order.orderItems.map(item => {
        return {
          skuId: item.skuId,
          num: item.num
        }
      })
      console.log('------------------>',JSON.stringify(param))
        buyBack(param).then(res=>{
           console.log('------------------->',res)
           if(res.data.code==200){
              uni.navigateTo({
                 url: "/pages/order/fillorder?way=CART"
              })
           }
        })
     },
    // 售后
    applyService(order) {
      uni.navigateTo({
@@ -425,18 +446,9 @@
     */
    pay(val) {
      if (val.sn) {
        // #ifdef MP-WEIXIN
        new LiLiWXPay({
          sn: val.sn,
          price: val.flowPrice,
          orderType: "ORDER",
        }).pay();
        // #endif
        // #ifndef MP-WEIXIN
        uni.navigateTo({
          url: "/pages/cart/payment/payOrder?order_sn=" + val.sn,
        });
        // #endif
      }
    },
@@ -446,7 +458,7 @@
    loadData(index) {
      this.params.pageNumber = this.navList[index].pageNumber;
      // this.params.tag = this.orderStatus[index].orderStatus;
      getOrderList(this.params).then((res) => {
      getOrderXcxList(this.params).then((res) => {
        uni.stopPullDownRefresh();
        if (!res.data.success) {
          this.navList[index].loadStatus = "noMore";