Przeglądaj źródła

个贷实收款认领bug fixed

wucl 1 rok temu
rodzic
commit
dc039cf87b
2 zmienionych plików z 90 dodań i 11 usunięć
  1. 2 2
      src/components/excelImport.vue
  2. 88 9
      src/views/finance/fundClaim.vue

+ 2 - 2
src/components/excelImport.vue

@@ -13,7 +13,7 @@
       ref="uploadCtl"
       :data="data"
     >
-      <el-button type="primary" round><slot>{{this.title}}</slot></el-button>
+      <el-button type="primary" round>{{this.title}}</el-button>
     </el-upload>
   </div>
 </template>
@@ -103,7 +103,7 @@
       }
     },
     created(){
-      var that = this;
+      
     },
     methods:{
       handleImageSuccess(res, file) {

+ 88 - 9
src/views/finance/fundClaim.vue

@@ -296,7 +296,7 @@
           </el-table-column>
         </parentTable>
         <parentTable v-show="toProd" ref="prod" :clickRowToPick="false" :data="myMajorPageData.records" slot="table"
-          style="width: 100%; height: 50%;" :selectionChange="handleSelectionChange">
+          style="width: 100%; height: 50%;" :selectionChange="handleSelectionChange"  :isBoard=500>
           <el-table-column align="center" type="selection" claimOrders border="true" :selectable="checkSelectable">
           </el-table-column>
           <el-table-column label="金融类型" align="center" width='100'>
@@ -388,14 +388,14 @@
           </el-button>
           <el-button class="filter-item" style="float: left;" round type="info" @click="downloadTemp()">下载模板
           </el-button>
-          <excelImport style="float: right; margin-left: 10px; " ref="uploadControl" buttonType="danger" :limit="1"
+          <ExcelImport style="float: left; margin-left: 10px; " ref="uploadControl" buttonType="danger" :limit="1"
             :flag="'financeClaim/personal/temp/upload/' + financeFundId" :style-type="2" title="模版认领"
             @fath="getMyPersonalOrder" />
           <el-button style="margin-left: 10px ;float: left;" round type="danger"
-            @click="openClaimDialog()">选择认领</el-button>
+            @click="openPersonalOrderDialog()">选择认领</el-button>
         </template>
         <parentTable ref="table" :clickRowToPick="false" :data="myPersonalPageData.records" slot="table"
-          style="width: 100%;" :selectionChange="handleSelectionChange">
+          style="width: 100%;" :selectionChange="handleSelectionChange" :isBoard=500>
           <el-table-column align="center" type="selection" claimOrders width="100" border="true">
           </el-table-column>
           <el-table-column label="坐落" align="center">
@@ -490,7 +490,7 @@
           <el-button style="float: left;" round type="danger" @click="openAssetsClaimDialog()">选择认领</el-button>
         </template>
         <parentTable v-show="toAssetsProd" ref="prod" :clickRowToPick="false" :data="myAssetsPageData.records"
-          slot="table" style="width: 100%;" :selectionChange="assetsHandleSelectionChange">
+          slot="table" style="width: 100%;" :selectionChange="assetsHandleSelectionChange"  :isBoard=500>
           <el-table-column align="center" type="selection" claimOrders width="100" border="true"
             :selectable="checkSelectable">
           </el-table-column>
@@ -737,12 +737,68 @@
         </el-card>
       </el-form>
     </el-dialog>
+    <el-dialog :visible.sync="allotPersonalAmountDialog" width="45%" center custom-class="doWarehouseClass"
+      @closed="cleanClaimDTO">
+      <el-form v-model="claimOrders" ref="claimOrdersForm">
+        <el-row>
+          <el-col :xs="24" :sm="12" :lg="21" :span="6">
+            <div style="font-size:20px;">
+              <span>此笔实收款剩余:</span><span style="color:red;font-weight:bold">{{ notClaimAmount }}¥</span>
+            </div>
+          </el-col>
+          <el-col :xs="24" :sm="12" :lg="3" :span="6">
+            <el-button style="float:right" type="success" @click="doClaimPersonal()">确认认领</el-button>
+          </el-col>
+        </el-row>
+        <el-card style="margin-top:20px" v-for="(p, id) in claimOrders" shadow="hover">
+          <div slot="header" class="clearfix">
+            <el-row>
+              <el-col :xs="24" :sm="12" :lg="24" :span="6">
+                <el-form-item label="订单名称" prop="orderName" label-width="140px" class="postInfo-container-item">
+                  <el-input :value="p.orderName" type="text" class="filter-item" disabled readonly />
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-col :xs="24" :sm="12" :lg="12" :span="6">
+                <span class="redPoint">*</span>
+                <el-form-item label="本次认领金额:" prop="thisTimeAmount" label-width="140px" class="postInfo-container-item">
+                  <el-input-number :precision="2" :min="0" :value-on-clear="0" v-model.number="p.thisTimeAmount"
+                    style="width:100%" class="filter-item" />
+                </el-form-item>
+              </el-col>
+              <el-col :xs="24" :sm="12" :lg="12" :span="6">
+                <el-form-item label="订单号" prop="orderId" label-width="140px" class="postInfo-container-item">
+                  <el-input :value="p.orderId" type="text" class="filter-item" disabled readonly />
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-col :xs="24" :sm="12" :lg="12" :span="6">
+                <el-form-item label="已认领金额:" prop="realAmount" label-width="140px" class="postInfo-container-item">
+                  <el-input :value="p.realAmount" type="text" class="filter-item" disabled readonly>
+                    <template slot="append">元</template>
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :xs="24" :sm="12" :lg="12" :span="6">
+                <el-form-item label="订单应收金额:" prop="shouldAmount" label-width="140px" class="postInfo-container-item">
+                  <el-input :value="p.shouldAmount" type="text" class="filter-item" disabled readonly>
+                    <template slot="append">元</template>
+                  </el-input>
+                </el-form-item>
+              </el-col>
+            </el-row>
+          </div>
+        </el-card>
+      </el-form>
+    </el-dialog>
   </div>
 </template>
 <script>
 import YPageListLayout from '@/components/YPageListLayout'
 import Breadcrumb from '@/components/Breadcrumb'
-import excelImport from "@/components/excelImport.vue";
+import ExcelImport from "@/components/excelImport.vue";
 
 
 export default {
@@ -750,7 +806,7 @@ export default {
   components: {
     Breadcrumb,
     YPageListLayout,
-    excelImport
+    ExcelImport
   },
 
   watch: {
@@ -864,7 +920,8 @@ export default {
         page: 1,
         size: 10,
         descs: 'id',
-      }
+      },
+      allotPersonalAmountDialog:false
     }
   },
   created() {
@@ -1099,6 +1156,13 @@ export default {
       })
     },
     doClaimPersonal() {
+      const orders = this.claimOrders;
+      for (let i in orders) {
+        if (!orders[i].thisTimeAmount) {
+          this.$message.error("订单号:[" + orders[i].orderId + "],本次认领金额不能为空。");
+          return;
+        }
+      }
       this.$api.businessProduction.personalAllotRealAmount(this.claimOrders).then(res => {
         if (res.code === 200 && res.data) {
           this.$notify({
@@ -1108,7 +1172,7 @@ export default {
             duration: 2000
           });
           this.getMyPersonalOrder();
-          this.allotAmountDialog = false;
+          this.allotPersonalAmountDialog = false;
         } else {
           this.$notify({
             title: '失败',
@@ -1135,6 +1199,7 @@ export default {
       this.getMyPersonalOrder();
       this.myPersonalOrderDialog = true;
       this.financeFundId = row.id;
+      this.notClaimAmount = row.notClaimAmount;
     },
     getMajorOrderOrProd() {
       if (this.toProd) {
@@ -1260,6 +1325,20 @@ export default {
           });
         }
       })
+    },
+    openPersonalOrderDialog(){
+      if (this.claimOrders.length === 0) {
+        this.$notify({
+          title: '提示',
+          message: '请先选择订单,然后认领。',
+          type: 'info',
+          duration: 2000
+        });
+        return;
+      }
+
+      this.notInfo = this.notInfo + this.notClaimAmount + '¥'
+      this.allotPersonalAmountDialog = true;
     }
   },