Browse Source

解决冲突

QuKatie 4 years ago
parent
commit
04a3bbacb4

+ 42 - 0
src/api/financialManagement/financialManagement.js

@@ -0,0 +1,42 @@
+import request from '@/router/axios';
+
+export const getList = (current, size, params) => {
+  return request({
+    url: '/api/trade-finance/settlement/list',
+    method: 'get',
+    params: {
+      ...params,
+      current,
+      size,
+    }
+  })
+}
+
+export const remove = (id) => {
+  return request({
+    url: '/api/trade-finance/settlement/remove',
+    method: 'delete',
+    params: {
+      id:id
+    }
+  })
+}
+
+
+export const getDetail = (id) => {
+  return request({
+    url: '/api/trade-finance/settlement/detail',
+    method: 'get',
+    params: {
+      id:id
+    }
+  })
+}
+
+export const editFinance = (params) => {
+  return request({
+    url: '/api/trade-finance/settlement/modify',
+    method: 'post',
+    data:params
+  })
+}

+ 2 - 1
src/components/selectComponent/customerSelect.vue

@@ -2,6 +2,7 @@
   <span class="select-component">
     <el-select
         v-model="value"
+        size="small"
         :placeholder="configuration.placeholder"
         style="width: 80%;border-right: none;"
         :disabled="disabled?disabled:false"
@@ -14,7 +15,7 @@
           :value="item.id"
       />
     </el-select>
-    <el-button icon="el-icon-edit" @click="dialogVisible = true" :disabled="disabled?disabled:false" style="width: 20%"></el-button>
+    <el-button icon="el-icon-edit" size="small" @click="dialogVisible = true" :disabled="disabled?disabled:false" style="width: 20%"></el-button>
   <el-dialog
       title="导入客户"
       :visible.sync="dialogVisible"

+ 225 - 179
src/router/views/index.js

@@ -73,129 +73,143 @@ export default [{
       },
       component: () => import( /* webpackChunkName: "views" */ '@/views/system/userinfo')
     }]
-  }, {
-    path: '/detailsPageEdit',
-    component: Layout,
-    hidden: true,
-    children: [{
-      path: '/detailsPageEdit',
-      meta: {
-        i18n: 'detailsPageEdit'
-      },
-      component: () => import( /* webpackChunkName: "views" */ '@/views/basicData/customerInformation/detailsPageEdit')
-    }]
-  },
-  //商品详情页
-  {
-    path: '/commodityType_detailsPageEdit',
-    component: Layout,
-    hidden: true,
-    children: [{
-      path: '/commodityType_detailsPageEdit',
-      meta: {
-        i18n: 'commodityType_detailsPageEdit'
-      },
-      component: () => import( /* webpackChunkName: "views" */ '@/views/basicData/commodityType/detailsPageEdit')
-    }]
-  },
-  //销售详情页
-  {
-    path: '/salesOrder_detailsPageEdit',
-    component: Layout,
-    hidden: true,
-    children: [{
-      path: '/salesOrder_detailsPageEdit',
-      meta: {
-        i18n: 'salesOrder_detailsPageEdit'
-      },
-      component: () => import( /* webpackChunkName: "views" */ '@/views/businessManagement/salesOrder/detailsPageEdit')
-    }]
-  },
-  //发货通知详情页
-  {
-    path: '/deliveryNotice_detailsPageEdit',
-    component: Layout,
-    hidden: true,
-    children: [{
-      path: '/deliveryNotice_detailsPageEdit',
-      name: '发货单',
-      meta: {
-        i18n: 'deliveryNotice_detailsPageEdit'
-      },
-      component: () => import( /* webpackChunkName: "views" */ '@/views/businessManagement/deliveryNotice/detailsPageEdit')
-    }]
-  },
-  //价格管理详情页
-  {
-    path: '/priceManagement_detailsPageEdit',
-    component: Layout,
-    hidden: true,
-    children: [{
-      path: '/priceManagement_detailsPageEdit',
-      meta: {
-        i18n: 'priceManagement_detailsPageEdit'
-      },
-      component: () => import( /* webpackChunkName: "views" */ '@/views/maintenance/priceManagement/detailsPageEdit')
-    }]
-  },
-  //销售政策详情页
-  {
-    path: '/salesPolicy_detailsPageEdit',
-    component: Layout,
-    hidden: true,
-    children: [{
-      path: '/salesPolicy_detailsPageEdit',
-      meta: {
-        i18n: 'salesPolicy_detailsPageEdit'
-      },
-      component: () => import( /* webpackChunkName: "views" */ '@/views/maintenance/salesPolicy/detailsPageEdit')
-    }]
-  },
-  //秒杀详情页
-  {
-    path: '/panicBuyingInformation_detailsPageEdit',
-    component: Layout,
-    hidden: true,
-    children: [{
-      path: '/panicBuyingInformation_detailsPageEdit',
-      meta: {
-        i18n: 'panicBuyingInformation_detailsPageEdit'
-      },
-      component: () => import( /* webpackChunkName: "views" */ '@/views/maintenance/panicBuyingInformation/detailsPageEdit')
-    }]
-  },
-  //收货单详情页
-  {
-    path: '/receipt_detailsPageEdit',
-    component: Layout,
-    hidden: true,
-    children: [{
-      path: '/receipt_detailsPageEdit',
-      meta: {
-        i18n: 'receipt_detailsPageEdit'
-      },
-      component: () => import( /* webpackChunkName: "views" */ '@/views/businessManagement/receipt/detailsPageEdit')
-    }]
-  },
-  //采购订单详情页
-  {
-    path: '/purchaseOrder_detailsPageEdit',
-    component: Layout,
-    hidden: true,
-    children: [{
-      path: '/purchaseOrder_detailsPageEdit',
-      meta: {
-        i18n: 'purchaseOrder_detailsPageEdit'
-      },
-      component: () => import( /* webpackChunkName: "views" */ '@/views/businessManagement/purchaseOrder/detailsPageEdit')
-    }]
-  },
-  // 采购合同详情页
-  {
-    path: '/purchase_detailsPage',
-    component: Layout,
-    hidden: true,
-    children: [{
+},{
+        path: '/detailsPageEdit',
+        component: Layout,
+        hidden: true,
+        children: [
+            {
+                path: '/detailsPageEdit',
+                meta: {
+                    i18n: 'detailsPageEdit'
+                },
+                component: () => import( /* webpackChunkName: "views" */ '@/views/basicData/customerInformation/detailsPageEdit')
+            }
+        ]
+    },
+    //商品false
+    {
+        path: '/commodityType_detailsPageEdit',
+        component: Layout,
+        hidden: true,
+        children: [
+            {
+                path: '/commodityType_detailsPageEdit',
+                meta: {
+                    i18n: 'commodityType_detailsPageEdit'
+                },
+                component: () => import( /* webpackChunkName: "views" */ '@/views/basicData/commodityType/detailsPageEdit')
+            }
+        ]
+    },
+    //销售详情页
+    {
+        path: '/salesOrder_detailsPageEdit',
+        component: Layout,
+        hidden: true,
+        children: [
+            {
+                path: '/salesOrder_detailsPageEdit',
+                meta: {
+                    i18n: 'salesOrder_detailsPageEdit'
+                },
+                component: () => import( /* webpackChunkName: "views" */ '@/views/businessManagement/salesOrder/detailsPageEdit')
+            }
+        ]
+    },
+    //发货通知详情页
+    {
+        path: '/deliveryNotice_detailsPageEdit',
+        component: Layout,
+        hidden: true,
+        children: [
+            {
+                path: '/deliveryNotice_detailsPageEdit',
+                name: '发货单',
+                meta: {
+                    i18n: 'deliveryNotice_detailsPageEdit'
+                },
+                component: () => import( /* webpackChunkName: "views" */ '@/views/businessManagement/deliveryNotice/detailsPageEdit')
+            }
+        ]
+    },
+    //价格管理详情页
+    {
+        path: '/priceManagement_detailsPageEdit',
+        component: Layout,
+        hidden: true,
+        children: [
+            {
+                path: '/priceManagement_detailsPageEdit',
+                meta: {
+                    i18n: 'priceManagement_detailsPageEdit'
+                },
+                component: () => import( /* webpackChunkName: "views" */ '@/views/maintenance/priceManagement/detailsPageEdit')
+            }
+        ]
+    },
+    //销售政策详情页
+    {
+        path: '/salesPolicy_detailsPageEdit',
+        component: Layout,
+        hidden: true,
+        children: [
+            {
+                path: '/salesPolicy_detailsPageEdit',
+                meta: {
+                    i18n: 'salesPolicy_detailsPageEdit'
+                },
+                component: () => import( /* webpackChunkName: "views" */ '@/views/maintenance/salesPolicy/detailsPageEdit')
+            }
+        ]
+    },
+    //秒杀详情页
+    {
+        path: '/panicBuyingInformation_detailsPageEdit',
+        component: Layout,
+        hidden: true,
+        children: [
+            {
+                path: '/panicBuyingInformation_detailsPageEdit',
+                meta: {
+                    i18n: 'panicBuyingInformation_detailsPageEdit'
+                },
+                component: () => import( /* webpackChunkName: "views" */ '@/views/maintenance/panicBuyingInformation/detailsPageEdit')
+            }
+        ]
+    },
+    //收货单详情页
+    {
+        path: '/receipt_detailsPageEdit',
+        component: Layout,
+        hidden: true,
+        children: [
+            {
+                path: '/receipt_detailsPageEdit',
+                meta: {
+                    i18n: 'receipt_detailsPageEdit'
+                },
+                component: () => import( /* webpackChunkName: "views" */ '@/views/businessManagement/receipt/detailsPageEdit')
+            }
+        ]
+    },
+    //采购订单详情页
+    {
+        path: '/purchaseOrder_detailsPageEdit',
+        component: Layout,
+        hidden: true,
+        children: [
+            {
+                path: '/purchaseOrder_detailsPageEdit',
+                meta: {
+                    i18n: 'purchaseOrder_detailsPageEdit'
+                },
+                component: () => import( /* webpackChunkName: "views" */ '@/views/businessManagement/purchaseOrder/detailsPageEdit')
+            }
+        ]
+    },
+    // 采购合同详情页
+    {
       path: '/purchase_detailsPage',
       meta: {
         i18n: 'purchase_detailsPage'
@@ -374,63 +388,95 @@ export default [{
       component: () => import( /* webpackChunkName: "views" */ '@/views/workManagement/receipt/settleAccountsDetailsPage')
     }]
   },
+  // 收款详情
   {
-    path: '/work/process/leave',
+    path: '/receipt_detailsPage',
     component: Layout,
-    redirect: '/work/process/leave/form',
-    children: [{
-      path: 'form/:processDefinitionId',
-      name: '请假流程',
-      meta: {
-        i18n: 'work'
-      },
-      component: () =>
-        import( /* webpackChunkName: "views" */ '@/views/work/process/leave/form')
-    }, {
-      path: 'handle/:taskId/:processInstanceId/:businessId',
-      name: '处理请假流程',
-      meta: {
-        i18n: 'work'
-      },
-      component: () =>
-        import( /* webpackChunkName: "views" */ '@/views/work/process/leave/handle')
-    }, {
-      path: 'detail/:processInstanceId/:businessId',
-      name: '请假流程详情',
-      meta: {
-        i18n: 'work'
-      },
-      component: () =>
-        import( /* webpackChunkName: "views" */ '@/views/work/process/leave/detail')
-    }]
-  }, {
-    path: '/work/process/test',
+    hidden: true,
+    children: [
+      {
+        path: '/receipt_detailsPage',
+        name:"收款详情",
+        meta: {
+          i18n: 'receipt_detailsPage',
+        },
+        component: () => import( /* webpackChunkName: "views" */ '@/views/financialManagement/receiptDetailsPage')
+      }
+    ]
+  },
+  // 付款详情
+  {
+    path: '/payment_detailsPage',
     component: Layout,
-    redirect: '/work/process/test/form',
-    children: [{
-      path: 'form/:processDefinitionId',
-      name: '请假流程',
-      meta: {
-        i18n: 'work'
-      },
-      component: () =>
-        import( /* webpackChunkName: "views" */ '@/views/work/process/test/form')
-    }, {
-      path: 'handle/:taskId/:processInstanceId/:businessId',
-      name: '处理请假流程',
-      meta: {
-        i18n: 'work'
-      },
-      component: () =>
-        import( /* webpackChunkName: "views" */ '@/views/work/process/test/handle')
-    }, {
-      path: 'detail/:processInstanceId/:businessId',
-      name: '请假流程详情',
-      meta: {
-        i18n: 'work'
-      },
-      component: () =>
-        import( /* webpackChunkName: "views" */ '@/views/work/process/leave/detail')
-    }]
-  }
+    hidden: true,
+    children: [
+      {
+        path: '/payment_detailsPage',
+        name:"付款详情",
+        meta: {
+          i18n: 'payment_detailsPage',
+        },
+        component: () => import( /* webpackChunkName: "views" */ '@/views/financialManagement/paymentDetailsPage')
+      }
+    ]
+  },
+    {
+        path: '/work/process/leave',
+        component: Layout,
+        redirect: '/work/process/leave/form',
+        children: [{
+            path: 'form/:processDefinitionId',
+            name: '请假流程',
+            meta: {
+                i18n: 'work'
+            },
+            component: () =>
+                import( /* webpackChunkName: "views" */ '@/views/work/process/leave/form')
+        }, {
+            path: 'handle/:taskId/:processInstanceId/:businessId',
+            name: '处理请假流程',
+            meta: {
+                i18n: 'work'
+            },
+            component: () =>
+                import( /* webpackChunkName: "views" */ '@/views/work/process/leave/handle')
+        }, {
+            path: 'detail/:processInstanceId/:businessId',
+            name: '请假流程详情',
+            meta: {
+                i18n: 'work'
+            },
+            component: () =>
+                import( /* webpackChunkName: "views" */ '@/views/work/process/leave/detail')
+        }]
+    },{
+      path: '/work/process/test',
+      component: Layout,
+      redirect: '/work/process/test/form',
+      children: [{
+        path: 'form/:processDefinitionId',
+        name: '请假流程',
+        meta: {
+          i18n: 'work'
+        },
+        component: () =>
+          import( /* webpackChunkName: "views" */ '@/views/work/process/test/form')
+      }, {
+        path: 'handle/:taskId/:processInstanceId/:businessId',
+        name: '处理请假流程',
+        meta: {
+          i18n: 'work'
+        },
+        component: () =>
+          import( /* webpackChunkName: "views" */ '@/views/work/process/test/handle')
+      }, {
+        path: 'detail/:processInstanceId/:businessId',
+        name: '请假流程详情',
+        meta: {
+          i18n: 'work'
+        },
+        component: () =>
+          import( /* webpackChunkName: "views" */ '@/views/work/process/leave/detail')
+      }]
+    }
 ]

+ 7 - 3
src/views/businessManagement/salesOrder/detailsPageEdit.vue

@@ -2,7 +2,6 @@
   <div class="borderless">
     <div class="customer-head">
       <div class="customer-back">
-        <!--        <i class="back-icon el-icon-arrow-left"></i><i style="font-style:normal">返回管理列表</i>-->
         <el-button type="danger" style="border: none;background: none;color: red" icon="el-icon-arrow-left"
                    @click="backToList">返回列表
         </el-button>
@@ -30,7 +29,7 @@
                                 size="small" type="datetime" placeholder="选择日期" value-format="yyyy-MM-dd HH:mm:ss"/>
                 <selectComponent v-else-if="item.prop === 'corpId'" v-model="form[item.prop]"
                                  :configuration="configuration"/>
-                <el-select v-else-if="item.prop === 'paymentType'" v-model="form[item.prop]" placeholder="请选择" clearable filterable style="width: 100%">
+                <el-select v-else-if="item.prop === 'paymentType'" v-model="form[item.prop]" placeholder="请选择" clearable filterable size="small" style="width: 100%">
                   <el-option v-for="(item,index) in paymentOption" :key="index" :label="item.dictValue" :value="item.dictValue"></el-option>
                 </el-select>
                 <el-input type="age" v-else v-model="form[item.prop]" size="small" autocomplete="off"></el-input>
@@ -455,6 +454,8 @@ import {
   policyColumn
 } from "@/api/basicData/basicFeesDesc";
 import _ from "lodash";
+//业务字典
+import { getDictionary } from "@/api/system/dictbiz";
 
 export default {
   name: "detailsPage",
@@ -970,7 +971,10 @@ export default {
       let id = this.$route.query.copyId.replace(/\"/g, "")
       this.queryData(id, true)
     }
-    this.getWorkDicts("payment_term").then(res => {
+    const params = {
+      code : "affair_payment_term"
+    }
+    getDictionary(params).then(res => {
       this.paymentOption = res.data.data
     })
   },

+ 4 - 5
src/views/financialManagement/configuration/mainList.json → src/views/financialManagement/configuration/detailsPage.json

@@ -18,14 +18,13 @@
   "column": [
     {
       "label": "合同号",
-      "prop": "cname",
+      "prop": "srcOrderno",
       "index": 1,
       "overHidden": true
     },
     {
       "label": "金额",
-      "prop": "sort",
-      "type": "number",
+      "prop": "amount",
       "index": 2,
       "overHidden": true
     },
@@ -33,14 +32,14 @@
       "label": "录入日期",
       "prop": "createTime",
       "type": "date",
-      "format": "yyyy-MM-dd HH:ss",
+      "format": "yyyy-MM-dd",
       "valueFormat": "yyyy-MM-dd",
       "overHidden": true,
       "index": 3
     },
     {
       "label": "录入人",
-      "prop": "createUser",
+      "prop": "createUserName",
       "index": 4,
       "overHidden": true
     },

+ 87 - 0
src/views/financialManagement/configuration/paymentList.json

@@ -0,0 +1,87 @@
+{
+  "addBtn":false,
+  "headerAlign": "center",
+  "align": "center",
+  "border": true,
+  "index": true,
+  "lazy": true,
+  "tip": false,
+  "simplePage": true,
+  "searchShow": true,
+  "searchMenuSpan": 6,
+  "tree": true,
+  "searchMenuPosition": "right",
+  "selection": false,
+  "viewBtn": false,
+  "editBtn": false,
+  "delBtn": false,
+  "menuWidth": 220,
+  "column": [
+    {
+      "label": "合同号",
+      "prop": "srcOrderno",
+      "width": 120,
+      "index": 1
+    },
+    {
+      "label": "客户名称",
+      "prop": "corpId",
+      "search": true,
+      "width": 120,
+      "index": 2
+    },
+    {
+      "label": "收款日期",
+      "prop": "settlementDate",
+      "search": true,
+      "width": 120,
+      "index": 3
+    },
+    {
+      "label": "金额",
+      "prop": "amount",
+      "search": true,
+      "width": 120,
+      "index": 4
+    },
+    {
+      "label": "币别",
+      "prop": "currency",
+      "width": 120,
+      "index": 5
+    },
+    {
+      "label": "银行名称",
+      "prop": "accountBank",
+      "width": 120,
+      "index": 6
+    },
+    {
+      "label": "银行户头",
+      "prop": "accountName",
+      "width": 120,
+      "index": 7
+    },
+    {
+      "label": "录入日期",
+      "prop": "createTime",
+      "type": "date",
+      "format": "yyyy-MM-dd",
+      "valueFormat": "yyyy-MM-dd",
+      "width": 120,
+      "index": 8
+    },
+    {
+      "label": "录入人",
+      "prop": "createUserName",
+      "index": 9,
+      "width": 120
+    },
+    {
+      "label": "备注",
+      "prop": "remark",
+      "index": 10,
+      "width": 120
+    }
+  ]
+}

+ 90 - 0
src/views/financialManagement/configuration/receiptList.json

@@ -0,0 +1,90 @@
+{
+  "addBtn":false,
+  "headerAlign": "center",
+  "align": "center",
+  "border": true,
+  "index": true,
+  "lazy": true,
+  "tip": false,
+  "simplePage": true,
+  "searchShow": true,
+  "searchMenuSpan": 6,
+  "tree": true,
+  "searchMenuPosition": "right",
+  "selection": false,
+  "viewBtn": false,
+  "editBtn": false,
+  "delBtn": false,
+  "menuWidth": 220,
+  "column": [
+    {
+      "label": "合同号",
+      "prop": "srcOrderno",
+      "width": 150,
+      "index": 1
+    },
+    {
+      "label": "客户名称",
+      "prop": "corpId",
+      "search": true,
+      "width": 150,
+      "index": 2
+    },
+    {
+      "label": "收款日期",
+      "prop": "settlementDate",
+      "type": "date",
+      "format": "yyyy-MM-dd",
+      "valueFormat": "yyyy-MM-dd",
+      "search": true,
+      "width": 150,
+      "index": 3
+    },
+    {
+      "label": "金额",
+      "prop": "amount",
+      "width": 120,
+      "index": 4
+    },
+    {
+      "label": "币别",
+      "prop": "currency",
+      "width": 120,
+      "index": 5
+    },
+    {
+      "label": "银行名称",
+      "prop": "accountBank",
+      "search": true,
+      "width": 150,
+      "index": 6
+    },
+    {
+      "label": "银行户头",
+      "prop": "accountName",
+      "width": 150,
+      "index": 7
+    },
+    {
+      "label": "录入人",
+      "prop": "createUserName",
+      "index": 8,
+      "width": 120
+    },
+    {
+      "label": "录入日期",
+      "prop": "createTime",
+      "type": "date",
+      "format": "yyyy-MM-dd",
+      "valueFormat": "yyyy-MM-dd",
+      "width": 150,
+      "index": 9
+    },
+    {
+      "label": "备注",
+      "prop": "remark",
+      "index": 10,
+      "width": 120
+    }
+  ]
+}

+ 101 - 272
src/views/financialManagement/payment.vue

@@ -1,282 +1,121 @@
 <template>
-  <div>
-    <containerTitle title="基础信息"></containerTitle>
-    <basic-container>
-      <el-form :model="form" ref="form" label-width="130px">
-        <el-row>
-          <el-col v-for="(item, index) in basicData.column" :span="item.span?item.span:6" :key="index">
-            <el-form-item :label="item.label" :prop="item.prop" :rules="item.rules">
-              <el-date-picker v-if="item.type === 'datetime'" style="width: 100%;" v-model="form[item.prop]" size="small" type="datetime" placeholder="选择日期" value-format="yyyy-MM-dd HH:mm:ss"/>
-              <el-select v-else-if="item.type === 'select'" style="width: 100%" size="small" placeholder="请选择" clearable filterable></el-select>
-              <el-input type="age" v-else v-model="form[item.prop]" size="small" autocomplete="off" placeholder="请输入"></el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-      </el-form>
-    </basic-container>
-    <basic-container>
-      <avue-crud :option="option"
-                 :data="dataList"
-                 ref="crud"
-                 v-model="form"
-                 :page.sync="page"
-                 @search-reset="searchReset"
-                 @selection-change="selectionChange"
-                 @current-change="currentChange"
-                 @size-change="sizeChange"
-                 @refresh-change="refreshChange"
-                 @on-load="onLoad">
-        <template slot="menuLeft">
-          <el-button type="primary"
-                     size="small"
-                     icon="el-icon-arrow-right"
-                     plain
-                     @click="">选择采购合同
-          </el-button>
-          <el-button type="primary"
-                     size="small"
-                     plain
-                     @click="">保存
-          </el-button>
-          <el-button type="info"
-                     size="small"
-                     plain
-                     @click="">打印
-          </el-button>
-        </template>
-        <template slot="menuRight">
-          <el-button type="info"
-                     size="small"
-                     plain
-                     @click="">请核
-          </el-button>
-        </template>
-        <template slot-scope="scope" slot="menu">
-          <el-button
-            type="text"
-            icon="el-icon-view"
-            size="small"
-            @click.stop=""
-          >费用确认
-          </el-button>
-          <el-button
-            type="text"
-            icon="el-icon-edit"
-            size="small"
-            @click.stop=""
-          >移除数据
-          </el-button>
-        </template>
-      </avue-crud>
-    </basic-container>
-  </div>
+  <basic-container>
+    <avue-crud :option="option"
+               :data="dataList"
+               ref="crud"
+               v-model="form"
+               :page.sync="page"
+               :table-loading="loading"
+               @search-change="searchChange"
+               @search-reset="searchReset"
+               @selection-change="selectionChange"
+               @current-change="currentChange"
+               @size-change="sizeChange"
+               @refresh-change="refreshChange"
+               @on-load="onLoad">
+      <template slot="menuLeft">
+        <el-button type="primary"
+                   size="small"
+                   icon="el-icon-plus"
+                   @click="addReceipt">新 单
+        </el-button>
+        <el-button size="small"
+                   type="success"
+                   @click.stop=""
+        >复制新单
+        </el-button>
+        <el-button size="small"
+                   type="info"
+                   @click.stop="openReport()"
+        >导出报表
+        </el-button>
+      </template>
+      <template slot-scope="scope" slot="menu">
+        <el-button
+          type="text"
+          icon="el-icon-edit"
+          size="small"
+          @click.stop="editOpen(scope.row, scope.index)"
+        >编辑
+        </el-button>
+        <el-button
+          type="text"
+          icon="el-icon-delete"
+          size="small"
+          @click.stop="rowDel(scope.row, scope.index)"
+        >删除
+        </el-button>
+      </template>
+    </avue-crud>
+  </basic-container>
 </template>
 
 <script>
-  import option from "./configuration/mainList.json";
+  import option from "./configuration/paymentList.json";
+  import {getList ,remove} from "@/api/financialManagement/financialManagement"
 
   export default {
     data() {
       return {
+        loading : false,
         form: {},
         option: option,
         parentId:0,
-        dataList: [],
+        dataList: [{
+          canem:""
+        }],
         page: {
           pageSize: 10,
           pagerCount: 5,
           total: 0,
         },
-        query:{},
-        //顶部from数据
-        basicData: {
-          column: [
-            {
-              label: '系统号',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: false,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            }, {
-              label: '制单日期',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            }, {
-              label: '单据状态',
-              prop: 'orderNo',
-              data: [],
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            }, {
-              label: '制单人',
-              prop: 'orderNo',
-              data: [],
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            }, {
-              label: '供应商',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            }, {
-              label: '要求付款日期',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            }, {
-              label: '金额',
-              prop: 'orderNo',
-              type:'datetime',
-              data: [],
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            }, {
-              label: '银行户头',
-              prop: 'orderNo',
-              type:'datetime',
-              data: [],
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            }, {
-              label: '银行名称',
-              prop: 'orderNo',
-              type:'select',
-              data: [],
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            }, {
-              label: '银行账号',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            },
-            {
-              label: '币别',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            },
-            {
-              label: '汇率',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            },
-            {
-              label: '手续费',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            },
-            {
-              label: '实际付款日期',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            },
-            {
-              label: '合同号',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            },
-            {
-              label: '备注',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            },
-          ],
-        },
+        query:{}
       }
     },
     created() {
 
     },
     mounted() {
-      option.height = window.innerHeight - 640 ;
+      option.height = window.innerHeight - 350 ;
     },
     methods: {
+      //新单打开
+      addReceipt(){
+        this.$router.push({
+          path: "/payment_detailsPage",
+          query: {id: ''},
+        });
+      },
+      //编辑打开
+      editOpen(row, index){
+        this.$router.push({
+          path: "/payment_detailsPage",
+          query: {id:row.id},
+        });
+      },
+      rowDel(row, index, done) {
+        if(row.id){
+          this.$confirm("确定将选择数据删除?", {
+            confirmButtonText: "确定",
+            cancelButtonText: "取消",
+            type: "warning"
+          }).then(() => {
+            remove(row.id).then(res =>{
+              if(res.data.success){
+                this.$message.success("操作成功!");
+                this.onLoad(this.page);
+              }
+            })
+          });
+        }
+      },
+      //点击搜索按钮触发
+      searchChange(params, done) {
+        this.query = params;
+        this.page.currentPage = 1;
+        this.onLoad(this.page, params);
+        done()
+      },
       searchReset() {
         console.log('1')
       },
@@ -293,23 +132,13 @@
         console.log('1')
       },
       onLoad(page, params = {}) {
-        this.dataList = [
-          {
-            cname: "采购合同",
-            sort: "5000",
-            createTime: "次",
-            createUser:"12",
-            remark: "3000",
-          },
-          {
-            cname: "采购合同",
-            sort: "5000",
-            createTime: "次",
-            createUser:"12",
-            remark: "3000",
-          }
-        ];
-        this.page.total = 1;
+        params.billType = "付费"
+        this.loading = true
+        getList(page.currentPage, page.pageSize,params).then(res =>{
+          this.dataList = res.data.data.records
+          this.page.total = res.data.data.total
+          this.loading = false
+        })
       },
     }
   }

+ 380 - 0
src/views/financialManagement/paymentDetailsPage.vue

@@ -0,0 +1,380 @@
+<template>
+  <div class="borderless">
+    <div class="main-head">
+      <div class="main-back">
+        <el-button type="danger" style="border: none;background: none;color: red" icon="el-icon-arrow-left"
+                   @click="backToList">返回列表
+        </el-button>
+        <el-button type="success"
+                   class="el-button--small-yh add-customer-btn-two"
+                   @click.stop="addMainProject">复制新单
+        </el-button>
+        <el-button class="el-button--small-yh add-customer-btn" type="primary"
+                   @click.stop="editFinance"
+        >{{this.id?"确认修改" :"确认新增"}}
+        </el-button>
+      </div>
+    </div>
+    <div style="margin-top: 60px">
+      <containerTitle title="基础信息"></containerTitle>
+      <basic-container>
+        <el-form :model="form" ref="form" label-width="130px">
+          <el-row>
+            <el-col v-for="(item, index) in basicData.column" :span="item.span?item.span:8" :key="index">
+              <el-form-item :label="item.label" :prop="item.prop" :rules="item.rules">
+                <el-date-picker v-if="item.type === 'date'" style="width: 100%;" v-model="form[item.prop]" size="small" type="date" placeholder="选择日期" value-format="yyyy-MM-dd HH:mm:ss"/>
+                <el-select v-else-if="item.type === 'select'" style="width: 100%" size="small" placeholder="请选择" clearable filterable></el-select>
+                <selectComponent v-else-if="item.prop === 'corpId'" v-model="form[item.prop]" :configuration="configuration"/>
+                <el-input type="textarea" v-else-if="(item.prop === 'remark')" v-model="form[item.prop]"   size="small" autocomplete="off" placeholder="请输入"></el-input>
+                <el-input type="age" v-else v-model="form[item.prop]" size="small" autocomplete="off" placeholder="请输入"></el-input>
+              </el-form-item>
+            </el-col>
+          </el-row>
+        </el-form>
+      </basic-container>
+      <basic-container>
+        <avue-crud :option="option"
+                   :data="dataList"
+                   ref="crud"
+                   v-model="form"
+                   :page.sync="page"
+                   @search-reset="searchReset"
+                   @selection-change="selectionChange"
+                   @current-change="currentChange"
+                   @size-change="sizeChange"
+                   @refresh-change="refreshChange">
+          <template slot="menuLeft">
+            <el-button type="primary"
+                       size="small"
+                       icon="el-icon-shopping-cart-2"
+                       @click="">选择采购合同
+            </el-button>
+            <el-button
+              icon="el-icon-printer"
+              size="small"
+              type="primary"
+              @click.stop="openReport()"
+            >报 表
+            </el-button>
+          </template>
+          <template slot="menuRight">
+            <el-button type="info"
+                       size="small"
+                       @click="">请核
+            </el-button>
+          </template>
+          <template slot-scope="scope" slot="menu">
+            <el-button
+              type="text"
+              icon="el-icon-view"
+              size="small"
+              @click.stop=""
+            >费用确认
+            </el-button>
+            <el-button
+              type="text"
+              icon="el-icon-edit"
+              size="small"
+              @click.stop=""
+            >移除数据
+            </el-button>
+          </template>
+        </avue-crud>
+      </basic-container>
+    </div>
+  </div>
+</template>
+
+<script>
+  import option from "./configuration/detailsPage.json";
+  import { getDetail,editFinance } from "@/api/financialManagement/financialManagement"
+
+  export default {
+    data() {
+      return {
+        form: {},
+        option: option,
+        parentId:0,
+        id:"",
+        dataList: [],
+        page: {
+          pageSize: 10,
+          pagerCount: 5,
+          total: 0,
+        },
+        query:{},
+        //客户组件配置控制
+        configuration:{
+          multipleChoices:false,
+          multiple:false,
+          disabled:false,
+          searchShow:false,
+          collapseTags:false,
+          placeholder:'请点击右边按钮选择',
+          dicData:[]
+        },
+        //顶部from数据
+        basicData: {
+          column: [
+            {
+              label: '系统号',
+              prop: 'sysNo',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },{
+              label: '合同号',
+              prop: 'srcOrderno',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            }, {
+              label: '供应商',
+              prop: 'corpId',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },
+            {
+              label: '金额',
+              prop: 'amount',
+              data: [],
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            }, {
+              label: '币别',
+              prop: 'currency',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },
+            {
+              label: '汇率',
+              prop: 'exchangeRate',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },{
+              label: '银行名称',
+              prop: 'accountBank',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            }, {
+              label: '银行户头',
+              prop: 'accountName',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            }, {
+              label: '银行账号',
+              prop: 'accountNo',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },
+            {
+              label: '手续费',
+              prop: 'serviceCharge',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },
+            {
+              label: '要求付款日期',
+              prop: 'orderNo',
+              type:"date",
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            }, {
+              label: '实际付款日期',
+              prop: 'orderNo',
+              type:"date",
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },
+            {
+              label: '单据状态',
+              prop: 'financeStatus',
+              data: [],
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            }, {
+              label: '制单人',
+              prop: 'createUserName',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            }, {
+              label: '制单日期',
+              prop: 'createTime',
+              type:"date",
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },
+            {
+              label: '备注',
+              prop: 'remark',
+              span:24,
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },
+          ],
+        },
+      }
+    },
+    created() {
+      if (this.$route.query.id) {
+        this.id = BigInt(this.$route.query.id);//字符串转数字  超长用BigInt
+        getDetail(this.id).then(res => {
+          this.form = res.data.data;
+        })
+      }
+    },
+    mounted() {
+      option.height = window.innerHeight - 640 ;
+    },
+    methods: {
+      searchReset() {
+        console.log('1')
+      },
+      selectionChange() {
+        console.log('1')
+      },
+      currentChange() {
+        console.log('1')
+      },
+      sizeChange() {
+        console.log('1')
+      },
+      refreshChange() {
+        console.log('1')
+      },
+      editFinance(){
+        this.$refs["form"].validate((valid) => {
+          if(valid){
+            const params = {
+              ...this.form,
+              billType:"付费"
+            }
+            editFinance(params).then(res =>{
+              if(res.data.success){
+                this.$message.success("操作成功!")
+              }
+            })
+          }
+        })
+      },
+      backToList(){
+        this.$router.$avueRouter.closeTag();
+        this.$router.push({
+          path: '/financialManagement/payment',
+          query: {}
+        });
+      }
+    }
+  }
+</script>
+
+<style scoped>
+  ::v-deep .el-form-item {
+    margin-bottom: 0;
+  }
+  .main-head {
+    position: fixed;
+    top: 105px;
+    width: 100%;
+    margin-left: -10px;
+    height: 62px;
+    background: #ffffff;
+    box-shadow: 0 4px 12px 0px rgba(232, 232, 235, 1);
+    z-index: 999;
+  }
+  .main-back {
+    cursor: pointer;
+    line-height: 62px;
+    font-size: 16px;
+    color: #323233;
+    font-weight: 400;
+  }
+  .add-customer-btn-two {
+    position: fixed;
+    right: 150px;
+    top: 115px;
+  }
+  .add-customer-btn {
+    position: fixed;
+    right: 36px;
+    top: 115px;
+  }
+</style>

+ 101 - 250
src/views/financialManagement/receipt.vue

@@ -1,260 +1,121 @@
 <template>
-  <div>
-    <containerTitle title="基础信息"></containerTitle>
-    <basic-container>
-      <el-form :model="form" ref="form" label-width="130px">
-        <el-row>
-          <el-col v-for="(item, index) in basicData.column" :span="item.span?item.span:6" :key="index">
-            <el-form-item :label="item.label" :prop="item.prop" :rules="item.rules">
-              <el-date-picker v-if="item.type === 'datetime'" style="width: 100%;" v-model="form[item.prop]" size="small" type="datetime" placeholder="选择日期" value-format="yyyy-MM-dd HH:mm:ss"/>
-              <el-select v-else-if="item.type === 'select'" style="width: 100%" size="small" placeholder="请选择" clearable filterable></el-select>
-              <el-input type="age" v-else v-model="form[item.prop]" size="small" autocomplete="off" placeholder="请输入"></el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-      </el-form>
-    </basic-container>
-    <basic-container>
-      <avue-crud :option="option"
-                 :data="dataList"
-                 ref="crud"
-                 v-model="form"
-                 :page.sync="page"
-                 @search-reset="searchReset"
-                 @selection-change="selectionChange"
-                 @current-change="currentChange"
-                 @size-change="sizeChange"
-                 @refresh-change="refreshChange"
-                 @on-load="onLoad">
-        <template slot="menuLeft">
-          <el-button type="primary"
-                     size="small"
-                     icon="el-icon-arrow-right"
-                     plain
-                     @click="">选择销售合同
-          </el-button>
-          <el-button type="primary"
-                     size="small"
-                     plain
-                     @click="">保存
-          </el-button>
-          <el-button type="info"
-                     size="small"
-                     plain
-                     @click="">打印
-          </el-button>
-        </template>
-        <template slot="menuRight">
-          <el-button type="info"
-                     size="small"
-                     plain
-                     @click="">发送收款信息
-          </el-button>
-        </template>
-        <template slot-scope="scope" slot="menu">
-          <el-button
-            type="text"
-            icon="el-icon-view"
-            size="small"
-            @click.stop=""
-          >费用确认
-          </el-button>
-          <el-button
-            type="text"
-            icon="el-icon-edit"
-            size="small"
-            @click.stop=""
-          >移除数据
-          </el-button>
-        </template>
-      </avue-crud>
-    </basic-container>
-  </div>
+  <basic-container>
+    <avue-crud :option="option"
+               :data="dataList"
+               ref="crud"
+               v-model="form"
+               :page.sync="page"
+               :table-loading="loading"
+               @search-change="searchChange"
+               @search-reset="searchReset"
+               @selection-change="selectionChange"
+               @current-change="currentChange"
+               @size-change="sizeChange"
+               @refresh-change="refreshChange"
+               @on-load="onLoad">
+      <template slot="menuLeft">
+        <el-button type="primary"
+                   size="small"
+                   icon="el-icon-plus"
+                   @click="addReceipt">新 单
+        </el-button>
+        <el-button size="small"
+                   type="success"
+                   @click.stop=""
+        >复制新单
+        </el-button>
+        <el-button size="small"
+                   type="info"
+                   @click.stop="openReport()"
+        >导出报表
+        </el-button>
+      </template>
+      <template slot-scope="scope" slot="menu">
+        <el-button
+          type="text"
+          icon="el-icon-edit"
+          size="small"
+          @click.stop="editOpen(scope.row, scope.index)"
+        >编辑
+        </el-button>
+        <el-button
+          type="text"
+          icon="el-icon-delete"
+          size="small"
+          @click.stop="rowDel(scope.row, scope.index)"
+        >删除
+        </el-button>
+      </template>
+    </avue-crud>
+  </basic-container>
 </template>
 
 <script>
-  import option from "./configuration/mainList.json";
+  import option from "./configuration/receiptList.json";
+  import {getList ,remove} from "@/api/financialManagement/financialManagement"
 
   export default {
     data() {
       return {
+        loading : false,
         form: {},
         option: option,
         parentId:0,
-        dataList: [],
+        dataList: [{
+          canem:""
+        }],
         page: {
           pageSize: 10,
           pagerCount: 5,
           total: 0,
         },
-        query:{},
-        basicData: {
-          column: [
-            {
-              label: '系统号',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: false,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            }, {
-              label: '制单日期',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            }, {
-              label: '单据状态',
-              prop: 'orderNo',
-              data: [],
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            }, {
-              label: '制单人',
-              prop: 'orderNo',
-              data: [],
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            }, {
-              label: '客户名称',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            }, {
-              label: '收款日期',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            }, {
-              label: '金额',
-              prop: 'orderNo',
-              type:'datetime',
-              data: [],
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            },
-            {
-              label: '币别',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            },
-            {
-              label: '汇率',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            },
-            {
-              label: '银行户头',
-              prop: 'orderNo',
-              type:'datetime',
-              data: [],
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            }, {
-              label: '银行名称',
-              prop: 'orderNo',
-              type:'select',
-              data: [],
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            }, {
-              label: '银行账号',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            },
-            {
-              label: '合同号',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            },
-            {
-              label: '备注',
-              prop: 'orderNo',
-              rules: [
-                {
-                  required: true,
-                  message: ' ',
-                  trigger: 'blur'
-                }
-              ]
-            },
-          ],
-        },
+        query:{}
       }
     },
     created() {
 
     },
     mounted() {
-      option.height = window.innerHeight - 640 ;
+      option.height = window.innerHeight - 350 ;
     },
     methods: {
+      //新单打开
+      addReceipt(){
+        this.$router.push({
+          path: "/receipt_detailsPage",
+          query: {id: ''},
+        });
+      },
+      //编辑打开
+      editOpen(row, index){
+        this.$router.push({
+          path: "/receipt_detailsPage",
+          query: {id:row.id},
+        });
+      },
+      rowDel(row, index, done) {
+        if(row.id){
+          this.$confirm("确定将选择数据删除?", {
+            confirmButtonText: "确定",
+            cancelButtonText: "取消",
+            type: "warning"
+          }).then(() => {
+            remove(row.id).then(res =>{
+              if(res.data.success){
+                this.$message.success("操作成功!");
+                this.onLoad(this.page);
+              }
+            })
+          });
+        }
+      },
+      //点击搜索按钮触发
+      searchChange(params, done) {
+        this.query = params;
+        this.page.currentPage = 1;
+        this.onLoad(this.page, params);
+        done()
+      },
       searchReset() {
         console.log('1')
       },
@@ -271,23 +132,13 @@
         console.log('1')
       },
       onLoad(page, params = {}) {
-        this.dataList = [
-          {
-            cname: "销售合同",
-            sort: "5000",
-            createTime: "次",
-            createUser:"12",
-            remark: "3000",
-          },
-          {
-            cname: "销售合同",
-            sort: "5000",
-            createTime: "次",
-            createUser:"12",
-            remark: "3000",
-          }
-        ];
-        this.page.total = 1;
+        params.billType = "收费"
+        this.loading = true
+        getList(page.currentPage, page.pageSize,params).then(res =>{
+          this.dataList = res.data.data.records
+          this.page.total = res.data.data.total
+          this.loading = false
+        })
       },
     }
   }

+ 355 - 0
src/views/financialManagement/receiptDetailsPage.vue

@@ -0,0 +1,355 @@
+<template>
+  <div class="borderless">
+    <div class="main-head">
+      <div class="main-back">
+        <el-button type="danger" style="border: none;background: none;color: red" icon="el-icon-arrow-left"
+                   @click="backToList">返回列表
+        </el-button>
+        <el-button type="success"
+                   class="el-button--small-yh add-customer-btn-two"
+                   @click.stop="addMainProject">复制新单
+        </el-button>
+        <el-button class="el-button--small-yh add-customer-btn" type="primary"
+                   @click.stop="editFinance "
+        >{{this.id?"确认修改" :"确认新增"}}
+        </el-button>
+      </div>
+    </div>
+    <div style="margin-top: 60px">
+      <containerTitle title="基础信息"></containerTitle>
+      <basic-container>
+        <el-form :model="form" ref="form" label-width="130px">
+          <el-row>
+            <el-col v-for="(item, index) in basicData.column" :span="item.span?item.span:8" :key="index">
+              <el-form-item :label="item.label" :prop="item.prop" :rules="item.rules">
+                <el-date-picker v-if="item.type === 'date'" style="width: 100%;" v-model="form[item.prop]" size="small" type="date" placeholder="选择日期" value-format="yyyy-MM-dd HH:mm:ss"/>
+                <el-select v-else-if="item.type === 'select'" style="width: 100%" size="small" placeholder="请选择" clearable filterable></el-select>
+                <selectComponent v-else-if="item.prop === 'corpId'" v-model="form[item.prop]" :configuration="configuration"/>
+                <el-input type="textarea" v-else-if="(item.prop === 'remark')" v-model="form[item.prop]"   size="small" autocomplete="off" placeholder="请输入"></el-input>
+                <el-input type="age" v-else v-model="form[item.prop]" size="small" autocomplete="off" placeholder="请输入"></el-input>
+              </el-form-item>
+            </el-col>
+          </el-row>
+        </el-form>
+      </basic-container>
+      <basic-container>
+        <avue-crud :option="option"
+                   :data="dataList"
+                   ref="crud"
+                   v-model="form"
+                   :page.sync="page"
+                   @search-reset="searchReset"
+                   @selection-change="selectionChange"
+                   @current-change="currentChange"
+                   @size-change="sizeChange"
+                   @refresh-change="refreshChange">
+          <template slot="menuLeft">
+            <el-button type="primary"
+                       size="small"
+                       icon="el-icon-shopping-cart-2"
+                       @click="">选择销售合同
+            </el-button>
+            <el-button
+              icon="el-icon-printer"
+              size="small"
+              type="primary"
+              @click.stop="openReport()"
+            >报 表
+            </el-button>
+          </template>
+          <template slot="menuRight">
+            <el-button type="info"
+                       size="small"
+                       @click="">发送收款信息
+            </el-button>
+          </template>
+          <template slot-scope="scope" slot="menu">
+            <el-button
+              type="text"
+              icon="el-icon-view"
+              size="small"
+              @click.stop=""
+            >费用确认
+            </el-button>
+            <el-button
+              type="text"
+              icon="el-icon-edit"
+              size="small"
+              @click.stop=""
+            >移除数据
+            </el-button>
+          </template>
+        </avue-crud>
+      </basic-container>
+    </div>
+  </div>
+</template>
+
+<script>
+  import option from "./configuration/detailsPage.json";
+  import { getDetail,editFinance } from "@/api/financialManagement/financialManagement"
+
+  export default {
+    data() {
+      return {
+        form: {},
+        option: option,
+        id:'',
+        dataList: [],
+        page: {
+          pageSize: 10,
+          pagerCount: 5,
+          total: 0,
+        },
+        query:{},
+        //客户组件配置控制
+        configuration:{
+          multipleChoices:false,
+          multiple:false,
+          disabled:false,
+          searchShow:false,
+          collapseTags:false,
+          placeholder:'请点击右边按钮选择',
+          dicData:[]
+        },
+        basicData: {
+          column: [
+            {
+              label: '系统号',
+              prop: 'sysNo',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },  {
+              label: '合同号',
+              prop: 'srcOrderno',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            }, {
+              label: '客户名称',
+              prop: 'corpId',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },{
+              label: '制单人',
+              prop: 'createUserName',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },{
+              label: '制单日期',
+              prop: 'createTime',
+              type:'date',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            }, {
+              label: '收款日期',
+              prop: 'settlementDate',
+              type:'date',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            }, {
+              label: '金额',
+              prop: 'amount',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },
+            {
+              label: '币别',
+              prop: 'currency',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },
+            {
+              label: '汇率',
+              prop: 'exchangeRate',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },
+            {
+              label: '银行名称',
+              prop: 'accountBank',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },
+            {
+              label: '银行户头',
+              prop: 'accountName',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            }, {
+              label: '银行账号',
+              prop: 'accountNo',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            }, {
+              label: '单据状态',
+              prop: 'financeStatus',
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },
+            {
+              label: '备注',
+              prop: 'remark',
+              span:24,
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },
+          ],
+        },
+      }
+    },
+    created() {
+      if (this.$route.query.id) {
+        this.id = BigInt(this.$route.query.id);//字符串转数字  超长用BigInt
+        getDetail(this.id).then(res => {
+          this.form = res.data.data;
+          // dataList
+        })
+      }
+    },
+    mounted() {
+      option.height = window.innerHeight - 640 ;
+    },
+    methods: {
+      searchReset() {
+        console.log('1')
+      },
+      selectionChange() {
+        console.log('1')
+      },
+      currentChange() {
+        console.log('1')
+      },
+      sizeChange() {
+        console.log('1')
+      },
+      refreshChange() {
+        console.log('1')
+      },
+      editFinance(){
+        this.$refs["form"].validate((valid) => {
+          if(valid){
+            const params = {
+              ...this.form,
+              billType:"收费"
+            }
+            editFinance(params).then(res =>{
+              if(res.data.success){
+                this.$message.success("操作成功!")
+              }
+            })
+          }
+        })
+      },
+      backToList(){
+        this.$router.$avueRouter.closeTag();
+        this.$router.push({
+          path: '/financialManagement/receipt',
+          query: {}
+        });
+      }
+    }
+  }
+</script>
+
+<style scoped>
+  ::v-deep .el-form-item {
+    margin-bottom: 0;
+  }
+  .main-head {
+    position: fixed;
+    top: 105px;
+    width: 100%;
+    margin-left: -10px;
+    height: 62px;
+    background: #ffffff;
+    box-shadow: 0 4px 12px 0px rgba(232, 232, 235, 1);
+    z-index: 999;
+  }
+  .main-back {
+    cursor: pointer;
+    line-height: 62px;
+    font-size: 16px;
+    color: #323233;
+    font-weight: 400;
+  }
+  .add-customer-btn-two {
+    position: fixed;
+    right: 150px;
+    top: 115px;
+  }
+  .add-customer-btn {
+    position: fixed;
+    right: 36px;
+    top: 115px;
+  }
+</style>

+ 51 - 2
src/views/importTrade/invoice/detailsPageEdit.vue

@@ -2,7 +2,6 @@
   <div class="borderless">
     <div class="customer-head">
       <div class="customer-back">
-        <!--        <i class="back-icon el-icon-arrow-left"></i><i style="font-style:normal">返回管理列表</i>-->
         <el-button type="danger" style="border: none;background: none;color: red" icon="el-icon-arrow-left"
                    @click="backToList">返回列表
         </el-button>
@@ -22,7 +21,6 @@
           <el-row>
             <el-col v-for="(item,index) in basicData.column" :key="index" :span="item.span?item.span:8">
               <el-form-item :label="item.label" :prop="item.prop" :rules="item.rules">
-                <!--                <avue-input-tree v-if="item.prop === 'corpsTypeId'" leaf-only multiple :props="{label:'title'}"v-model="form[item.prop]" placeholder="请选择内容" type="tree" :dic="dic"/>-->
                 <el-date-picker v-if="item.type === 'datetime'" style="width: 100%;" v-model="form[item.prop]" size="small" type="datetime" placeholder="选择日期" value-format="yyyy-MM-dd HH:mm:ss"/>
                 <el-select v-else-if="item.type === 'select'" style="width: 100%" v-model="form[item.prop]" size="small" placeholder="请选择" clearable filterable>
                   <el-option
@@ -71,6 +69,17 @@
             </template>
           </avue-crud>
         </basic-container>
+        <containerTitle title="附件上传"></containerTitle>
+        <basic-container style="margin-bottom: 40px">
+          <avue-crud
+            :option="upLoadOption"
+            v-model="upLoadForm"
+            :data="upLoadData"
+            @row-save="upLoadSave"
+            @row-update="upLoadUpdate"
+            @row-del="upLoadDel"
+          ></avue-crud>
+        </basic-container>
       </el-form>
     </div>
 
@@ -131,6 +140,7 @@ import {
   corpsitem,
   getList
 } from "@/api/basicData/deliveryNotice"
+import upLoadOption from "../../exportTrade/purchaseContract/config/uploadList.json";
 
 export default {
   name: "detailsPageEdit",
@@ -242,6 +252,10 @@ export default {
           }
         ]
       },
+      //上传文件
+      upLoadOption: upLoadOption,
+      upLoadData:[],
+      upLoadForm:{},
       dialogVisible: false,
       treeOption: {
         nodeKey: 'id',
@@ -359,6 +373,41 @@ export default {
         }
       });
     },
+    //上传文件保存
+    upLoadSave(row, done, loading){
+      this.upLoadData.push(row)
+      done()
+    },
+    //修改附件上传触发
+    upLoadUpdate(row, done){
+      done(row);
+    },
+    //删除附件上传触发
+    upLoadDel(row, index,){
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(() => {
+        if (row.id){
+          corpsbank(row.id).then(res=>{
+            if(res.data.success){
+              this.$message({
+                type: "success",
+                message: "操作成功!"
+              });
+              this.bankOfDepositData.splice(index, 1);
+            }
+          })
+        }else {
+          this.$message({
+            type: "success",
+            message: "操作成功!"
+          });
+          this.bankOfDepositData.splice(index, 1);
+        }
+      })
+    },
     //点击商品明细选择触发
     commodityChoice(row) {
       this.dialogVisible = !this.dialogVisible

+ 51 - 0
src/views/importTrade/receipt/detailsPageEdit.vue

@@ -70,6 +70,17 @@
             </template>
           </avue-crud>
         </basic-container>
+        <containerTitle title="附件上传"></containerTitle>
+        <basic-container style="margin-bottom: 40px">
+          <avue-crud
+            :option="upLoadOption"
+            v-model="upLoadForm"
+            :data="upLoadData"
+            @row-save="upLoadSave"
+            @row-update="upLoadUpdate"
+            @row-del="upLoadDel"
+          ></avue-crud>
+        </basic-container>
       </el-form>
     </div>
 
@@ -125,6 +136,7 @@ import {detailReceiptList,
 import {
   getList
 } from "@/api/basicData/deliveryNotice"
+import upLoadOption from "../../exportTrade/purchaseContract/config/uploadList.json";
 
 export default {
   name: "detailsPageEdit",
@@ -234,6 +246,10 @@ export default {
           }
         ]
       },
+      //上传文件
+      upLoadOption: upLoadOption,
+      upLoadData:[],
+      upLoadForm:{},
       dialogVisible: false,
       treeOption: {
         nodeKey: 'id',
@@ -346,6 +362,41 @@ export default {
         }
       });
     },
+    //上传文件保存
+    upLoadSave(row, done, loading){
+      this.upLoadData.push(row)
+      done()
+    },
+    //修改附件上传触发
+    upLoadUpdate(row, done){
+      done(row);
+    },
+    //删除附件上传触发
+    upLoadDel(row, index,){
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(() => {
+        if (row.id){
+          corpsbank(row.id).then(res=>{
+            if(res.data.success){
+              this.$message({
+                type: "success",
+                message: "操作成功!"
+              });
+              this.bankOfDepositData.splice(index, 1);
+            }
+          })
+        }else {
+          this.$message({
+            type: "success",
+            message: "操作成功!"
+          });
+          this.bankOfDepositData.splice(index, 1);
+        }
+      })
+    },
     //点击商品明细选择触发
     commodityChoice(row) {
       this.dialogVisible = !this.dialogVisible

+ 15 - 1
src/views/purchase/contract/detailsPage.vue

@@ -46,6 +46,7 @@
             :data="contactsData"
             ref="crudContact"
             @row-save="rowSave"
+            @selection-change="selectionContact"
             @row-click="handleRowClick"
             @row-update="rowUpdate"
             @row-del="rowDel"
@@ -71,6 +72,17 @@
                          @click=""
               >申请付款(开证)
               </el-button>
+              <el-button type="primary"
+                         size="small"
+                         @click=""
+              >查看申请记录
+              </el-button>
+              <el-button type="primary"
+                         size="small"
+
+                         @click=""
+              >收货单
+              </el-button>
             </template>
           </avue-crud>
         </basic-container>
@@ -575,7 +587,6 @@ export default {
       let id = this.$route.query.id.replace(/\"/g, "")
       detailListData(id).then(res => {
         this.form = res.data.data;
-        console.log(res)
         if(res.data.data.itemsVOList){
           this.contactsData = res.data.data.itemsVOList
         }
@@ -613,6 +624,9 @@ export default {
         }
       });
     },
+    selectionContact(row){
+      this.selectcontact = row;
+    },
     //新增商品明细保存触发
     rowSave(row, done, loading) {
       // this.contactsData.push(row)

+ 13 - 1
src/views/purchase/contract/index.vue

@@ -33,6 +33,18 @@
           <el-table-column  label="是否到货" prop="isArrival" align="center" show-overflow-tooltip width="200"></el-table-column>
         </el-table>
       </template>
+      <template slot="menuLeft">
+        <el-button size="small"
+                   type="success"
+                   @click.stop=""
+        >复制新单
+        </el-button>
+        <el-button size="small"
+                   type="info"
+                   @click.stop="openReport()"
+        >报表
+        </el-button>
+      </template>
       <template slot-scope="scope" slot="menu">
         <el-button
           type="text"
@@ -218,7 +230,7 @@ export default {
     expandChange(row, expendList) {
       if(row.hasItem){
         getItemByPid(row.id).then(res =>{
-          this.dataList[0].insideList = res.data.data;
+          this.dataList[row.$index].insideList = res.data.data;
           row.loading = false
         })
       }else{

+ 16 - 14
src/views/salesManagement/salesContract/index.vue

@@ -21,18 +21,18 @@
       <template slot-scope="{row,size}" slot="search">
       </template>
       <template slot-scope="scope" slot="expand">
-        <el-table
-          :data="scope.row.insideList"
-          v-loading="scope.row.loading"
-        >
-          <el-table-column  label="提单号" prop="billNO" align="center" show-overflow-tooltip width="100"></el-table-column>
-          <el-table-column  label="货物名称" prop="cname" align="center" show-overflow-tooltip width="100"></el-table-column>
-          <el-table-column  label="件数" prop="actualQuantity" align="center" show-overflow-tooltip width="100"></el-table-column>
-          <el-table-column  label="销售价格" prop="price" align="center" show-overflow-tooltip width="100"></el-table-column>
-          <el-table-column  label="销售数量" prop="actualQuantity" align="center" show-overflow-tooltip width="100"></el-table-column>
-          <el-table-column  label="码单数量" prop="billWeight" align="center" show-overflow-tooltip width="100"></el-table-column>
-          <el-table-column  label="是否发货" prop="isSend" align="center" show-overflow-tooltip width="100"></el-table-column>
-          <el-table-column  label="付款金额" prop="amount" align="center" show-overflow-tooltip width="100"></el-table-column>
+        <el-table :data="scope.row.insideList" v-loading="scope.row.loading">
+          <el-table-column   align="center"  width="60"></el-table-column>
+          <el-table-column   type="selection" align="center"  width="50"></el-table-column>
+          <el-table-column  label="序号" type="index" align="center"  width="50"></el-table-column>
+          <el-table-column  label="提单号" prop="billNO" align="center" show-overflow-tooltip width="150"></el-table-column>
+          <el-table-column  label="货物名称" prop="cname" align="center" show-overflow-tooltip width="150"></el-table-column>
+          <el-table-column  label="件数" prop="actualQuantity" align="center" show-overflow-tooltip width="120"></el-table-column>
+          <el-table-column  label="销售价格" prop="price" align="center" show-overflow-tooltip width="150"></el-table-column>
+          <el-table-column  label="销售数量" prop="actualQuantity" align="center" show-overflow-tooltip width="120"></el-table-column>
+          <el-table-column  label="码单数量" prop="billWeight" align="center" show-overflow-tooltip width="120"></el-table-column>
+          <el-table-column  label="是否发货" prop="isSend" align="center" show-overflow-tooltip width="120"></el-table-column>
+          <el-table-column  label="付款金额" prop="amount" align="center" show-overflow-tooltip width="150"></el-table-column>
         </el-table>
       </template>
       <template slot-scope="scope" slot="menu">
@@ -204,7 +204,7 @@ export default {
     expandChange(row, expendList) {
       if (row.loading == true) {
         detailSaleList(row.id).then(res => {
-          row.dataList = res.data.data.orderItemsList
+          row.insideList = res.data.data.orderItemsList
           row.loading = false;
         })
       }
@@ -214,5 +214,7 @@ export default {
 </script>
 
 <style scoped>
-
+  ::v-deep .el-table__expanded-cell{
+    padding: 0 !important;
+  }
 </style>

+ 5 - 4
vue.config.js

@@ -26,10 +26,11 @@ module.exports = {
     proxy: {
       '/api': {
         //本地服务接口地址
-        target: 'http://192.168.1.177:1080',
-        // 打包地址
-        // target: 'http://121.37.83.47:10004',//服务器ip
-        // target: 'http://trade.tubaosoft.com:10004',//服务器域名    
+        // target: 'http://192.168.1.177:1080',
+        // target: 'http://192.168.1.151:1080',
+        // 打包地址.
+        target: 'http://121.37.83.47:10004',//服务器ip
+        // target: 'http://trade.tubaosoft.com:10004',//服务器域名
         ws: true,
         pathRewrite: {
           '^/api': '/'