shish пре 11 часа
родитељ
комит
eed9f00967

+ 34 - 46
hdApp/src/admin/order/refund.vue

@@ -212,6 +212,7 @@
 /**
  * 花店订单售后页:选择退货商品、填写退款金额并提交。
  * 退货单价直接取订单原单价,只需填数量。
+ * 提交成功后统一跳转 admin/billing/forwardResult(资金落地 / 海报 / 原路成功)。
  */
 import { getDetail,refund } from "@/api/order/index";
 import ModalModule from "@/components/plugin/modal";
@@ -409,59 +410,46 @@ export default {
 			let refundParams = {product:JSON.stringify(selectProduct),id: this.option.id,price:this.refundMoney,remark:this.remark,refundType:this.refundType,refundHb:this.refundHb,getOriginalItem:1,version:2}
 			this.doRefund(refundParams)
 		},
+		/**
+		 * 提交售后退款;成功后统一进 forwardResult(对齐 ghs 端)
+		 * - 待选手选落地 / 已返充海报 / 已原路成功:均由 forwardResult 展示
+		 * - 不再按 payWay 跳转 onlineResult / balanceCp / offlineRemind / debtResult
+		 * - hd 无 ghs 的 refundSuccess(报损减库),原路终态也走 forwardResult 简版成功态
+		 */
 		doRefund(refundParams){
 			uni.showLoading({mask:true})
 			refund(refundParams).then(res => {
 				uni.hideLoading()
 				if(res.code == 1){
 					const data = res.data || {}
-					// 需选手选资金落地:跳转 forwardResult(已线下转账 / 返充余额)
-					if (Number(data.needFundAction) === 1) {
-						const payload = {
-							amount: data.refundPrice || this.refundMoney,
-							customId: data.customId || this.orderInfo.customId,
-							customBalance: data.customBalance != null ? data.customBalance : '',
-							customName: data.customName || this.orderInfo.customName || '',
-							forwardSn: data.refundSn || data.orderSn || '',
-							forwardId: data.id || 0,
-							orderId: data.orderId || this.orderInfo.id || 0,
-							payWay: data.payWay != null ? data.payWay : this.orderInfo.payWay,
-							onlinePay: data.onlinePay != null ? data.onlinePay : this.orderInfo.onlinePay,
-							hasReturn: data.hasReturn != null ? data.hasReturn : 0,
-							couldReturn: data.couldReturn != null ? data.couldReturn : 1,
-							returnBalance: data.returnBalance != null ? data.returnBalance : 0,
-							needFundAction: 1
-						}
-						uni.setStorageSync('forwardResultPayload', payload)
-						this.$util.pageTo({
-							url: '/admin/billing/forwardResult',
-							type: 2,
-							query: {
-								amount: payload.amount,
-								customId: payload.customId,
-								customBalance: payload.customBalance,
-								forwardId: payload.forwardId,
-								needFundAction: 1
-							}
-						})
-						return
+					// 待确认退回方式:当天/隔天线下等 hasReturn=0 且 couldReturn=1
+					const needFund = Number(data.needFundAction) === 1
+						|| (Number(data.hasReturn) === 0
+							&& Number(data.returnBalance) === 0
+							&& Number(data.couldReturn) === 1)
+					const payload = {
+						amount: data.refundPrice || this.refundMoney,
+						customId: data.customId || this.orderInfo.customId,
+						customBalance: data.customBalance != null ? data.customBalance : '',
+						customName: data.customName || this.orderInfo.customName || '',
+						forwardSn: data.refundSn || data.orderSn || '',
+						forwardId: data.id || 0,
+						orderId: data.orderId || this.orderInfo.id || 0,
+						payWay: data.payWay != null ? data.payWay : this.orderInfo.payWay,
+						onlinePay: data.onlinePay != null ? data.onlinePay : this.orderInfo.onlinePay,
+						hasReturn: data.hasReturn != null ? data.hasReturn : 0,
+						couldReturn: data.couldReturn != null ? data.couldReturn : 1,
+						returnBalance: data.returnBalance != null ? data.returnBalance : 0,
+						needFundAction: needFund ? 1 : 0
 					}
-
-					if(this.orderInfo.onlinePay == 2){
-						this.$util.pageTo({url:'/admin/refund/onlineResult',type:2})
-					}else{
-						if(this.orderInfo.payWay == 2){
-							//余额支付
-							this.$util.pageTo({url:'/admin/refund/balanceCp?orderId='+this.orderInfo.id+'&amount='+this.refundMoney,type:2})
-						}else if(this.orderInfo.payWay == 0 || this.orderInfo.payWay == 1 || this.orderInfo.payWay == 4 || this.orderInfo.payWay == 5){
-							//线下微信、支付宝、现金和银行卡付款
-							this.$util.pageTo({url:'/admin/refund/offlineRemind?orderId='+this.orderInfo.id+'&amount='+this.refundMoney+'&payWay='+this.orderInfo.payWay,type:2})
-						}else{
-							//挂账的
-							this.$util.pageTo({url:'/admin/refund/debtResult?orderId='+this.orderInfo.id+'&amount='+this.refundMoney,type:2})
-						}
-					}
-
+					uni.setStorageSync('forwardResultPayload', payload)
+					this.$util.pageTo({
+						url: '/admin/billing/forwardResult',
+						type: 2,
+						query: Object.assign({}, payload, {
+							customName: encodeURIComponent(payload.customName || '')
+						})
+					})
 				}
 			})
 		},

+ 0 - 154
hdApp/src/admin/refund/balanceCp.vue

@@ -1,154 +0,0 @@
-<template>
-  <view class="app-content">
-    <view class="billing_box_bg">
-      <view class="top-view"> </view>
-      <view class="result-view">
-        <view :class="['iconfont', 'iconchenggong']"></view>
-        <view class="result-title">售后成功</view>
-        <view style="font-size:36upx;margin-top:10upx;color:green;font-weight:bold;margin-bottom:20upx;">钱已退回到客户余额</view>
-        <view class="textarea-container">
-          <view 
-            class="result-textarea" 
-            :style="{ height: textareaHeight + 'upx' }"
-          >{{ copyText }}</view>
-        </view>
-        <view style="font-size:34upx;color:#807d7d;">复制上面文字,发给客户</view>
-        <view class="pay-confirm-content">
-          <view>
-              <button class="admin-button-com big" @click="copyBack" style="width:420upx;">复制并返回</button>
-          </view>
-        </view>
-      </view>
-    </view>
-  </view>
-</template>
-<script>
-import { getMallRechargeShortLink } from "@/api/recharge";
-export default {
-  name: "balanceCp",
-  data() {
-    return {
-      orderInfo:[],
-      copyText:"",
-      textareaHeight: 300
-    }
-  },
-  onLoad(){
-
-    //返回上一页时刷新
-    let pages = getCurrentPages();
-    let prevPage = pages[ pages.length - 2 ];
-    prevPage.$vm.refreshPage = 1
-
-  },
-  methods: {
-    init(){
-      let amount = this.option.amount?parseFloat(this.option.amount):0
-      let orderId = this.option.orderId?this.option.orderId:0
-      getMallRechargeShortLink({orderId:orderId}).then(res=>{
-        if(res.code == 1){
-         let rechargeAccountLink = res.data.rechargeAccountLink ? res.data.rechargeAccountLink:''
-         let orderLink = res.data.orderLink?res.data.orderLink:''
-         this.copyText = "售后金额¥"+amount+"元,已退回到你的余额,点击下面链接查看你的余额\n\n余额 "+rechargeAccountLink+"\n\n本单 "+orderLink+"\n\n链接30天后失效"
-         this.$nextTick(() => {
-           this.calculateHeight()
-         })
-        }
-      })
-    },
-    calculateHeight(){
-      // 根据文本内容计算合适的高度
-      const lineHeight = 1.6
-      const fontSize = 28
-      const padding = 60 // 上下padding各30upx
-      const minHeight = 300
-      
-      // 计算行数(按换行符分割)
-      const lines = this.copyText.split('\n').length
-      const calculatedHeight = Math.max(minHeight, lines * fontSize * lineHeight + padding)
-      
-      this.textareaHeight = calculatedHeight
-    },
-    copyBack(){
-      uni.setClipboardData({
-        data: this.copyText,
-        success: () => {
-          uni.showToast({ title: '复制成功', icon: 'success', duration: 2000 })
-          setTimeout(() => {
-            uni.navigateBack()      
-          }, 500)
-        },
-        fail: () => {
-          uni.showToast({ title: '复制失败', icon: 'none', duration: 2000 })
-          setTimeout(() => {
-            uni.navigateBack()      
-          }, 1000)
-        }
-      });
-    }
-  },
-};
-</script>
-<style lang="scss" scoped>
-.billing_box_bg {
-  position: relative;
-  padding: 30upx 30upx;
-  display: flex;
-  flex-direction: column;
-  background-color: #f5f5f5;
-  .top-view {
-    position: absolute;
-    top: 0;
-    left: 0;
-    width: 100%;
-    height: 299upx;
-    background: #3385ff;
-    border-radius: 0upx 0upx 83upx 83upx;
-  }
-  .result-view {
-    position: relative;
-    display: flex;
-    flex-direction: column;
-    align-items: center;
-    padding: 80upx 0upx 70upx 0upx;
-    width: 100%;
-    background: #ffffff;
-    border-radius: 20upx;
-    z-index: 1;
-    .iconchenggong {
-      font-size: 130upx;
-      color: $mainColor1;
-    }
-    .result-title {
-      margin: 50upx 0 30upx;
-      font-size: 38upx;
-    }
-    
-    .textarea-container {
-      width: 100%;
-      padding: 0 40upx;
-      margin-bottom: 40upx;
-      
-      .result-textarea {
-        width: 100%;
-        min-height: 300upx;
-        padding: 30upx;
-        background: #f8f9fa;
-        border: 2upx solid #e9ecef;
-        border-radius: 16upx;
-        font-size: 28upx;
-        line-height: 1.6;
-        color: #333;
-        word-wrap: break-word;
-        white-space: pre-wrap;
-        overflow-y: auto;
-      }
-    }
-  }
-}
-
-.pay-confirm-content {
-  padding: 40upx 40upx;
-  text-align: center;
-}
-</style>

+ 0 - 160
hdApp/src/admin/refund/debtResult.vue

@@ -1,160 +0,0 @@
-<template>
-  <view class="app-content">
-    <view class="billing_box_bg">
-      <view class="top-view"> </view>
-      <view class="result-view">
-        <view :class="['iconfont', 'iconchenggong']"></view>
-        <view class="result-title">操作成功</view>
-        <view class="textarea-container">
-          <view 
-            class="result-textarea" 
-            :style="{ height: textareaHeight + 'upx' }"
-          >{{ copyText }}</view>
-        </view>
-        <view style="font-size:34upx;color:#807d7d;">复制上面文字,发给客户</view>
-        <view class="pay-confirm-content">
-          <view>
-              <button class="admin-button-com big" @click="copyBack" style="width:420upx;">复制并返回</button>
-          </view>
-        </view>
-      </view>
-    </view>
-  </view>
-</template>
-<script>
-import { getMallRechargeShortLink } from "@/api/recharge";
-import { getDetB} from "@/api/order";
-export default {
-  name: "debtResult",
-  data() {
-    return {
-      orderInfo:[],
-      copyText:"",
-      remainDebtPrice:0,
-      textareaHeight: 300
-    }
-  },
-  onLoad(){
-
-    //返回上一页时刷新
-    let pages = getCurrentPages();
-    let prevPage = pages[ pages.length - 2 ];
-    prevPage.$vm.refreshPage = 1
-
-  },
-  methods: {
-    init(){
-      let amount = this.option.amount?parseFloat(this.option.amount):0
-      let orderId = this.option.orderId?this.option.orderId:0
-      let that = this
-      getDetB({id:orderId}).then(res => {
-        that.orderInfo = res.data
-        that.remainDebtPrice = that.orderInfo.remainDebtPrice?parseFloat(that.orderInfo.remainDebtPrice):0
-        getMallRechargeShortLink({orderId:orderId}).then(res=>{
-          if(res.code == 1){
-          let rechargeAccountLink = res.data.rechargeAccountLink ? res.data.rechargeAccountLink:''
-          let orderLink = res.data.orderLink?res.data.orderLink:''
-          that.copyText = "已售后,欠款减少"+amount+"元,本单剩余待结"+that.remainDebtPrice+"元,点击下面链接查看详情\n\n余额 "+rechargeAccountLink+"\n\n本单 "+orderLink+"\n\n链接30天后失效"
-          that.$nextTick(() => {
-            that.calculateHeight()
-          })
-          }
-        })
-      })
-    },
-    calculateHeight(){
-      // 根据文本内容计算合适的高度
-      const lineHeight = 1.6
-      const fontSize = 28
-      const padding = 60 // 上下padding各30upx
-      const minHeight = 300
-      
-      // 计算行数(按换行符分割)
-      const lines = this.copyText.split('\n').length
-      const calculatedHeight = Math.max(minHeight, lines * fontSize * lineHeight + padding)
-      
-      this.textareaHeight = calculatedHeight
-    },
-    copyBack(){
-      uni.setClipboardData({
-        data: this.copyText,
-        success: () => {
-          uni.showToast({ title: '复制成功', icon: 'success', duration: 2000 })
-          setTimeout(() => {
-            uni.navigateBack()      
-          }, 500)
-        },
-        fail: () => {
-          uni.showToast({ title: '复制失败', icon: 'none', duration: 2000 })
-          setTimeout(() => {
-            uni.navigateBack()      
-          }, 1000)
-        }
-      });
-    }
-  },
-};
-</script>
-<style lang="scss" scoped>
-.billing_box_bg {
-  position: relative;
-  padding: 30upx 30upx;
-  display: flex;
-  flex-direction: column;
-  background-color: #f5f5f5;
-  .top-view {
-    position: absolute;
-    top: 0;
-    left: 0;
-    width: 100%;
-    height: 299upx;
-    background: #3385ff;
-    border-radius: 0upx 0upx 83upx 83upx;
-  }
-  .result-view {
-    position: relative;
-    display: flex;
-    flex-direction: column;
-    align-items: center;
-    padding: 80upx 0upx 70upx 0upx;
-    width: 100%;
-    background: #ffffff;
-    border-radius: 20upx;
-    z-index: 1;
-    .iconchenggong {
-      font-size: 130upx;
-      color: $mainColor1;
-    }
-    .result-title {
-      margin: 50upx 0 30upx;
-      font-size: 38upx;
-    }
-    
-    .textarea-container {
-      width: 100%;
-      padding: 0 40upx;
-      margin-bottom: 40upx;
-      
-      .result-textarea {
-        width: 100%;
-        min-height: 300upx;
-        padding: 30upx;
-        background: #f8f9fa;
-        border: 2upx solid #e9ecef;
-        border-radius: 16upx;
-        font-size: 28upx;
-        line-height: 1.6;
-        color: #333;
-        word-wrap: break-word;
-        white-space: pre-wrap;
-        overflow-y: auto;
-      }
-    }
-  }
-}
-
-.pay-confirm-content {
-  padding: 40upx 40upx;
-  text-align: center;
-}
-</style>

+ 0 - 155
hdApp/src/admin/refund/offlineCp.vue

@@ -1,155 +0,0 @@
-<template>
-  <view class="app-content">
-    <view class="billing_box_bg">
-      <view class="top-view"> </view>
-      <view class="result-view">
-        <view :class="['iconfont', 'iconchenggong']"></view>
-        <view class="result-title">充值成功</view>
-        <view class="textarea-container">
-          <view 
-            class="result-textarea" 
-            :style="{ height: textareaHeight + 'upx' }"
-          >{{ copyText }}</view>
-        </view>
-        <view style="font-size:34upx;color:#807d7d;">复制上面文字,发给客户</view>
-        <view class="pay-confirm-content">
-          <view>
-              <button class="admin-button-com big" @click="copyBack" style="width:420upx;">复制并返回</button>
-          </view>
-        </view>
-      </view>
-    </view>
-  </view>
-</template>
-<script>
-import { getMallRechargeShortLink } from "@/api/recharge";
-export default {
-  name: "offlineCp",
-  data() {
-    return {
-      orderInfo:[],
-      copyText:"",
-      textareaHeight: 300
-    }
-  },
-  onLoad(){
-
-    //返回上一页时刷新
-    let pages = getCurrentPages();
-    let prevPage = pages[ pages.length - 2 ];
-    if(prevPage.$vm){
-      prevPage.$vm.refreshPage = 1
-    }
-
-  },
-  methods: {
-    init(){
-      let amount = this.option.amount?parseFloat(this.option.amount):0
-      let orderId = this.option.orderId?this.option.orderId:0
-      getMallRechargeShortLink({orderId:orderId}).then(res=>{
-        if(res.code == 1){
-         let rechargeAccountLink = res.data.rechargeAccountLink ? res.data.rechargeAccountLink:''
-         let orderLink = res.data.orderLink?res.data.orderLink:''
-         this.copyText = "售后金额¥"+amount+"元,已充值到你的账户,点击下面链接查看你的账户余额\n\n余额 "+rechargeAccountLink+"\n\n本单 "+orderLink+"\n\n链接30天后失效"
-         this.$nextTick(() => {
-           this.calculateHeight()
-         })
-        }
-      })
-    },
-    calculateHeight(){
-      // 根据文本内容计算合适的高度
-      const lineHeight = 1.6
-      const fontSize = 28
-      const padding = 60 // 上下padding各30upx
-      const minHeight = 300
-      
-      // 计算行数(按换行符分割)
-      const lines = this.copyText.split('\n').length
-      const calculatedHeight = Math.max(minHeight, lines * fontSize * lineHeight + padding)
-      
-      this.textareaHeight = calculatedHeight
-    },
-    copyBack(){
-      uni.setClipboardData({
-        data: this.copyText,
-        success: () => {
-          uni.showToast({ title: '复制成功', icon: 'success', duration: 2000 })
-          setTimeout(() => {
-            uni.navigateBack()      
-          }, 500)
-        },
-        fail: () => {
-          uni.showToast({ title: '复制失败', icon: 'none', duration: 2000 })
-          setTimeout(() => {
-            uni.navigateBack()      
-          }, 1000)
-        }
-      });
-    }
-  },
-};
-</script>
-<style lang="scss" scoped>
-.billing_box_bg {
-  position: relative;
-  padding: 30upx 30upx;
-  display: flex;
-  flex-direction: column;
-  background-color: #f5f5f5;
-  .top-view {
-    position: absolute;
-    top: 0;
-    left: 0;
-    width: 100%;
-    height: 299upx;
-    background: #3385ff;
-    border-radius: 0upx 0upx 83upx 83upx;
-  }
-  .result-view {
-    position: relative;
-    display: flex;
-    flex-direction: column;
-    align-items: center;
-    padding: 80upx 0upx 70upx 0upx;
-    width: 100%;
-    background: #ffffff;
-    border-radius: 20upx;
-    z-index: 1;
-    .iconchenggong {
-      font-size: 130upx;
-      color: $mainColor1;
-    }
-    .result-title {
-      margin: 50upx 0 30upx;
-      font-size: 38upx;
-    }
-    
-    .textarea-container {
-      width: 100%;
-      padding: 0 40upx;
-      margin-bottom: 40upx;
-      
-      .result-textarea {
-        width: 100%;
-        min-height: 300upx;
-        padding: 30upx;
-        background: #f8f9fa;
-        border: 2upx solid #e9ecef;
-        border-radius: 16upx;
-        font-size: 28upx;
-        line-height: 1.6;
-        color: #333;
-        word-wrap: break-word;
-        white-space: pre-wrap;
-        overflow-y: auto;
-      }
-    }
-  }
-}
-
-.pay-confirm-content {
-  padding: 40upx 40upx;
-  text-align: center;
-}
-</style>

+ 0 - 188
hdApp/src/admin/refund/offlineRemind.vue

@@ -1,188 +0,0 @@
-<template>
-  <view class="app-content">
-    <view class="billing_box_bg">
-      <view class="top-view"> </view>
-      <view class="result-view">
-        <view class="custom-info-icon">i</view>
-        <view class="result-title">操作成功,还有下一步</view>
-        <view class="pay-confirm-content">
-          <view class="confirm-text">
-            <view class="text-desc">请给客户充 或 线下<text style="color:#3385FF;font-weight: bold;">{{payWay==0?'微信':payWay==1?'支付宝':payWay==4?'现金':'银行卡'}}</text>转</view>
-            <view class="text-amount">{{amount}}元</view>
-          </view>
-          <view>
-              <button class="admin-button-com blue big" @click="recharge()" style="width:320upx;">充到客户余额</button>
-          </view>
-          <view style="margin-top:30upx;">
-              <button class="admin-button-com big" @click="goBack" style="width:320upx;">线下转给客户</button>
-          </view>
-        </view>
-      </view>
-    </view>
-  </view>
-</template>
-<script>
-import {toManRecharge} from "@/api/recharge"
-import { getDetB} from "@/api/order";
-export default {
-  name: "offlineRemind",
-  data() {
-    return {
-      orderInfo:[],
-      amount:0,
-      orderId:0,
-      payWay:0
-    }
-  },
-  onLoad(){
-    //返回上一页时刷新
-    let pages = getCurrentPages();
-    let prevPage = pages[ pages.length - 2 ];
-    prevPage.$vm.refreshPage = 1
-
-    this.amount = this.option.amount?parseFloat(this.option.amount):0
-    this.orderId = this.option.orderId?this.option.orderId:0
-    this.payWay = this.option.payWay?this.option.payWay:0
-
-    getDetB({id:this.orderId}).then(res => {
-      this.orderInfo = res.data
-    })
-
-  },
-  methods: {
-    recharge(){
-      this.$util.confirmModal({content:'确认充到客户余额里?'},() => {
-        this.toRecharge()
-      })
-    },
-    toRecharge(){
-      let that = this
-      uni.showLoading({mask:true})
-    
-      toManRecharge({amount:this.amount,payWay:this.payWay,customId:this.orderInfo.customId,refundOrderId:this.orderId}).then(res=>{
-        uni.hideLoading()
-        if(res.code == 1){
-          this.$msg('充值成功')
-          setTimeout(() => {
-            that.pageTo({url:`/admin/refund/offlineCp?orderId=${this.option.orderId}&amount=${this.amount}`, type: 2})
-          }, 1000)
-        }
-      })
-    },
-    init(){
-    },
-    goBack(){
-      uni.navigateBack()
-    }
-  },
-};
-</script>
-<style lang="scss" scoped>
-.billing_box_bg {
-  position: relative;
-  padding: 30upx 30upx;
-  display: flex;
-  flex-direction: column;
-  background-color: #f5f5f5;
-  .top-view {
-    position: absolute;
-    top: 0;
-    left: 0;
-    width: 100%;
-    height: 299upx;
-    background: #09C567;
-    border-radius: 0upx 0upx 83upx 83upx;
-  }
-  .result-view {
-    position: relative;
-    display: flex;
-    flex-direction: column;
-    align-items: center;
-    padding: 80upx 0upx 70upx 0upx;
-    width: 100%;
-    background: #ffffff;
-    border-radius: 20upx;
-    z-index: 1;
-    .custom-info-icon {
-      width: 130upx;
-      height: 130upx;
-      border-radius: 50%;
-      background: #FF9800;
-      color: #fff;
-      display: flex;
-      align-items: center;
-      justify-content: center;
-      font-size: 80upx;
-      font-weight: bold;
-      box-shadow: 0 4upx 12upx rgba(9, 197, 103, 0.3);
-    }
-    .result-title {
-      margin: 50upx 0 30upx;
-      font-size: 38upx;
-      font-weight:bold;
-    }
-  }
-}
-
-// 支付确认弹框样式
-.pay-confirm-content {
-  padding: 30upx 40upx;
-  text-align: center;
-  
-  .confirm-text {
-    margin-bottom: 60upx;
-    
-    .text-title {
-      font-size: 42upx;
-      font-weight: bold;
-      color: #333;
-      margin-bottom: 25upx;
-      line-height: 1.4;
-    }
-    
-    .text-desc {
-      font-size: 38upx;
-      color: #3f3e3e;
-      line-height: 1.4;
-    }
-    .text-amount {
-      margin-top: 30upx;
-      font-size: 46upx;
-      color: red;
-      line-height: 1.4;
-      font-weight: bold;
-    }
-  }
-  
-  .confirm-btn-wrap {
-    .confirm-btn {
-      width: 60%;
-      height: 100upx;
-      background: linear-gradient(135deg, #07c160 0%, #10ad6a 100%);
-      color: #fff;
-      border: none;
-      border-radius: 50upx;
-      font-size: 38upx;
-      font-weight: bold;
-      display: flex;
-      align-items: center;
-      justify-content: center;
-      box-shadow: 0 4upx 12upx rgba(7, 193, 96, 0.3);
-      transition: all 0.3s ease;
-      margin: 0 auto 25upx;
-      
-      &:active {
-        transform: scale(0.98);
-        box-shadow: 0 2upx 8upx rgba(7, 193, 96, 0.4);
-      }
-    }
-    
-    .tech-support {
-      font-size: 32upx;
-      color: #999;
-      text-align: center;
-      line-height: 1.4;
-    }
-  }
-}
-</style>

+ 0 - 109
hdApp/src/admin/refund/onlineResult.vue

@@ -1,109 +0,0 @@
-<template>
-  <view class="app-content">
-    <view class="billing_box_bg">
-      <view class="top-view"> </view>
-      <view class="result-view">
-        <view :class="['iconfont', 'iconchenggong']"></view>
-        <view class="result-title">售后成功</view>
-        <view style="font-size:38upx;margin-top:30upx;color:green;font-weight:bold;">钱已原路退回</view>
-        <view class="pay-confirm-content">
-          <view>
-              <button class="admin-button-com big default" @click="copyBack" style="width:420upx;">返回</button>
-          </view>
-        </view>
-      </view>
-    </view>
-  </view>
-</template>
-<script>
-import { getMallRechargeShortLink } from "@/api/recharge";
-export default {
-  name: "onlineResult",
-  data() {
-    return {
-      orderInfo:[]
-    }
-  },
-  onLoad(){
-
-    //返回上一页时刷新
-    let pages = getCurrentPages();
-    let prevPage = pages[ pages.length - 2 ];
-    prevPage.$vm.refreshPage = 1
-
-  },
-  methods: {
-    init(){
-    },
-    copyBack(){
-      uni.navigateBack()
-    }
-  },
-};
-</script>
-<style lang="scss" scoped>
-.billing_box_bg {
-  position: relative;
-  padding: 30upx 30upx;
-  display: flex;
-  flex-direction: column;
-  background-color: #f5f5f5;
-  .top-view {
-    position: absolute;
-    top: 0;
-    left: 0;
-    width: 100%;
-    height: 299upx;
-    background: #3385ff;
-    border-radius: 0upx 0upx 83upx 83upx;
-  }
-  .result-view {
-    position: relative;
-    display: flex;
-    flex-direction: column;
-    align-items: center;
-    padding: 80upx 0upx 70upx 0upx;
-    width: 100%;
-    background: #ffffff;
-    border-radius: 20upx;
-    z-index: 1;
-    .iconchenggong {
-      font-size: 130upx;
-      color: $mainColor1;
-    }
-    .result-title {
-      margin: 50upx 0 30upx;
-      font-size: 38upx;
-    }
-    
-    .textarea-container {
-      width: 100%;
-      padding: 0 40upx;
-      margin-bottom: 40upx;
-      
-      .result-textarea {
-        width: 100%;
-        min-height: 300upx;
-        padding: 30upx;
-        background: #f8f9fa;
-        border: 2upx solid #e9ecef;
-        border-radius: 16upx;
-        font-size: 32upx;
-        line-height: 1.6;
-        color: #333;
-        resize: none;
-        
-        &:focus {
-          border-color: $mainColor1;
-          background: #fff;
-        }
-      }
-    }
-  }
-}
-
-.pay-confirm-content {
-  padding: 40upx 40upx;
-  text-align: center;
-}
-</style>

+ 0 - 153
hdApp/src/admin/refund/shPayCp.vue

@@ -1,153 +0,0 @@
-<template>
-  <view class="app-content">
-    <view class="billing_box_bg">
-      <view class="top-view"> </view>
-      <view class="result-view">
-        <view :class="['iconfont', 'iconchenggong']"></view>
-        <view class="result-title">充值成功</view>
-        <view class="textarea-container">
-          <view 
-            class="result-textarea" 
-            :style="{ height: textareaHeight + 'upx' }"
-          >{{ copyText }}</view>
-        </view>
-        <view style="font-size:34upx;color:#807d7d;">复制上面文字,发给客户</view>
-        <view class="pay-confirm-content">
-          <view>
-              <button class="admin-button-com big" @click="copyBack" style="width:420upx;">复制并返回</button>
-          </view>
-        </view>
-      </view>
-    </view>
-  </view>
-</template>
-<script>
-import { getMallRechargeShortLink } from "@/api/recharge";
-export default {
-  name: "shPayCp",
-  data() {
-    return {
-      orderInfo:[],
-      copyText:"",
-      textareaHeight: 300
-    }
-  },
-  onLoad(){
-
-    //返回上一页时刷新
-    let pages = getCurrentPages();
-    let prevPage = pages[ pages.length - 2 ];
-    prevPage.$vm.refreshPage = 1
-
-  },
-  methods: {
-    init(){
-      let amount = this.option.amount?parseFloat(this.option.amount):0
-      let orderId = this.option.orderId?this.option.orderId:0
-      getMallRechargeShortLink({orderId:orderId}).then(res=>{
-        if(res.code == 1){
-         let rechargeAccountLink = res.data.rechargeAccountLink ? res.data.rechargeAccountLink:''
-         let orderLink = res.data.orderLink?res.data.orderLink:''
-         this.copyText = "售后金额¥"+amount+"元,已充值到你的账户,点击下面链接查看你的账户余额\n\n余额 "+rechargeAccountLink+"\n\n本单 "+orderLink+"\n\n链接30天后失效"
-         this.$nextTick(() => {
-           this.calculateHeight()
-         })
-        }
-      })
-    },
-    calculateHeight(){
-      // 根据文本内容计算合适的高度
-      const lineHeight = 1.6
-      const fontSize = 28
-      const padding = 60 // 上下padding各30upx
-      const minHeight = 300
-      
-      // 计算行数(按换行符分割)
-      const lines = this.copyText.split('\n').length
-      const calculatedHeight = Math.max(minHeight, lines * fontSize * lineHeight + padding)
-      
-      this.textareaHeight = calculatedHeight
-    },
-    copyBack(){
-      uni.setClipboardData({
-        data: this.copyText,
-        success: () => {
-          uni.showToast({ title: '复制成功', icon: 'success', duration: 2000 })
-          setTimeout(() => {
-            uni.navigateBack()
-          }, 500)
-        },
-        fail: () => {
-          uni.showToast({ title: '复制失败', icon: 'none', duration: 2000 })
-          setTimeout(() => {
-            uni.navigateBack()
-          }, 1000)
-        }
-      });
-    }
-  },
-};
-</script>
-<style lang="scss" scoped>
-.billing_box_bg {
-  position: relative;
-  padding: 30upx 30upx;
-  display: flex;
-  flex-direction: column;
-  background-color: #f5f5f5;
-  .top-view {
-    position: absolute;
-    top: 0;
-    left: 0;
-    width: 100%;
-    height: 299upx;
-    background: #3385ff;
-    border-radius: 0upx 0upx 83upx 83upx;
-  }
-  .result-view {
-    position: relative;
-    display: flex;
-    flex-direction: column;
-    align-items: center;
-    padding: 80upx 0upx 70upx 0upx;
-    width: 100%;
-    background: #ffffff;
-    border-radius: 20upx;
-    z-index: 1;
-    .iconchenggong {
-      font-size: 130upx;
-      color: $mainColor1;
-    }
-    .result-title {
-      margin: 50upx 0 30upx;
-      font-size: 38upx;
-    }
-    
-    .textarea-container {
-      width: 100%;
-      padding: 0 40upx;
-      margin-bottom: 40upx;
-      
-      .result-textarea {
-        width: 100%;
-        min-height: 300upx;
-        padding: 30upx;
-        background: #f8f9fa;
-        border: 2upx solid #e9ecef;
-        border-radius: 16upx;
-        font-size: 28upx;
-        line-height: 1.6;
-        color: #333;
-        word-wrap: break-word;
-        white-space: pre-wrap;
-        overflow-y: auto;
-      }
-    }
-  }
-}
-
-.pay-confirm-content {
-  padding: 40upx 40upx;
-  text-align: center;
-}
-</style>

+ 0 - 185
hdApp/src/admin/refund/shPayRemind.vue

@@ -1,185 +0,0 @@
-<template>
-    <view class="app-content">
-      <view class="billing_box_bg">
-        <view class="top-view"> </view>
-        <view class="result-view">
-          <view class="custom-info-icon">i</view>
-          <view class="result-title">操作成功,还有下一步</view>
-          <view class="pay-confirm-content">
-            <view class="confirm-text">
-              <view class="text-desc">请给客户 余额充值 或 <text style="color:#3385FF;font-weight: bold;margin-left:10upx;">线下{{payWay==0?'微信':payWay==1?'支付宝':payWay==4?'现金':'银行卡'}}转账</text></view>
-              <view class="text-amount">{{orderInfo.actPrice?parseFloat(orderInfo.actPrice):0}}元</view>
-            </view>
-            <view>
-                <button class="admin-button-com blue big" @click="recharge()" style="width:320upx;">充到客户余额</button>
-            </view>
-            <view style="margin-top:30upx;">
-                <button class="admin-button-com big" @click="goBack" style="width:320upx;">线下转给客户</button>
-            </view>
-          </view>
-        </view>
-      </view>
-    </view>
-  </template>
-  <script>
-  import { getDetB} from "@/api/order";
-  import {toManRecharge} from "@/api/recharge"
-  export default {
-    name: "shPayRemind",
-    data() {
-      return {
-        orderInfo:[],
-        payWay:0
-      }
-    },
-    onLoad(){
-      //返回上一页时刷新
-      let pages = getCurrentPages();
-      let prevPage = pages[ pages.length - 2 ];
-      prevPage.$vm.refreshPage = 1
-    },
-    methods: {
-      recharge(){
-        if(this.$util.isEmpty(this.orderInfo)){
-          this.$msg('没有找到订单信息')
-          return false
-        }
-        this.$util.confirmModal({content:'确认充到客户余额里?'},() => {
-          this.toRecharge()
-			  })
-      },
-      toRecharge(){
-        let that = this
-        uni.showLoading({mask:true})
-        let orderId = this.option.orderId?this.option.orderId:0
-        toManRecharge({amount:this.orderInfo.actPrice,payWay:0,customId:this.orderInfo.customId,shOrderId:orderId}).then(res=>{
-          uni.hideLoading()
-          if(res.code == 1){
-            this.$msg('充值成功')
-            setTimeout(() => {
-              that.pageTo({url:`/admin/refund/shPayCp?orderId=${orderId}&amount=${this.orderInfo.actPrice}`, type: 2})
-            }, 1000)
-          }
-        })
-      },
-      init(){
-        let orderId = this.option.orderId?this.option.orderId:0
-        getDetB({id: orderId}).then(res => {
-          this.orderInfo = res.data
-          this.payWay = this.orderInfo.payWay
-        })
-      },
-      goBack(){
-        uni.navigateBack()
-      }
-    },
-  };
-  </script>
-  <style lang="scss" scoped>
-  .billing_box_bg {
-    position: relative;
-    padding: 30upx 30upx;
-    display: flex;
-    flex-direction: column;
-    background-color: #f5f5f5;
-    .top-view {
-      position: absolute;
-      top: 0;
-      left: 0;
-      width: 100%;
-      height: 299upx;
-      background: #09C567;
-      border-radius: 0upx 0upx 83upx 83upx;
-    }
-    .result-view {
-      position: relative;
-      display: flex;
-      flex-direction: column;
-      align-items: center;
-      padding: 80upx 0upx 70upx 0upx;
-      width: 100%;
-      background: #ffffff;
-      border-radius: 20upx;
-      z-index: 1;
-      .custom-info-icon {
-        width: 130upx;
-        height: 130upx;
-        border-radius: 50%;
-        background: #FF9800;
-        color: #fff;
-        display: flex;
-        align-items: center;
-        justify-content: center;
-        font-size: 80upx;
-        font-weight: bold;
-        box-shadow: 0 4upx 12upx rgba(9, 197, 103, 0.3);
-      }
-      .result-title {
-        margin: 50upx 0 30upx;
-        font-size: 38upx;
-        font-weight:bold;
-      }
-    }
-  }
-
-  // 支付确认弹框样式
-  .pay-confirm-content {
-    padding: 30upx 40upx;
-    text-align: center;
-    
-    .confirm-text {
-      margin-bottom: 60upx;
-      
-      .text-title {
-        font-size: 42upx;
-        font-weight: bold;
-        color: #333;
-        margin-bottom: 25upx;
-        line-height: 1.4;
-      }
-      .text-desc {
-        font-size: 32upx;
-        color: #3f3e3e;
-        line-height: 1.4;
-      }
-      .text-amount {
-        margin-top: 30upx;
-        font-size: 46upx;
-        color: red;
-        line-height: 1.4;
-        font-weight: bold;
-      }
-    }
-    
-    .confirm-btn-wrap {
-      .confirm-btn {
-        width: 60%;
-        height: 100upx;
-        background: linear-gradient(135deg, #07c160 0%, #10ad6a 100%);
-        color: #fff;
-        border: none;
-        border-radius: 50upx;
-        font-size: 38upx;
-        font-weight: bold;
-        display: flex;
-        align-items: center;
-        justify-content: center;
-        box-shadow: 0 4upx 12upx rgba(7, 193, 96, 0.3);
-        transition: all 0.3s ease;
-        margin: 0 auto 25upx;
-        
-        &:active {
-          transform: scale(0.98);
-          box-shadow: 0 2upx 8upx rgba(7, 193, 96, 0.4);
-        }
-      }
-      
-      .tech-support {
-        font-size: 32upx;
-        color: #999;
-        text-align: center;
-        line-height: 1.4;
-      }
-    }
-  }
-  </style>

+ 0 - 12
hdApp/src/pages.json

@@ -452,18 +452,6 @@
 				{ "path": "rechargeCode", "style": { "navigationBarTitleText": "充值码"}}
 			]
 		},
-		{
-			"root": "admin/refund",
-			"pages": [
-				{ "path": "shPayRemind", "style": { "navigationBarTitleText": "提示"}},
-				{ "path": "shPayCp", "style": { "navigationBarTitleText": "成功"}},
-				{ "path": "offlineRemind", "style": { "navigationBarTitleText": "提示"}},
-				{ "path": "offlineCp", "style": { "navigationBarTitleText": "成功"}},
-				{ "path": "debtResult", "style": { "navigationBarTitleText": "结果"}},
-				{ "path": "onlineResult", "style": { "navigationBarTitleText": "结果"}},
-				{ "path": "balanceCp", "style": { "navigationBarTitleText": "结果"}}
-			]
-		},
 		{
 			"root": "admin/billing",
 			"pages": [