Explorar o código

1.资产业务发起产品退回流程
2.新增页面产品退回
3.资产评估人员绩效申报给签字师设置默认8%提成点

GouGengquan hai 3 meses
pai
achega
4fb3c5d781

+ 15 - 0
src/api/modules/productionReturn.js

@@ -0,0 +1,15 @@
+import request from '@/utils/request'
+
+/**
+ * 产品退回申请
+ */
+export default {
+    // 发起产品退回流程
+    save(params) {
+        return request.post(`productionReturn/save`, params)
+    },
+    // 分页查询产品退回申请
+    page(params) {
+        return request.get(`productionReturn/page`, {params: params})
+    }
+}

+ 3 - 1
src/router/urlMap.js

@@ -154,6 +154,7 @@ import _views_statistical_major_market_efficiency from '@/views/statistical/majo
 import _views_personal_all from '@/views/personal/allOrder'
 import _views_finance_fine from '@/views/finance/fine'
 import _views_finance_fine_refund from '@/views/finance/fineRefund'
+import _views_finance_production_return from '@/views/finance/productionReturn'
 
 export default {
   _views_set_menu,
@@ -296,6 +297,7 @@ export default {
   _views_income_major_declare_evaluate_by_department,
   _views_income_major_declare_market_by_department,
   _views_finance_fine,
-  _views_finance_fine_refund
+  _views_finance_fine_refund,
+  _views_finance_production_return
 
 }

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 384 - 318
src/views/assets/myOrderList.vue


+ 151 - 0
src/views/finance/productionReturn.vue

@@ -0,0 +1,151 @@
+<template>
+    <div class="app-container organization-index">
+        <div class="title-container">
+            <breadcrumb id="breadcrumb-container" class="breadcrumb-container" />
+        </div>
+        <y-page-list-layout :page-list="pageData" :page-para="queryDTO" :get-page-list="page">
+            <template slot="left">
+                <el-select v-model="queryDTO.businessType" placeholder="业务类型" clearable style="width: 150px;float: left;">
+                    <el-option label="资产业务" value="ASSET_BUSINESS"></el-option>
+                    <el-option label="个贷业务" value="PERSONAL_BUSINESS"></el-option>
+                    <el-option label="大中型业务" value="MAJOR_BUSINESS"></el-option>
+                </el-select>
+                <el-input v-model="queryDTO.keyWord" placeholder="关键字(项⽬编号或产品号)" clearable style="margin-left: 20px;width: 300px;float: left;"></el-input>
+                <el-input v-model="queryDTO.clientManagerName" placeholder="客户经理" clearable style="margin-left: 20px;width: 150px;float: left;"></el-input>
+                <el-input v-model="queryDTO.bailor" placeholder="委托方" clearable style="margin-left: 20px;width: 300px;float: left;"></el-input>
+                <el-button class="filter-item" style="margin-left:20px;float: left;" type="primary" @click="page()" round>搜索</el-button>
+                <el-button class="filter-item" style="float: left;" round type="success" @click="resetSearch()">重置</el-button>
+                <el-button class="filter-item" style="float: left;" round type="warning" @click="exportList()">导出</el-button>
+            </template>
+            <parentTable ref="table" v-loading="listLoading" :data="pageData.records" slot="table" style="width: 100%;">
+                <el-table-column label="业务类型" align="center" width="150">
+                    <template slot-scope="{row}">
+                        <span>{{ row.businessType }}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column label="项目名称" align="center" width="250">
+                    <template slot-scope="{row}">
+                        <span>{{ row.name }}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column label="项目编号" align="center" width="150">
+                    <template slot-scope="{row}">
+                        <span>{{ row.orderId }}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column label="产品编号" align="center" width="250">
+                    <template slot-scope="{row}">
+                        <span>{{ row.productionNo }}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column label="产品类型" align="center" width="250">
+                    <template slot-scope="{row}">
+                        <span>{{ row.productionType }}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column label="客户经理" align="center" width="150">
+                    <template slot-scope="{row}">
+                        <span>{{ row.clientManager }}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column label="客户名称" align="center" width="150">
+                    <template slot-scope="{row}">
+                        <span>{{ row.clientName }}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column label="业务来源" align="center" width="150">
+                    <template slot-scope="{row}">
+                        <span>{{ row.clientSubName }}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column label="委托人" align="center" width="150">
+                    <template slot-scope="{row}">
+                        <span>{{ row.bailor }}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column label="退产品原因" align="center" width="150">
+                    <template slot-scope="{row}">
+                        <span>{{ row.returnReason }}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column label="是否包含退发票" align="center" width="150">
+                    <template slot-scope="{row}">
+                        <span>{{ row.returnInvoice }}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column label="审核状态" align="center" width="150">
+                    <template slot-scope="{row}">
+                        <span>{{ row.status }}</span>
+                    </template>
+                </el-table-column>
+            </parentTable>
+        </y-page-list-layout>
+    </div>
+</template>
+<script>
+import Breadcrumb from '@/components/Breadcrumb';
+import YPageListLayout from '@/components/YPageListLayout';
+
+export default {
+    name: 'productionReturn',
+    components: {
+        Breadcrumb,
+        YPageListLayout,
+    },
+    data() {
+        return {
+            listLoading: false,
+            // 分页查询条件
+            queryDTO: {
+                page: 1,
+                size: 10,
+                businessType: null,
+                keyWord: null,
+                clientManagerName: null,
+                bailor: null,
+            },
+            pageData: { records: [] },
+        };
+    },
+    created() {
+        this.page();
+    },
+    methods: {
+        handleClick() {
+            this.queryDTO = {
+                page: 1,
+                size: 10,
+                businessType: null,
+                keyWord: null,
+                clientManagerName: null,
+                bailor: null,
+            };
+            this.page();
+        },
+        // 重置条件
+        resetSearch() {
+            this.queryDTO = {
+                page: 1,
+                size: 10,
+                businessType: null,
+                keyWord: null,
+                clientManagerName: null,
+                bailor: null,
+            };
+            this.page();
+        },
+        // 查询罚款退款记录
+        page() {
+            this.listLoading = true;
+            this.$api.productionReturn.page(this.queryDTO).then((res) => {
+                this.pageData = res.data;
+                this.listLoading = false;
+            });
+        },
+        exportList() {
+            this.$utils.exportUtil('/productionReturn/export', this.queryDTO, '导出');
+        },
+    },
+};
+</script>
+<style scoped lang="scss"></style>

+ 3 - 0
src/views/income/assets/evaluate.vue

@@ -363,6 +363,9 @@ export default {
                         this.businessPerformanceDistributionForm.distributionList = [];
                         for (let i = 0; i < this.assetsBusinessMembers.length; i++) {
                             let memberInfo = { memberId: this.assetsBusinessMembers[i].memberId, performanceDistribution: 0, participationDuration: 0, memberType: this.assetsBusinessMembers[i].memberType }
+                            if (memberInfo.memberType === '签字师') {
+                                memberInfo.performanceDistribution = 8;
+                            }
                             this.businessPerformanceDistributionForm.distributionList.push(memberInfo)
                         }
                     }