gjy 3 年之前
父節點
當前提交
6da2b772b1
共有 27 個文件被更改,包括 3069 次插入1515 次删除
  1. 167 31
      public/static/weightCheck.html
  2. 29 19
      public/static/weightCheckInOut.html
  3. 1 13
      src/api/V2/contract/index.js
  4. 18 0
      src/api/V2/profitable/index.js
  5. 11 2
      src/lang/zh.js
  6. 0 1
      src/layout/index/top/index.vue
  7. 1 19
      src/model/contarct/index.js
  8. 31 0
      src/model/profitable/index.js
  9. 0 31
      src/views/contractManagement/component/routers/route.js
  10. 2 13
      src/views/contractManagement/purchaseContract.vue
  11. 5 73
      src/views/contractManagement/purchaseContractAdd.vue
  12. 8 6
      src/views/contractManagement/purchaseContractCost.vue
  13. 2 15
      src/views/contractManagement/salesContract.vue
  14. 10 74
      src/views/contractManagement/salesContractAdd.vue
  15. 7 6
      src/views/contractManagement/salesContractCost.vue
  16. 17 4
      src/views/houseSelfCollect/paymentManagement.vue
  17. 179 8
      src/views/houseSelfCollect/weighingManagement.vue
  18. 64 0
      src/views/profitable/component/routers/route.js
  19. 706 0
      src/views/profitable/contractOtherMoney.vue
  20. 359 0
      src/views/profitable/earningsLook.vue
  21. 238 0
      src/views/profitable/inOutDetailed.vue
  22. 39 45
      src/views/tradeServicesManagement/inOutRecord.vue
  23. 42 21
      src/views/tradeServicesManagement/warehouseReceiptAdd.vue
  24. 3 3
      src/views/tradeServicesManagement/warehouseReceiptLook.vue
  25. 0 1
      src/views/tranManagement/tranManagementVehicle.vue
  26. 7 2
      src/views/warehouse/warehouseManagementGross.vue
  27. 1123 1128
      src/views/warehousenew/warehouseManagementRecord.vue

+ 167 - 31
public/static/weightCheck.html

@@ -10,7 +10,10 @@
       table tr td {
         border: 2px solid #333333;
         padding: 5px 0;
-        height: 43px;
+        height: 37px;
+      }
+      body{
+        margin: 0;
       }
 
       #app {
@@ -22,7 +25,8 @@
         width: 1000px;
         padding: 30px 20px 20px 20px;
         font-size: 18px;
-        height: 660px;
+        height: 570px;
+         position: relative;
       }
 
       .a5-content {
@@ -50,12 +54,13 @@
         display: flex;
       }
 
-      img,.left{
+      img,
+      .left {
         width: 120px;
         height: 120px;
         position: absolute;
-        right: 20px;
-        top: 12px;
+           left: 12px;
+           top: 10px;
       }
 
       .config {
@@ -77,6 +82,7 @@
         font-size: 36px;
         font-weight: 500;
         position: relative;
+        /* margin-top: 47px; */
       }
 
       .number {
@@ -109,10 +115,12 @@
         justify-content: space-between;
         align-items: center;
       }
-       .numberNo{
-          font-size: 36px;
-          margin: auto;
-        }
+
+      .numberNo {
+        font-size: 36px;
+        margin: auto;
+      }
+
       .small-row {
         display: flex;
         justify-content: space-between;
@@ -126,18 +134,19 @@
       .sign {
         margin-right: 100px;
       }
-      .small-code{
+
+      .small-code {
         position: relative;
-        left:calc(50% - 55px)
+        left: calc(50% - 55px)
       }
     </style>
   </head>
   <body>
     <div id="app">
       <div v-if="selectPrint">
-        <div v-for="(item,index) in tableData1" :key="index">
+        <div v-for="(item,index) in tableData1" :key="index" v-if="!isDDPrint||isEWPrint">
           <div class="content" :class="pageType=='A5'?'a5-content':''">
-            <div class="title">{{item.compName}}</div>
+            <!-- <div class="title">{{item.compName}}</div> -->
             <div class="title">入库检斤单</div>
             <div class="left">
               <img :src="item.codeUrl" alt="">
@@ -166,27 +175,131 @@
                 <td class="col col-bgc">类型</td>
                 <td class="col">{{item.type}}</td>
                 <td class="col col-bgc">容量(克/升)</td>
-                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.bulkDensity:''}}</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.bulkDensity:''}}
+                </td>
                 <td class="col col-bgc">不完善粒(%)</td>
-                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.imperfectGrain:''}}</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.imperfectGrain:''}}
+                </td>
               </tr>
               <tr class="row">
                 <td class="col col-bgc">等级</td>
                 <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.grade:''}}</td>
                 <td class="col col-bgc">水分(%)</td>
-                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.waterContent:''}}</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.waterContent:''}}
+                </td>
                 <td class="col col-bgc">热损伤(%)</td>
                 <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.jiaorenli:''}}</td>
                 <td class="col col-bgc">质检时间</td>
-                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.qualityDate:''}}</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.qualityDate:''}}
+                </td>
               </tr>
               <tr class="row">
                 <td class="col col-bgc">杂质(%)</td>
                 <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.impurity:''}}</td>
                 <td class="col col-bgc">霉变粒(%)</td>
-                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.mildewGrain:''}}</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.mildewGrain:''}}
+                </td>
                 <td class="col col-bgc">扣杂</td>
-                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.buckleMiscellaneous:''}}</td>
+                <td class="col">
+                  {{item.qualityInspectionManagement?item.qualityInspectionManagement.buckleMiscellaneous:''}}</td>
+                <td class="col " colspan="2"></td>
+              </tr>
+              <tr class="row">
+                <td class="col col-bgc">毛重(公斤)</td>
+                <td class="col">{{item.grossWeight}}</td>
+                <td class="col col-bgc">皮重(公斤)</td>
+                <td class="col">{{item.tare}}</td>
+                <td class="col col-bgc">扣重(公斤)</td>
+                <td class="col">{{item.buckleMiscellaneous}}</td>
+                <td class="col col-bgc">净重(公斤)</td>
+                <td class="col">{{item.netWeight}}</td>
+                <!-- <td class="col " colspan="2"></td> -->
+
+              </tr>
+              <tr class="row">
+                <td class="col col-bgc" colspan="2">毛重检斤时间</td>
+                <td class="col" colspan="2">{{item.grossDate}}</td>
+                <td class="col col-bgc" colspan="2"> 皮重检斤时间</td>
+                <td class="col" colspan="2">{{item.tareDate}}</td>
+              </tr>
+            </table>
+            <div class="bottom">
+              <div class="bottom-row1">
+                <div>毛检:{{item.secretaryWeigher}}</div>
+                <div style="margin-left:60px">皮检:{{item.skinInspector}}</div>
+                <!-- <div>{{tableData.qualityDate}}</div> -->
+              </div>
+              <div class="bottom-row2">
+                <!-- <div class="left">
+                <img :src="item.codeUrl" alt="">
+              </div> -->
+                <div class="config">收货单位签名或盖章:</div>
+                <div class="autograph">客户签名:</div>
+                <div class="autograph">司机签名:</div>
+              </div>
+              <!-- <div class="bottom-row3">扫一扫</div> -->
+            </div>
+          </div>
+        </div>
+        <!-- 打印额外 -->
+        <div v-for="(item,index) in tableDataEW" :key="index" v-if="isDDPrint||isEWPrint">
+          <div class="content" :class="pageType=='A5'?'a5-content':''">
+            <!-- <div class="title">{{item.customer}}</div> -->
+            <div class="title">入库检斤单</div>
+            <div class="left">
+              <img :src="item.codeUrl" alt="">
+            </div>
+            <div class="number">{{item.number}}</div>
+            <table class="table">
+              <tr class="row">
+                <td class="col col-bgc">客户姓名</td>
+                <td class="col" colspan="2">{{item.customer}}</td>
+                <td class="col col-bgc">客户电话</td>
+                <td class="col">{{item.customerPhone}}</td>
+                <td class="col col-bgc">车牌号</td>
+                <td class="col" colspan="2">{{item.carNumber}}</td>
+              </tr>
+              <tr class="row">
+                <td class="col col-bgc">收货单位</td>
+                <td class="col" colspan="2">{{item.compName}}</td>
+                <td class="col col-bgc">联系人</td>
+                <td class="col">{{item.person}}</td>
+                <td class="col col-bgc">联系电话</td>
+                <td class="col" colspan="2">{{item.personPhone}}</td>
+              </tr>
+              <tr class="row">
+                <td class="col col-bgc">货名</td>
+                <td class="col">{{item.goodsName}}</td>
+                <td class="col col-bgc">类型</td>
+                <td class="col">{{item.type}}</td>
+                <td class="col col-bgc">容量(克/升)</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.bulkDensity:''}}
+                </td>
+                <td class="col col-bgc">不完善粒(%)</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.imperfectGrain:''}}
+                </td>
+              </tr>
+              <tr class="row">
+                <td class="col col-bgc">等级</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.grade:''}}</td>
+                <td class="col col-bgc">水分(%)</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.waterContent:''}}
+                </td>
+                <td class="col col-bgc">热损伤(%)</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.jiaorenli:''}}</td>
+                <td class="col col-bgc">质检时间</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.qualityDate:''}}
+                </td>
+              </tr>
+              <tr class="row">
+                <td class="col col-bgc">杂质(%)</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.impurity:''}}</td>
+                <td class="col col-bgc">霉变粒(%)</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.mildewGrain:''}}
+                </td>
+                <td class="col col-bgc">扣杂</td>
+                <td class="col">
+                  {{item.qualityInspectionManagement?item.qualityInspectionManagement.buckleMiscellaneous:''}}</td>
                 <td class="col " colspan="2"></td>
               </tr>
               <tr class="row">
@@ -259,27 +372,37 @@
               <td class="col col-bgc">类型</td>
               <td class="col">{{tableData.type}}</td>
               <td class="col col-bgc">容量(克/升)</td>
-              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.bulkDensity:''}}</td>
+              <td class="col">
+                {{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.bulkDensity:''}}</td>
               <td class="col col-bgc">不完善粒(%)</td>
-              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.imperfectGrain:''}}</td>
+              <td class="col">
+                {{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.imperfectGrain:''}}</td>
             </tr>
             <tr class="row">
               <td class="col col-bgc">等级</td>
-              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.grade:''}}</td>
+              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.grade:''}}
+              </td>
               <td class="col col-bgc">水分(%)</td>
-              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.waterContent:''}}</td>
+              <td class="col">
+                {{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.waterContent:''}}</td>
               <td class="col col-bgc">热损伤(%)</td>
-              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.jiaorenli:''}}</td>
+              <td class="col">
+                {{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.jiaorenli:''}}</td>
               <td class="col col-bgc">质检时间</td>
-              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.qualityDate:''}}</td>
+              <td class="col">
+                {{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.qualityDate:''}}</td>
             </tr>
             <tr class="row">
               <td class="col col-bgc">杂质(%)</td>
-              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.impurity:''}}</td>
+              <td class="col">
+                {{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.impurity:''}}</td>
               <td class="col col-bgc">霉变粒(%)</td>
-              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.mildewGrain:''}}</td>
+              <td class="col">
+                {{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.mildewGrain:''}}</td>
               <td class="col col-bgc">扣杂</td>
-              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.buckleMiscellaneous:''}}</td>
+              <td class="col">
+                {{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.buckleMiscellaneous:''}}
+              </td>
               <td class="col " colspan="2"></td>
             </tr>
             <tr class="row">
@@ -322,7 +445,7 @@
 
       <div class="small-content" v-if="smallContent">
         <div class="small-title">
-          <div  class="numberNo">{{tableData.number.substring(tableData.number.length - 3)}}</div>
+          <div class="numberNo">{{tableData.number.substring(tableData.number.length - 3)}}</div>
           <div style="margin: auto;">粮食检斤单</div>
         </div>
         <img :src="tableData.codeUrl" alt="" class="small-code">
@@ -334,7 +457,7 @@
           <div>客户姓名</div>
           <div>{{tableData.customer}}</div>
         </div>
-         <div class="small-row">
+        <div class="small-row">
           <div>客户身份证:</div>
           <div>{{tableData.customerNumberCard}}</div>
         </div>
@@ -411,11 +534,14 @@
           // qualityInspectionManagement:{}
         },
         tableData1: [],
+        tableDataEW: [],
         selectPrint: false,
         name: "",
         bigContent: false,
         smallContent: false,
-        pageType: ''
+        pageType: '',
+        isDDPrint:false,
+         isEWPrint:false,
       },
       computed: {},
       methods: {
@@ -447,6 +573,8 @@
       mounted() {
         let _data = decodeURIComponent(this.getQueryVariable("tableData"))
         let _type = decodeURIComponent(this.getQueryVariable("type"))
+        let _ew = decodeURIComponent(this.getQueryVariable("selectEW"))
+        let _ewdd = decodeURIComponent(this.getQueryVariable("selectEWDD"))
         this.pageType = decodeURIComponent(this.getQueryVariable("radioType"))
         if (_type == 2) {
           this.bigContent = true
@@ -458,6 +586,14 @@
         if (_data == 'false') {
           this.selectPrint = true;
           this.tableData1 = JSON.parse(localStorage.getItem('selectPrint_jjSelectPrintList'))
+          if(_ew== 'true'){
+             this.tableDataEW = JSON.parse(localStorage.getItem('selectPrint_EWjjSelectPrintList'))
+               this.isEWPrint = true
+          }
+          if(_ewdd== 'true'){
+             this.tableDataEW = JSON.parse(localStorage.getItem('selectPrint_EWjjSelectPrintList'))
+            this.isDDPrint = true
+          }
         } else {
           this.tableData = JSON.parse(_data)
           console.log(this.tableData)

+ 29 - 19
public/static/weightCheckInOut.html

@@ -47,7 +47,7 @@
       }
 
       .bottom-row2 {
-        display: flex;
+        display: flex;margin-top: 5px 0;
       }
 
       img {
@@ -58,13 +58,16 @@
 
       .config {
         margin-top: 10px;
-        margin-right: 240px;
       }
 
       .autograph {
         margin-top: 10px;
+        margin-left: 180px;
+      }
+      .autograph1 {
+        margin-top: 10px;
+        margin-left: 200px;
       }
-
       .bottom-row3 {
         margin: 10px 0;
       }
@@ -81,7 +84,11 @@
         margin-bottom: 10px;
         margin-top: 20px;
       }
-
+      .number {
+        text-align: right;
+        margin-bottom: 10px;
+        margin-top: 20px;
+      }
       .small-row {
         display: flex;
       }
@@ -126,14 +133,15 @@
   <body>
     <div id="app">
       <div class="content" v-if="true">
-        <div v-if="tableData.inOutFlag == '2'" class="title">{{tableData.companyName}}</div>
-        <div v-else class="title">
-          {{tableData.contractManagementInfo?tableData.contractManagementInfo.seller:tableData.companyName}}</div>
+        <!--<div v-if="tableData.inOutFlag == '2'" class="title">{{tableData.companyName}}</div>
+         <div v-else class="title">
+          {{tableData.contractManagementInfo?tableData.contractManagementInfo.seller:tableData.companyName}}</div> -->
         <div v-if="tableData.inOutFlag == '2'" class="title">入库检斤单</div>
         <div v-else class="title">出库检斤单</div>
+        <div class="number">{{tableData.contractManagementInfo?tableData.contractManagementInfo.contractNo:''}}</div>
         <table class="table">
           <tr class="row">
-            <td class="col col-bgc">货单位</td>
+            <td class="col col-bgc">货单位</td>
             <td class="col" colspan="4">
               {{tableData.contractManagementInfo?tableData.contractManagementInfo.seller:tableData.warehouseName}}</td>
             <td class="col col-bgc">车牌号</td>
@@ -152,28 +160,30 @@
             <td class="col" colspan="1">{{tableData.updateDate}}</td>
           </tr>
           <tr class="row">
-            <td class="col col-bgc">毛重(吨)</td>
-            <td class="col">{{tableData.grossWeight}}</td>
-            <td class="col col-bgc">皮重(吨)</td>
-            <td class="col">{{tableData.tare}}</td>
-            <td class="col col-bgc">扣重(吨)</td>
-            <td class="col">{{tableData.deductionWeight ? tableData.deductionWeight : '0'}}</td>
+            <td class="col col-bgc" colspan="2">毛重(吨)</td>
+            <td class="col" colspan="2">{{tableData.grossWeight}}</td>
+            <td class="col col-bgc" colspan="2">皮重(吨)</td>
+            <td class="col" colspan="3">{{tableData.tare}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc" colspan="2">扣重(吨)</td>
+            <td class="col"colspan="2" >{{tableData.deductionWeight ? tableData.deductionWeight : '0'}}</td>
             <td class="col col-bgc" colspan="2">净重(吨)</td>
-            <td class="col">{{tableData.netWeight}}</td>
+            <td class="col" colspan="3">{{tableData.netWeight}}</td>
           </tr>
         </table>
         <div class="bottom">
           <div class="bottom-row1">
-            <div>检斤员:{{tableData.backOffice}}</div>
+            <div class="config" >检斤员:{{tableData.backOffice}}</div>
           </div>
           <div class="bottom-row2">
             <div class="config">收货单位签名或盖章:</div>
             <div class="autograph">客户签名:</div>
-          </div>
-          <div v-if='tableData.inOutType!="移库入库"&&tableData.inOutType!="移库出库"' class="bottom-row2">
-            <div style='color:transparent;' class="config">收货单位签名或盖章:</div>
             <div class="autograph">司机签名:</div>
           </div>
+          <!-- <div v-if='tableData.inOutType!="移库入库"&&tableData.inOutType!="移库出库"' class="bottom-row2">
+            <div style='color:transparent;' class="config">收货单位签名或盖章:</div>
+          </div> -->
         </div>
       </div>
     </div>

+ 1 - 13
src/api/V2/contract/index.js

@@ -99,16 +99,4 @@ export const API_GET_FEERECORD = '/storageFeeRecordCharge/feeRecord'
 export const API_POST_STOP = '/storageFeeRecord/editInfo'
 
 // 代储费导出
-export const API_POST_STORAGEFEERECORDEXPORT = '/storageFeeRecord/export'
-// 合同费用列表
-export const API_CONTRACTCOST = '/contractCostInfo/selectInfo'
-// 合同编号
-export const API_GET_CONTRACT ='/warehouseBaseInfo/selectContractNoList'
-// 请款收款
-export const API_ADD_CONTRACT ='/contractCostInfo/api/addInfo'
-// 编辑请款收款
-export const API_EDIT_CONTRACT ='/contractCostInfo/editInfo'
-// 删除请款收款
-export const API_DELETE_CONTRACT ='/contractCostInfo/deleteInfo'
-// 付款
-export const API_PAYMENT ='/contractCostInfo/payment'
+export const API_POST_STORAGEFEERECORDEXPORT = '/storageFeeRecord/export'

+ 18 - 0
src/api/V2/profitable/index.js

@@ -0,0 +1,18 @@
+//收支明细
+export const API_GET_INOUTDETAILED = '/reveExpeInfo/selectReveExpe'
+//合同外费用
+export const API_GET_OUTMONEY = '/nonContractExpenses/selectInfo'
+//请款
+export const API_POST_PLEASEMONEY = '/nonContractExpenses/api/addInfo'
+//付款
+export const API_POST_PAYMENT = '/nonContractExpenses/payment'
+//删除
+export const API_POST_DELDATA = '/nonContractExpenses/deleteInfo'
+//编辑
+export const API_POST_EDITINFO = '/nonContractExpenses/editInfo'
+//查看
+export const API_GET_LOOKINFO = '/nonContractExpenses/getInfo'
+//审核
+export const API_POST_WORKFLOW_API_HANDLE = '/workflow/api/handle'
+//审核记录
+export const API_POST_AUDITRECORD = '/billOperateHis/query/commonBillOperateHis'

+ 11 - 2
src/lang/zh.js

@@ -484,7 +484,6 @@ export default {
     purchaseContract: '现货采购合同',
     collectionContract: '代收合同',
     storageContract:'代储合同',
-    purchaseContractcost:'现货采购合同  /  费用',
     purchaseContractAdd: '现货采购合同  /  添加',
     collectionContractAdd: '代收合同  /  添加',
     storageContractAdd:'代储合同  /  添加',
@@ -497,7 +496,6 @@ export default {
     storageContractRecord:'代储合同  /  记录',
     purchaseContractExamine: '现货采购合同  /  查看',
     salesContract: '现货销售合同',
-    salesContractcost: '现货销售合同  /  费用',
     salesContractEdit: '现货销售合同  /  编辑',
     salesContractExamine: '现货销售合同  /  查看',
     salesContractAudit: '现货销售合同  /  审核',
@@ -1048,6 +1046,11 @@ export default {
     settlement: '结算',
     inspectInfo: '质检信息',
     weightCheck: '检斤',
+    //利润核算
+    profitable:'利润核算',
+    contractOtherMoney: '合同外费用',
+    earningsLook: '盈收概览',
+    inOutDetailed: '收支明细',
 
     //出库管理
     outboundManagement: '出库管理',
@@ -7478,6 +7481,12 @@ export default {
     qualityInspectionManagement: '质检管理',
     qualityInspection: '质检信息',
     collectionManagement: '收款管理',
+  },
+  //利润核算
+  profitable: {
+    contractOtherMoney: '合同外费用',
+    earningsLook: '盈收概览',
+    inOutDetailed: '收支明细',
   }
 
 }

+ 0 - 1
src/layout/index/top/index.vue

@@ -8,7 +8,6 @@
       <!-- </div>
     <div class="top-bar__title"> -->
       <!-- 面包屑 -->
-      
       <div class="top-bar__item top-bar__item--show">
         <top-menu v-if="showMenu"></top-menu>
         <bread-crumb v-if="!showMenu" />

+ 1 - 19
src/model/contarct/index.js

@@ -42,13 +42,7 @@ import {
     API_POST_STORAGEFEERECORDCHARGE,
     API_GET_FEERECORD,
     API_POST_STOP,
-    API_POST_STORAGEFEERECORDEXPORT,
-    API_CONTRACTCOST,
-    API_GET_CONTRACT,
-    API_ADD_CONTRACT,
-    API_EDIT_CONTRACT,
-    API_DELETE_CONTRACT,
-    API_PAYMENT
+    API_POST_STORAGEFEERECORDEXPORT
 } from '@/api/V2/contract'
 // 列表
 export const getList = appRx.get(API_GET_CONTRACT_TENANT, errorCatcher, errorHandle, filter)
@@ -150,15 +144,3 @@ export const stopStorageFeeRecord = appRx.post(API_POST_STOP, errorCatcher, erro
 
 // 代储费导出
 export const exportStorageFee = appRx.post(API_POST_STORAGEFEERECORDEXPORT)
-// 合同费用列表
-export const contractcost = appRx.get(API_CONTRACTCOST, errorCatcher, errorHandle, filter)
-// 合同编号
-export const getcontract = appRx.get(API_GET_CONTRACT, errorCatcher, errorHandle, filter)
-// 请款收款
-export const addcontractcost = appRx.post(API_ADD_CONTRACT, errorCatcher, errorHandle, filter)
-// 编辑请款收款
-export const editcontractcost = appRx.post(API_EDIT_CONTRACT, errorCatcher, errorHandle, filter)
-// 删除请款收款
-export const delcontractcost = appRx.post(API_DELETE_CONTRACT, errorCatcher, errorHandle, filter)
-// 付款
-export const payment = appRx.post(API_PAYMENT, errorCatcher, errorHandle, filter)

+ 31 - 0
src/model/profitable/index.js

@@ -0,0 +1,31 @@
+import { errorCatcher, errorHandle, filter } from 'base-core-lib'
+import { appRx } from '../defalutConfig/indexRx'
+import {
+  API_GET_INOUTDETAILED,
+  API_GET_OUTMONEY,
+  API_POST_PLEASEMONEY,
+  API_POST_PAYMENT,
+  API_POST_DELDATA,
+  API_GET_LOOKINFO, 
+  API_POST_EDITINFO,
+  API_POST_WORKFLOW_API_HANDLE,
+  API_POST_AUDITRECORD,
+} from '@/api/V2/profitable'
+//收支明细列表
+export const getInOutDetailed = appRx.get(API_GET_INOUTDETAILED, errorCatcher, errorHandle, filter)
+//合同外费用列表
+export const getOutMoney = appRx.get(API_GET_OUTMONEY, errorCatcher, errorHandle, filter)
+//请款
+export const requestFunds = appRx.post(API_POST_PLEASEMONEY, errorCatcher, errorHandle, filter)
+//付款
+export const payment = appRx.post(API_POST_PAYMENT, errorCatcher, errorHandle, filter)
+//付款
+export const deleteInfo = appRx.post(API_POST_DELDATA, errorCatcher, errorHandle, filter)
+//编辑
+export const editInfo = appRx.post(API_POST_EDITINFO, errorCatcher, errorHandle, filter)
+//查看
+export const getLookInfo = appRx.get(API_GET_LOOKINFO, errorCatcher, errorHandle, filter)
+// 审核
+export const woekflowhandle = appRx.post(API_POST_WORKFLOW_API_HANDLE, errorCatcher, errorHandle, filter)
+// 审核记录
+export const getAuditRecord = appRx.get(API_POST_AUDITRECORD, errorCatcher, errorHandle, filter)

+ 0 - 31
src/views/contractManagement/component/routers/route.js

@@ -26,21 +26,6 @@ const contractManagementRouter = {
         keepAlive: true
       }
     },
-    // 现货采购合同费用
-    {
-      path: 'buyContractcost',
-      component: () =>
-        import(/* webpackChunkName: "sparepartList" */ '@/views/contractManagement/purchaseContractCost'),
-      name: 'buyContractcost',
-      meta: {
-        title: 'purchaseContractcost',
-        shortcutEntrance: 'contractManagement',
-        module: 'contractManagement.buyContract',
-        permissicon: [],
-        keepAlive: true
-      },
-      hidden: true
-    },
     //现货采购合同查看
     {
       path: 'purchaseContractExamine',
@@ -168,22 +153,6 @@ const contractManagementRouter = {
         // module: 'procurement.sparepart.applDetail'
       }
     },
-    //现货销售合同费用
-    {
-      path: 'salesContractcost',
-      component: () =>
-        import(/* webpackChunkName: "applDetail" */ '@/views/contractManagement/salesContractCost'),
-      name: 'salesContractcost',
-      meta: {
-        title: 'salesContractcost',
-        shortcutEntrance: 'contractManagement',
-        module: 'contractManagement.salesContract',
-        permissicon: [],
-        keepAlive: true
-        // module: 'procurement.sparepart.applDetail'
-      },
-      hidden: true
-    },
     //现货销售合同查看
     {
       path: 'salesContractExamine',

+ 2 - 13
src/views/contractManagement/purchaseContract.vue

@@ -156,7 +156,7 @@
           </span>
         </template>
       </el-table-column>
-      <el-table-column prop="address" label="操作" width="160">
+      <el-table-column prop="address" label="操作" width="140">
         <template slot-scope="scope">
            <img width="16" height="17" style="
                 vertical-align: text-top;
@@ -193,7 +193,7 @@
         </template>
       </el-table-column>
     </el-table>
-    <el-pagination :page-sizes="[10, 30, 50, 100, 500, 1000, 9999]" @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
+    <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
       :page-size="deptCircularPage.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="deptBudgetTotal">
     </el-pagination>
 
@@ -356,17 +356,6 @@
       this.showType = this.isShow
     },
     methods: {
-      handlecost(row){
-         this.$router.push({
-          name: 'buyContractcost',
-          query: {
-            id: row.id,
-            contractNo: row.contractNo,
-            status:row.status,
-            seller:row.seller
-          },
-        })
-      },
       onChange() {
         this.$refs.upload
           .handleSaveBill()

+ 5 - 73
src/views/contractManagement/purchaseContractAdd.vue

@@ -1,10 +1,10 @@
 <template>
   <div class="container">
     <el-row>
-      <el-col :span="12"  class="bg">
+      <el-col :span="12">
         <h2 class="bg-left title">创建采购合同</h2>
       </el-col>
-      <el-col :span="12" class="bg-right bg">
+      <el-col :span="12" class="bg-right">
         <el-button class="bg-bottom" type="primary" size="small" @click="returnsales()"><img width="6" height="10"
             style="vertical-align: bottom; margin-right: 3px" src="../../../public/img/lujing.png" alt="" />返回
         </el-button>
@@ -13,22 +13,9 @@
     <ws-form ref="deptBudgetList" :rules="rules" :model="deptBudgetList">
       <div class="remark">
         <h3>基本信息</h3>
-        <el-row>
-      <el-col :span="12">
         <p style="color: #8890b1">
           注:基本信息和货物信息均为必填项,“<span style="color:red">*</span>” 标记的条目提交后不可修改。
         </p>
-        </el-col>
-      <el-col :span="12" style='text-align:right;'>
-        <el-select v-model="contractNo" placeholder="请选择要复制的合同" class="typeselect" filterable clearable
-              @change="copySelect">
-              <el-option v-for="(item,index) in outContractNo" :key="'hetong'+index" :label="item.contractNo"
-                :value="item.contractNo" />
-            </el-select>
-            <el-button class="bg-bottom" type="primary" size="small" @click="cancelcopy()">取消复制
-        </el-button>
-         </el-col>
-    </el-row>
       </div>
       <ws-info-table>
         <!--合同类型-->
@@ -408,11 +395,10 @@
     delxiala,
     getstafffind,
     getRelationContractNo,
-    getcustomerinfo,
-    examineList
+    getcustomerinfo
   } from '@/model/contarct/index'
   import {
-    getstaff,xialaNo,
+    getstaff,
   } from '@/model/warehouse/index'
   import {
     regionData,
@@ -456,7 +442,6 @@ import { isUndefined } from 'xe-utils/methods'
         dialogApproveFormVisible: false,
         // 船舶类型
         monetaryKey: null,
-        contractNo:'',
         // 表格显示数据
         tableDate: [],
         // 是否显示
@@ -589,50 +574,6 @@ import { isUndefined } from 'xe-utils/methods'
           this.deptBudgetList.deliverType = '1'
         }
       },
-      copySelect(e){
-        for (let i = 0; i < this.outContractNo.length; i++) {
-          if(this.outContractNo[i].contractNo==e){
-            examineList({
-            id: this.outContractNo[i].id
-          })
-          .toPromise()
-          .then((response) => {
-            this.deptBudgetList = response
-            if(this.deptBudgetList.personPhone){
-              this.deptBudgetList.personPhone=this.deptBudgetList.personPhone.split(',')
-            }
-            
-            if (this.deptBudgetList.deliverType == 1) {
-              this.deptBudgetList.deliverType1 = '我方自提'
-            } else if (this.deptBudgetList.deliverType == 2) {
-              this.deptBudgetList.deliverType1 = '对方送货'
-            }
-          })
-          }
-          
-        }
-      },
-      cancelcopy(){
-        this.contractNo=''
-        this.deptBudgetList={
-          deliverType: '1',
-          sourceGoods:'',
-          placeDelivery:'',
-          agreementType: '采购合同',
-          addressUrl: '',
-          sellerPhone:'',
-          personPhone:'',
-          personCharge:'',
-          personChargeKey:'',
-          finalTradingVolume: 0,
-          totalContractPrice: 0,
-          contractGoodsInfo: {
-            goodsName: '',
-          },
-          contractProcessInfo: {},
-          settlementWeightMethod: '1',
-        }
-      },
       feedbackLeaderChange(e){
          this.deptBudgetList.feedbackLeaderPhone = ""
         for(var num = 0 ; num < e.length ; num++){
@@ -817,15 +758,6 @@ import { isUndefined } from 'xe-utils/methods'
         })
       },
       loaddata() {
-        // 合同编号
-        xialaNo({
-            compId: localStorage.getItem('ws-pf_compId'),
-            flag: 0,
-          })
-          .toPromise()
-          .then((response) => {
-            this.outContractNo = response
-          })
         // 包装方式
         packList({
             constId: 'CON1'
@@ -1789,7 +1721,7 @@ import { isUndefined } from 'xe-utils/methods'
     border-color: #5878e8;
   }
 
-  .bg {
+  .el-col {
     background: #f6f7fc;
   }
 

+ 8 - 6
src/views/contractManagement/purchaseContractCost.vue

@@ -131,8 +131,8 @@
       </div>
       
     </WinseaContentModal>
-    <el-dialog width='36%' :visible.sync="dialogVisible" :title="title"  class='title_css'>
-      <el-form style='margin:0 auto;' ref="form" :model="deptBudgetList" label-width="130px">
+    <el-dialog width='30%' :visible.sync="dialogVisible" :title="title"  class='title_css' top="20vh">
+      <el-form style='margin:0 auto;' ref="form" :model="deptBudgetList" label-width="100px">
         <el-form-item v-if='status==1||status==2||status==5' label="类型">
           <el-radio-group v-model="costType">
             <el-radio :label="1">粮款</el-radio>
@@ -147,19 +147,21 @@
         </ws-select>
         </el-form-item>
         <el-form-item label="款项名称">
-          <el-input :disabled='disabled' v-model="deptBudgetList.costName"></el-input>
+          <el-input :disabled='disabled' v-model="deptBudgetList.costName" placeholder="请输入款项名称"></el-input>
         </el-form-item>
         <!-- <el-form-item label="费用名称">
           <el-input :disabled='disabled' v-model="deptBudgetList.costName"></el-input>
         </el-form-item> -->
         <el-form-item label="金额(元)">
-          <el-input :disabled='disabled' v-model="deptBudgetList.costPrice"></el-input>
+          <el-input :disabled='disabled' v-model="deptBudgetList.costPrice" placeholder="请输入金额"></el-input>
         </el-form-item>
         <el-form-item v-if='status==1||currectcost.type==1' label="回款方">
-          <el-input :disabled='disabled' v-model="deptBudgetList.payee"></el-input>
+          <el-input :disabled='disabled' v-model="deptBudgetList.payee" placeholder="请输入回款方"></el-input>
         </el-form-item>
         <el-form-item label="备注">
-          <el-input :disabled='disabled' type="textarea" v-model="deptBudgetList.remark"></el-input>
+          <!-- <el-input :disabled='disabled' type="textarea" v-model="deptBudgetList.remark"></el-input> -->
+           <el-input type="textarea" v-model="deptBudgetList.remark" placeholder="输入备注,不超过50个字" maxlength="50" :rows="4">
+            </el-input>
         </el-form-item>
         
         <el-form-item label="附件">

+ 2 - 15
src/views/contractManagement/salesContract.vue

@@ -161,7 +161,7 @@
           <!-- <i @click="fujian(scope.row)" class="el-icon-paperclip iconCss"></i> -->
         </template>
       </el-table-column>
-      <el-table-column prop="address" label="操作" width="160">
+      <el-table-column prop="address" label="操作" width="140">
         <template slot-scope="scope">
           <img width="16" height="17" style="
                 vertical-align: text-top;
@@ -171,7 +171,6 @@
                v-hasPermission="
               `contractManagement.nonContract.nonContractInfo.view`" src="../../../public/img/daichu.png"
              @click="handlecost(scope.row)" alt="" />
-             
           <img width="16" height="16" style="vertical-align: text-top; margin: 0 6px"
             src="../../../public/img/chakan.png" @click="handleExamine(scope.row)" v-hasPermission="
               `contractManagement.salesContract.salesContractInfo.view`
@@ -198,7 +197,7 @@
         </template>
       </el-table-column>
     </el-table>
-    <el-pagination :page-sizes="[10, 30, 50, 100, 500, 1000, 9999]" @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
+    <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
       :page-size="deptCircularPage.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="deptBudgetTotal">
     </el-pagination>
     <WinseaContentModal v-model="accessoryTFs" :title="$t('system.noticeCircular.information')"
@@ -370,18 +369,6 @@
       this.showType = this.isShow
     },
     methods: {
-      
-      handlecost(row){
-         this.$router.push({
-          name: 'salesContractcost',
-          query: {
-            id: row.id,
-            contractNo: row.contractNo,
-            status:row.status,
-            buger:row.buger
-          },
-        })
-      },
       selectstatuschange(e,row){
         var data={}
         if(e=='发运结束'){

+ 10 - 74
src/views/contractManagement/salesContractAdd.vue

@@ -2,9 +2,9 @@
   <div class="container">
     <el-row>
       <el-col :span="12">
-        <h2 class="bg-left title bg">创建销售合同</h2>
+        <h2 class="bg-left title">创建销售合同</h2>
       </el-col>
-      <el-col :span="12" class="bg-right bg">
+      <el-col :span="12" class="bg-right">
         <el-button class="bg-bottom" type="primary" size="small" @click="returnsales()"><img width="6" height="10"
             style="vertion-align: bottom; margin-right: 3px" src="../../../public/img/lujing.png" alt="" />返回
         </el-button>
@@ -14,22 +14,10 @@
       <ws-form ref="deptBudgetList" :model="deptBudgetList">
         <div class="remark">
           <h3>基本信息</h3>
-           <el-row>
-      <el-col :span="12">
-        <p style="color: #8890b1">
-          注:基本信息和货物信息均为必填项,“<span style="color:red">*</span>” 标记的条目提交后不可修改。
-        </p>
-        </el-col>
-      <el-col :span="12" style='text-align:right;'>
-        <el-select v-model="contractNo" placeholder="请选择要复制的合同" class="typeselect" filterable clearable
-              @change="copySelect">
-              <el-option v-for="(item,index) in outContractNo" :key="'hetong'+index" :label="item.contractNo"
-                :value="item.contractNo" />
-            </el-select>
-            <el-button class="bg-bottom" type="primary" size="small" @click="cancelcopy()">取消复制
-        </el-button>
-         </el-col>
-    </el-row>
+          <p style="color: #8890b1">
+            &nbsp;&nbsp;注:基本信息均为必填项,“<span style="color:red">*</span>”
+            标记的条目提交后不可修改。
+          </p>
         </div>
         <!--基本信息-->
         <ws-info-table>
@@ -397,11 +385,10 @@
     editxiala,
     delxiala,
     getRelationContractNo,
-     getcustomerinfo,
-     examineList,
+     getcustomerinfo
   } from '@/model/contarct/index'
-  import {
-    getstaff,xialaNo,
+   import {
+    getstaff,
   } from '@/model/warehouse/index'
   import WsUpload from '@/components/WsUpload'
   import {
@@ -434,7 +421,6 @@
         customerinfo:[],
         //弹出框
         dialogViewSpareMoney: false,
-        contractNo:'',
         dialogApproveFormVisible: false,
         // 船舶类型
         monetaryKey: null,
@@ -468,7 +454,6 @@
         goodnameList: [],
         gradeList: [],
         ChapterTwoList: [],
-        outContractNo:[],
         deptBudgetList: {
           deliverType: '1',
           agreementType: '销售合同',
@@ -539,47 +524,6 @@
       if (!this.restaurants4) this.restaurants4 = [];
     },
     methods: {
-      copySelect(e){
-        for (let i = 0; i < this.outContractNo.length; i++) {
-          if(this.outContractNo[i].contractNo==e){
-            examineList({
-            id: this.outContractNo[i].id
-          })
-          .toPromise()
-          .then((response) => {
-            this.deptBudgetList = response
-            if(this.deptBudgetList.personPhone){
-              this.deptBudgetList.personPhone=this.deptBudgetList.personPhone.split(',')
-            }
-            
-            if (this.deptBudgetList.deliverType == 1) {
-              this.deptBudgetList.deliverType1 = '我方自提'
-            } else if (this.deptBudgetList.deliverType == 2) {
-              this.deptBudgetList.deliverType1 = '对方送货'
-            }
-          })
-          }
-          
-        }
-      },
-      cancelcopy(){
-        this.contractNo=''
-        this.deptBudgetList={
-          deliverType: '1',
-          agreementType: '销售合同',
-          finalTradingVolume: 0,
-          totalContractPrice: 0,
-          contractGoodsInfo: {
-            goodsName: '',
-          },
-          buyerPhone:'',
-          contractProcessInfo: {},
-          addressUrl: '',
-          sourceGoods: '',
-          placeDelivery: '',
-          settlementWeightMethod: '1',
-        }
-      },
       feedbackLeaderChange(e){
         this.deptBudgetList.feedbackLeader = this.feedbackLeaders[e].staffName
         this.deptBudgetList.feedbackLeaderPhone = this.feedbackLeaders[e].staffMobilePhone
@@ -688,14 +632,6 @@
         })
       },
       loaddata() {
-        xialaNo({
-            compId: localStorage.getItem('ws-pf_compId'),
-            flag: 1,
-          })
-          .toPromise()
-          .then((response) => {
-            this.outContractNo = response
-          })
         // 包装方式
         packList({
             constId: 'CON1',
@@ -1680,7 +1616,7 @@
     margin-top: 10px;
   }
 
-  .bg {
+  .el-col {
     background: #f6f7fc;
   }
 

+ 7 - 6
src/views/contractManagement/salesContractCost.vue

@@ -130,8 +130,8 @@
       </div>
       
     </WinseaContentModal>
-    <el-dialog width='36%' :visible.sync="dialogVisible" :title="title"  class='title_css' >
-      <el-form style='margin:0 auto;' ref="form" :model="deptBudgetList" label-width="130px">
+    <el-dialog width='30%' :visible.sync="dialogVisible" :title="title"  class='title_css' top="20vh">
+      <el-form style='margin:0 auto;' ref="form" :model="deptBudgetList" label-width="100px">
         <el-form-item v-if='status==1||status==2||status==5' label="类型">
           <el-radio-group v-model="costType">
             <el-radio :label="1">粮款</el-radio>
@@ -146,19 +146,20 @@
         </ws-select>
         </el-form-item>
         <el-form-item label="款项名称">
-          <el-input :disabled='disabled' v-model="deptBudgetList.costName"></el-input>
+          <el-input :disabled='disabled' v-model="deptBudgetList.costName" placeholder="请输入款项名称"></el-input>
         </el-form-item>
         <!-- <el-form-item label="费用名称">
           <el-input :disabled='disabled' v-model="deptBudgetList.costName"></el-input>
         </el-form-item> -->
         <el-form-item label="金额(元)">
-          <el-input :disabled='disabled' v-model="deptBudgetList.costPrice"></el-input>
+          <el-input :disabled='disabled' v-model="deptBudgetList.costPrice" placeholder="请输入金额"></el-input>
         </el-form-item>
         <el-form-item v-if='status==1||currectcost.type==1' label="回款方">
-          <el-input :disabled='disabled' v-model="deptBudgetList.payee"></el-input>
+          <el-input :disabled='disabled' v-model="deptBudgetList.payee" placeholder="请输入回款方"></el-input>
         </el-form-item>
         <el-form-item label="备注">
-          <el-input :disabled='disabled' type="textarea" v-model="deptBudgetList.remark"></el-input>
+          <!-- <el-input :disabled='disabled' type="textarea" v-model="deptBudgetList.remark"></el-input> -->
+           <el-input type="textarea" v-model="deptBudgetList.remark" placeholder="输入备注,不超过50个字" maxlength="50" :rows="4"></el-input>
         </el-form-item>
         
         <el-form-item label="附件">

+ 17 - 4
src/views/houseSelfCollect/paymentManagement.vue

@@ -85,7 +85,7 @@
           :on-change="importClick" :show-file-list="false"
           accept=".csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
           :auto-upload="false">
-          <el-button type="primary">导入</el-button>
+          <ws-button type="primary">导入</ws-button>
         </el-upload>
       </template>
       <template slot="right"> </template>
@@ -514,7 +514,7 @@
         var reader = new FileReader();
         //if (!FileReader.prototype.readAsBinaryString) {
         FileReader.prototype.readAsBinaryString = function(f) {
-          var binary = "";
+          var binary = '';
           var rABS = false; //是否将文件读取为二进制字符串
           var pt = this;
           var wb; //读取完成的数据
@@ -556,7 +556,7 @@
               obj.tare = v.皮重
               obj.netWeight = v.净重
               obj.dryGrainPrice = v.单价
-              obj.qualityDate = v.日期
+              obj.qualityDate = _this.formatDate(v.日期,'-')
               _this.excelFreightspace.push(obj)
             })
             if (_this.excelFreightspace) {
@@ -586,6 +586,15 @@
         }
 
       },
+      formatDate(numb, format) {
+        const old = numb - 1;
+        const t = Math.round((old - Math.floor(old)) * 24 * 60 * 60);
+        const time = new Date(1900, 0, old, 0, 0, t)
+        const year = time.getFullYear() ;
+        const month = time.getMonth() + 1 ;
+        const date = time.getDate() ;
+        return year + format + (month < 10 ? '0' + month : month) + format + (date < 10 ? '0' + date : date)+' 00:00:00'
+      },
       invoicingClose() {
         this.invoicingshow = false
       },
@@ -773,12 +782,16 @@
             if (response.length > 0) {
               var arr = []
               for (let i = 0; i < response.length; i++) {
+                let _name = response[i].replace('https://taohaoliang.oss-cn-beijing.aliyuncs.com/FP/',"")
                 arr.push({
                   fileUrl: response[i],
-                  renameFileName: '发票' + i + '.xml',
+                  renameFileName: _name,
                 })
               }
               this.filesToRar(arr, '开票XML文件')
+            }else{
+               this.$message.error('暂无数据')
+               return
             }
           })
           .catch(() => {})

+ 179 - 8
src/views/houseSelfCollect/weighingManagement.vue

@@ -36,7 +36,7 @@
       </template>
     </BaseHeaderLayout>
     <el-table :data="weighingList" style="width: 100%; margin-top: 20px" ref="weighingList" border height="calc(100% - 130px)"
-      @row-click="handleRowClick" @selection-change="handleSelectionChange">
+      @row-click="handleRowClick" @selection-change="handleSelectionChange" :summary-method="getSummaries" show-summary>
       <el-table-column type="selection" width="55"></el-table-column>
       <el-table-column type="index" label="序号" width="50">
         <template scope="scope">
@@ -107,7 +107,7 @@
             v-if=" (scope.row.status == '已称毛重' || scope.row.status == '已称皮重') "
             v-hasPermission="`acquisitionManagement.acquisitionWeight.weight`">皮重</el-button>
           <div style="display: inline-block;">
-            <el-button @click="del(scope.row)" type="danger"
+            <el-button :disabled="scope.row.allow == 2" @click="del(scope.row)" type="danger"
               v-hasPermission="`acquisitionManagement.acquisitionQuality.delete`">删除</el-button>
           </div>
           <el-button @click="print(scope.row)" v-if="scope.row.status == '已称皮重' ||scope.row.status == '已称毛重'"
@@ -117,7 +117,7 @@
     </el-table>
     <div style="text-align: center;margin-top:20px">
       <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
-        :page-size="deptCircularPage.pageSize" layout="total, sizes, prev, pager, next, jumper"
+        :page-sizes="[10, 30, 50, 100, 500, 1000, 9999]"  layout="total, sizes, prev, pager, next, jumper"
         :total="deptBudgetTotal">
       </el-pagination>
     </div>
@@ -131,6 +131,51 @@
             <el-radio label="A5" class="label-width" @change="selectType">A5</el-radio>
           </el-radio-group>
         </div>
+
+        <div class="shdw-style" v-if="checked||(!ddchecked&&!checked)">
+                 <div>收货单位:</div>
+                  <!-- <div>{{companyName}}</div> -->
+                   <el-select v-model="companyName" placeholder="请选择" style="width: 75%;">
+                      <el-option
+                        v-for="item in companyNameOptions"
+                        :key="item.value"
+                        :label="item.label"
+                        :value="item.value">
+                      </el-option>
+                    </el-select>
+               </div>
+        <div v-if="this.warehouseName=='鲅鱼圈金信库'||this.warehouseName=='白城内陆港'">
+          <div class="print-type-ew">
+             <el-checkbox v-model="checked" @change="changeEw">打印额外票据</el-checkbox>
+              <el-checkbox v-model="ddchecked" @change="changeEwDD">单独打印额外票据</el-checkbox>
+          </div>
+          <div class="ew-print" v-if="printSeparately">
+          <div class="row">
+              <div>额外客户姓名:</div>
+               <!-- <div>{{companyName}}</div> -->
+                <el-select v-model="companyName" placeholder="请选择" style="width: 75%;">
+                   <el-option
+                     v-for="item in companyNameOptions"
+                     :key="item.value"
+                     :label="item.label"
+                     :value="item.value">
+                   </el-option>
+                 </el-select>
+            </div>
+            <div class="row" >
+              <div>额外收货单位:</div>
+              <!-- <div>{{companyNameEW}}</div> -->
+              <el-select v-model="companyNameEW" placeholder="请选择" style="width: 75%;">
+                 <el-option
+                   v-for="item in companyNameEWOptions"
+                   :key="item.value"
+                   :label="item.label"
+                   :value="item.value">
+                 </el-option>
+               </el-select>
+            </div>
+          </div>
+        </div>
       </div>
       <div class="bottom-btn">
         <el-button @click="typePrintClick">确定</el-button>
@@ -163,6 +208,30 @@
     watch: {},
     data() {
       return {
+         companyNameOptions: [{
+                  value: '黑龙江利润元粮食贸易有限公司',
+                  label: '黑龙江利润元粮食贸易有限公司'
+                }, {
+                  value: '黑龙江众利合粮食贸易有限公司',
+                  label: '黑龙江众利合粮食贸易有限公司'
+                }, {
+                  value: '黑龙江鑫满仓粮食贸易有限公司',
+                  label: '黑龙江鑫满仓粮食贸易有限公司'
+                }, {
+                  value: '黑龙江中天昊元贸易有限公司',
+                  label: '黑龙江中天昊元贸易有限公司'
+                },
+                ],
+                companyNameEWOptions: [{
+                         value: '厦门建发物产有限公司1',
+                         label: '厦门建发物产有限公司'
+                       }],
+                       companyName:'黑龙江利润元粮食贸易有限公司',
+        companyNameEW:"厦门建发物产有限公司",
+        companyName:"黑龙江利润元粮食贸易有限公司",
+          ewradio: '',
+        ddchecked:false,
+        checked: false,
         //分页
         currentPage: 1,
         pageSize: 10,
@@ -196,13 +265,64 @@
         endDate: '',
         excelPrintData: [],
         isExcelPrint: false,
+        selectEW:false,
+        printSeparately:false
       }
     },
+    		computed: {
+		// companyName(){
+  //     if(this.warehouseName=='鲅鱼圈金信库'||this.warehouseName=='白城内陆港'){
+  //       return '黑龙江利润元贸易有限公司'
+  //     }
+  //     return "黑龙江中天昊元贸易有限公司"
+  //   }
+		},
     activated() {
       this.selectWarehouse()
 
     },
     methods: {
+      //合计
+      getSummaries(param) {
+        const {
+          columns,
+          data
+        } = param
+        const sums = []
+        columns.forEach((column, index) => {
+          if (index === 0) {
+            sums[index] = '合计'
+          } else if (
+            index === 10) {
+            const values = data.map((item) => Number(item[column.property]))
+            console.log(values)
+            // console.log(values)
+            if (values.length > 0) {
+              sums[index] = values.reduce((prev, curr) => {
+                const value = Number(curr)
+                if (!isNaN(value)) {
+                  return prev + curr
+                } else {
+                  return prev
+                }
+              }, 0)
+            } else {
+              sums[index] = 0
+            }
+          } else {
+            sums[index] = '--'
+          }
+        })
+        return sums
+      },
+      changeEwDD(){
+        this.checked = false
+        this.printSeparately = true
+      },
+      changeEw(e){
+ this.ddchecked = false
+ this.printSeparately = true
+      },
       selectType(val) {
         console.log(val)
         // for (let i = 0; i < this.ruleForm.type.length; i++) {
@@ -342,10 +462,24 @@
       printSmall() {
         window.open('../../../../static/weightCheck.html?type=1&tableData=' + JSON.stringify(this.dialogData))
       },
+      makeEWjjSelectPrintList(){
+     let _selectPrint_EWjjSelectPrintList=JSON.parse(JSON.stringify(this.jjSelectPrintList));
+          for(let i=0;i<_selectPrint_EWjjSelectPrintList.length;i++){
+                let _data =_selectPrint_EWjjSelectPrintList[i];
+                _data.compName =this.companyNameEW;
+                _data.customer = this.companyName
+          }
+           localStorage.setItem('selectPrint_EWjjSelectPrintList', JSON.stringify(_selectPrint_EWjjSelectPrintList))
+      },
       printBig(type, radioType) {
+        // 打印额外
+        if(this.checked||this.ddchecked){
+     this.makeEWjjSelectPrintList()
+    //  this.selectEW = true;
+        }
         if (type == 1) {
           localStorage.setItem('selectPrint_jjSelectPrintList', JSON.stringify(this.jjSelectPrintList))
-          window.open('../../../../static/weightCheck.html?type=2&radioType=' + radioType)
+          window.open('../../../../static/weightCheck.html?type=2&radioType=' + radioType+'&selectEW=' + this.checked+'&selectEWDD=' + this.ddchecked)
         } else if (type == 2) {
           localStorage.setItem('selectPrint_jjSelectPrintList', JSON.stringify(this.excelPrintData))
           window.open('../../../../static/weightCheck.html?type=2&radioType=' + radioType)
@@ -354,7 +488,7 @@
           window.open('../../../../static/weightCheck.html?type=2&tableData=' + JSON.stringify(this.dialogData))
         }
       },
-      typePrintClick(type) {
+     async typePrintClick(type) {
         if (this.isExcelPrint) {
           this.printBig(2, this.radio)
           this.isExcelPrint = false
@@ -363,15 +497,18 @@
           this.jjSelectPrintList = []
           let index1 = 0;
           for (let i = 0; i < this.modification.length; i++) {
-            getPrint({
+           await getPrint({
                 id: this.modification[i].id
               })
               .toPromise()
               .then((response) => {
                 index1++;
+                  response.compName = this.companyName
+
                 if (response.compName == '黑龙江秋收有限公司') {
                   response.compName = '黑龙江中天昊元贸易有限公司'
                 }
+
                 this.jjSelectPrintList.push(response)
                 if (index1 == this.modification.length) {
                   this.printBig(1, this.radio)
@@ -768,8 +905,8 @@
     left: 0;
     right: 0;
     margin: auto;
-    width: 220px;
-    height: 160px;
+    width: 440px;
+    height: 320px;
     background: white;
     border-radius: 10px;
     z-index: 999;
@@ -810,4 +947,38 @@
     border-top-right-radius: 0px;
     border-bottom-right-radius: 0px;
   }
+  .ew-print{
+    padding: 0 20px;
+    margin-top: 10px;
+    // display: flex;
+    // justify-content: space-between;
+    // align-content: center;
+    .row{
+      display: flex;
+      margin-top: 10px;
+      align-items: center;
+    }
+  }
+  .sh-address{
+  display: flex;
+  }
+  .print-type-ew{
+    display: flex;
+    justify-content: space-between;
+     padding: 0 20px;
+      /deep/.el-radio__label {
+    font-size: 14px;
+  }
+     margin-top: 10px;
+  }
+  /deep/.el-table .cell{
+    text-align: center;
+  }
+  .shdw-style{
+    display: flex;
+    justify-content: space-between;
+    align-items: center;
+    padding:  0 20px;
+    margin-top: 20px;
+  }
 </style>

+ 64 - 0
src/views/profitable/component/routers/route.js

@@ -0,0 +1,64 @@
+import Layout from '@/layout/index';
+
+const profitableRouter = {
+  path: '/profitable',
+  component: Layout,
+  redirect: '/profitable',
+  name: 'profitable',
+  alwaysShow: true, // will always show the root menu
+  meta: {
+    title: 'profitable',
+    module: 'contractManagement.exContract.exContractInfo.view',
+    icon: '-caigouguanli'
+  },
+  children: [
+      // 盈收概览
+    {
+      path: 'earningsLook',
+      component: () =>
+        import(/* webpackChunkName: "applDetail" */ '@/views/profitable/earningsLook'),
+      name: 'earningsLook',
+      meta: {
+        title: 'earningsLook',
+        shortcutEntrance: 'profitable',
+        module: 'contractManagement.exContract.exContractInfo.view',
+        permissicon: [],
+        keepAlive: true
+        // module: 'procurement.sparepart.applDetail'
+      }
+    },  
+      // 收支明细
+      {
+        path: 'inOutDetailed',
+        component: () =>
+          import(/* webpackChunkName: "applDetail" */ '@/views/profitable/inOutDetailed'),
+        name: 'inOutDetailed',
+        meta: {
+          title: 'inOutDetailed',
+          shortcutEntrance: 'profitable',
+          module: 'contractManagement.exContract.exContractInfo.view',
+          permissicon: [],
+          keepAlive: true
+          // module: 'procurement.sparepart.applDetail'
+        }
+      }, 
+       // 合同外费用
+       {
+        path: 'contractOtherMoney',
+        component: () =>
+          import(/* webpackChunkName: "applDetail" */ '@/views/profitable/contractOtherMoney'),
+        name: 'contractOtherMoney',
+        meta: {
+          title: 'contractOtherMoney',
+          shortcutEntrance: 'profitable',
+          module: 'contractManagement.exContract.exContractInfo.view',
+          permissicon: [],
+          keepAlive: true
+          // module: 'procurement.sparepart.applDetail'
+        }
+      }, 
+  ],
+
+};
+
+export default profitableRouter;

+ 706 - 0
src/views/profitable/contractOtherMoney.vue

@@ -0,0 +1,706 @@
+//合同外费用
+<template>
+  <div class="container">
+    <el-row class="row_top">
+      <el-col :span="12">
+        <h2 class="bg-left title">合同外费用</h2>
+      </el-col>
+      <el-col :span="12" class="bg-right"></el-col>
+    </el-row>
+
+    <div class="center">
+      <el-row>
+        <el-col :span="12">
+          <el-button style="margin-left:10px" @click="typeChange('')" :type="!searchType?'primary':''">全部</el-button>
+          <el-button @click="typeChange(1)" :type="searchType == 1?'primary':''">收入</el-button>
+          <el-button @click="typeChange(2)" :type="searchType == 2?'primary':''">支出</el-button>
+          <div class="top_info">
+            <span class="info_css">合计收入:{{inmoney}}元</span><span class="info_css">合计支出:{{outmoney}}元</span><span
+              class="info_css">请款中:{{inmoney}}元</span>
+          </div>
+        </el-col>
+        <el-col :span="12">
+          <div class="datascreen">
+            <el-date-picker value-format='yyyy-MM-dd' v-model="value" type="daterange" align="right" unlink-panels
+              range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" :picker-options="pickerOptions"
+              class="data_css" @change="changeDate">
+            </el-date-picker>
+            <el-input placeholder="按费用名称或用途查找" class="input_css" v-model="searchKeyWord"></el-input>
+            <el-button class="find" type="primary" @click="find()"><img width="16" height="16" style="left: -8px;"
+                src="../../../public/img/sousuo.png" alt="" /></el-button>
+          </div>
+          <div class="btn_css">
+            <el-button @click="audit(3)" v-hasPermission=" `contractManagement.exContract.exContractInfo.add`">请款
+            </el-button>
+            <el-button @click="audit(4)" v-hasPermission=" `contractManagement.exContract.exContractInfo.add`">收款
+            </el-button>
+          </div>
+        </el-col>
+      </el-row>
+      <div class="fromdata">
+        <el-table :data="tableData" stripe style="width: 100%">
+          <el-table-column type="index" label="序号">
+            <template scope="scope">
+              <span v-if="scope.$index < 9">0{{ scope.$index + 1 }}</span>
+              <span v-else>{{ scope.$index + 1 }}</span>
+            </template>
+          </el-table-column>
+          <el-table-column prop="reexType" label="类型"></el-table-column>
+          <el-table-column prop="purpose" label="用途"></el-table-column>
+          <el-table-column prop="expenseName" label="费用名称"></el-table-column>
+          <el-table-column prop="amountMoney" label="费用金额(元)" min-width="106"></el-table-column>
+          <el-table-column label="附件">
+            <template slot-scope="scope">
+              <img width="18" height="20" style="vertical-align: text-top; position: relative; top: -1px"
+                src="../../../public/img/fujian.png" @click="fujian(scope.row)" alt="" />
+              <span>{{scope.row.addressUrl.split(",").length == 0 ? '' : scope.row.addressUrl.split(",").length}}</span>
+            </template>
+          </el-table-column>
+          <el-table-column prop="payee" label="请款人/收款人" min-width="100"></el-table-column>
+          <el-table-column prop="paymentDate" label="支付日期"></el-table-column>
+          <el-table-column prop="status" label="状态" min-width="81">
+            <template slot-scope="scope">
+              <span style="margin-right:10px">{{scope.row.status}}</span><i class="el-icon-tickets icon_css"
+                v-show="scope.row.reexType == '支出'" @click="showAudit(scope.row)"></i>
+            </template>
+          </el-table-column>
+          <el-table-column label="操作" min-width="400">
+            <template slot-scope="scope">
+              <el-button @click="audit(1,scope.row)" v-if="scope.row.reexType == '支出' && scope.row.taskId">审核
+              </el-button>
+              <el-button @click="audit(2,scope.row)"
+                v-hasPermission=" `contractManagement.exContract.exContractInfo.status`">付款</el-button>
+              <el-button @click="audit(5,scope.row)"
+                v-hasPermission=" `contractManagement.exContract.exContractInfo.edit`">编辑</el-button>
+              <el-button @click="delData(scope.row)"
+                v-hasPermission=" `contractManagement.exContract.exContractInfo.delete`">删除</el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+      </div>
+      <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
+        style="text-align:center" :page-size="deptCircularPage.pageSize"
+        layout="total, sizes, prev, pager, next, jumper" :total="deptBudgetTotal">
+      </el-pagination>
+      <el-dialog :title="title" :visible.sync="dialogVisible" width="30%" :before-close="handleClose" top="20vh"
+        class="title_css">
+        <el-form ref="formData" :model="formData" label-width="100px">
+          <el-form-item label="费用类型" v-if="btnChange == 3 || btnChange == 4 || btnChange == 5">
+            <el-radio-group v-model="radio">
+              <el-radio v-model="radio" label="1">经营费用</el-radio>
+              <el-radio v-model="radio" label="2">仓库费用</el-radio>
+            </el-radio-group>
+          </el-form-item>
+          <el-form-item label="费用类型" v-if="btnChange == 1 || btnChange == 2">
+            <template>
+              <el-input value="经营费用" :disabled="disabled" v-if="formData.expenseType == 1"></el-input>
+              <el-input value="仓库费用" :disabled="disabled" v-else></el-input>
+            </template>
+          </el-form-item>
+          <el-form-item label="仓库" v-if="radio == 2">
+            <el-select v-model="formData.warehouseName" placeholder="请选择仓库" style="width:100%" :disabled="disabled">
+              <el-option v-for="(item,index) in warehouseList" :key="index" :label="item.warehouseName"
+                :value="item.warehouseName"></el-option>
+            </el-select>
+          </el-form-item>
+          <el-form-item label="款项名称">
+            <el-input v-model="formData.expenseName" placeholder="输入费用名称" :disabled="disabled" maxlength="15">
+            </el-input>
+          </el-form-item>
+          <el-form-item label="金额(元)" v-if="btnChange == 3 || btnChange == 4 || btnChange == 5">
+            <el-input v-model="formData.amountMoney" placeholder="输入请款金额" type="number"></el-input>
+          </el-form-item>
+          <el-form-item label="请款(元)" v-if="btnChange == 1 || btnChange == 2">
+            <el-input v-model="formData.amountMoney" placeholder="输入请款金额" :disabled="disabled" type="number"></el-input>
+          </el-form-item>
+          <el-form-item label="备注(选填)" v-if="btnChange == 3 || btnChange == 4 || btnChange == 5">
+            <el-input type="textarea" v-model="formData.remarks" placeholder="输入备注,不超过50个字" maxlength="50" :rows="4">
+            </el-input>
+          </el-form-item>
+          <el-form-item label="请款备注" v-if="btnChange == 1 || btnChange == 2">
+            <el-input type="textarea" v-model="formData.remarks" placeholder="输入备注,不超过50个字" maxlength="50" :rows="4"
+              :disabled="disabled"></el-input>
+          </el-form-item>
+          <el-form-item label="附件">
+            <!-- :limit="1" -->
+            <ws-upload ref="upload" :comp-id="compId" :appendix-ids="formData.addressUrl" :editable="!disabled"
+              :disabled="disabled" @onChange="onChange" accept=".jpg, .jpeg, .png, .pdf, .doc, .zip, .rar"
+              :remarkWord="false" />
+          </el-form-item>
+          <el-form-item label="审核意见" v-if="btnChange == 1">
+            <el-input type="textarea" v-model="formData.opinion" placeholder="选填,不超过50个字" maxlength="50" :rows="4">
+            </el-input>
+          </el-form-item>
+          <el-form-item label="收款日期" v-if="btnChange == 4">
+            <el-date-picker value-format='yyyy-MM-dd' v-model="formData.paymentDate" type="date" placeholder="选择日期">
+            </el-date-picker>
+          </el-form-item>
+          <el-form-item label="付款日期" v-if="btnChange == 2">
+            <el-date-picker value-format='yyyy-MM-dd' v-model="formData.paymentDate" type="date" placeholder="选择日期">
+            </el-date-picker>
+          </el-form-item>
+        </el-form>
+        <span slot="footer" class="dialog-footer">
+          <el-button @click="handleClose" v-if="btnChange != 1">取 消</el-button>
+          <el-button type="primary" @click="submit" v-if="btnChange != 1">确 定</el-button>
+          <el-button @click="examine(1)" v-if="btnChange == 1">驳 回</el-button>
+          <el-button type="primary" @click="examine(2)" v-if="btnChange == 1">通 过</el-button>
+        </span>
+      </el-dialog>
+    </div>
+    <el-dialog title="附件预览" :visible.sync="fujianshow" width="30%" :before-close="fuijianClose" top="30vh"
+      class="title_css">
+      <ws-upload ref="upload" @onChange="onChange" :comp-id="compId" :appendix-ids="appendixIdss" :editable="editable"
+        accept=".jpg, .jpeg, .png, .pdf, .doc, .zip, .rar" />
+    </el-dialog>
+    <el-dialog title="审核记录" :visible.sync="auditShow" width="30%" :before-close="auditShowClose" top="20vh"
+      class="title_css">
+      <div v-for="(item,index) in auditRecord" :key="index" class="audit">
+        <div class="audit_item">
+          <div class="audit_left">
+            <span class="audit_name">{{item.operateUser}}</span><span
+              v-if="item.approveResult">{{item.approveResult == 0 ? "驳回" : "通过"}}</span><span
+              v-else>{{item.dealMsg}}</span>
+          </div>
+          <span class="audit_date">{{item.operateDate}}</span>
+        </div>
+        <div class="audit_opinion" v-if="item.dealMsg != '付款' && item.approveResult">审核意见:{{item.verifyRemark}}</div>
+        <div class="audit_opinion" v-if="item.dealMsg == '请款' && item.approveResult == null">备注信息:{{item.verifyRemark}}
+        </div>
+      </div>
+
+    </el-dialog>
+  </div>
+</template>
+<script>
+  import {
+    getOutMoney,
+    requestFunds,
+    payment,
+    deleteInfo,
+    editInfo,
+    woekflowhandle,
+    getAuditRecord
+  } from '@/model/profitable/index'
+  import {
+    selectWarehouseSelf
+  } from '@/model/houseSelfCollect/index'
+  import WsUpload from '@/components/WsUpload'
+  export default {
+    components: {
+      WsUpload
+    },
+    data() {
+      return {
+        value: "",
+        tableData: [],
+        deptBudgetTotal: 0,
+        currentPage: 1,
+        pageSize: 10,
+        deptCircularPage: {},
+        dialogVisible: false,
+        fujianshow: false,
+        compId: localStorage.getItem('ws-pf_compId'),
+        btnChange: "",
+        title: "",
+        disabled: false,
+        searchType: "",
+        searchKeyWord: "",
+        startDate: "",
+        endDate: "",
+        deptBudgetTotal: 0,
+        currentPage: 1,
+        pageSize: 10,
+        deptCircularPage: {},
+        value: "",
+        warehouseList: [],
+        formData: {},
+        radio: "1",
+        appendixIdss: [],
+        editable: false,
+        auditShow: false,
+        auditRecord: [],
+        inmoney:0,
+        outmoney:0,
+      }
+    },
+    activated() {
+      this.getPassYearFormatDate()
+      this.getList()
+      this.getWarehouse()
+    },
+    methods: {
+      showAudit(row) {
+        getAuditRecord({
+            id: row.id,
+            workflowId: row.workflowId
+          })
+          .toPromise()
+          .then((response) => {
+            this.auditShow = true
+            this.auditRecord = response
+          })
+      },
+      auditShowClose() {
+        this.auditRecord = []
+        this.auditShow = false
+      },
+      examine(tmp) {
+        if (tmp == 1) { //驳回
+          this.$confirm('是否确定驳回该条请款信息?', '提示', {
+              confirmButtonText: '确定',
+              cancelButtonText: '取消',
+              type: 'warning',
+            })
+            .then(() => {
+              woekflowhandle({
+                  taskId: this.formData.taskId,
+                  approved: false,
+                  auditMind: this.formData.opinion ? this.formData.opinion : "驳回",
+                  needReapply: true,
+                })
+                .toPromise()
+                .then((response) => {
+                  this.$notify({
+                    title: '成功',
+                    message: '驳回成功!',
+                    type: 'success'
+                  });
+                })
+              this.formData = {}
+              this.dialogVisible = false
+              this.getList()
+            })
+        } else if (tmp == 2) { //通过
+          this.$confirm('是否确定通过该条请款信息?', '提示', {
+              confirmButtonText: '确定',
+              cancelButtonText: '取消',
+              type: 'warning',
+            })
+            .then(() => {
+              woekflowhandle({
+                  taskId: this.formData.taskId,
+                  approved: true,
+                  auditMind: this.formData.opinion ? this.formData.opinion : "通过",
+                  needReapply: false,
+                })
+                .toPromise()
+                .then((response) => {
+                  this.$notify({
+                    title: '成功',
+                    message: '审核成功!',
+                    type: 'success'
+                  });
+                  this.formData = {}
+                  this.dialogVisible = false
+                  this.getList()
+
+                })
+                .catch(() => {
+                  return false
+                })
+            })
+        }
+
+
+      },
+      delData(row) {
+        this.$confirm('确定删除请款信息?', '提示', {
+            confirmButtonText: '确定',
+            cancelButtonText: '取消',
+            type: 'warning',
+          })
+          .then(() => {
+            deleteInfo({
+                id: row.id
+              })
+              .toPromise()
+              .then((response) => {
+                this.$notify({
+                  title: '成功',
+                  message: '删除成功!',
+                  type: 'success'
+                });
+                this.getList()
+              })
+          })
+      },
+      fujian(row) {
+        this.fujianshow = true
+        this.appendixIdss = row.addressUrl
+      },
+      fuijianClose() {
+        this.appendixIdss = ""
+        this.fujianshow = false
+      },
+      submit() {
+        this.formData.expenseType = this.radio
+        if (this.formData.expenseType == 2) {
+          if (!this.formData.warehouseName) {
+            this.$message.error("请选择仓库")
+            return
+          }
+        }
+        if (!this.formData.expenseName) {
+          this.$message.error("款项名称不能为空!")
+          return
+        }
+        if (!this.formData.amountMoney) {
+          this.$message.error("金额不能为空!")
+          return
+        }
+        if (Number(this.formData.amountMoney) < 0 || Number(this.formData.amountMoney) > 100000000) {
+          this.$message.error("金额输入错误!")
+        }
+        
+        if (this.formData.amountMoney.indexOf(".") != -1 && this.formData.amountMoney.split(".")[1].length > 2) {
+          this.$message.error("金额请保留两位小数!")
+          return
+        }
+        if (this.btnChange == 4) {
+          if (!this.formData.addressUrl) {
+            this.$message.error("请上传附件!")
+            return
+          }
+        }
+        this.$confirm('确定提交' + this.title + '信息?', '提示', {
+            confirmButtonText: '确定',
+            cancelButtonText: '取消',
+            type: 'warning',
+          })
+          .then(() => {
+            if (this.btnChange == 3) { //请款
+              this.formData.compId = this.compId
+              this.formData.payee = localStorage.getItem('ws-pf_staffName')
+              this.formData.reexType = "支出"
+              this.formData.reexTypeKey = 2
+              requestFunds(this.formData)
+                .toPromise()
+                .then((response) => {
+                  if (response == 'ok') {
+                    this.formData = {}
+                    this.dialogVisible = false
+                    this.$notify({
+                      title: '成功',
+                      message: '请款提交成功!',
+                      type: 'success'
+                    });
+                    this.getList()
+                  }
+                })
+            } else if (this.btnChange == 2) { //付款
+              payment(this.formData)
+                .toPromise()
+                .then((response) => {
+                  if (response == 'ok') {
+                    this.formData = {}
+                    this.dialogVisible = false
+                    this.$notify({
+                      title: '成功',
+                      message: '付款提交成功!',
+                      type: 'success'
+                    });
+                    this.getList()
+                  }
+                })
+            } else if (this.btnChange == 5) { //编辑
+              editInfo(this.formData)
+                .toPromise()
+                .then((response) => {
+                  if (response == 'ok') {
+                    this.formData = {}
+                    this.dialogVisible = false
+                    this.$notify({
+                      title: '成功',
+                      message: '修改成功!',
+                      type: 'success'
+                    });
+                    this.getList()
+                  }
+
+                })
+            } else if (this.btnChange == 4) { //收款
+              this.formData.compId = this.compId
+              this.formData.payee = localStorage.getItem('ws-pf_staffName')
+              this.formData.reexType = "收入"
+              this.formData.reexTypeKey = 1
+              requestFunds(this.formData)
+                .toPromise()
+                .then((response) => {
+                  if (response == 'ok') {
+                    this.formData = {}
+                    this.dialogVisible = false
+                    this.$notify({
+                      title: '成功',
+                      message: '请款提交成功!',
+                      type: 'success'
+                    });
+                    this.getList()
+                  }
+                })
+
+            }
+          })
+      },
+      typeChange(num) {
+        this.searchType = num
+        this.getList()
+      },
+      getWarehouse() {
+        //仓库
+        selectWarehouseSelf({
+            compId: localStorage.getItem('ws-pf_compId'),
+          })
+          .toPromise()
+          .then((response) => {
+            this.warehouseList = response
+          })
+      },
+      audit(num, row) {
+        this.btnChange = num
+        if (num == 1) {
+          this.title = "审核"
+          this.formData = row
+          this.disabled = true
+        } else if (num == 2) {
+          this.title = "付款"
+          this.formData = row
+          this.disabled = true
+        } else if (num == 3) {
+          this.title = "请款"
+          this.disabled = false
+        } else if (num == 4) {
+          this.title = "收款"
+          this.disabled = false
+        } else if (num == 5) {
+          this.title = "编辑"
+          this.formData = row
+          this.radio = row.expenseType
+          this.disabled = false
+        }
+        this.dialogVisible = true
+
+      },
+      getPassYearFormatDate() {
+        var nowDate = new Date()
+        var _date = new Date()
+        nowDate.setTime(nowDate.getTime() - 24 * 60 * 60 * 1000 * 30)
+        var year = nowDate.getFullYear()
+        var year1 = _date.getFullYear()
+        var month = nowDate.getMonth() + 1
+        var month1 = _date.getMonth() + 1
+        var strDate = nowDate.getDate()
+        var strDate1 = _date.getDate()
+        if (month >= 1 && month <= 9) {
+          month = '0' + month
+        }
+        if (month1 >= 1 && month1 <= 9) {
+          month1 = '0' + month1
+        }
+
+        if (strDate >= 0 && strDate <= 9) {
+          strDate = '0' + strDate
+        }
+        if (strDate1 >= 0 && strDate1 <= 9) {
+          strDate1 = '0' + strDate1
+        }
+        this.startDate = year + '-' + month + '-' + strDate
+        this.endDate = year1 + '-' + month1 + '-' + strDate1
+        this.value = [this.startDate, this.endDate]
+      },
+      handleClose() {
+        this.formData = {}
+        this.radio = "1"
+        this.dialogVisible = false
+      },
+      onChange() {
+        this.$refs.upload
+          .handleSaveBill()
+          .then(async response => {
+            this.formData.addressUrl = response
+          })
+          .catch(res => {
+            EventBus.$emit('error', (JSON.parse(res) || {}).message)
+            this.$refs.upload.clearFiles()
+          })
+      },
+      getList() {
+        getOutMoney({
+            // warehouseType: 1,
+            compId: localStorage.getItem('ws-pf_compId'),
+            startDate: this.startDate,
+            endDate: this.endDate,
+            searchKeyWord: this.searchKeyWord,
+            currentPage: this.currentPage,
+            pageSize: this.pageSize,
+            searchType: this.searchType
+          })
+          .toPromise()
+          .then(response => {
+            this.inmoney = 0
+             this.outmoney = 0
+            this.tableData = response.records
+            for(let count = 0 ; count < this.tableData.length ; count++){
+              if(this.tableData[count].reexType == '收入'){
+                this.inmoney += this.tableData[count].amountMoney
+              }
+              if(this.tableData[count].reexType == '支出'){
+                 this.outmoney += this.tableData[count].amountMoney
+              }
+            }
+            this.deptBudgetTotal = response.total
+          })
+      },
+      changeDate() {
+        if (this.value) {
+          this.startDate = this.value[0]
+          this.endDate = this.value[1]
+        }
+        this.getList()
+      },
+      pickerOptions() {},
+      find() {
+        this.getList()
+
+      },
+      handleSizeChange(val) {
+        console.log(`每页 ${val} 条`)
+        this.pageSize = val
+        this.getList()
+      },
+      handleCurrentChange(val) {
+        this.currentPage = val
+        console.log(`当前页: ${val}`)
+        this.getList()
+      },
+    },
+  }
+</script>
+<style lang="scss" scoped>
+  .container {
+    background: #E8ECF6;
+  }
+
+  .center {
+    margin: 0 auto;
+    background: #ffffff;
+    height: calc(100vh - 13vh);
+    border-radius: 4px;
+    padding: 20px 0;
+
+    /deep/.el-table td,
+    /deep/.el-table th {
+      text-align: center;
+    }
+  }
+
+  .row_top {
+    background: #F6F7FC;
+    border-radius: 4px;
+    margin-bottom: 10px;
+
+    .bg-left {
+      padding-left: 30px;
+    }
+
+    .bg-right {
+      padding-right: 10px;
+      text-align: right;
+    }
+
+    .title {
+      position: relative;
+    }
+
+    .title::before {
+      content: '';
+      display: inline-block;
+      width: 5px;
+      height: 30px;
+      background: #5473e8;
+      position: absolute;
+      left: 0;
+    }
+  }
+
+  .datascreen {
+    display: flex;
+
+    .data_css {
+      width: 40%;
+    }
+
+    .input_css {
+      width: 50%;
+      margin: 0 10px;
+    }
+
+    .find {
+      margin-right: 10px;
+    }
+  }
+
+  .fromdata {
+    margin: 10px 0;
+    overflow-y: scroll;
+    height: 546px;
+
+    .icon_css {
+      font-size: 15px;
+
+      color: #5473e8;
+
+    }
+  }
+
+  /deep/.title_css .el-dialog__header {
+    text-align: center !important;
+    border-radius: 4px;
+  }
+
+  .btn_css {
+    margin: 10px 10px 0;
+    justify-content: flex-end;
+    display: flex;
+  }
+
+  .top_info {
+    margin: 16px 0 0 10px;
+    min-width: 712px;
+
+    .info_css {
+      margin-right: 15px;
+    }
+  }
+
+  .audit {
+    margin-bottom: 20px;
+    border-bottom: 1px solid #AFB3BF;
+    height: 70px;
+
+    .audit_item {
+      width: 100%;
+      display: flex;
+      height: 30px;
+
+      .audit_name {
+        margin-right: 30px;
+        font-size: 16px;
+        font-weight: 600;
+      }
+
+      .audit_left {
+        width: 60%;
+      }
+
+      .audit_date {
+        width: 40%;
+        justify-content: flex-end;
+        display: flex;
+        color: #AFB3BF;
+      }
+    }
+
+    .audit_opinion {}
+  }
+</style>

+ 359 - 0
src/views/profitable/earningsLook.vue

@@ -0,0 +1,359 @@
+//盈收概览
+<template>
+  <div class="container">
+    <el-row class="row_top">
+      <el-col :span="12">
+        <h2 class="bg-left title">盈收概览</h2>
+      </el-col>
+      <el-col :span="12" class="bg-right"></el-col>
+    </el-row>
+    <div class="center">
+      <div class="datascreen">
+        <el-date-picker v-model="value" type="daterange" align="right" unlink-panels range-separator="至"
+          start-placeholder="开始日期" end-placeholder="结束日期" :picker-options="pickerOptions">
+        </el-date-picker>
+      </div>
+      <div class="chart_css">
+        <div class="table">
+          <div ref="myEchart7" style="height: 410px;"></div>
+        </div>
+        <div class="makeWord_css">
+          <div ref="myEchart6" style="height: 410px"></div>
+        </div>
+      </div>
+      <div class="table_css">
+        <el-table :data="valueData" style="width: 100%">
+          <el-table-column prop="date" label="货名/货值" min-width="110">
+            <div slot-scope="scope">
+              <span v-if="scope.$index == 0">期初货值(元)</span>
+              <span v-if="scope.$index == 1">期末货值(元)</span>
+            </div>
+
+          </el-table-column>
+          <el-table-column prop="date" label="玉米"></el-table-column>
+          <el-table-column prop="date" label="玉米"></el-table-column>
+          <el-table-column prop="date" label="玉米"></el-table-column>
+          <el-table-column prop="date" label="货名"></el-table-column>
+          <el-table-column prop="date" label="货名"></el-table-column>
+          <el-table-column prop="date" label="货名"></el-table-column>
+          <el-table-column prop="date" label="货名"></el-table-column>
+          <el-table-column prop="date" label="货名"></el-table-column>
+          <el-table-column prop="date" label="货名"></el-table-column>
+          <el-table-column prop="date" label="合计" min-width="130">
+            <div slot-scope="scope">
+              <span v-if="scope.$index == 0">合计:</span>
+              <span v-if="scope.$index == 1">合计:1000000000</span>
+            </div>
+          </el-table-column>
+        </el-table>
+
+      </div>
+    </div>
+  </div>
+</template>
+<script>
+  import {} from '@/model/profitable/index'
+  export default {
+    components: {},
+    data() {
+      return {
+        value: [],
+        profitList: [{
+          name: "玉米",
+          count: 2000,
+        }],
+        makeWordData: {},
+        valueData: [{
+            date: 10
+          },
+          {
+            date: 20
+          }
+        ], //货值
+
+      }
+    },
+    activated() {
+      this.makeWordData = this.getData(2)
+      this.initCharts()
+      this.getPassYearFormatDate()
+      this.getList()
+    },
+    methods: {
+      getList() {
+        // getceshi({
+        //  driverId:'8f1f3c624d7946d79a9d44a4057d969b'
+        // })
+        // .toPromise()
+        // .then((response) => {
+        // debugger
+        // console.log(response)
+        // })
+
+      },
+      getPassYearFormatDate() {
+        var nowDate = new Date()
+        var _date = new Date()
+        nowDate.setTime(nowDate.getTime() - 24 * 60 * 60 * 1000 * 30)
+        var year = nowDate.getFullYear()
+        var year1 = _date.getFullYear()
+        var month = nowDate.getMonth() + 1
+        var month1 = _date.getMonth() + 1
+        var strDate = nowDate.getDate()
+        var strDate1 = _date.getDate()
+        if (month >= 1 && month <= 9) {
+          month = '0' + month
+        }
+        if (month1 >= 1 && month1 <= 9) {
+          month1 = '0' + month1
+        }
+
+        if (strDate >= 0 && strDate <= 9) {
+          strDate = '0' + strDate
+        }
+        if (strDate1 >= 0 && strDate1 <= 9) {
+          strDate1 = '0' + strDate1
+        }
+        this.startDate = year + '-' + month + '-' + strDate
+        this.endDate = year1 + '-' + month1 + '-' + strDate1
+        this.value = [this.startDate, this.endDate]
+      },
+      pickerOptions() {
+
+      },
+      initCharts() {
+        let app = this;
+        let myChart7 = app.$echarts.init(this.$refs.myEchart7);
+        let myChart6 = app.$echarts.init(this.$refs.myEchart6);
+        var option;
+        var graphical;
+        graphical = {
+          title: {
+            text: '盈利',
+            subtext: '利润',
+            left: 'center'
+          },
+          tooltip: {
+            trigger: 'item',
+            formatter: '{b} : {c} ({d}%)'
+          },
+          legend: {
+            type: 'scroll',
+            orient: 'vertical',
+            right: 10,
+            top: 20,
+            bottom: 20,
+            data: this.makeWordData.legendData
+          },
+          series: [{
+            // name: '姓名',
+            type: 'pie',
+            radius: '55%',
+            center: ['40%', '50%'],
+            data: this.makeWordData.seriesData,
+            emphasis: {
+              itemStyle: {
+                shadowBlur: 10,
+                shadowOffsetX: 0,
+                shadowColor: 'rgba(0, 0, 0, 0.5)'
+              }
+            }
+          }],
+
+        }
+        myChart6.setOption(graphical)
+        option = {
+            // title: {
+            //   text: 'Rainfall vs Evaporation',
+            //   subtext: 'Fake Data'
+            // },
+            tooltip: {
+              trigger: 'axis'
+            },
+            legend: {
+              data: ['支出', '收入']
+            },
+            toolbox: {
+              show: true,
+              feature: {
+                dataView: {
+                  show: false,
+                  readOnly: false
+                },
+                magicType: {
+                  show: false,
+                  type: ['line', 'bar']
+                },
+                restore: {
+                  show: false
+                },
+                saveAsImage: {
+                  show: false
+                }
+              }
+            },
+            calculable: true,
+            xAxis: [{
+              name: '种类',
+              type: 'category',
+              // prettier-ignore
+              data: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct']
+            }],
+            yAxis: [{
+              name: '储量(吨)',
+              type: 'value'
+            }],
+            series: [{
+                name: '支出',
+                type: 'bar',
+                right: 0,
+                // label: {
+                //   show: true,
+                //   position: 'inside'
+                // },
+                 label: {
+                  show: true,
+                  precision: 1,
+                  position: 'top',
+                  valueAnimation: true,
+                  fontFamily: 'monospace'
+                },
+                data: [
+                  6.0, 60.9, 90.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0
+                ],
+                color: ['#5878E8 '],
+                formatter: '{value} 元',
+
+              },
+              {
+                name: '收入',
+                type: 'bar',
+                right: 20,
+                label: {
+                  show: true,
+                  precision: 1,
+                  position: 'top',
+                  valueAnimation: true,
+                  fontFamily: 'monospace'
+                },
+                data: [
+                  102.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8
+                ],
+                color: ['#FF9F24'],
+                formatter: '{value} 元',
+              }
+            ]
+          },
+          myChart7.setOption(option)
+      },
+      getData(count) {
+        // prettier-ignore
+        const nameList = [
+          '支出', '收入'
+        ];
+        const legendData = [];
+        const seriesData = [];
+        for (var i = 0; i < count; i++) {
+          var name = nameList[i]
+          // Math.random() > 0.65 ?  makeWord(4, 1) + '·' + makeWord(3, 0) :  makeWord(2, 1);
+          legendData.push(name);
+          seriesData.push({
+            name: name,
+            value: Math.round(Math.random() * 100000)
+          });
+        }
+
+        return {
+          legendData: legendData,
+          seriesData: seriesData
+        };
+
+        // function makeWord(max, min) {
+        //   debugger
+        //   const nameLen = Math.ceil(Math.random() * max + min);
+        //   const name = [];
+        //   for (var i = 0; i < nameLen; i++) {
+        //     name.push(nameList[Math.round(Math.random() * nameList.length - 1)]);
+        //   }
+        //   return name.join('');
+        // }
+
+      }
+    },
+  }
+</script>
+<style lang="scss" scoped>
+  .container {
+    background: #E8ECF6;
+  }
+
+  .center {
+    margin: 0 auto;
+    background: #ffffff;
+    height: calc(100vh - 13vh);
+    border-radius: 4px;
+    margin-top: 10px;
+  }
+
+  .row_top {
+    background: #F6F7FC;
+    border-radius: 4px;
+
+    .bg-left {
+      padding-left: 30px;
+    }
+
+    .bg-right {
+      padding-right: 10px;
+      text-align: right;
+    }
+
+    .title {
+      position: relative;
+    }
+
+    .title::before {
+      content: '';
+      display: inline-block;
+      width: 5px;
+      height: 30px;
+      background: #5473e8;
+      position: absolute;
+      left: 0;
+    }
+  }
+
+  .datascreen {
+    // margin-top: 10px;
+    width: 500px;
+    height: 60px;
+    line-height: 60px;
+    margin-left: 30px;
+
+  }
+
+  .chart_css {
+    display: flex;
+    height: 410px;
+
+    .table {
+      width: 70%;
+      height: 410px;
+    }
+
+    .makeWord_css {
+      width: 30%;
+      height: 410px;
+      margin-left: 30px;
+    }
+  }
+
+  .table_css {
+
+    /deep/.el-table th,
+    /deep/.el-table td {
+      text-align: center;
+    }
+
+  }
+</style>

+ 238 - 0
src/views/profitable/inOutDetailed.vue

@@ -0,0 +1,238 @@
+//收支明细
+<template>
+  <div class="container">
+    <el-row class="row_top">
+      <el-col :span="12">
+        <h2 class="bg-left title">收支明细</h2>
+      </el-col>
+      <el-col :span="12" class="bg-right"></el-col>
+    </el-row>
+
+    <div class="center">
+      <el-row>
+        <el-col :span="12">
+          <el-button style="margin-left:10px" @click="typeChange('')" :type="!searchType?'primary':''">全部</el-button>
+          <el-button @click="typeChange(1)" :type="searchType == 1?'primary':''">收入</el-button>
+          <el-button @click="typeChange(2)" :type="searchType == 2?'primary':''">支出</el-button>
+          <div class="top_info">
+           <span class="info_css">合同收入:{{tableData.length > 0 && tableData[0].inContractMoney? tableData[0].inContractMoney:0}}元</span><span class="info_css">仓库收入:{{tableData.length > 0 && tableData[0].inWarehouseMoney? tableData[0].inWarehouseMoney:0}}元</span><span class="info_css">经营收入:{{tableData.length > 0 && tableData[0].inManageMoney? tableData[0].inManageMoney:0}}元</span><span class="info_css">合计收入:{{intotal}}元</span>   
+          </div>
+          <div class="top_info">
+            <span class="info_css">合同支出:{{tableData.length > 0 && tableData[0].outContractMoney? tableData[0].outContractMoney:0}}元</span><span class="info_css">仓库支出:{{tableData.length > 0 && tableData[0].outWarehouseMoney? tableData[0].outWarehouseMoney:0}}元</span><span class="info_css">经营支出:{{tableData.length > 0 && tableData[0].outManageMoney? tableData[0].outManageMoney:0}}元</span><span class="info_css">合计支出:{{outtotal}}元</span> <span class="info_css">毛利润:{{Number(intotal - outtotal)}}元</span>
+          </div>
+        </el-col>
+        <el-col :span="12">
+          <div class="datascreen">
+            <el-date-picker value-format='yyyy-MM-dd' v-model="value" type="daterange" align="right" unlink-panels range-separator="至"
+              start-placeholder="开始日期" end-placeholder="结束日期" :picker-options="pickerOptions" class="data_css" @change="changeDate" >
+            </el-date-picker>
+            <el-input placeholder="按费用名称或费用说明查找" class="input_css" v-model="searchKeyWord"></el-input>
+            <el-button class="find" type="primary" @click="find()"><img width="16" height="16" style="left: -8px;"
+                src="../../../public/img/sousuo.png" alt="" /></el-button>
+          </div>
+        </el-col>
+      </el-row>
+      <div class="fromdata">
+        <el-table :data="tableData" stripe style="width: 100%">
+          <el-table-column type="index" label="序号">
+            <template scope="scope">
+              <span v-if="scope.$index < 9">0{{ scope.$index + 1 }}</span>
+              <span v-else>{{ scope.$index + 1 }}</span>
+            </template>
+          </el-table-column>
+          <el-table-column prop="reexType" label="类型"></el-table-column>
+          <el-table-column prop="createDate" label="录入日期"></el-table-column>
+          <el-table-column prop="amountMoney" label="金额(元)"></el-table-column>
+          <el-table-column prop="expenseName" label="费用名称"></el-table-column>
+          <el-table-column prop="expenseRemarks" label="费用说明"></el-table-column>
+        </el-table>
+      </div>
+      <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
+        style="text-align:center" :page-size="deptCircularPage.pageSize"
+        layout="total, sizes, prev, pager, next, jumper" :total="deptBudgetTotal">
+      </el-pagination>
+    </div>
+  </div>
+</template>
+<script>
+  import {
+    getInOutDetailed
+  } from '@/model/profitable/index'
+  export default {
+    components: {},
+    data() {
+      return {
+        value: "",
+        tableData: [],
+        deptBudgetTotal: 0,
+        currentPage: 1,
+        pageSize: 10,
+        deptCircularPage: {},
+        searchType:"",
+        searchKeyWord:"",
+        startDate:"",
+        endDate:"",
+        outtotal:0,
+        intotal:0,
+      }
+    },
+    activated() {
+         this.getPassYearFormatDate()
+      this.getList()
+    },
+    methods: {
+      typeChange(num){
+        this.searchType = num
+        this.getList()
+      },
+      getPassYearFormatDate () {
+          var nowDate = new Date()
+          var _date = new Date()
+          nowDate.setTime(nowDate.getTime()-24*60*60*1000*30)
+          var year = nowDate.getFullYear()
+          var year1 = _date.getFullYear()
+          var month = nowDate.getMonth() + 1
+          var month1 = _date.getMonth() + 1
+          var strDate = nowDate.getDate()
+          var strDate1 = _date.getDate()
+          if (month >= 1 && month <= 9) {
+            month = '0' + month
+          }
+           if (month1 >= 1 && month1 <= 9) {
+            month1 = '0' + month1
+          }
+        
+          if (strDate >= 0 && strDate <= 9) {
+            strDate = '0' + strDate
+          }
+           if (strDate1 >= 0 && strDate1 <= 9) {
+            strDate1 = '0' + strDate1
+          }
+          this.startDate = year + '-' + month +'-' + strDate
+          this.endDate = year1 + '-' + month1 +'-' + strDate1
+          this.value=[this.startDate,this.endDate]
+        },
+      getList() {
+         getInOutDetailed({
+            // warehouseType: 1,
+            compId: localStorage.getItem('ws-pf_compId'),
+            startDate:this.startDate,
+            endDate:this.endDate,
+            searchKeyWord:this.searchKeyWord,
+            currentPage: this.currentPage,
+            pageSize:this.pageSize ,
+            searchType:this.searchType
+          })
+          .toPromise()
+          .then(response => {
+            this.tableData = response.records
+            if(this.tableData.length > 0){
+              this.intotal = Number(this.tableData[0].inContractMoney) + Number(this.tableData[0].inWarehouseMoney) + Number(this.tableData[0].inManageMoney)
+            this.outtotal = Number(this.tableData[0].outContractMoney) + Number(this.tableData[0].outWarehouseMoney) + Number(this.tableData[0].outManageMoney)
+            }
+            
+           this.deptBudgetTotal = response.total
+          })
+      },
+      changeDate(){
+        if(this.value){
+          this.startDate = this.value[0]
+          this.endDate = this.value[1]
+        }
+        this.getList()
+      },
+      pickerOptions() {},
+      find() {
+        this.getList()
+
+      },
+      handleSizeChange(val) {
+        console.log(`每页 ${val} 条`)
+        this.pageSize = val
+        this.getList()
+      },
+      handleCurrentChange(val) {
+        this.currentPage = val
+        console.log(`当前页: ${val}`)
+        this.getList()
+      },
+    },
+  }
+</script>
+<style lang="scss" scoped>
+  .container {
+    background: #E8ECF6;
+  }
+
+  .center {
+    margin: 0 auto;
+    background: #ffffff;
+    height: calc(100vh - 13vh);
+    border-radius: 4px;
+    padding: 20px 0;
+
+    /deep/.el-table td,
+    /deep/.el-table th {
+      text-align: center;
+    }
+  }
+
+  .row_top {
+    background: #F6F7FC;
+    border-radius: 4px;
+    margin-bottom: 10px;
+
+    .bg-left {
+      padding-left: 30px;
+    }
+
+    .bg-right {
+      padding-right: 10px;
+      text-align: right;
+    }
+
+    .title {
+      position: relative;
+    }
+
+    .title::before {
+      content: '';
+      display: inline-block;
+      width: 5px;
+      height: 30px;
+      background: #5473e8;
+      position: absolute;
+      left: 0;
+    }
+  }
+
+  .datascreen {
+    display: flex;
+
+    .data_css {
+      width: 40%;
+    }
+
+    .input_css {
+      width: 50%;
+      margin: 0 10px;
+    }
+
+    .find {
+      margin-right: 10px;
+    }
+  }
+
+  .fromdata {
+    margin: 20px 0;
+    overflow-y: scroll;
+    height: 546px;
+  }
+  .top_info{
+    margin: 10px 0 0 10px;
+    min-width: 712px;
+    .info_css{
+      margin-right: 20px;
+    }
+  }
+</style>

+ 39 - 45
src/views/tradeServicesManagement/inOutRecord.vue

@@ -66,7 +66,7 @@
       @selection-change="handleSelectionChange"
       :data="recordList"
       style="width: 100%"
-      height="780"
+      border height="calc(100% - 170px)"
     >
       <el-table-column type="selection" width="55"></el-table-column>
       <el-table-column type="index" label="序号" width="50">
@@ -77,7 +77,6 @@
       </el-table-column>
       <el-table-column prop="goodsName" label="货名"> </el-table-column>
       <el-table-column prop="grossWeight" label="毛重(吨)"> 
-        <template slot-scope="scope">{{scope.grossWeight}}</template>
       </el-table-column>
       <el-table-column prop="tare" label="皮重(吨)"> 
          </el-table-column>
@@ -101,6 +100,12 @@
       </el-table-column>
       <el-table-column prop="inOutDate" label="出入库日期"> </el-table-column>
     </el-table>
+    <div style="text-align: center">
+      <!-- 页数 -->
+      <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
+        :page-sizes="[10, 30, 50, 100, 500, 1000, 9999]" layout="total, sizes, prev, pager, next, jumper"
+        :total="deptBudgetTotal"></el-pagination>
+    </div>
     <el-dialog :visible.sync="isShowadjustment" title="调整">
       <div>
         <el-input
@@ -345,6 +350,7 @@
             <td class="col" colspan="7">{{ printData.capitalize }}</td>
           </tr>
         </table>
+        
         <div class="bottom">
           <div class="bottom-row1">
             <div>
@@ -354,7 +360,6 @@
             <div>皮检:{{ printData.weighingManagement.skinInspector }}</div>
             <div>结算:{{ printData.settlementClerk }}</div>
             <div>付款:{{ printData.cashier }}</div>
-            <div>复点:{{}}</div>
             <div></div>
           </div>
           <div class="bottom-row2">
@@ -390,18 +395,7 @@
           <el-button type="primary" @click="printBig">打印单据</el-button>
         </div>
       </el-dialog> -->
-       <div class="pageNumber">
-    <!-- 页数 -->
-      <el-pagination
-        @size-change="handleSizeChange"
-        @current-change="handleCurrentChange"
-        :current-page="currentPage"
-        :page-size="deptCircularPage.pageSize"
-        layout="total, sizes, prev, pager, next, jumper"
-        :total="deptBudgetTotal"
-      >
-      </el-pagination>
-      </div>
+       
   </div>
 </template>
 <script>
@@ -449,12 +443,12 @@ export default {
        printList1: [],
       newList:[],
       count:0,
-      startDate:"",
-      endDate:"",
+      startDate:'',
+      endDate:'',
     }
   },
   activated() {
-    localStorage.setItem("pageUp","1")
+    localStorage.setItem('pageUp','1')
     this.deptBudgetList.baseId = this.$route.query.baseId
     this.deptBudgetList.positionId = this.$route.query.positionId
     this.deptBudgetList.warehouseName = this.$route.query.warehouseName
@@ -464,8 +458,8 @@ export default {
   },
   methods: {
     find(){
-        this.startDate = ""
-        this.endDate = ""
+        this.startDate = ''
+        this.endDate = ''
       if(this.value2){
           this.startDate = this.dateFormat('YYYY-mm-dd', this.value2[0])
           this.endDate = this.dateFormat('YYYY-mm-dd', this.value2[1])
@@ -486,27 +480,27 @@ export default {
       })
         .toPromise()
         .then((res) => {
-          for (let i = 0; i < res.records.length; i++) {
-            if (res.records[i].grossWeight) {
-              res.records[i].grossWeight = Number(res.records[i].grossWeight * 1000).toFixed(3)
-            }
-            if (res.records[i].tare) {
-              res.records[i].tare = Number(res.records[i].tare * 1000).toFixed(3)
-            }
-            if (res.records[i].netWeight) {
-              res.records[i].netWeight = Number(res.records[i].netWeight*1000).toFixed(3)
+          // for (let i = 0; i < res.records.length; i++) {
+          //   if (res.records[i].grossWeight) {
+          //     res.records[i].grossWeight = Number(res.records[i].grossWeight * 1000).toFixed(3)
+          //   }
+          //   if (res.records[i].tare) {
+          //     res.records[i].tare = Number(res.records[i].tare * 1000).toFixed(3)
+          //   }
+          //   if (res.records[i].netWeight) {
+          //     res.records[i].netWeight = Number(res.records[i].netWeight*1000).toFixed(3)
               
-            }
-            if (
-              res.records[i].grossWeight &&
-              res.records[i].tare &&
-              res.records[i].netWeight
-            ) {
-              res.records[i].weight = Number(res.records[i].grossWeight - res.records[i].tare -  res.records[i].netWeight).toFixed(3)
-            } else {
-              res.records[i].weight = null
-            }
-          }
+          //   }
+          //   if (
+          //     res.records[i].grossWeight &&
+          //     res.records[i].tare &&
+          //     res.records[i].netWeight
+          //   ) {
+          //     res.records[i].weight = Number(res.records[i].grossWeight - res.records[i].tare -  res.records[i].netWeight).toFixed(3)
+          //   } else {
+          //     res.records[i].weight = null
+          //   }
+          // }
           this.recordList = res.records
           this.deptBudgetTotal = res.total
         })
@@ -583,14 +577,14 @@ export default {
       this.printList1 = []
       this.count = 0
        for(let j = 0 ; j < this.ruleForm.type.length ; j++){
-          if(this.ruleForm.type[j] == "打印磅单"){
+          if(this.ruleForm.type[j] == '打印磅单'){
               for(let i = 0 ; i < selection.length ; i++){
                 // selection[i].printType = "打印磅单"
               selection[i].code = this.getdate() + selection[i].commonWarehouseNo + this.verifyinit()
                  this.printList.push(selection[i])
               }
           }
-         else if(this.ruleForm.type[j] == "打印结算单"){
+         else if(this.ruleForm.type[j] == '打印结算单'){
             for(let index = 0 ; index < selection.length ; index++){
               if(!selection[index].paymentId){
                  this.$message.error('只有收购入库的条目才能打印结算单,请重新勾选!')
@@ -600,7 +594,7 @@ export default {
             this.printSettlementSheet(selection)
           }
         }
-        if(this.ruleForm.type.length == 1 && this.ruleForm.type[0] == "打印磅单"){
+        if(this.ruleForm.type.length == 1 && this.ruleForm.type[0] == '打印磅单'){
             sessionStorage.setItem('inOutRecord_printBD', JSON.stringify(this.printList))
              window.open('../../../../../static/tradeServicesPrint.html')
         }
@@ -616,8 +610,8 @@ export default {
                  if(this.count == list.length){
                    sessionStorage.setItem('inOutRecord_printBD', JSON.stringify(this.printList))
                     sessionStorage.setItem('inOutRecord_printJSD', JSON.stringify(this.printList1))
-                    console.log("磅单",this.printList)
-                    console.log("结算单",this.printList1)
+                    console.log('磅单',this.printList)
+                    console.log('结算单',this.printList1)
                    window.open('../../../../../static/tradeServicesPrint.html')
                     }
                })

+ 42 - 21
src/views/tradeServicesManagement/warehouseReceiptAdd.vue

@@ -29,13 +29,13 @@
       </el-form-item>
       <el-form-item label="仓库名称" prop="warehouseName" class="forlist">
         <el-select v-model="deptBudgetList.warehouseName" filterable placeholder="请选择仓库" @change="changeWarehouse" clearable>
-          <el-option v-for="(item,index) in warehouseList" :key='index' :label="item.warehouseName" :value="item.id">
+          <el-option v-for="(item,index) in warehouseList" :key='index' :label="item.warehouseName" :value="item.warehouseName">
           </el-option>
         </el-select>
       </el-form-item>
       <el-form-item label="仓位号" prop="warehouseNo" class="forlist">
         <el-select v-model="deptBudgetList.warehouseNo" placeholder="请选择仓位号" @change="changeWarehouseNo" filterable clearable>
-          <el-option :label="item.binNumber" :value="item.id" v-for="(item,index) in cwNumberList" :key='index'>
+          <el-option :label="item.binNumber" :value="item.binNumber" v-for="(item,index) in cwNumberList" :key='index'>
           </el-option>
         </el-select>
       </el-form-item>
@@ -43,19 +43,20 @@
         <el-input disabled v-model="deptBudgetList.warehouseAddress" placeholder="请输入仓库地址" size="small"></el-input>
       </el-form-item>
       <el-form-item prop="goodsName" label="货名">
-        <el-select v-model="deptBudgetList.goodsName" placeholder="请选择货名" @change="changeGoodsName" filterable clearable>
-          <el-option :label="item.goodsName" :value="item.id" v-for="(item,index) in goodsList" :key='index' >
+        <el-select v-model="deptBudgetList.goodsName" placeholder="请选择货名" @change="dataFlush" filterable clearable>
+          <el-option v-for="item in goodsList" :key="item.goodsName" :label="item.goodsName"
+                  :value="item.goodsName" >
           </el-option>
         </el-select>
       </el-form-item>
-      <el-form-item prop="grade" label="品级">
+      <!-- <el-form-item prop="grade" label="品级">
         <el-select v-model="deptBudgetList.grade" placeholder="请选择品级" filterable clearable>
           <el-option label="一等" value="一等"></el-option>
           <el-option label="二等" value="二等"></el-option>
           <el-option label="三等" value="三等"></el-option>
           <el-option label="等外" value="等外"></el-option>
         </el-select>
-      </el-form-item>
+      </el-form-item> -->
       <el-form-item label="现有储量" prop="nowWeight" class="forlist">
         <el-input disabled v-model="deptBudgetList.nowWeight" placeholder="请输入现有储量" size="small"></el-input>
       </el-form-item>
@@ -122,7 +123,12 @@
     data() {
       return {
         deptBudgetList: {
-          grade:"二等"
+          goodsName:'',
+          goodsNameKey:'',
+          useWeight:'',
+          nowWeight:'',
+          warehouseNo:'',
+          warehouseName:''
         },
         size: 10,
         compId: '',
@@ -143,7 +149,7 @@
     activated() {
       this.compId = localStorage.getItem('ws-pf_compId')
       this.deptBudgetList.compId = this.compId
-      let i = localStorage.getItem("pageUp")
+      let i = localStorage.getItem('pageUp')
       if(i != 1){
       this.getcompList()
       this.getList()
@@ -166,10 +172,10 @@
       },
       getList() {
         // this.deptBudgetList.grade = '二等'
-        WarehouseReceiptBankList({constId:"BANK1"}).toPromise().then((response) => {
+        WarehouseReceiptBankList({constId:'BANK1'}).toPromise().then((response) => {
           this.bankList = response
         })
-         WarehouseReceiptBankList({constId:"THREE1"}).toPromise().then((response) => {
+         WarehouseReceiptBankList({constId:'THREE1'}).toPromise().then((response) => {
           this.threeList = response
         })
 
@@ -218,10 +224,10 @@
                   this.deptBudgetList.goodsName = this.goodsList[0].goodsName
                   this.deptBudgetList.goodsNameKey = response[0].goodsNameInfos.length != 0 ? response[0].goodsNameInfos[0].goodsNameKey : ''
                 }else {
-                    this.deptBudgetList.nowWeight = ""
-                  this.deptBudgetList.useWeight = ""
-                  this.deptBudgetList.goodsName =""
-                  this.deptBudgetList.goodsNameKey = ""
+                    this.deptBudgetList.nowWeight = ''
+                  this.deptBudgetList.useWeight = ''
+                  this.deptBudgetList.goodsName =''
+                  this.deptBudgetList.goodsNameKey = ''
                 }
             
               }
@@ -235,12 +241,26 @@
       changeGoodsName(val) {
         let _data = this.goodsList
         for (let i = 0; i < _data.length; i++) {
-          if (_data[i].id == val) {
+          if (_data[i].goodsName == val) {
             this.deptBudgetList.goodsNameKey = _data[i].goodsNameKey
             this.deptBudgetList.goodsName = _data[i].goodsName
             this.deptBudgetList.nowWeight = _data[i].storage
             this.deptBudgetList.useWeight =  _data[i].useStorage                                       
-            return
+          }
+        }
+      },
+      dataFlush(){
+        for (let i = 0; i < this.warehouseList.length; i++) {
+          if (this.warehouseList[i].warehouseName == this.deptBudgetList.warehouseName) {
+            let tmpGoodsName = this.warehouseList[i].goodsNameInfos;
+            for(let j = 0;j<tmpGoodsName.length;j++){
+              if(tmpGoodsName[j].binNumber == this.deptBudgetList.warehouseNo){
+                if(tmpGoodsName[j].goodsName == this.deptBudgetList.goodsName){
+                  this.deptBudgetList.useWeight = tmpGoodsName[j].useStorage;
+                  this.deptBudgetList.nowWeight = tmpGoodsName[j].storage;
+                }
+              }
+            }                                   
           }
         }
       },
@@ -257,7 +277,7 @@
         
         let _data = this.cwNumberList
         for (let i = 0; i < _data.length; i++) {
-          if (_data[i].id == val) {
+          if (_data[i].binNumber == val) {
             this.deptBudgetList.warehouseNoId = _data[i].id
             this.deptBudgetList.warehouseNo = _data[i].binNumber
             this.deptBudgetList.baseId = _data.baseId
@@ -274,10 +294,11 @@
           }
         }
         if(this.goodsList.length == 0){
-          this.deptBudgetList.goodsName = ""
+          this.deptBudgetList.goodsName = ''
         }else{
            this.deptBudgetList.goodsName = this.goodsList[0].goodsName
         }
+        this.dataFlush();
       },
       // 名头切换
       changeCompOptionList(val) {
@@ -296,7 +317,7 @@
         console.log('切换后仓库数据', val)
         let _data = this.warehouseList
         for (let i = 0; i < _data.length; i++) {
-          if (_data[i].id == val) {
+          if (_data[i].warehouseName == val) {
             this.deptBudgetList.warehouseName = _data[i].warehouseName
             this.cwNumberList = _data[i].positionInfos.length != 0 ? _data[i].positionInfos : []
             this.deptBudgetList.warehouseNo = _data[i].positionInfos.length != 0 ? _data[i].positionInfos[0].binNumber : ''
@@ -404,7 +425,7 @@
           }).then(() => {
             addList(this.deptBudgetList).toPromise().then((response) => {
               // this.tableData = response.records
-              localStorage.removeItem("pageUp")
+              localStorage.removeItem('pageUp')
               this.$message.success('提交成功')
               this.$router.push({
                 path: 'warehouseReceiptRegulation'
@@ -428,7 +449,7 @@
           })
       },
       cancel() {
-        localStorage.removeItem("pageUp")
+        localStorage.removeItem('pageUp')
         this.$router.push({
           path: 'warehouseReceiptRegulation'
         })

+ 3 - 3
src/views/tradeServicesManagement/warehouseReceiptLook.vue

@@ -52,14 +52,14 @@
           </el-option>
         </el-select>
       </el-form-item>
-      <el-form-item prop="grade" label="品级" span="1">
+      <!-- <el-form-item prop="grade" label="品级" span="1">
         <el-select v-model="deptBudgetList.grade" placeholder="请选择品级" disabled>
           <el-option label="一等" value="一等"></el-option>
           <el-option label="二等" value="二等"></el-option>
           <el-option label="三等" value="三等"></el-option>
           <el-option label="等外" value="等外"></el-option>
         </el-select>
-      </el-form-item>
+      </el-form-item> -->
       <el-form-item label="现有储量" span="1" prop="nowWeight" class="forlist" disabled>
         <el-input disabled v-model="deptBudgetList.nowWeight" placeholder="请输入现有储量" size="small" class="existing">
         </el-input>
@@ -184,7 +184,7 @@
       }
     },
     activated() {
-      localStorage.removeItem("pageUp")
+      localStorage.removeItem('pageUp')
       this.getList(this.$route.query.id)
       // this.getcompList()
     },

+ 0 - 1
src/views/tranManagement/tranManagementVehicle.vue

@@ -27,7 +27,6 @@
               left: -8px;
             " src="../../../public/img/sousuo.png" alt="" /></ws-button>
       </template>
-      
     </BaseHeaderLayout>
       <el-table class="wenzi" :data="warehouseList.records" style="width: 100%" height="calc(100% - 110px)">
         <el-table-column prop="warehouseName" label="序号" width="80">

+ 7 - 2
src/views/warehouse/warehouseManagementGross.vue

@@ -232,7 +232,7 @@
                   " src="../../../public/img/edit.png" @click="editClick(1)" alt="" />
               </ws-form-item>
               <ws-form-item label="运费(元/吨)" span="1" prop="freight">
-                <ws-input :disabled="disabled2" v-model="deptBudgetList.freight" placeholder="请输入运费" size="small"
+                <ws-input  v-model="deptBudgetList.freight" placeholder="请输入运费" size="small"
                   type="number" @mousewheel.native.prevent />
                 <img width="17" height="18" style="
                     vertical-align: text-top;
@@ -251,7 +251,7 @@
                   deptBudgetList.outType == '汽运' ||
                   deptBudgetList.outType == '集装箱船'
                 ">
-                <ws-input v-if="options2.length == 0 && deptBudgetList.inOutType != '移库入库'" v-model="deptBudgetList.carNo" placeholder="请输入车牌号" maxlength="7"
+                <ws-input v-if="(options2.length == 0 && deptBudgetList.inOutType != '移库入库')" v-model="deptBudgetList.carNo" placeholder="请输入车牌号" maxlength="7"
                   size="small" />
                 <el-select v-if="carstatus && options2.length == 0&&deptBudgetList.inOutType=='移库入库'" filterable clearable :filter-method="dataFilter2"
                   v-model="deptBudgetList.carNo" placeholder="请选择车牌号" class="typeselect" @change="carChange">
@@ -528,6 +528,7 @@
           grossWeight: '',
           tare: '',
           inOutDate: '',
+          outType:'汽运'
         },
         historyList: [],
         cost: '',
@@ -2416,6 +2417,10 @@
           .toPromise()
           .then((response) => {
             this.options = response
+            if(this.options.length>0){
+              this.deptBudgetList.personChargeKey = this.options[0].staffId
+              this.deptBudgetList.agent = this.options[0].staffName
+            }
             this.qualityInspectorList = response
             this.staffList = response
             //  this.agent = response

+ 1123 - 1128
src/views/warehousenew/warehouseManagementRecord.vue

@@ -1,1167 +1,1162 @@
 <template>
-	<div class="container">
-		<el-row>
-			<el-col :span="18">
-				<h2 class="bg-left title">流转记录</h2>
-			</el-col>
-			<el-col :span="6" class="bg-right">
-				<el-button class="bg-bottom" type="primary" size="small" @click="iossrecord()"
-					v-show="this.warehouseType != 2">盘损记录</el-button>
-				<el-button class="bg-bottom" type="primary" size="small" @click="returnWarehouse()">返回</el-button>
-			</el-col>
-		</el-row>
-		<div class="center">
-			<h2 style="padding-left: 20px">
-				<img style="position: relative; top: 2px" width="19" height="19" src="../../../public/img/cangku.png"
-					alt="" />
-				<span style="color: #323233">{{ deptBudgetList.warehouseName }}</span>
-				<div class="ware" v-show="warehouseType==1">
-					<!-- {{binNumber}}仓位(容量{{capacity}}吨) -->
-					<span class="binNo">仓位号:</span>
-					<el-select filterable clearable v-model="binNumber" placeholder="请选择仓位" class="typeselect"
-              @change="binNumberChange">
-			  <el-option  key="" label="全部仓位"
-                value="全部仓位" />
-              <el-option v-for="item in binnumberList" :key="item.binNumber" :label="item.binNumber"
-                :value="item.binNumber" />
-            </el-select>
-				</div>
-				<span v-show="warehouseType==2">(临)</span>
-			</h2>
-			<p v-if='remark' style="
+  <div class="container">
+    <el-row>
+      <el-col :span="18">
+        <h2 class="bg-left title">流转记录</h2>
+      </el-col>
+      <el-col :span="6" class="bg-right">
+        <el-button class="bg-bottom" type="primary" size="small" @click="iossrecord()" v-show="this.warehouseType != 2">
+          盘损记录</el-button>
+        <el-button class="bg-bottom" type="primary" size="small" @click="returnWarehouse()">返回</el-button>
+      </el-col>
+    </el-row>
+    <div class="center">
+      <h2 style="padding-left: 20px">
+        <img style="position: relative; top: 2px" width="19" height="19" src="../../../public/img/cangku.png" alt="" />
+        <span style="color: #323233">{{ deptBudgetList.warehouseName }}</span>
+        <div class="ware" v-show="warehouseType==1">
+          <!-- {{binNumber}}仓位(容量{{capacity}}吨) -->
+          <span class="binNo">仓位号:</span>
+          <el-select filterable clearable v-model="binNumber" placeholder="请选择仓位" class="typeselect"
+            @change="binNumberChange">
+            <el-option key="" label="全部仓位" value="全部仓位" />
+            <el-option v-for="item in binnumberList" :key="item.binNumber" :label="item.binNumber"
+              :value="item.binNumber" />
+          </el-select>
+        </div>
+        <span v-show="warehouseType==2">(临)</span>
+      </h2>
+      <p v-if='remark' style="
           margin-left: 42px;
           background: #f6f7fc;
           color: #afb5cb;
           width: 245px;
         ">
-				备注:{{remark }}
-			</p>
-
-			<ws-form ref="deptBudgetList" :model="deptBudgetList">
-				<div class="record" :class="{ active: status == 1 }" @click="record('', 1)">
-					<img v-if="status != 1" width="14" height="14" src="../../../public/img/radio.png" alt="" />
-					<img v-if="status == 1" width="18" height="18" src="../../../public/img/radio-check.png"
-						alt="" />全部记录
-				</div>
-				<div class="record" :class="{ active: status == 2 }" @click="record(2, 2)">
-					<img v-if="status != 2" width="14" height="14" src="../../../public/img/radio.png" alt="" />
-					<img v-if="status == 2" width="18" height="18" src="../../../public/img/radio-check.png"
-						alt="" />出库记录
-				</div>
-				<div class="record" :class="{ active: status == 3 }" @click="record(3, 3)">
-					<img v-if="status != 3" width="14" height="14" src="../../../public/img/radio.png" alt="" />
-					<img v-if="status == 3" width="18" height="18" src="../../../public/img/radio-check.png"
-						alt="" />入库记录
-				</div>
-				<el-date-picker  style="margin: 0 10px 0 0" class="dataClass" value-format='yyyy-MM-dd' v-model="value2" @change='datechange' type="daterange" align="right" range-separator="至"
-					start-placeholder="出入库日期起" end-placeholder="出入库日期止" >
-				</el-date-picker>
-		<ws-input
-          v-model="searchKeyWord"
-          placeholder="可按合同编号、车牌号查找"
-          clearable
-          maxlength="250"
-          type="input"
-		  class="input"
-        >
+        备注:{{remark }}
+      </p>
+
+      <ws-form ref="deptBudgetList" :model="deptBudgetList">
+        <div class="record" :class="{ active: status == 1 }" @click="record('', 1)">
+          <img v-if="status != 1" width="14" height="14" src="../../../public/img/radio.png" alt="" />
+          <img v-if="status == 1" width="18" height="18" src="../../../public/img/radio-check.png" alt="" />全部记录
+        </div>
+        <div class="record" :class="{ active: status == 2 }" @click="record(2, 2)">
+          <img v-if="status != 2" width="14" height="14" src="../../../public/img/radio.png" alt="" />
+          <img v-if="status == 2" width="18" height="18" src="../../../public/img/radio-check.png" alt="" />出库记录
+        </div>
+        <div class="record" :class="{ active: status == 3 }" @click="record(3, 3)">
+          <img v-if="status != 3" width="14" height="14" src="../../../public/img/radio.png" alt="" />
+          <img v-if="status == 3" width="18" height="18" src="../../../public/img/radio-check.png" alt="" />入库记录
+        </div>
+        <el-date-picker style="margin: 0 10px 0 0" class="dataClass" value-format='yyyy-MM-dd' v-model="value2"
+          @change='datechange' type="daterange" align="right" range-separator="至" start-placeholder="出入库日期起"
+          end-placeholder="出入库日期止">
+        </el-date-picker>
+        <ws-input v-model="searchKeyWord" placeholder="可按合同编号、车牌号查找" clearable maxlength="250" type="input"
+          class="input">
         </ws-input>
         <!-- v-hasPermission="'procurement.sparepart.directShip'" -->
         <ws-button class="find" type="primary" @click="find()">
-          <img
-            width="16"
-            height="16"
-            style="vertical-align: text-top; position: relative; top: 0px"
-            src="../../../public/img/sousuo.png"
-            alt
-          />
+          <img width="16" height="16" style="vertical-align: text-top; position: relative; top: 0px"
+            src="../../../public/img/sousuo.png" alt />
         </ws-button>
-		<el-button type="primary" @click="batchPrint">批量打印</el-button>
-				<el-table show-summary :summary-method="getSummaries" ref="tableData" :data="warehouseList.records" height="570" v-show="this.warehouseType== '1'" @selection-change="handleSelectionChange">
-						 <el-table-column type="selection" width="55" :selectable="selectInit"></el-table-column>
-					<el-table-column type="expand">
-						<template #default="props">
-							<ws-form ref="deptBudgetList" :model="deptBudgetList">
-								<ws-info-table>
-									<ws-form-item label="水分(%)" span="1" prop="waterContent">
-										{{ props.row.waterContent }}
-									</ws-form-item>
-									<ws-form-item label="容重(克/升)" span="1" prop="bulkDensity">
-										{{ props.row.bulkDensity }}
-									</ws-form-item>
-									<ws-form-item label="热损伤(%)" span="1" prop="jiaorenli">
-										{{ props.row.jiaorenli }}
-									</ws-form-item>
-									<ws-form-item label="杂质(%)" span="1" prop="impurity">
-										{{ props.row.impurity }}
-									</ws-form-item>
-									<ws-form-item label="霉变粒(%)" span="1" prop="mildewGrain">
-										{{ props.row.mildewGrain }}
-									</ws-form-item>
-									<ws-form-item label="不完善粒(%)" span="1" prop="imperfectGrain">
-										{{ props.row.imperfectGrain }}
-									</ws-form-item>
-									<ws-form-item label="质检员" span="1" prop="qualityInspector">
-										{{ props.row.qualityInspector }}
-									</ws-form-item>
-									<ws-form-item label="扣重比" span="1" prop="buckleWeightRatio">
-										{{ props.row.buckleWeightRatio }}
-									</ws-form-item>
-									<ws-form-item label="干粮水分(%)" span="1" prop="solidGrainWater">
-										{{ props.row.solidGrainWater }}
-									</ws-form-item>
-								</ws-info-table>
-							</ws-form>
-						</template>
-					</el-table-column>
-				
-					<el-table-column type="index" label="序号">
-						
-						<template scope="scope">
-							<span v-if="scope.$index < 9">0{{ scope.$index + 1 }}</span>
-							<span v-else>{{ scope.$index + 1 }}</span>
-						</template>
-					</el-table-column>
-					<el-table-column prop="binNumber" label="仓位号" width="60px"> </el-table-column>
-					<el-table-column prop="goodsName" label="货名" width="100"> </el-table-column>
-					<!-- <el-table-column prop="type" label="类型" width="60px"> </el-table-column> -->
-					<el-table-column prop="grossWeight" label="毛重(吨)" >
-						
-					</el-table-column>
-					<el-table-column prop="tare" label="皮重(吨)"> </el-table-column>
-					<el-table-column prop="deductionWeight" label="扣重(吨)"> </el-table-column>
-					<el-table-column prop="netWeight" label="净重(吨)"></el-table-column>
-					<el-table-column prop="pureWeight" label="纯重(吨)"> </el-table-column>
-					<el-table-column prop="deductionAmount" label="扣款(元/吨)" width="100"> </el-table-column>
-					<el-table-column prop="grade" label="品级" width="80px">
-						<template slot-scope="scope">
-							<span v-if="scope.row.grade == '一等品'" class="top-grade">{{
+        <el-button type="primary" @click="batchPrint">批量打印</el-button>
+        <el-table show-summary :summary-method="getSummaries" ref="tableData" :data="warehouseList.records" height="570"
+          v-show="this.warehouseType== '1'" @selection-change="handleSelectionChange">
+          <el-table-column type="selection" width="55" :selectable="selectInit"></el-table-column>
+          <el-table-column type="expand">
+            <template #default="props">
+              <ws-form ref="deptBudgetList" :model="deptBudgetList">
+                <ws-info-table>
+                  <ws-form-item label="水分(%)" span="1" prop="waterContent">
+                    {{ props.row.waterContent }}
+                  </ws-form-item>
+                  <ws-form-item label="容重(克/升)" span="1" prop="bulkDensity">
+                    {{ props.row.bulkDensity }}
+                  </ws-form-item>
+                  <ws-form-item label="热损伤(%)" span="1" prop="jiaorenli">
+                    {{ props.row.jiaorenli }}
+                  </ws-form-item>
+                  <ws-form-item label="杂质(%)" span="1" prop="impurity">
+                    {{ props.row.impurity }}
+                  </ws-form-item>
+                  <ws-form-item label="霉变粒(%)" span="1" prop="mildewGrain">
+                    {{ props.row.mildewGrain }}
+                  </ws-form-item>
+                  <ws-form-item label="不完善粒(%)" span="1" prop="imperfectGrain">
+                    {{ props.row.imperfectGrain }}
+                  </ws-form-item>
+                  <ws-form-item label="质检员" span="1" prop="qualityInspector">
+                    {{ props.row.qualityInspector }}
+                  </ws-form-item>
+                  <ws-form-item label="扣重比" span="1" prop="buckleWeightRatio">
+                    {{ props.row.buckleWeightRatio }}
+                  </ws-form-item>
+                  <ws-form-item label="干粮水分(%)" span="1" prop="solidGrainWater">
+                    {{ props.row.solidGrainWater }}
+                  </ws-form-item>
+                </ws-info-table>
+              </ws-form>
+            </template>
+          </el-table-column>
+
+          <el-table-column type="index" label="序号">
+
+            <template scope="scope">
+              <span v-if="scope.$index < 9">0{{ scope.$index + 1 }}</span>
+              <span v-else>{{ scope.$index + 1 }}</span>
+            </template>
+          </el-table-column>
+          <el-table-column prop="binNumber" label="仓位号" width="60px"> </el-table-column>
+          <el-table-column prop="goodsName" label="货名" width="100"> </el-table-column>
+          <!-- <el-table-column prop="type" label="类型" width="60px"> </el-table-column> -->
+          <el-table-column prop="grossWeight" label="毛重(吨)">
+
+          </el-table-column>
+          <el-table-column prop="tare" label="皮重(吨)"> </el-table-column>
+          <el-table-column prop="deductionWeight" label="扣重(吨)"> </el-table-column>
+          <el-table-column prop="netWeight" label="净重(吨)"></el-table-column>
+          <el-table-column prop="pureWeight" label="纯重(吨)"> </el-table-column>
+          <el-table-column prop="deductionAmount" label="扣款(元/吨)" width="100"> </el-table-column>
+          <el-table-column prop="grade" label="品级" width="80px">
+            <template slot-scope="scope">
+              <span v-if="scope.row.grade == '一等品'" class="top-grade">{{
                 scope.row.grade
               }}</span>
-							<span v-if="scope.row.grade == '二等品'" class="second-class">{{
+              <span v-if="scope.row.grade == '二等品'" class="second-class">{{
                 scope.row.grade
               }}</span>
-							<span v-if="scope.row.grade == '三等品'" class="third-class">{{
+              <span v-if="scope.row.grade == '三等品'" class="third-class">{{
                 scope.row.grade
               }}</span>
-							<span v-if="scope.row.grade == '等外'" class="substandard">{{
+              <span v-if="scope.row.grade == '等外'" class="substandard">{{
                 scope.row.grade
               }}</span>
-						</template>
-					</el-table-column>
-					<el-table-column prop="inOutDate" label="出入库日期" width="100px">
-						<template slot-scope="scope">
-							<span style="color: #8890b1">{{ scope.row.inOutDate }}</span>
-						</template>
-					</el-table-column>
-					<el-table-column prop="inOutType" label="类型"> </el-table-column>
-					<el-table-column prop="contractNo" label="合同编号" width="180">
-						<template slot-scope="scope">
-							<span style="color: #8890b1">{{ scope.row.contractNo }}</span>
-						</template>
-					</el-table-column>
-					<el-table-column prop="carNo" label="车牌号">
-						<template slot-scope="scope">
-							<span style="color: #8890b1">{{ scope.row.carNo }}</span>
-						</template>
-					</el-table-column>
-					<el-table-column prop="boxNo" label="箱号-1">
-					</el-table-column>
-					<el-table-column prop="boxNoOther" label="箱号-2">
-					</el-table-column>
-					<el-table-column prop="titleNo" label="封号-1">
-					</el-table-column>
-					<el-table-column prop="titleNoOther" label="封号-2">
-					</el-table-column>
-					<el-table-column prop="wingNumber" label="车厢号-1">
-					</el-table-column>
-					<el-table-column prop="wingNumberOther" label="车厢号-2">
-					</el-table-column>
-					<el-table-column prop="agent" label="经办人">
-					</el-table-column>
-					<el-table-column prop="backOffice" label="操作人" width="120px">
-					</el-table-column>
-					<el-table-column prop="addressUrl" label="操作" width="100px">
-						<template slot-scope="scope">
-							<!-- <img width="18" height="20" style="vertical-align: text-top; position: relative; top: -1px"
+            </template>
+          </el-table-column>
+          <el-table-column prop="inOutDate" label="出入库日期" width="100px">
+            <template slot-scope="scope">
+              <span style="color: #8890b1">{{ scope.row.inOutDate }}</span>
+            </template>
+          </el-table-column>
+          <el-table-column prop="inOutType" label="类型"> </el-table-column>
+          <el-table-column prop="contractNo" label="合同编号" width="180">
+            <template slot-scope="scope">
+              <span style="color: #8890b1">{{ scope.row.contractNo }}</span>
+            </template>
+          </el-table-column>
+          <el-table-column prop="carNo" label="车牌号">
+            <template slot-scope="scope">
+              <span style="color: #8890b1">{{ scope.row.carNo }}</span>
+            </template>
+          </el-table-column>
+          <el-table-column prop="boxNo" label="箱号-1">
+          </el-table-column>
+          <el-table-column prop="boxNoOther" label="箱号-2">
+          </el-table-column>
+          <el-table-column prop="titleNo" label="封号-1">
+          </el-table-column>
+          <el-table-column prop="titleNoOther" label="封号-2">
+          </el-table-column>
+          <el-table-column prop="wingNumber" label="车厢号-1">
+          </el-table-column>
+          <el-table-column prop="wingNumberOther" label="车厢号-2">
+          </el-table-column>
+          <el-table-column prop="agent" label="经办人">
+          </el-table-column>
+          <el-table-column prop="backOffice" label="操作人" width="120px">
+          </el-table-column>
+          <el-table-column prop="addressUrl" label="操作" width="100px">
+            <template slot-scope="scope">
+              <!-- <img width="18" height="20" style="vertical-align: text-top; position: relative; top: -1px"
 								src="../../../public/img/fujian.png" @click="fujian(scope.row)" alt="" /> -->
-          					<el-button @click="print(scope.row)" v-if="scope.row.inOutType != '收购入库'&&scope.row.inOutType != '期初'"  v-hasPermission="`acquisitionManagement.acquisitionWeight.print`">打印</el-button >
-
-						</template>
-					</el-table-column>
-					<el-table-column prop="createDate" label="录入时间">
-						<template slot-scope="scope">
-							<span style="color: #8890b1">{{ scope.row.createDate }}</span>
-						</template>
-					</el-table-column>
-
-				</el-table>
-				<el-table show-summary :summary-method="getSummaries" :data="warehouseList.records" height="560" v-show="this.warehouseType== '2'">
-					<el-table-column type="expand">
-						<template #default="props">
-							<ws-form ref="deptBudgetList" :model="deptBudgetList">
-								<ws-info-table>
-									<ws-form-item label="水分(%)" span="1" prop="waterContent">
-										{{ props.row.waterContent }}
-									</ws-form-item>
-									<ws-form-item label="容重(g/l)" span="1" prop="bulkDensity">
-										{{ props.row.bulkDensity }}
-									</ws-form-item>
-									<ws-form-item label="热损伤(%)" span="1" prop="jiaorenli">
-										{{ props.row.jiaorenli }}
-									</ws-form-item>
-									<ws-form-item label="杂质(%)" span="1" prop="impurity">
-										{{ props.row.impurity }}
-									</ws-form-item>
-									<ws-form-item label="霉变粒(%)" span="1" prop="mildewGrain">
-										{{ props.row.mildewGrain }}
-									</ws-form-item>
-									<ws-form-item label="不完善粒(%)" span="1" prop="imperfectGrain">
-										{{ props.row.imperfectGrain }}
-									</ws-form-item>
-									<ws-form-item label="质检员" span="1" prop="qualityInspector">
-										{{ props.row.qualityInspector }}
-									</ws-form-item>
-								</ws-info-table>
-							</ws-form>
-						</template>
-					</el-table-column>
-					<el-table-column type="index" label="序号">
-						<template scope="scope">
-							<span v-if="scope.$index < 9">0{{ scope.$index + 1 }}</span>
-							<span v-else>{{ scope.$index + 1 }}</span>
-						</template>
-					</el-table-column>
-					<el-table-column prop="goodsName" label="货名"> </el-table-column>
-					<el-table-column prop="grossWeight" label="毛重(吨)"></el-table-column>
-					<el-table-column prop="tare" label="皮重(吨)"> </el-table-column>
-					<el-table-column prop="netWeight" label="净重(吨)"></el-table-column>
-					<el-table-column prop="grade" label="品级">
-						<template slot-scope="scope">
-							<span v-if="scope.row.grade == '一等品'" class="top-grade">{{
+              <el-button @click="print(scope.row)" v-if="scope.row.inOutType != '收购入库'&&scope.row.inOutType != '期初'"
+                v-hasPermission="`acquisitionManagement.acquisitionWeight.print`">打印</el-button>
+
+            </template>
+          </el-table-column>
+          <el-table-column prop="createDate" label="录入时间">
+            <template slot-scope="scope">
+              <span style="color: #8890b1">{{ scope.row.createDate }}</span>
+            </template>
+          </el-table-column>
+
+        </el-table>
+        <el-table show-summary :summary-method="getSummaries" :data="warehouseList.records" height="560"
+          v-show="this.warehouseType== '2'">
+          <el-table-column type="expand">
+            <template #default="props">
+              <ws-form ref="deptBudgetList" :model="deptBudgetList">
+                <ws-info-table>
+                  <ws-form-item label="水分(%)" span="1" prop="waterContent">
+                    {{ props.row.waterContent }}
+                  </ws-form-item>
+                  <ws-form-item label="容重(g/l)" span="1" prop="bulkDensity">
+                    {{ props.row.bulkDensity }}
+                  </ws-form-item>
+                  <ws-form-item label="热损伤(%)" span="1" prop="jiaorenli">
+                    {{ props.row.jiaorenli }}
+                  </ws-form-item>
+                  <ws-form-item label="杂质(%)" span="1" prop="impurity">
+                    {{ props.row.impurity }}
+                  </ws-form-item>
+                  <ws-form-item label="霉变粒(%)" span="1" prop="mildewGrain">
+                    {{ props.row.mildewGrain }}
+                  </ws-form-item>
+                  <ws-form-item label="不完善粒(%)" span="1" prop="imperfectGrain">
+                    {{ props.row.imperfectGrain }}
+                  </ws-form-item>
+                  <ws-form-item label="质检员" span="1" prop="qualityInspector">
+                    {{ props.row.qualityInspector }}
+                  </ws-form-item>
+                </ws-info-table>
+              </ws-form>
+            </template>
+          </el-table-column>
+          <el-table-column type="index" label="序号">
+            <template scope="scope">
+              <span v-if="scope.$index < 9">0{{ scope.$index + 1 }}</span>
+              <span v-else>{{ scope.$index + 1 }}</span>
+            </template>
+          </el-table-column>
+          <el-table-column prop="goodsName" label="货名"> </el-table-column>
+          <el-table-column prop="grossWeight" label="毛重(吨)"></el-table-column>
+          <el-table-column prop="tare" label="皮重(吨)"> </el-table-column>
+          <el-table-column prop="netWeight" label="净重(吨)"></el-table-column>
+          <el-table-column prop="grade" label="品级">
+            <template slot-scope="scope">
+              <span v-if="scope.row.grade == '一等品'" class="top-grade">{{
                 scope.row.grade
               }}</span>
-							<span v-if="scope.row.grade == '二等品'" class="second-class">{{
+              <span v-if="scope.row.grade == '二等品'" class="second-class">{{
                 scope.row.grade
               }}</span>
-							<span v-if="scope.row.grade == '三等品'" class="third-class">{{
+              <span v-if="scope.row.grade == '三等品'" class="third-class">{{
                 scope.row.grade
               }}</span>
-							<span v-if="scope.row.grade == '等外'" class="substandard">{{
+              <span v-if="scope.row.grade == '等外'" class="substandard">{{
                 scope.row.grade
               }}</span>
-						</template>
-					</el-table-column>
-					<el-table-column prop="inOutDate" label="出入库日期">
-						<template slot-scope="scope">
-							<span style="color: #8890b1">{{ scope.row.inOutDate }}</span>
-						</template>
-					</el-table-column>
-					<el-table-column prop="inOutType" label="类型"> </el-table-column>
-					<el-table-column prop="contractNo" label="合同编号">
-						<template slot-scope="scope">
-							<span style="color: #8890b1">{{ scope.row.contractNo }}</span>
-						</template>
-					</el-table-column>
-					<el-table-column prop="carNo" label="车牌号">
-						<template slot-scope="scope">
-							<span style="color: #8890b1">{{ scope.row.carNo }}</span>
-						</template>
-					</el-table-column>
-					<el-table-column prop="agent" label="经办人">
-					</el-table-column>
-					<el-table-column prop="backOffice" label="操作人"> </el-table-column>
-					<el-table-column prop="addressUrl" label="附件">
-						<template slot-scope="scope">
-							<img width="18" height="20" style="vertical-align: text-top; position: relative; top: -1px"
-								src="../../../public/img/fujian.png" @click="fujian(scope.row)" alt="" />
-							<!-- <span v-if="scope.row.addressUrlArray.length > 0">{{
+            </template>
+          </el-table-column>
+          <el-table-column prop="inOutDate" label="出入库日期">
+            <template slot-scope="scope">
+              <span style="color: #8890b1">{{ scope.row.inOutDate }}</span>
+            </template>
+          </el-table-column>
+          <el-table-column prop="inOutType" label="类型"> </el-table-column>
+          <el-table-column prop="contractNo" label="合同编号">
+            <template slot-scope="scope">
+              <span style="color: #8890b1">{{ scope.row.contractNo }}</span>
+            </template>
+          </el-table-column>
+          <el-table-column prop="carNo" label="车牌号">
+            <template slot-scope="scope">
+              <span style="color: #8890b1">{{ scope.row.carNo }}</span>
+            </template>
+          </el-table-column>
+          <el-table-column prop="agent" label="经办人">
+          </el-table-column>
+          <el-table-column prop="backOffice" label="操作人"> </el-table-column>
+          <el-table-column prop="addressUrl" label="附件">
+            <template slot-scope="scope">
+              <img width="18" height="20" style="vertical-align: text-top; position: relative; top: -1px"
+                src="../../../public/img/fujian.png" @click="fujian(scope.row)" alt="" />
+              <!-- <span v-if="scope.row.addressUrlArray.length > 0">{{
                 scope.row.addressUrlArray.length
               }}</span> -->
-							<!-- <i @click="fujian(scope.row)" class="el-icon-paperclip iconCss"></i> -->
-						</template>
-					</el-table-column>
-					<el-table-column prop="createDate" label="录入时间">
-						<template slot-scope="scope">
-							<span style="color: #8890b1">{{ scope.row.createDate }}</span>
-						</template>
-					</el-table-column>
-
-				</el-table>
-
-
-				<div style="text-align: center; padding: 10px">
-					    <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
-        :page-sizes="[10, 30, 50, 100,500,1000,9999]" layout="total, sizes, prev, pager, next, jumper"
-        :total="deptBudgetTotal"></el-pagination>
-				</div>
-			</ws-form>
-		</div>
-		<WinseaContentModal v-model="accessoryTFs" :title="$t('system.noticeCircular.information')"
-			@on-cancel="handleClose">
-			<p>查看附件</p>
-			<el-image 
-    style="width: 100px; height: 100px"
-    :src="appendixIdss" 
-    :preview-src-list="srcList">
-  </el-image>
-		</WinseaContentModal>
-	</div>
+              <!-- <i @click="fujian(scope.row)" class="el-icon-paperclip iconCss"></i> -->
+            </template>
+          </el-table-column>
+          <el-table-column prop="createDate" label="录入时间">
+            <template slot-scope="scope">
+              <span style="color: #8890b1">{{ scope.row.createDate }}</span>
+            </template>
+          </el-table-column>
+
+        </el-table>
+
+
+        <div style="text-align: center; padding: 10px">
+          <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
+            :current-page="currentPage" :page-sizes="[10, 30, 50, 100,500,1000,9999]"
+            layout="total, sizes, prev, pager, next, jumper" :total="deptBudgetTotal"></el-pagination>
+        </div>
+      </ws-form>
+    </div>
+    <WinseaContentModal v-model="accessoryTFs" :title="$t('system.noticeCircular.information')"
+      @on-cancel="handleClose">
+      <p>查看附件</p>
+      <el-image style="width: 100px; height: 100px" :src="appendixIdss" :preview-src-list="srcList">
+      </el-image>
+    </WinseaContentModal>
+  </div>
 
 </template>
 
 
 <script>
-	import {
-		addselectinfoList,
-		recordss,
-		getPrintInfo,
-		getbinnumber
-	} from '@/model/warehouse/index'
-	import {
-		downloadFile
-	} from '@/utils/batchDown'
-	import Pagination from '@/components/Pagination'
-	import WsUpload from '@/components/WsUpload'
-	import {
-		dayjs,
-		fmoney,
-		EventBus
-	} from 'base-core-lib'
-	export default {
-		name: 'viewSpareMoney',
-		components: {
-			WsUpload,
-			Pagination,
-		},
-		watch: {
-			vesselId(val) {
-				this.getList()
-			},
-			isShow(val) {
-				this.showType = val
-			},
-		},
-		data() {
-			return {
-				//弹出框
-				dialogViewSpareMoney: false,
-				binnumberList:[],
-				// 船舶类型
-				monetaryKey: null,
-				// 是否显示
-				showType: true,
-				// 年
-				year: '',
-				srcList:[],
-				deptBudgetTotal: 0,
-				currentPage: 1,
-				pageSize: 10,
-				capacity: '',
-				searchKeyWord: '',
-				contractType: 2,
-				startDate: null,
-				endDate: null,
-				remark: '',
-				binNumber: '',
-				status: 1,
-				value2:[],
-				appendixIdss:'',
-				// 提交类型
-				submitType: true,
-				selectpackingMethod: {},
-				size: 10,
-				warehouseType: '1',
-				compId: localStorage.getItem('ws-pf_compId'),
-				deptCircularPage: {},
-				pcFlag: 1,
-				date: {
-					year: dayjs().format('YYYY'),
-					month: dayjs().format('MM'),
-				},
-				warehouseList: [],
-				deptBudgetList: {},
-				historyList: [],
-				searchType: '',
-				allurl: '../../../public/img/radio.png',
-				pickerBeginDateBefore: {
-					disabledDate: (time) => {
-						return time.getTime() > Date.now()
-					},
-				},
-				accessoryTFs: false,
-				modification:[],
-				printList:[],//批量打印数据
-			}
-		},
-
-		activated() {
-			this.deptBudgetList.baseId = this.$route.query.baseId
-			this.deptBudgetList.positionId = this.$route.query.positionId
-			this.deptBudgetList.warehouseName = this.$route.query.warehouseName
-			this.remark = this.$route.query.remark
-			this.binNumber = this.$route.query.binNumber
-			this.capacity = this.$route.query.capacity
-			this.warehouseType = this.$route.query.warehouseType
-			this.getList()
-            this.getPassYearFormatDate()
-			this.showType = this.isShow
-		},
-		updated() {
-			this.$nextTick(() => {
-			this.$refs['tableData'].doLayout();
-			})
-		},
-		methods: {
-			batchPrint(){
-				if(this.modification.length == 0 ){
-					this.$message.error("请勾选要打印的条目!")
-				}else{
-					localStorage.removeItem("warehouseBatchPrint")
-				var count = 0
-				for(var i = 0 ; i < this.modification.length ; i++){
-						getPrintInfo({
-                        id: this.modification[i].id
-                      })
-                        .toPromise()
-                        .then((response) => {
-							count++
-                           this.printList.push(response)
-						     if(count == this.modification.length){
-						   localStorage.setItem("warehouseBatchPrint", JSON.stringify(this.printList))
-						  window.open( '../../../../static/warehouseBatchPrint.html')
-					  }
-                     })
-				}
-				}
-				
-			},
-			   handleSelectionChange(val) {
-			this.modification = val
-			console.log("sfasa",this.modification)
-	     	},
-			selectInit(row){
-				 //在这里一定要记得类型匹配的上。
-				if (row.inOutType != '收购入库' && row.inOutType != '期初') {
-					return true
-				} else  {
-				return false
-				}
-			},
-			binNumberChange(e){
-				if(e=='全部仓位'){
-					this.deptBudgetList.positionId=''
-				}else{
-					for (let i = 0; i < this.binnumberList.length; i++) {
-						if(this.binnumberList[i].binNumber==e){
-							this.deptBudgetList.positionId=this.binnumberList[i].id
-						}
-					}
-				}
-				
-				this.getList()
-			},
-			//合计
-			getSummaries(param) {
-				const { columns, data } = param
-				const sums = []
-				columns.forEach((column, index) => {
-					if (index === 0) {
-						sums[index] = '合计'
-					} else if (
-						index === 4||
-						index === 5||
-						index === 6||
-						index === 7||
-						index === 8||
-						index === 9
-					) {
-						const values = data.map((item) => Number(item[column.property]))
-						if (!values.every((value) => isNaN(value))) {
-							sums[index] = values.reduce((prev, curr) => {
-								const value = Number(curr)
-								if (!isNaN(value)) {
-									return prev + curr
-								} else {
-									return prev
-								}
-								}, 0)
-							sums[index] = sums[index].toFixed(3)
-						}
-					} else {
-						sums[index] = '--'
-					}
-				})
-				return sums
-			},
-		getPassYearFormatDate () {
-          var nowDate = new Date()
-          nowDate.setTime(nowDate.getTime()-24*60*60*1000*30)
-          var seperator1 = '-'
-          var year = nowDate.getFullYear()
-          var month = nowDate.getMonth() + 1
-          var strDate = nowDate.getDate()
-          if (month >= 1 && month <= 9) {
-            month = '0' + month
+  import {
+    addselectinfoList,
+    recordss,
+    getPrintInfo,
+    getbinnumber
+  } from '@/model/warehouse/index'
+  import {
+    downloadFile
+  } from '@/utils/batchDown'
+  import Pagination from '@/components/Pagination'
+  import WsUpload from '@/components/WsUpload'
+  import {
+    dayjs,
+    fmoney,
+    EventBus
+  } from 'base-core-lib'
+  export default {
+    name: 'viewSpareMoney',
+    components: {
+      WsUpload,
+      Pagination,
+    },
+    watch: {
+      vesselId(val) {
+        this.getList()
+      },
+      isShow(val) {
+        this.showType = val
+      },
+    },
+    data() {
+      return {
+        //弹出框
+        dialogViewSpareMoney: false,
+        binnumberList: [],
+        // 船舶类型
+        monetaryKey: null,
+        // 是否显示
+        showType: true,
+        // 年
+        year: '',
+        srcList: [],
+        deptBudgetTotal: 0,
+        currentPage: 1,
+        pageSize: 10,
+        capacity: '',
+        searchKeyWord: '',
+        contractType: 2,
+        startDate: null,
+        endDate: null,
+        remark: '',
+        binNumber: '',
+        status: 1,
+        value2: [],
+        appendixIdss: '',
+        // 提交类型
+        submitType: true,
+        selectpackingMethod: {},
+        size: 10,
+        warehouseType: '1',
+        compId: localStorage.getItem('ws-pf_compId'),
+        deptCircularPage: {},
+        pcFlag: 1,
+        date: {
+          year: dayjs().format('YYYY'),
+          month: dayjs().format('MM'),
+        },
+        warehouseList: [],
+        deptBudgetList: {},
+        historyList: [],
+        searchType: '',
+        allurl: '../../../public/img/radio.png',
+        pickerBeginDateBefore: {
+          disabledDate: (time) => {
+            return time.getTime() > Date.now()
+          },
+        },
+        accessoryTFs: false,
+        modification: [],
+        printList: [], //批量打印数据
+      }
+    },
+
+    activated() {
+      this.deptBudgetList.baseId = this.$route.query.baseId
+      this.deptBudgetList.positionId = this.$route.query.positionId
+      this.deptBudgetList.warehouseName = this.$route.query.warehouseName
+      this.remark = this.$route.query.remark
+      this.binNumber = this.$route.query.binNumber
+      this.capacity = this.$route.query.capacity
+      this.warehouseType = this.$route.query.warehouseType
+      this.getList()
+      this.getPassYearFormatDate()
+      this.showType = this.isShow
+    },
+    updated() {
+      this.$nextTick(() => {
+        this.$refs['tableData'].doLayout();
+      })
+    },
+    methods: {
+      batchPrint() {
+        if (this.modification.length == 0) {
+          this.$message.error("请勾选要打印的条目!")
+        } else {
+          localStorage.removeItem("warehouseBatchPrint")
+          var count = 0
+          for (var i = 0; i < this.modification.length; i++) {
+            getPrintInfo({
+                id: this.modification[i].id
+              })
+              .toPromise()
+              .then((response) => {
+                count++
+                this.printList.push(response)
+                if (count == this.modification.length) {
+                  localStorage.setItem("warehouseBatchPrint", JSON.stringify(this.printList))
+                  window.open('../../../../static/warehouseBatchPrint.html')
+                }
+              })
           }
-          if (strDate >= 0 && strDate <= 9) {
-            strDate = '0' + strDate
+        }
+
+      },
+      handleSelectionChange(val) {
+        this.modification = val
+        console.log("sfasa", this.modification)
+      },
+      selectInit(row) {
+        //在这里一定要记得类型匹配的上。
+        if (row.inOutType != '收购入库' && row.inOutType != '期初') {
+          return true
+        } else {
+          return false
+        }
+      },
+      binNumberChange(e) {
+        if (e == '全部仓位') {
+          this.deptBudgetList.positionId = ''
+        } else {
+          for (let i = 0; i < this.binnumberList.length; i++) {
+            if (this.binnumberList[i].binNumber == e) {
+              this.deptBudgetList.positionId = this.binnumberList[i].id
+            }
           }
-          var formatDate = year + seperator1 + month + seperator1 + strDate
-          this.getNowFormatDate(formatDate)
-        },
-		/* 获取现在时间,并接受过去时间的值 */
-        getNowFormatDate (formatDate) {
-			var date = new Date()
-			date.setTime(date.getTime()+24*60*60*1000)
-			var seperator1 = '-'
-			var year = date.getFullYear()
-			var month = date.getMonth() + 1
-			var strDate = date.getDate()
-			if (month >= 1 && month <= 9) {
-				month = '0' + month
-			}
-			if (strDate >= 0 && strDate <= 9) {
-				strDate = '0' + strDate
-			}
-			var nowData = year + seperator1 + month + seperator1 + strDate
-			this.value2= [formatDate, nowData]  // 默认赋值一年时间
-   		 },
-			print(row){
-				sessionStorage.removeItem('record_print')
-				getPrintInfo({
-                        id: row.id
-                      })
-                        .toPromise()
-                        .then((response) => {
-                                     localStorage.setItem('ck_bd_printData',JSON.stringify(response))
-                         window.open('../../../../static/weightCheckInOut.html?type=2')
-                         
-                        })
-			},
-			//返回按钮
-			returnWarehouse() {
-				this.$router.push({
-					path: 'warehouseManagementList'
-				})
-				this.searchKeyWord = ''
-			},
-			//
-			iossrecord() {
-				this.$router.push({
-					path: 'warehouseManagementIossRecord',
-					query: {
-						baseId: this.deptBudgetList.baseId,
-						positionId: this.deptBudgetList.positionId,
-						warehouseName: this.deptBudgetList.warehouseName,
-						binNumber: this.binNumber,
-					},
-				})
-			},
-			dateFormat(fmt, date) {
-				let ret
-				const opt = {
-					'Y+': date.getFullYear().toString(), // 年
-					'm+': (date.getMonth() + 1).toString(), // 月
-					'd+': date.getDate().toString(), // 日
-					'H+': date.getHours().toString(), // 时
-					// "M+": date.getMinutes().toString(),         // 分
-					// "S+": date.getSeconds().toString()          // 秒
-					// 有其他格式化字符需求可以继续添加,必须转化成字符串
-				}
-				for (let k in opt) {
-					ret = new RegExp('(' + k + ')').exec(fmt)
-					if (ret) {
-						fmt = fmt.replace(
-							ret[1],
-							ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, '0')
-						)
-					}
-				}
-				return fmt
-			},
-			datechange(){
-				this.getList()
-			},
-			find() {
-      			this.getList()
-    		},
-			handleClose() {
-				this.accessoryTFs = false
-			},
-			handleSizeChange(val) {
-				console.log(`每页 ${val} 条`)
-				this.pageSize = val
-				this.getList()
-			},
-			handleCurrentChange(val) {
-				this.currentPage = val
-				console.log(`当前页: ${val}`)
-				this.getList()
-			},
-			record(status, status1) {
-				this.status = status1
-				this.searchType = status
-				this.currentPage = '1'
-				this.getList()
-			},
-			// 上传附件
-			uploadSuccess(data, files, url) {
-				console.log(data, files, url)
-
-				// this.deptBudgetList.
-				// this.formData.append('files', files)
-				// this.feedbackObj.uploadNameAttachment = data.appendixName
-				// this.feedbackObj.pathUploadAttachment = data.appendixPath
-				// // this.newAppendixs = files
-				// this.onChangeFlag = true
-			},
-			getList() {
-					var startDate=''
-					var endDate=''
-					if(this.value2){
-					startDate=this.value2[0]?this.value2[0]:''
-					endDate=this.value2[1]?this.value2[1]:''
-				}
-				if (this.warehouseType == 1) {
-					getbinnumber({id: this.deptBudgetList.baseId}).toPromise()
-						.then((response) => {
-							
-							this.binnumberList = response.warehousePositionInfoList
-						})
-					addselectinfoList({
-							compId: localStorage.getItem('ws-pf_compId'),
-							baseId: this.deptBudgetList.baseId,
-							positionId: this.deptBudgetList.positionId,
-							warehouseName: this.deptBudgetList.warehouseName,
-							startDate:startDate,
-       					    endDate:endDate,
-							searchType: this.searchType,
-							searchKeyWord: this.searchKeyWord,
-							currentPage: this.currentPage,
-							pcFlag: this.pcFlag,
-							pageSize: this.pageSize
-						})
-						.toPromise()
-						.then((response) => {
-							for (var i = 0; i < response.records.length; i++) {
-								if (response.records[i].addressUrl != null) {
-									response.records[i].addressUrlArray = response.records[
-										i
-									].addressUrl.split(',')
-								} else {
-									response.records[i].addressUrlArray = []
-								}
-							}
-							this.deptCircularPage.currentPage = response.current
-							this.deptCircularPage.pageSize = response.size
-							this.deptBudgetTotal = response.total
-							this.warehouseList = response
-						})
-				} else if (this.warehouseType == 2) {
-					recordss({
-							compId: localStorage.getItem('ws-pf_compId'),
-							baseId: this.deptBudgetList.baseId,
-							positionId: this.deptBudgetList.positionId,
-							warehouseName: this.deptBudgetList.warehouseName,
-							startDate:startDate,
-       					    endDate:endDate,
-							searchType: this.searchType,
-							searchKeyWord: this.searchKeyWord,
-							currentPage: this.currentPage,
-							pageSize: this.pageSize,
-						})
-						.toPromise()
-						.then((response) => {
-							for (var i = 0; i < response.records.length; i++) {
-								if (response.records[i].addressUrl != null) {
-									response.records[i].addressUrlArray = response.records[
-										i
-									].addressUrl.split(',')
-								} else {
-									response.records[i].addressUrlArray = []
-								}
-							}
-							this.deptCircularPage.currentPage = response.current
-							this.deptCircularPage.pageSize = response.size
-							this.deptBudgetTotal = response.total
-							this.warehouseList = response
-						})
-				}
-
-			},
-			selecttaskType(e) {
-				for (var i = 0; i < this.taskTypeList.length; i++) {
-					if (this.taskTypeList[i].value == e) {
-						this.searchType = this.taskTypeList[i].type
-					}
-				}
-			},
-			fujian(row) {
-				if (
-					row.addressUrl === null ||
-					row.addressUrl === ''
-				) {
-					EventBus.$emit(
-						'warning',
-						this.$t('system.noticeCircular.NoInformation')
-					)
-				} else {
-					this.accessoryTFs = true
-				}
-				this.appendixIdss = row.addressUrl
-				this.srcList=[row.addressUrl]
-			},
-			// 关闭 dialog时 处理文件url 初始化upload组件
-			handleCloe() {
-				this.dialogViewSpareMoney = false
-			},
-			history(row) {
-				console.log(row)
-				billoperatehis({
-						id: row.id
-					})
-					.toPromise()
-					.then((response) => {
-						this.historyList = response
-					})
-			},
-			// async exportlist() {
-			//   const { data } = await export1(
-			//     {
-			//       compId: localStorage.getItem('ws-pf_compId'),
-			//       contractType: this.contractType,
-			//       currentPage: this.currentPage,
-			//       pageSize: this.pageSize,
-			//       searchType: this.searchType,
-			//       searchKeyWord: this.searchKeyWord,
-			//       startDate: this.startDate,
-			//       endDate: this.endDate,
-			//     },
-			//     {},
-			//     { responseType: 'blob' }
-			//   ).toPromise()
-			//   downloadFile({
-			//     res: data,
-			//     fileName: `${
-			//       this.date.year + (this.date.month ? `-${this.date.month}` : '')
-			//     }_采购合同`,
-			//     type: 'xls',
-			//   })
-			// },
-			// deletecontract(){},
-			//删除
-
-			approve() {},
-			listQuery() {},
-			total() {},
-			clearfiltQuery() {},
-			selectCrtDuty() {},
-		},
-	}
+        }
+
+        this.getList()
+      },
+      //合计
+      getSummaries(param) {
+        const {
+          columns,
+          data
+        } = param
+        const sums = []
+        columns.forEach((column, index) => {
+          if (index === 0) {
+            sums[index] = '合计'
+          } else if (
+            index === 4 ||
+            index === 5 ||
+            index === 6 ||
+            index === 7 ||
+            index === 8 ||
+            index === 9
+          ) {
+            const values = data.map((item) => Number(item[column.property]))
+            if (!values.every((value) => isNaN(value))) {
+              sums[index] = values.reduce((prev, curr) => {
+                const value = Number(curr)
+                if (!isNaN(value)) {
+                  return prev + curr
+                } else {
+                  return prev
+                }
+              }, 0)
+              sums[index] = sums[index].toFixed(3)
+            }
+          } else {
+            sums[index] = '--'
+          }
+        })
+        return sums
+      },
+      getPassYearFormatDate() {
+        var nowDate = new Date()
+        nowDate.setTime(nowDate.getTime() - 24 * 60 * 60 * 1000 * 30)
+        var seperator1 = '-'
+        var year = nowDate.getFullYear()
+        var month = nowDate.getMonth() + 1
+        var strDate = nowDate.getDate()
+        if (month >= 1 && month <= 9) {
+          month = '0' + month
+        }
+        if (strDate >= 0 && strDate <= 9) {
+          strDate = '0' + strDate
+        }
+        var formatDate = year + seperator1 + month + seperator1 + strDate
+        this.getNowFormatDate(formatDate)
+      },
+      /* 获取现在时间,并接受过去时间的值 */
+      getNowFormatDate(formatDate) {
+        var date = new Date()
+        date.setTime(date.getTime() + 24 * 60 * 60 * 1000)
+        var seperator1 = '-'
+        var year = date.getFullYear()
+        var month = date.getMonth() + 1
+        var strDate = date.getDate()
+        if (month >= 1 && month <= 9) {
+          month = '0' + month
+        }
+        if (strDate >= 0 && strDate <= 9) {
+          strDate = '0' + strDate
+        }
+        var nowData = year + seperator1 + month + seperator1 + strDate
+        this.value2 = [formatDate, nowData] // 默认赋值一年时间
+      },
+      print(row) {
+        sessionStorage.removeItem('record_print')
+        getPrintInfo({
+            id: row.id
+          })
+          .toPromise()
+          .then((response) => {
+            localStorage.setItem('ck_bd_printData', JSON.stringify(response))
+            window.open('../../../../static/weightCheckInOut.html?type=2')
+
+          })
+      },
+      //返回按钮
+      returnWarehouse() {
+        this.$router.push({
+          path: 'warehouseManagementList'
+        })
+        this.searchKeyWord = ''
+      },
+      //
+      iossrecord() {
+        this.$router.push({
+          path: 'warehouseManagementIossRecord',
+          query: {
+            baseId: this.deptBudgetList.baseId,
+            positionId: this.deptBudgetList.positionId,
+            warehouseName: this.deptBudgetList.warehouseName,
+            binNumber: this.binNumber,
+          },
+        })
+      },
+      dateFormat(fmt, date) {
+        let ret
+        const opt = {
+          'Y+': date.getFullYear().toString(), // 年
+          'm+': (date.getMonth() + 1).toString(), // 月
+          'd+': date.getDate().toString(), // 日
+          'H+': date.getHours().toString(), // 时
+          // "M+": date.getMinutes().toString(),         // 分
+          // "S+": date.getSeconds().toString()          // 秒
+          // 有其他格式化字符需求可以继续添加,必须转化成字符串
+        }
+        for (let k in opt) {
+          ret = new RegExp('(' + k + ')').exec(fmt)
+          if (ret) {
+            fmt = fmt.replace(
+              ret[1],
+              ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, '0')
+            )
+          }
+        }
+        return fmt
+      },
+      datechange() {
+        this.getList()
+      },
+      find() {
+        this.getList()
+      },
+      handleClose() {
+        this.accessoryTFs = false
+      },
+      handleSizeChange(val) {
+        console.log(`每页 ${val} 条`)
+        this.pageSize = val
+        this.getList()
+      },
+      handleCurrentChange(val) {
+        this.currentPage = val
+        console.log(`当前页: ${val}`)
+        this.getList()
+      },
+      record(status, status1) {
+        this.status = status1
+        this.searchType = status
+        this.currentPage = '1'
+        this.getList()
+      },
+      // 上传附件
+      uploadSuccess(data, files, url) {
+        console.log(data, files, url)
+
+        // this.deptBudgetList.
+        // this.formData.append('files', files)
+        // this.feedbackObj.uploadNameAttachment = data.appendixName
+        // this.feedbackObj.pathUploadAttachment = data.appendixPath
+        // // this.newAppendixs = files
+        // this.onChangeFlag = true
+      },
+      getList() {
+        var startDate = ''
+        var endDate = ''
+        if (this.value2) {
+          startDate = this.value2[0] ? this.value2[0] : ''
+          endDate = this.value2[1] ? this.value2[1] : ''
+        }
+        if (this.warehouseType == 1) {
+          getbinnumber({
+              id: this.deptBudgetList.baseId
+            }).toPromise()
+            .then((response) => {
+
+              this.binnumberList = response.warehousePositionInfoList
+            })
+          addselectinfoList({
+              compId: localStorage.getItem('ws-pf_compId'),
+              baseId: this.deptBudgetList.baseId,
+              positionId: this.deptBudgetList.positionId,
+              warehouseName: this.deptBudgetList.warehouseName,
+              startDate: startDate,
+              endDate: endDate,
+              searchType: this.searchType,
+              searchKeyWord: this.searchKeyWord,
+              currentPage: this.currentPage,
+              pcFlag: this.pcFlag,
+              pageSize: this.pageSize
+            })
+            .toPromise()
+            .then((response) => {
+              for (var i = 0; i < response.records.length; i++) {
+                if (response.records[i].addressUrl != null) {
+                  response.records[i].addressUrlArray = response.records[
+                    i
+                  ].addressUrl.split(',')
+                } else {
+                  response.records[i].addressUrlArray = []
+                }
+              }
+              this.deptCircularPage.currentPage = response.current
+              this.deptCircularPage.pageSize = response.size
+              this.deptBudgetTotal = response.total
+              this.warehouseList = response
+            })
+        } else if (this.warehouseType == 2) {
+          recordss({
+              compId: localStorage.getItem('ws-pf_compId'),
+              baseId: this.deptBudgetList.baseId,
+              positionId: this.deptBudgetList.positionId,
+              warehouseName: this.deptBudgetList.warehouseName,
+              startDate: startDate,
+              endDate: endDate,
+              searchType: this.searchType,
+              searchKeyWord: this.searchKeyWord,
+              currentPage: this.currentPage,
+              pageSize: this.pageSize,
+            })
+            .toPromise()
+            .then((response) => {
+              for (var i = 0; i < response.records.length; i++) {
+                if (response.records[i].addressUrl != null) {
+                  response.records[i].addressUrlArray = response.records[
+                    i
+                  ].addressUrl.split(',')
+                } else {
+                  response.records[i].addressUrlArray = []
+                }
+              }
+              this.deptCircularPage.currentPage = response.current
+              this.deptCircularPage.pageSize = response.size
+              this.deptBudgetTotal = response.total
+              this.warehouseList = response
+            })
+        }
+
+      },
+      selecttaskType(e) {
+        for (var i = 0; i < this.taskTypeList.length; i++) {
+          if (this.taskTypeList[i].value == e) {
+            this.searchType = this.taskTypeList[i].type
+          }
+        }
+      },
+      fujian(row) {
+        if (
+          row.addressUrl === null ||
+          row.addressUrl === ''
+        ) {
+          EventBus.$emit(
+            'warning',
+            this.$t('system.noticeCircular.NoInformation')
+          )
+        } else {
+          this.accessoryTFs = true
+        }
+        this.appendixIdss = row.addressUrl
+        this.srcList = [row.addressUrl]
+      },
+      // 关闭 dialog时 处理文件url 初始化upload组件
+      handleCloe() {
+        this.dialogViewSpareMoney = false
+      },
+      history(row) {
+        console.log(row)
+        billoperatehis({
+            id: row.id
+          })
+          .toPromise()
+          .then((response) => {
+            this.historyList = response
+          })
+      },
+      // async exportlist() {
+      //   const { data } = await export1(
+      //     {
+      //       compId: localStorage.getItem('ws-pf_compId'),
+      //       contractType: this.contractType,
+      //       currentPage: this.currentPage,
+      //       pageSize: this.pageSize,
+      //       searchType: this.searchType,
+      //       searchKeyWord: this.searchKeyWord,
+      //       startDate: this.startDate,
+      //       endDate: this.endDate,
+      //     },
+      //     {},
+      //     { responseType: 'blob' }
+      //   ).toPromise()
+      //   downloadFile({
+      //     res: data,
+      //     fileName: `${
+      //       this.date.year + (this.date.month ? `-${this.date.month}` : '')
+      //     }_采购合同`,
+      //     type: 'xls',
+      //   })
+      // },
+      // deletecontract(){},
+      //删除
+
+      approve() {},
+      listQuery() {},
+      total() {},
+      clearfiltQuery() {},
+      selectCrtDuty() {},
+    },
+  }
 </script>
 <style lang="scss" scoped>
-	/deep/.totalStorage .el-input__inner {
-		color: #afb5cb;
-		background: #f5f7fa;
-	}
-
-	.small-title {
-		position: relative;
-		padding: 10px;
-		font-weight: 600;
-	}
-
-	.small-title::before {
-		position: absolute;
-		content: '';
-		display: block;
-		background: #5473e8;
-		width: 4px;
-		height: 14px;
-		left: 0px;
-		top: 13px;
-	}
-
-	.position {
-		position: relative;
-	}
-
-	.add,
-	.del {
-		position: absolute;
-		right: -38px;
-		top: 9px;
-		cursor: pointer;
-	}
-
-	.del {
-		right: -70px;
-	}
-
-	.amap-page-container {
-		width: 300px;
-		height: 300px;
-	}
-
-	.ware {
-		font-size: 12px;
-		color: rgb(255, 255, 255);
-		padding: 3px;
-		position: relative;
-		top: -1px;
-		border-radius: 3px;
-		display: inline-block;
-		text-align: center;
-	}
-
-	.title {
-		position: relative;
-	}
-
-	.title::before {
-		content: '';
-		display: inline-block;
-		width: 5px;
-		height: 30px;
-		background: #5473e8;
-		position: absolute;
-		left: 0;
-	}
-
-	.ws-info-table {
-		border-left: 1px solid transparent;
-		border-top: 1px solid transparent;
-	}
-
-	.el-button--primary {
-		background-color: #5878e8;
-		border-color: #5878e8;
-	}
-
-	.adjustment.el-button--primary {
-		background-color: #51cdd9;
-		border-color: #51cdd9;
-	}
-
-	.el-col {
-		background: #f6f7fc;
-	}
-
-	.record {
-		background: #fff;
-		color: #8890b1;
-		border-color: #fff;
-		display: inline-block;
-		margin-bottom: 10px;
-		cursor: pointer;
-		margin-left: 5px;
-		margin-right: 5px;
-	}
-
-	.record img {
-		position: relative;
-		top: 2px;
-	}
-
-	.record.active img {
-		position: relative;
-		top: 4px;
-	}
-
-	.record.active {
-		color: #262626;
-	}
-
-	.button-container {
-		display: flex;
-		flex-wrap: nowrap;
-		justify-content: space-between;
-		align-items: center;
-		background-color: #fff;
-		width: 100%;
-		height: 50px;
-		padding: 0 10px;
-
-		&>div {
-			margin-left: 10px;
-			display: flex;
-			flex-wrap: nowrap;
-			flex-direction: row;
-
-			&>span {
-				line-height: 50px;
-			}
-		}
-
-		/deep/.auditFlow-box {
-			position: unset;
-			margin-left: 10px;
-
-			&/deep/.auditFlow-icon {
-				width: auto;
-				padding-right: 30px;
-			}
-
-			&/deep/.auditFlow-main {
-				position: absolute;
-			}
-		}
-	}
-
-	.box-app {
-		display: inline-block;
-		float: left;
-		margin-left: 30px;
-		line-height: 50px;
-	}
-
-	/deep/.el-dialog {
-		.el-form-item {
-			margin-bottom: 0 !important;
-
-			.el-input--medium {
-				textarea {
-					min-height: 100px !important;
-				}
-			}
-		}
-	}
-
-	.top-grade {
-		background: linear-gradient(90deg, #5678e9, #7993f6);
-		color: #fff;
-		padding: 3px;
-		border-radius: 2px;
-	}
-
-	.second-class {
-		background: linear-gradient(90deg, #50cdd9, #82e2ea);
-		color: #fff;
-		padding: 3px;
-		border-radius: 2px;
-	}
-
-	.third-class {
-		background: linear-gradient(90deg, #ffa735, #ffbf70);
-		color: #fff;
-		padding: 3px;
-		border-radius: 2px;
-	}
-
-	.substandard {
-		background: linear-gradient(90deg, #b2b4bb, #ced0d5);
-		color: #fff;
-		padding: 3px;
-		border-radius: 2px;
-	}
-
-	.collapse-bottom {
-		margin-bottom: 20px;
-	}
-
-	.input-main .textarea .el-textarea__inner {
-		width: 100%;
-		z-index: 1;
-	}
-
-	.bg-left {
-		padding-left: 30px;
-	}
-
-	.bg-right {
-		padding-right: 10px;
-		text-align: right;
-	}
-
-	.bg-bottom {
-		margin: 15px 0px;
-	}
-
-	.wenzi {
-		width: 900px;
-		margin: 0 auto;
-	}
-
-	.wenzi h3 {
-		display: inline-block;
-		left: 10px;
-	}
-
-	.wenzi p {
-		display: inline-block;
-	}
-
-	.center {
-		padding: 0 1%;
-	}
-
-	.el-form-item {
-		width: 50%;
-	}
-
-	.el-form-item__label {
-		text-align: center;
-	}
-
-	.ce {
-		width: 900px;
-		margin: 0 auto;
-	}
-
-	/*.crt-main .textarea /deep/ .el-form-item__label {*/
-	/*  height: 82px;*/
-	/*}*/
-	// 控制select为只读的时候显示样式
-
-	.hide-sel {
-		.el-input__inner {
-			border: 0px;
-		}
-
-		.el-icon-arrow-up {
-			display: none;
-		}
-
-		.el-textarea__inner {
-			background-color: #fff !important;
-			border: 0;
-		}
-
-		.el-date-editor {
-			i {
-				display: none;
-			}
-		}
-
-		.is-disabled {
-			.el-input__inner:hover {
-				background-color: #fff !important;
-				border: 0;
-			}
-
-			color: #606266;
-
-			.el-input__inner {
-				background-color: #fff !important;
-				border: 0;
-				color: #606266;
-			}
-
-			.el-textarea__inner {
-				background-color: #fff !important;
-				border: 0;
-				color: #606266;
-			}
-		}
-	}
-
-	// 控制select为只读的时候显示样式
-	/deep/.ws-class-table-col {
-		height: auto;
-		padding: 0px 2px;
-
-		/deep/.el-input__inner {
-			padding: 0px 2px;
-		}
-	}
-
-	/deep/.is-disabled {
-		.el-input__prefix,
-		.el-input__suffix {
-			display: none;
-		}
-
-		.el-input__inner {
-			background-color: #fff;
-			border-color: #fff !important;
-			color: #000 !important;
-			font-size: 14px;
-			cursor: text;
-			padding: 0 !important;
-		}
-	}
-
-	.winseaview-view {
-		padding: 0 0 20px;
-	}
-
-	.container {
-		overflow: scroll;
-		height: 93vh;
-	}
-
-	.el-textarea__inner {
-		display: none;
-	}
-
-	.readonly {
-		width: 16%;
-	}
-
-	.ws-info-table .el-form-item {
-		width: 14.28%;
-	}
-	.dataClass {
-       width: 20% !important;
-	}
-	.input {
-		width: 20% !important;
-	}
-
-
-	/deep/.ws-info-table .el-form-item .el-form-item__label {
-		background-color: #f6f7fc;
-		font-size: 12px;
-		height: 45px;
-	}
-
-	//去边框
-	/deep/.el-form-item {
-		border-right: 0px;
-		border-bottom: 0px;
-	}
-
-	/deep/.ws-info-table {
-		border-left: 0px;
-		border-top: 0px;
-	}
-
-	.ws-info-table .el-form-item .el-form-item__content {
-		border-right: 0px;
-		border-bottom: 0px;
-		border-left: 0px;
-		border-top: 0px;
-	}
-
-	/deep/.ws-info-table .el-form-item {
-		border-right: 0px;
-		border-bottom: 0px;
-		border-left: 0px;
-		border-top: 0px;
-	}
-
-	/deep/.ws-info-table .el-form-item .el-form-item__content {
-		background: #f5f7fa;
-		border-radius: 4px;
-		border: 1px solid #d8dce6;
-		font-family: PingFangSC-Regular, PingFang SC;
-		margin-bottom: 5px;
-		background-color: #fff;
-		font-size: 14px;
-		font-weight: 400;
-		color: #8890b1;
-		line-height: 16px;
-	}
-
-	/deep/.ws-info-table .el-form-item .el-form-item__content {
-		border: 0px;
-	}
-	/deep/.el-table td , /deep/.el-table .el-table__header .cell{
-		text-align: center;
-	}
-	.binNo{
-		color: #333;
-		font-size: 18px;
-		margin-left: 20px;
-	}
+  /deep/.totalStorage .el-input__inner {
+    color: #afb5cb;
+    background: #f5f7fa;
+  }
+
+  .small-title {
+    position: relative;
+    padding: 10px;
+    font-weight: 600;
+  }
+
+  .small-title::before {
+    position: absolute;
+    content: '';
+    display: block;
+    background: #5473e8;
+    width: 4px;
+    height: 14px;
+    left: 0px;
+    top: 13px;
+  }
+
+  .position {
+    position: relative;
+  }
+
+  .add,
+  .del {
+    position: absolute;
+    right: -38px;
+    top: 9px;
+    cursor: pointer;
+  }
+
+  .del {
+    right: -70px;
+  }
+
+  .amap-page-container {
+    width: 300px;
+    height: 300px;
+  }
+
+  .ware {
+    font-size: 12px;
+    color: rgb(255, 255, 255);
+    padding: 3px;
+    position: relative;
+    top: -1px;
+    border-radius: 3px;
+    display: inline-block;
+    text-align: center;
+  }
+
+  .title {
+    position: relative;
+  }
+
+  .title::before {
+    content: '';
+    display: inline-block;
+    width: 5px;
+    height: 30px;
+    background: #5473e8;
+    position: absolute;
+    left: 0;
+  }
+
+  .ws-info-table {
+    border-left: 1px solid transparent;
+    border-top: 1px solid transparent;
+  }
+
+  .el-button--primary {
+    background-color: #5878e8;
+    border-color: #5878e8;
+  }
+
+  .adjustment.el-button--primary {
+    background-color: #51cdd9;
+    border-color: #51cdd9;
+  }
+
+  .el-col {
+    background: #f6f7fc;
+  }
+
+  .record {
+    background: #fff;
+    color: #8890b1;
+    border-color: #fff;
+    display: inline-block;
+    margin-bottom: 10px;
+    cursor: pointer;
+    margin-left: 5px;
+    margin-right: 5px;
+  }
+
+  .record img {
+    position: relative;
+    top: 2px;
+  }
+
+  .record.active img {
+    position: relative;
+    top: 4px;
+  }
+
+  .record.active {
+    color: #262626;
+  }
+
+  .button-container {
+    display: flex;
+    flex-wrap: nowrap;
+    justify-content: space-between;
+    align-items: center;
+    background-color: #fff;
+    width: 100%;
+    height: 50px;
+    padding: 0 10px;
+
+    &>div {
+      margin-left: 10px;
+      display: flex;
+      flex-wrap: nowrap;
+      flex-direction: row;
+
+      &>span {
+        line-height: 50px;
+      }
+    }
+
+    /deep/.auditFlow-box {
+      position: unset;
+      margin-left: 10px;
+
+      &/deep/.auditFlow-icon {
+        width: auto;
+        padding-right: 30px;
+      }
+
+      &/deep/.auditFlow-main {
+        position: absolute;
+      }
+    }
+  }
+
+  .box-app {
+    display: inline-block;
+    float: left;
+    margin-left: 30px;
+    line-height: 50px;
+  }
+
+  /deep/.el-dialog {
+    .el-form-item {
+      margin-bottom: 0 !important;
+
+      .el-input--medium {
+        textarea {
+          min-height: 100px !important;
+        }
+      }
+    }
+  }
+
+  .top-grade {
+    background: linear-gradient(90deg, #5678e9, #7993f6);
+    color: #fff;
+    padding: 3px;
+    border-radius: 2px;
+  }
+
+  .second-class {
+    background: linear-gradient(90deg, #50cdd9, #82e2ea);
+    color: #fff;
+    padding: 3px;
+    border-radius: 2px;
+  }
+
+  .third-class {
+    background: linear-gradient(90deg, #ffa735, #ffbf70);
+    color: #fff;
+    padding: 3px;
+    border-radius: 2px;
+  }
+
+  .substandard {
+    background: linear-gradient(90deg, #b2b4bb, #ced0d5);
+    color: #fff;
+    padding: 3px;
+    border-radius: 2px;
+  }
+
+  .collapse-bottom {
+    margin-bottom: 20px;
+  }
+
+  .input-main .textarea .el-textarea__inner {
+    width: 100%;
+    z-index: 1;
+  }
+
+  .bg-left {
+    padding-left: 30px;
+  }
+
+  .bg-right {
+    padding-right: 10px;
+    text-align: right;
+  }
+
+  .bg-bottom {
+    margin: 15px 0px;
+  }
+
+  .wenzi {
+    width: 900px;
+    margin: 0 auto;
+  }
+
+  .wenzi h3 {
+    display: inline-block;
+    left: 10px;
+  }
+
+  .wenzi p {
+    display: inline-block;
+  }
+
+  .center {
+    padding: 0 1%;
+  }
+
+  .el-form-item {
+    width: 50%;
+  }
+
+  .el-form-item__label {
+    text-align: center;
+  }
+
+  .ce {
+    width: 900px;
+    margin: 0 auto;
+  }
+
+  /*.crt-main .textarea /deep/ .el-form-item__label {*/
+  /*  height: 82px;*/
+  /*}*/
+  // 控制select为只读的时候显示样式
+
+  .hide-sel {
+    .el-input__inner {
+      border: 0px;
+    }
+
+    .el-icon-arrow-up {
+      display: none;
+    }
+
+    .el-textarea__inner {
+      background-color: #fff !important;
+      border: 0;
+    }
+
+    .el-date-editor {
+      i {
+        display: none;
+      }
+    }
+
+    .is-disabled {
+      .el-input__inner:hover {
+        background-color: #fff !important;
+        border: 0;
+      }
+
+      color: #606266;
+
+      .el-input__inner {
+        background-color: #fff !important;
+        border: 0;
+        color: #606266;
+      }
+
+      .el-textarea__inner {
+        background-color: #fff !important;
+        border: 0;
+        color: #606266;
+      }
+    }
+  }
+
+  // 控制select为只读的时候显示样式
+  /deep/.ws-class-table-col {
+    height: auto;
+    padding: 0px 2px;
+
+    /deep/.el-input__inner {
+      padding: 0px 2px;
+    }
+  }
+
+  /deep/.is-disabled {
+    .el-input__prefix,
+    .el-input__suffix {
+      display: none;
+    }
+
+    .el-input__inner {
+      background-color: #fff;
+      border-color: #fff !important;
+      color: #000 !important;
+      font-size: 14px;
+      cursor: text;
+      padding: 0 !important;
+    }
+  }
+
+  .winseaview-view {
+    padding: 0 0 20px;
+  }
+
+  .container {
+    overflow: scroll;
+    height: 93vh;
+  }
+
+  .el-textarea__inner {
+    display: none;
+  }
+
+  .readonly {
+    width: 16%;
+  }
+
+  .ws-info-table .el-form-item {
+    width: 14.28%;
+  }
+
+  .dataClass {
+    width: 20% !important;
+  }
+
+  .input {
+    width: 20% !important;
+  }
+
+
+  /deep/.ws-info-table .el-form-item .el-form-item__label {
+    background-color: #f6f7fc;
+    font-size: 12px;
+    height: 45px;
+  }
+
+  //去边框
+  /deep/.el-form-item {
+    border-right: 0px;
+    border-bottom: 0px;
+  }
+
+  /deep/.ws-info-table {
+    border-left: 0px;
+    border-top: 0px;
+  }
+
+  .ws-info-table .el-form-item .el-form-item__content {
+    border-right: 0px;
+    border-bottom: 0px;
+    border-left: 0px;
+    border-top: 0px;
+  }
+
+  /deep/.ws-info-table .el-form-item {
+    border-right: 0px;
+    border-bottom: 0px;
+    border-left: 0px;
+    border-top: 0px;
+  }
+
+  /deep/.ws-info-table .el-form-item .el-form-item__content {
+    background: #f5f7fa;
+    border-radius: 4px;
+    border: 1px solid #d8dce6;
+    font-family: PingFangSC-Regular, PingFang SC;
+    margin-bottom: 5px;
+    background-color: #fff;
+    font-size: 14px;
+    font-weight: 400;
+    color: #8890b1;
+    line-height: 16px;
+  }
+
+  /deep/.ws-info-table .el-form-item .el-form-item__content {
+    border: 0px;
+  }
+
+  /deep/.el-table td,
+  /deep/.el-table .el-table__header .cell {
+    text-align: center;
+  }
+
+  .binNo {
+    color: #333;
+    font-size: 18px;
+    margin-left: 20px;
+  }
 </style>