Bladeren bron

其他应收单部分功能

chen 3 jaren geleden
bovenliggende
commit
43c282bbf2

+ 27 - 0
src/api/finance/receivable_list.js

@@ -0,0 +1,27 @@
+import request from '@/utils/request'
+
+// 其他应收单-新增
+export function getFinanceOtherReceAdd(data) {
+    return request({
+      url: '/finance/other/rece/add',
+      method: 'post',
+      data
+    })
+  }
+// 经销商列表
+export function getCustomerList(params) {
+    return request({
+      url: '/customer/list',
+      method: 'get',
+      params
+    })
+  }
+// 经销商钱包列表
+export function getFinanceCustomerList(params) {
+    return request({
+      url: '/finance/customer/list',
+      method: 'get',
+      params
+    })
+  }
+

+ 200 - 88
src/views/finance/components/receivable_list-add.vue

@@ -22,58 +22,41 @@
             </el-form-item>
           </el-col>
           <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="往来单位类型" prop="">
-              <el-input placeholder="请输入"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="结算组织" prop="">
-              <el-input placeholder="请输入"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="单据来源" prop="">
-              <el-input placeholder="请输入"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :lg="6">
             <el-form-item label="单据编号" prop="">
               <el-input placeholder="请输入"></el-input>
             </el-form-item>
           </el-col>
           <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="往来单位" prop="">
-              <el-input placeholder="请输入"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="收款组织" prop="">
-              <el-input placeholder="请输入"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="备注" prop="">
-              <el-input placeholder="请输入"></el-input>
+            <el-form-item label="单据来源" prop="">
+              <el-select v-model="searchForm.source" placeholder="请选择">
+                <el-option value="工程押金"> </el-option>
+                <el-option value="保证金"> </el-option>
+                <el-option value="工程价差"> </el-option>
+              </el-select>
             </el-form-item>
           </el-col>
           <el-col :xs="24" :sm="12" :lg="6">
             <el-form-item label="业务日期" prop="">
-              <el-input placeholder="请输入"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="币别" prop="">
-              <el-input placeholder="请输入"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="销售组织" prop="">
-              <el-input placeholder="请输入"></el-input>
+              <el-date-picker
+                v-model="searchForm.theTime"
+                type="date"
+                placeholder="选择日期"
+                format="yyyy 年 MM 月 dd 日"
+                value-format="yyyy-MM-dd"
+              >
+              </el-date-picker>
             </el-form-item>
           </el-col>
           <el-col :xs="24" :sm="12" :lg="6">
             <el-form-item label="到期日" prop="">
-              <el-input placeholder="请输入"></el-input>
+              <el-date-picker
+                v-model="searchForm.endTime"
+                type="date"
+                placeholder="选择日期"
+                format="yyyy 年 MM 月 dd 日"
+                value-format="yyyy-MM-dd"
+              >
+              </el-date-picker>
             </el-form-item>
           </el-col>
           <el-col :xs="24" :sm="12" :lg="6">
@@ -82,43 +65,35 @@
             </el-form-item>
           </el-col>
           <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="部门" prop="">
-              <el-input placeholder="请输入"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="单据状态" prop="">
-              <el-input placeholder="请输入"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="申请部门" prop="">
-              <el-input placeholder="请输入"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="组" prop="">
-              <el-input placeholder="请输入"></el-input>
+            <el-form-item label="制单人" prop="">
+              <el-input
+                v-model="searchForm.createBy"
+                placeholder="请输入"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :xs="24" :sm="12" :lg="6">
             <el-form-item label="制单日期" prop="">
-              <el-input placeholder="请输入"></el-input>
+              <el-input
+                v-model="searchForm.createTime"
+                placeholder="请输入"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="制单人" prop="">
-              <el-input placeholder="请输入"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="钱包" prop="">
-              <el-input placeholder="请输入"></el-input>
+            <el-form-item label="单据状态" prop="">
+              <el-input
+                v-model="searchForm.examineStatus"
+                placeholder="请输入"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="业务员" prop="">
-              <el-input placeholder="请输入"></el-input>
+            <el-form-item label="备注" prop="">
+              <el-input
+                v-model="searchForm.remark"
+                placeholder="请输入"
+              ></el-input>
             </el-form-item>
           </el-col>
         </el-row>
@@ -141,76 +116,156 @@
           <el-table-column
             label="序号"
             align="center"
-            min-width="100"
+            width="100"
+            type="index"
             show-overflow-tooltip
-          ></el-table-column>
+          >
+          </el-table-column>
           <el-table-column
             align="center"
-            label="*费用项目编码"
-            prop=""
+            label="*经销商名称"
+            prop="customerName"
             min-width="160"
             show-overflow-tooltip
-          ></el-table-column>
+          >
+            <template slot-scope="scope">
+              <el-select
+                @change="changeCustomerFn"
+                v-model="scope.row.customerId"
+                placeholder="请选择"
+              >
+                <el-option
+                  v-for="item in customerList"
+                  :key="item.id"
+                  :label="item.name"
+                  :value="item.id"
+                >
+                </el-option>
+              </el-select>
+            </template>
+          </el-table-column>
           <el-table-column
             align="center"
-            label="项目费用名称"
-            prop=""
+            label="费用项目编码"
+            prop="projectCode"
             min-width="160"
             show-overflow-tooltip
-          ></el-table-column>
+          >
+            <template slot-scope="scope">
+              <el-input v-model="scope.row.projectCode"></el-input>
+            </template>
+          </el-table-column>
+          <el-table-column
+            align="center"
+            label="*项目费用名称"
+            prop="projectName"
+            min-width="160"
+            show-overflow-tooltip
+          >
+            <template slot-scope="scope">
+              <el-input v-model="scope.row.projectName"></el-input>
+            </template>
+          </el-table-column>
           <el-table-column
             align="center"
             label="*费用承担部门"
-            prop=""
+            prop="departmentId"
+            min-width="160"
+            show-overflow-tooltip
+          >
+            <template slot-scope="scope">
+              <el-input v-model="scope.row.departmentId"></el-input>
+            </template>
+          </el-table-column>
+          <el-table-column
+            align="center"
+            label="现金钱包"
+            prop="walletId"
             min-width="160"
             show-overflow-tooltip
-          ></el-table-column>
+          >
+            <template slot-scope="scope">
+              <el-select v-model="scope.row.walletId" placeholder="请选择">
+                <el-option
+                  v-for="item in walletList"
+                  :key="item.walletRebateId"
+                  :label="item.name"
+                  :value="item.walletRebateId"
+                >
+                </el-option>
+              </el-select>
+            </template>
+          </el-table-column>
           <el-table-column
             align="center"
             label="*发票类型"
-            prop=""
+            prop="invoiceType"
             min-width="160"
             show-overflow-tooltip
-          ></el-table-column>
+          >
+            <template slot-scope="scope">
+              <el-input v-model="scope.row.invoiceType"></el-input>
+            </template>
+          </el-table-column>
           <el-table-column
             align="center"
             label="不含税金额"
-            prop=""
+            prop="afterTaxAmount"
             min-width="160"
             show-overflow-tooltip
-          ></el-table-column>
+          >
+            <template slot-scope="scope">
+              <el-input v-model="scope.row.afterTaxAmount"></el-input>
+            </template>
+          </el-table-column>
           <el-table-column
             align="center"
             label="税额"
-            prop=""
+            prop="tax"
             min-width="160"
             show-overflow-tooltip
-          ></el-table-column>
+          >
+            <template slot-scope="scope">
+              <el-input v-model="scope.row.tax"></el-input>
+            </template>
+          </el-table-column>
           <el-table-column
             align="center"
             label="总金额"
-            prop=""
+            prop="tax"
             min-width="160"
             show-overflow-tooltip
-          ></el-table-column>
+          >
+            <template slot-scope="scope">
+              <el-input v-model="scope.row.totalAmount"></el-input>
+            </template>
+          </el-table-column>
           <el-table-column
             align="center"
             label="备注"
-            prop=""
+            prop="tax"
             min-width="160"
             show-overflow-tooltip
-          ></el-table-column>
+          >
+            <template slot-scope="scope">
+              <el-input v-model="scope.row.tax"></el-input>
+            </template>
+          </el-table-column>
         </el-table>
       </div>
     </div>
     <!-- 按钮 -->
     <div class="btn-group clearfix">
       <div class="fl">
-        <el-button type="primary" size="small">提交审核</el-button>
+        <el-button type="primary" size="small" @click="addFn"
+          >提交审核</el-button
+        >
         <el-button type="primary" size="small">重置</el-button>
       </div>
       <div class="fr">
-        <el-button type="primary" size="small">添加行</el-button>
+        <el-button type="primary" size="small" @click="addRowFn"
+          >添加行</el-button
+        >
         <el-button type="primary" size="small">删除行</el-button>
       </div>
     </div>
@@ -218,8 +273,65 @@
 </template>
 
 <script>
+import {
+  getCustomerList,
+  getFinanceCustomerList,
+  getFinanceOtherReceAdd,
+} from "@/api/finance/receivable_list";
 export default {
+  data() {
+    return {
+      searchForm: {
+        source: "",
+        theTime: "",
+      },
+      dataList: [],
+      customerList: [], //经销商数据
+      listLoading: false, // 列表加载loading
+      walletList: [], //现金钱包数据
+    };
+  },
+  created() {
+    this.getCustomerList();
+  },
   methods: {
+    //新增
+    async addFn() {
+      console.log(this.dataList);
+      console.log(this.searchForm);
+      await getFinanceOtherReceAdd({
+        items: this.dataList,
+        ...this.searchForm,
+      });
+    },
+    //选择经销商名称事件
+    async changeCustomerFn(v) {
+      console.log(v);
+      const res = await getFinanceCustomerList({
+        customerId: v,
+        type: "COMMONLY",
+      });
+      this.walletList = res.data;
+    },
+    //获取经销商数据
+    async getCustomerList() {
+      const res = await getCustomerList({ pageNum: 1, pageSize: -1 });
+      this.customerList = res.data.records;
+    },
+    //添加行数据
+    addRowFn() {
+      this.dataList.push({
+        customerId: "",
+        projectCode: "",
+        projectName: "",
+        departmentId: "",
+        walletId: "",
+        invoiceType: "",
+        afterTaxAmount: "",
+        tax: "",
+        totalAmount: "",
+      });
+    },
     goBack() {
       this.$parent.showPage = 1;
     },

+ 1 - 0
src/views/finance/receivable_list.vue

@@ -187,6 +187,7 @@
 </template>
 
 <script>
+import { getFinanceOtherReceAdd } from "@/api/finance/receivable_list";
 import ReceivableListAdd from "./components/receivable_list-add";
 import ReceivableListApproval from "./components/receivable_list-approval";
 import ReceivableListDetail from "./components/receivable_list-detail";

+ 1 - 1
src/views/finance/wallet.vue

@@ -28,7 +28,7 @@
           <el-table-column
             align="center"
             label="钱包类型"
-            prop="type"
+            prop="mainName"
             min-width="160"
             show-overflow-tooltip
           ></el-table-column>