| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 | import { api_userPaymentOrderRefundPayment } from "../../api/login";// components/apply-refound/apply-refound.tsComponent({  /**   * 组件的属性列表   */  properties: {    refoundStatus: {      type: Boolean,      default: false,    },    goodsInfo: {      type: Object,      default: {}    }  },  /**   * 组件的初始数据   */  data: {    submitStatus: false,    refoundValue: "", // 退款内容    refoundPhone: ''  },  /**   * 组件的方法列表   */  methods: {    textareaInput(e: { detail: any }) {      this.setData({        refoundValue: e.detail.value      })    },    phoneInput(e: { detail: any }) {      this.setData({        refoundPhone: e.detail.value      })    },    onRefoundClose() {      this.triggerEvent("changeRefoundStatus", false)    },    checkPhone(phone: string) {      const phoneRule =        /^((13[0-9])|(14(0|[5-7]|9))|(15([0-3]|[5-9]))|(16(2|[5-9]))|(17[0-8])|(18[0-9])|(19([0-3]|[5-9])))\d{8}$/;      return phoneRule.test(phone);    },    async onRefound() {      const refoundValue = this.data.refoundValue      const refoundPhone = this.data.refoundPhone      if (!refoundValue) {        wx.showToast({ title: '请输入退款原因', icon: 'none' })        return      }      if (!this.checkPhone(refoundPhone)) {        wx.showToast({ title: '请输入正确的手机号码', icon: 'none' })        return      }      try {        this.setData({          submitStatus: true        })        const { goods, orderNo } = this.data.goodsInfo        const details: any = []        goods.forEach((item: any) => {          details.push({            num: item.goodsNum,            onlyRefund: false,            userPaymentOrderDetailId: item.id,            refundAmount: item.currentPrice          })        })        const params = {          merOrderNo: orderNo,          serviceCharge: false,          refundReason: refoundValue,          phone: refoundPhone, // 手机号          serviceChargeFee: 0,          userRefundOrderDetails: details        }        const { data } = await api_userPaymentOrderRefundPayment(params)        this.setData({          submitStatus: false        })        if (data.code == 200) {          wx.showToast({ title: '申请成功', icon: 'none' })          this.triggerEvent('onConfirm')        } else {          wx.showToast({ title: data.message, icon: 'none' })        }      } catch { }    },  }})
 |