zhengjinyi 1 年之前
父节点
当前提交
d75ea08fa1

+ 1 - 1
src/views/centralized/details.vue

@@ -34,7 +34,7 @@
           <p><span>采购数量:</span>{{ publishMan.number }}</p>
         </div>
       </div>
-      <div v-if="publishMan.delflag*1 !== 0" class="card-status">
+      <div v-if="publishMan.delflag*1 !== 1" class="card-status">
         <el-tag effect="dark" type="danger">已删除</el-tag>
       </div>
       <div v-if="publishMan.isAchieve*1 === 1" class="card-status">

+ 17 - 26
src/views/finance/details.vue

@@ -27,20 +27,22 @@
             <el-col :span="5"><b>机构名称:</b> {{ order.userName }}</el-col>
             <el-col :span="5"><b>下单日期:</b> {{ order.orderTime }}</el-col>
           </el-row>
-          <el-row :gutter="24" class="box-row">
-            <el-col :span="24"><b>订单收款记录:</b></el-col>
-          </el-row>
-          <el-row v-for="(pay,index) in order.records" :key="index" :gutter="24" class="box-row">
-            <el-col :span="4">{{ index+1 }}.{{ pay.receiptTime }} </el-col>
-            <el-col :span="4">{{ pay.bankNameType }}</el-col>
-            <el-col :span="3">{{ pay.receiptAmount | amountfilters }}</el-col>
-          </el-row>
+          <template v-if="repacts.payWay === 1">
+            <h1 class="refund-item-title">订单收款记录:</h1>
+            <el-table :data="order.records" border fit highlight-current-row :header-cell-style="{background:'#e9f3f7',color:'#606266'}">
+              <el-table-column label="序号" align="center" width="50">
+                <template slot-scope="scope">{{ scope.$index + 1 }}</template>
+              </el-table-column>
+              <el-table-column label="收款时间" align="center" prop="receiptTime" />
+              <el-table-column label="收款类型" align="center" prop="bankNameType" />
+              <el-table-column label="收款金额" align="center" prop="receiptAmount" />
+              <el-table-column label="交易号" align="center" prop="mbOrderId" />
+            </el-table>
+          </template>
         </div>
-      </div>
-      <template v-if="repacts.payWay === 2">
-        <div v-if="voucher.length>0" class="refund-item">
+        <template v-if="repacts.payWay === 2">
           <h1 style="font-size: 14px;color: #409EFF;">线下支付凭证:</h1>
-          <el-row v-for="(vouch,index) in voucher" :key="index" style="padding:5px 0">
+          <el-row v-for="(vouch,index) in repacts.vouchers" :key="index" style="padding:5px 0">
             <p class="refund-item-p">{{ vouch.addTime }}</p>
             <div class="refund-item-imgs">
               <div v-for="(imgage,imgIndex) in vouch.images" :key="imgIndex" class="item-image">
@@ -49,20 +51,9 @@
             </div>
             <p class="refund-item-p">备注:{{ vouch.remarks }}</p>
           </el-row>
-        </div>
-      </template>
-      <template v-else>
-        <div class="refund-item">
-          <h1 class="refund-item-title">订单收款记录:</h1>
-          <el-table :data="repacts" border fit highlight-current-row :header-cell-style="{background:'#e9f3f7',color:'#606266'}">
-            <el-table-column label="序号" align="center" prop="productName" />
-            <el-table-column label="收款时间" align="center" prop="unit" />
-            <el-table-column label="收款类型" align="center" prop="num" />
-            <el-table-column label="收款金额" align="center" prop="returnNum" />
-            <el-table-column label="交易号" align="center" prop="price" />
-          </el-table>
-        </div>
-      </template>
+        </template>
+
+      </div>
     </el-card>
     <template>
       <el-backtop style="right: 40px; bottom: 40px;">

+ 7 - 3
src/views/finance/list.vue

@@ -116,14 +116,14 @@
           <span v-else>{{ row.bankNameType }}</span>
         </template>
       </el-table-column>
-      <el-table-column label="机构名称" align="center" prop="clubname">
+      <el-table-column label="机构名称" align="center" prop="userName">
         <template slot-scope="{ row }">
-          {{ row.clubname ? row.clubname : '---' }}
+          {{ row.userName ? row.userName : '---' }}
         </template>
       </el-table-column>
       <el-table-column label="关联订单号" align="center" prop="shopOrderNos">
         <template slot-scope="{ row }">
-          {{ row.shopOrderNos }}({{ row.orderId }})
+          <p class="el-p-link" @click="handleOrderDetails(row)">{{ row.orderNo }}({{ row.orderId }})</p>
         </template>
       </el-table-column>
       <el-table-column label="操作" align="center" width="120">
@@ -237,6 +237,10 @@ export default {
     handleToDetails(receiptId) {
       this.$router.push({ path: '/finance/details', query: { receiptId: receiptId }})
     },
+    // 跳转订单详情
+    handleOrderDetails(row) {
+      this.$router.push({ path: '/order/detail', query: { id: row.orderId }})
+    },
     checkedInput(event) {
       const pattern = /[^0-9.]/g
       return event.replace(pattern, '')

+ 2 - 2
src/views/finance/payapply-edit.vue

@@ -294,11 +294,11 @@ export default {
     async subPayApply(params) {
       try {
         const res = await subPayApply(params)
-        this.$message.success('提交成功')
+        this.$message.success(res.msg)
         setTimeout(() => {
           this.$store.dispatch('tagsView/delView', this.$route).then(() => {
             this.$nextTick(() => {
-              this.$router.push({ path: '/finance/payment-details', query: { payShopId: res.data }})
+              this.$router.push({ path: '/finance/payapply-list' })
             })
           })
         }, 1000)

+ 12 - 5
src/views/finance/payapply-list.vue

@@ -133,12 +133,12 @@
       </el-table-column>
       <el-table-column label="订单编号(ID)" align="center" prop="orderNo">
         <template slot-scope="{row}">
-          <span>{{ row.orderNo }}({{ row.orderId }})</span>
+          <span class="el-p-link" @click="handleOrderDetails(row)">{{ row.orderNo }}({{ row.orderId }})</span>
         </template>
       </el-table-column>
       <el-table-column label="子订单编号(ID)" align="center" prop="shopOrderNo">
         <template slot-scope="{row}">
-          <span>{{ row.shopOrderNo }}({{ row.shopOrderId }})</span>
+          <span class="el-p-link" @click="handleOrderDetails(row)">{{ row.shopOrderNo }}({{ row.shopOrderId }})</span>
         </template>
       </el-table-column>
       <el-table-column label="订单金额" align="center" prop="payTotalFee">
@@ -205,7 +205,7 @@
       </el-table-column>
       <el-table-column label="操作" align="center">
         <template slot-scope="{row}">
-          <el-button type="primary" size="mini" @click="handleToRecord(row.id)">退/付款记录</el-button>
+          <el-button type="primary" size="mini" @click="handleToRecord(row.shopOrderId)">退/付款记录</el-button>
         </template>
       </el-table-column>
     </el-table>
@@ -326,8 +326,15 @@ export default {
       }
       return flag
     },
-    handleToRecord(id) {
-      this.$router.push({ path: '/finance/payment-record', query: { id: id }})
+    // 跳转订单详情
+    handleOrderDetails(row) {
+      this.$router.push({ path: '/order/detail', query: { id: row.orderId }})
+    },
+    handleToDetails(receiptId) {
+      this.$router.push({ path: '/finance/details', query: { receiptId: receiptId }})
+    },
+    handleToRecord(shopOrderId) {
+      this.$router.push({ path: '/finance/payment-record', query: { shopOrderId: shopOrderId }})
     },
     checkedInput(event) {
       const pattern = /[^0-9.]/g

+ 7 - 2
src/views/finance/paycents-list.vue

@@ -123,12 +123,12 @@
       </el-table-column>
       <el-table-column label="订单编号(ID)" align="center" prop="orderNo">
         <template slot-scope="{row}">
-          <span>{{ row.orderNo }}({{ row.orderId }})</span>
+          <span class="el-p-link" @click="handleOrderDetails(row)">{{ row.orderNo }}({{ row.orderId }})</span>
         </template>
       </el-table-column>
       <el-table-column label="子订单编号(ID)" align="center" prop="shopOrderNo">
         <template slot-scope="{row}">
-          <span>{{ row.shopOrderNo }}({{ row.shopOrderId }})</span>
+          <span class="el-p-link" @click="handleOrderDetails(row)">{{ row.shopOrderNo }}({{ row.shopOrderId }})</span>
         </template>
       </el-table-column>
       <el-table-column label="订单金额" align="center" prop="payTotalFee">
@@ -314,6 +314,11 @@ export default {
         console.log('error', error)
       }
     },
+    // 跳转订单详情
+    handleOrderDetails(row) {
+      this.$router.push({ path: '/order/detail', query: { id: row.orderId }})
+    },
+    // 跳转付款记录
     handleToRecord(shopOrderId) {
       this.$router.push({ path: '/finance/payment-record', query: { shopOrderId: shopOrderId }})
     }

+ 5 - 1
src/views/finance/payfinance-list.vue

@@ -191,7 +191,7 @@
       </el-table-column>
       <el-table-column label="订单编号(ID)" align="center" prop="orderNo">
         <template slot-scope="{row}">
-          <span>{{ row.orderNo }}({{ row.orderId }})</span>
+          <span class="el-p-link" @click="handleOrderDetails(row)">{{ row.orderNo }}({{ row.orderId }})</span>
         </template>
       </el-table-column>
       <el-table-column label="下单时间" align="center" prop="orderTime" />
@@ -330,6 +330,10 @@ export default {
           break
       }
     },
+    // 跳转订单详情
+    handleOrderDetails(row) {
+      this.$router.push({ path: '/order/detail', query: { id: row.orderId }})
+    },
     checkedInput(event) {
       const pattern = /[^0-9.]/g
       return event.replace(pattern, '')

+ 1 - 3
src/views/finance/payment-list.vue

@@ -135,9 +135,7 @@
       <el-table-column label="付款金额" align="center" prop="totalAmount" />
       <el-table-column label="订单编号(ID)" align="center" prop="orderNos">
         <template slot-scope="{row}">
-          <p v-for="item in row.orderNos" :key="item" style="margin: 0;" class="el-p-link" @click="handleOrderDetails(row)">
-            {{ item ? item : '---' }}
-          </p>
+          <span class="el-p-link" @click="handleOrderDetails(row)">{{ row.orderNo }}({{ row.orderId }})</span>
         </template>
       </el-table-column>
       <el-table-column label="子订单编号(ID)" align="center" prop="shopOrderNos">

+ 6 - 2
src/views/finance/paysettle-list.vue

@@ -126,12 +126,12 @@
       </el-table-column>
       <el-table-column label="订单编号(ID)" align="center" prop="orderNo">
         <template slot-scope="{row}">
-          <span>{{ row.orderNo }}({{ row.orderId }})</span>
+          <span class="el-p-link" @click="handleOrderDetails(row)">{{ row.orderNo }}({{ row.orderId }})</span>
         </template>
       </el-table-column>
       <el-table-column label="子订单编号(ID)" align="center" prop="shopOrderNo">
         <template slot-scope="{row}">
-          <span>{{ row.shopOrderNo }}({{ row.shopOrderId }})</span>
+          <span class="el-p-link" @click="handleOrderDetails(row)">{{ row.shopOrderNo }}({{ row.shopOrderId }})</span>
         </template>
       </el-table-column>
       <el-table-column label="订单金额" align="center" prop="payTotalFee">
@@ -297,6 +297,10 @@ export default {
       this.orderRadio = row
       this.orderRadioArray.push(row)
     },
+    // 跳转订单详情
+    handleOrderDetails(row) {
+      this.$router.push({ path: '/order/detail', query: { id: row.orderId }})
+    },
     // 跳转申请结算
     handleApplySub() {
       const newArr = this.orderRadioArray.map(item => item.shopOrderId)

+ 42 - 12
src/views/order/detail.vue

@@ -24,7 +24,7 @@
               </el-button>
               <el-dropdown-menu slot="dropdown">
                 <el-dropdown-item v-if="order.checkFlag === 1">
-                  <div @click="handeleDialogFormVisible"> 更改收款状态</div>
+                  <div @click="handeleDialogFormVisible"> 确认收款金额</div>
                 </el-dropdown-item>
                 <el-dropdown-item v-if="['11','12','21','22','31','32'].indexOf(order.status) !== -1">
                   <div @click="handeleDropdown(1,order.orderId)">发货</div>
@@ -80,7 +80,7 @@
         <el-row :gutter="24" class="box-row">
           <el-col :span="6"><b>订单金额:</b> ¥{{ order.payTotalFee | toThousandFloatFilter }}</el-col>
           <el-col :span="6"><b>应收金额:</b>
-            ¥{{ order.payableAmount | toThousandFloatFilter }}
+            ¥{{ order.payTotalFee | toThousandFloatFilter }}
           </el-col>
           <el-col :span="12"><b>已收金额:</b>
             <template v-if="order.receiptStatus*1===1">¥0.00</template>
@@ -106,14 +106,8 @@
             <el-col :span="6"><b>商品总额:</b> ¥{{ shopOrder.productAmount | toThousandFloatFilter }}</el-col>
             <el-col :span="6"><b>应付金额:</b> ¥{{ shopOrder.shouldPayShopAmount | toThousandFloatFilter }}</el-col>
             <el-col :span="6"><b>已付金额:</b> ¥{{ shopOrder.payedShopAmount | toThousandFloatFilter }}</el-col>
-            <el-col :span="6"><b>待付金额:</b> ¥{{ shopOrder.waitPayShop | toThousandFloatFilter }}</el-col>
           </el-row>
           <el-row :gutter="22" class="box-row">
-            <el-col :span="6"><b>收款状态:</b>
-              <el-tag v-if="shopOrder.receiptStatus*1===1" type="danger" size="small">待收款</el-tag>
-              <el-tag v-if="shopOrder.receiptStatus*1===2" type="warning" size="small">部分收款</el-tag>
-              <el-tag v-if="shopOrder.receiptStatus*1===3" type="success" size="small">已收款</el-tag>
-            </el-col>
             <el-col :span="6"><b>付款状态:</b>
               <el-tag v-if="shopOrder.payStatus*1===1" type="danger" size="small">待付款</el-tag>
               <el-tag v-if="shopOrder.payStatus*1===2" type="warning" size="small">部分付款</el-tag>
@@ -124,6 +118,7 @@
               <el-tag v-if="shopOrder.sendOutStatus*1===2" type="warning" size="small">部分发货</el-tag>
               <el-tag v-if="shopOrder.sendOutStatus*1===3" type="success" size="small">已发货</el-tag>
             </el-col>
+            <el-col :span="6"><b>待付金额:</b> ¥{{ shopOrder.waitPayShop | toThousandFloatFilter }}</el-col>
           </el-row>
           <el-row :gutter="22" class="box-row">
             <el-col :span="22"><b>留言:</b> {{ shopOrder.note ? shopOrder.note : '无' }}</el-col>
@@ -210,9 +205,9 @@
       <el-dialog title="更改收款状态" :visible.sync="dialogFormVisible" width="600px">
         <el-form ref="dataForm" :rules="rules" :model="chengeOrder" label-position="right" label-width="150px">
           <el-row :gutter="24" class="box-row" style="margin-bottom: 40px;">
-            <el-col :span="8"><b>应收金额:</b> ¥{{ order.payableAmount | amountfilters }}</el-col>
+            <el-col :span="8"><b>应收金额:</b> ¥{{ order.payTotalFee | amountfilters }}</el-col>
             <el-col :span="8"><b>已收金额:</b>¥{{ receiptAmount | amountfilters }}</el-col>
-            <el-col :span="8"><b>未收金额:</b> ¥{{ (order.payableAmount - receiptAmount) | amountfilters }}</el-col>
+            <el-col :span="8"><b>未收金额:</b> ¥{{ (order.payTotalFee - receiptAmount) | amountfilters }}</el-col>
           </el-row>
           <el-form-item label="订单本次收款金额:" prop="amount" :rules="rules.amount">
             <el-input v-model="chengeOrder.amount" style="width: 200px">
@@ -246,6 +241,15 @@ export default {
     }
   },
   data() {
+    const picValidator = (rule, value, callback) => {
+      if (!this.chengeOrder.amount) {
+        callback(new Error('请输入本次收款金额'))
+      } else if (this.chengeOrder.amount > this.SubtrAount(this.order.payTotalFee, this.receiptAmount) * 1) {
+        callback(new Error('本次收款金额不能大于未收金额'))
+      } else {
+        callback()
+      }
+    }
     return {
       activeIndex: '2',
       order: null,
@@ -264,7 +268,7 @@ export default {
       orderInvoice: {},
       voucher: [],
       rules: {
-        amount: [{ required: true, message: '请输入本次收款金额', trigger: 'blur' }]
+        amount: [{ required: true, validator: picValidator, trigger: 'blur' }]
       },
       listLoading: false
     }
@@ -322,7 +326,16 @@ export default {
       }
     },
     async handleChangOrder() {
-      // 更改订单收款状态
+      // 确认本次收款金额
+      this.$refs['dataForm'].validate(valid => {
+        if (valid) {
+          this.orderCheckReceipt()
+        } else {
+          return false
+        }
+      })
+    },
+    async orderCheckReceipt() {
       try {
         await orderCheckReceipt(this.chengeOrder)
         this.$message.success('操作成功')
@@ -332,6 +345,22 @@ export default {
         console.log('error', error)
       }
     },
+    SubtrAount(arg1, arg2) {
+      var r1, r2, m, n
+      try {
+        r1 = arg1.toString().split('.')[1].length
+      } catch (e) {
+        r1 = 0
+      }
+      try {
+        r2 = arg2.toString().split('.')[1].length
+      } catch (e) {
+        r2 = 0
+      }
+      m = Math.pow(10, Math.max(r1, r2))
+      n = (r1 >= r2) ? r1 : r2
+      return ((arg1 * m - arg2 * m) / m).toFixed(n)
+    },
     backToList() {
       this.$store.dispatch('tagsView/delView', this.$route).then(() => {
         this.$nextTick(() => {
@@ -396,6 +425,7 @@ export default {
     padding:10px 20px;
     box-sizing: border-box;
     border-radius: 5px;
+    margin-bottom: 10px;
   }
   .product-row{
     padding: 10px 0;

+ 2 - 2
src/views/order/refund-record.vue

@@ -13,7 +13,7 @@
     <el-card v-if="order" class="box-card">
       <el-row :gutter="24" class="box-row">
         <el-col :span="6"><b>下单时间:</b> <template v-if="order.orderTime">{{ order.orderTime | parseTime('{y}-{m}-{d} {h}:{i}:{s}') }}</template></el-col>
-        <el-col :span="12"><b>订单编号(ID):</b> {{ order.orderNo + '(' + order.orderID + ')' }}</el-col>
+        <el-col :span="12"><b>订单编号(ID):</b> {{ order.orderNo + '(' + order.orderId + ')' }}</el-col>
       </el-row>
       <el-row :gutter="24" class="box-row">
         <el-col :span="6"><b>订单状态:</b>
@@ -74,7 +74,7 @@
           {{ scope.$index+1 }}
         </template>
       </el-table-column>
-      <el-table-column label="收款ID" align="center" prop="receiptID" />
+      <el-table-column label="收款ID" align="center" prop="receiptId" />
       <el-table-column label="收款方式" align="center" prop="payType" />
       <el-table-column label="金额" align="center" prop="associateAmount">
         <template slot-scope="{row}">