Browse Source

Merge branch 'master' of http://git.zthymaoyi.com/gdc/yiliangyiyun-pc

achao 2 năm trước cách đây
mục cha
commit
03bbf5a0d6
51 tập tin đã thay đổi với 2778 bổ sung295 xóa
  1. 1 1
      .env.production
  2. 3 2
      package.json
  3. 14 2
      public/static/payprint1.html
  4. 1 1
      public/static/warehousePrint.html
  5. 2 1
      src/api/V2/houseSelfCollect/index.js
  6. 6 0
      src/api/V2/warehouse/index.js
  7. 79 22
      src/components/WsUpload/index.vue
  8. 39 21
      src/components/balanceAlert.vue
  9. 106 0
      src/global.js
  10. 75 1
      src/global/directive.js
  11. 4 1
      src/global/index.js
  12. 1 0
      src/lang/zh.js
  13. 44 0
      src/model/defalutConfig/indexRx1.js
  14. 5 2
      src/model/houseSelfCollect/index.js
  15. 9 1
      src/model/warehouse/index.js
  16. 3 0
      src/views/contractManagement/acquisitionContractExamine.vue
  17. 3 0
      src/views/contractManagement/collectionContractExamine.vue
  18. 2 2
      src/views/contractManagement/purchaseContractAdd.vue
  19. 3 0
      src/views/contractManagement/purchaseContractExamine.vue
  20. 1 1
      src/views/contractManagement/salesContract.vue
  21. 2 2
      src/views/contractManagement/salesContractAdd.vue
  22. 3 0
      src/views/contractManagement/salesContractExamine.vue
  23. 16 0
      src/views/houseSelfCollect/customerManagementAdd.vue
  24. 57 4
      src/views/houseSelfCollect/inspectInfoLook.vue
  25. 113 45
      src/views/houseSelfCollect/inspectionManagementNew.vue
  26. 83 3
      src/views/houseSelfCollect/inspectionManagementrecord.vue
  27. 63 10
      src/views/houseSelfCollect/newWeighingManagement.vue
  28. 93 17
      src/views/houseSelfCollect/paymentManagement.vue
  29. 75 12
      src/views/houseSelfCollect/weightCheckRecord.vue
  30. 2 0
      src/views/outboundManagement/component/route.js
  31. 79 2
      src/views/outboundManagement/newQualityInspectionManagement.vue
  32. 71 3
      src/views/outboundManagement/outInspectRecord.vue
  33. 7 0
      src/views/outboundManagement/qualityInspection.vue
  34. 143 49
      src/views/outboundManagement/weighingManagementNew.vue
  35. 60 10
      src/views/outboundManagement/weighingManagementrecord.vue
  36. 8 3
      src/views/profitable/cashout.vue
  37. 1 1
      src/views/profitable/payment.vue
  38. 2 2
      src/views/statisticalReport/autoSettlementList.vue
  39. 9 0
      src/views/taskManagement/inOutWarehouseTaskEdit.vue
  40. 7 1
      src/views/taskManagement/tranManagementWarehouseInOutTaskAdd.vue
  41. 9 0
      src/views/taskManagement/tranManagementWarehouseInOutTaskEdit.vue
  42. 16 0
      src/views/tradeServicesManagement/component/routers/route.js
  43. 1011 0
      src/views/tradeServicesManagement/goods.vue
  44. 77 10
      src/views/tradeServicesManagement/warehouseReceiptAdd.vue
  45. 3 3
      src/views/tradeServicesManagement/warehouseReceiptRegulation.vue
  46. 2 0
      src/views/universalityAudit/audit.vue
  47. 196 9
      src/views/warehousenew/materialInOutRecord.vue
  48. 31 12
      src/views/warehousenew/materialInOutWarehouse.vue
  49. 78 34
      src/views/warehousenew/warehouseManagementList.vue
  50. 29 2
      src/views/warehousenew/warehouseManagementRecord.vue
  51. 31 3
      src/views/warehousenew/warehousingOrder.vue

+ 1 - 1
.env.production

@@ -5,7 +5,7 @@
 NODE_ENV = 'production'
 # base api
 VUE_APP_BASE_API = 'https://api2.eliangeyun.com'
-#VUE_APP_BASE_API = 'https://apitest.eliangeyun.com'
+# VUE_APP_BASE_API = 'http://apitest2.eliangeyun.com'
 
 # 微服务相关接口配置
 ## 任务消息

+ 3 - 2
package.json

@@ -97,14 +97,14 @@
     "xlsx": "^0.17.4"
   },
   "devDependencies": {
-    "@babel/core": "^7.0.0",
+    "@babel/core": "^7.21.4",
+    "@babel/preset-env": "^7.21.4",
     "@babel/register": "7.0.0",
     "@pixul/node-rancher-api": "^1.4.0",
     "@vue/cli-plugin-babel": "3.6.0",
     "@vue/cli-plugin-eslint": "^3.1.5",
     "@vue/cli-plugin-pwa": "^3.12.1",
     "@vue/cli-service": "3.5.3",
-    "@vue/test-utils": "1.0.0-beta.29",
     "autoprefixer": "^9.5.1",
     "babel-core": "7.0.0-bridge.0",
     "babel-plugin-dynamic-import-node": "^2.3.3",
@@ -130,6 +130,7 @@
     "runjs": "^4.4.2",
     "sass-loader": "^7.1.0",
     "throttle-debounce": "1.1.0",
+    "vue-jest": "^3.0.7",
     "vue-lazyload": "^1.3.3",
     "vue-template-compiler": "2.6.10"
   },

+ 14 - 2
public/static/payprint1.html

@@ -599,6 +599,13 @@
                 <img :src="customerList1[index].imgURl.imageUrl4" class="avatar" />
               </div> -->
                     </div>
+                    <div class="bankcard" v-if="isShowPrintType7&&printData1[index].selfCertificateURL">
+
+                        <div class="sfcard-content part2">
+                            <img v-if="printData1[index].selfCertificateURL" :src="printData1[index].selfCertificateURL" class="avatar" />
+
+                        </div>
+                    </div>
                 </div>
             </div>
         </div>
@@ -1373,6 +1380,7 @@
             isShowPrintType4: false,
             isShowPrintType5: false,
             isShowPrintType6: false,
+            isShowPrintType7: false,
             showType: [],
             printData: {},
             printData1: [],
@@ -1506,6 +1514,7 @@
             }
             console.log(this.customerList)
             console.log('cwprint', localStorage.getItem('cwprint'))
+            console.log(this.selectPrint)
             if (cwprint == 'true') {
                 if (this.selectPrint) {
                     for (let i = 0; i < this.customerList1.length; i++) {
@@ -1519,8 +1528,8 @@
                         }
                     }
                     for (let i = 0; i < this.printData1.length; i++) {
-                        if (this.printData1[i].payeeAddressUrl) {
-                            let _url2 = this.printData1[i].payeeAddressUrl.split(',')
+                        if (this.printData1[i].identityAuthenticationInfo.payeeAddressUrl) {
+                            let _url2 = this.printData1[i].identityAuthenticationInfo.payeeAddressUrl.split(',')
                             this.printData1[i].imgURl = {
                                 imageUrl3: _url2[0],
                                 imageUrl4: _url2[1]
@@ -1565,6 +1574,9 @@
                         case '打印回执单':
                             this.isShowPrintType5 = !this.isShowPrintType5
                             break
+                        case '打印自产证明':
+                            this.isShowPrintType7 = !this.isShowPrintType7
+                            break
                     }
                 }
             } else {

+ 1 - 1
public/static/warehousePrint.html

@@ -219,7 +219,7 @@
             <td class="col">{{item.carNo}}</td>
             <td class="col">{{item.binNumber.indexOf("托盘")!= -1?item.binNumber.replace("托盘",""):item.binNumber}}</td>
             <td class="col">{{item.boxNo}}</td>
-            <td class="col">{{item.boxNo}}</td>
+            <td class="col">{{item.boxNoOther}}</td>
             <td class="col">{{item.grossWeight}}</td>
             <td class="col">{{item.tare}}</td>
             <td class="col">{{item.netWeight}}</td>

+ 2 - 1
src/api/V2/houseSelfCollect/index.js

@@ -139,4 +139,5 @@ export const API_GETQUALITY = '/qualityInspectionManagement/getQualityInspection
 export const API_GET_WAREHOUSE = '/warehouseBaseInfo/selectWarehouseSelfNew'
 
 export const API_POST_GETOKEN = `/photoFrameController/api/getToken`
-export const API_POST_GEROM = `/photoFrameController/api/getRom`
+export const API_POST_GEROM = `/photoFrameController/api/getRom`
+export const API_POST_UPLOADSELF = '/paymentManagement/uploadSelfCertificate'

+ 6 - 0
src/api/V2/warehouse/index.js

@@ -193,3 +193,9 @@ export const API_GET_GETQUALITYZHE = '/warehouseBaseInfo/getQuantityZhe'
 export const API_GET_GETQUALITYREAL = '/warehouseBaseInfo/getQuantityReal'
 //销售转移
 export const API_SALESTRANINFO = '/salesTransferInfo/api/salesTransfer'
+// 物料导出
+export const API_GET_EXPORT ='/materialWarehouseInOut/exportMaterialWarehouse'
+// 导出入库(佳屹农)
+export const API_GET_EXPORTJYNIN ='/warehouseBaseInfo/exportInJyn'
+// 导出出库(佳屹农)
+export const API_GET_EXPORTJYNOUT ='/warehouseBaseInfo/exportOutJyn'

+ 79 - 22
src/components/WsUpload/index.vue

@@ -23,7 +23,7 @@
         <i class="el-icon-question"></i>
       </el-tooltip> -->
       
-      <div class="tip">
+      <div v-if='tipstatus' class="tip">
         {{ $t('upload.uploadText01') }}
         {{  formatTxt}}
         格式的文件,单个文件大小不能超过10M
@@ -125,6 +125,7 @@
 </template>
 
 <script>
+import axios from 'axios'
 import { getFileList, saveFiles } from '@/model/upload'
 import { getOssInterimCredentials } from '@/model/procurement/spare'
 import { uuid } from '@/utils/assist'
@@ -146,6 +147,10 @@ export default {
       type: Boolean,
       default: true,
     },
+    tipstatus:{
+      type: Boolean,
+      default: true,
+    },
     remarkWord: {
       // 是否有备注要求
       type: Boolean,
@@ -362,36 +367,88 @@ export default {
         }
       }
     },
+     getFile(url) {
+            return new Promise((resolve, reject) => {
+                axios({
+                    method: 'get',
+                    url,
+                    responseType: 'blob'
+                })
+                .then(data => {
+                    console.log('data', data)
+                    resolve(data.data)
+                })
+                .catch(error => {
+                    reject(error.toString())
+                })
+            })
+        },
     _handleDownClick(){
       console.log(this.fileList,111)
       var arr=[]
       for (let i = 0; i < this.fileList.length; i++) {
-        arr.push(this.fileList[i].url+'?s=' + Math.random().toString())
+        arr.push({url:this.fileList[i].url+'?s=' + Math.random().toString(),name:this.fileList[i].name})
       }
       let urls = arr
-          let promises = [];
-          urls.map((item) => {
-            promises.push(this.getBase64Image(item));
-          });
-
-          Promise.all(promises)
-            .then((result) => {
-              let zip = new JSZip();// 创建压缩包
-              let img = zip.folder("image"); // 创建文件夹
-              let number = 0;
-              result.map((p) => {
-                let i = number++;
-                img.file(`${i}.png`, p, {
-                  base64: true,
+          const zip = new JSZip();
+            const promises = [];
+            arr.forEach((item,index) => {
+                const promise = this.getFile(item.url).then(data => {
+                	//文件名称,data 是内容
+                    const file_name = item.name;
+                    zip.file(`${file_name}`,data, { binary: true });
                 });
-              });
-              zip.generateAsync({ type: "blob" }).then(function (content) {
-                // see FileSaver.js
-                FileSaver.saveAs(content, "image.zip");
-              });
+                promises.push(promise)
+            })
+            Promise.all(promises).then(() => {
+                zip.generateAsync({ type: 'blob' }).then(content => {
+                    // 利用file-saver保存文件  自定义文件名
+                    saveAs(content, 'file.zip') 
+                })
             })
-            .catch((err) => {});
+          // urls.map((item) => {
+          //   console.log(item)
+          //   if(item.type.toLowerCase()==('jpg'||'png'||'jpeg')){
+          //     console.log(this.getBase64Image(item.url))
+          //     promises.push({url:this.getBase64Image(item.url),type:item.type});
+          //   }else{
+          //     console.log(this.getFile(item.url))
+          //     promises.push({url:this.getFile(item.url),type:item.type});
+              
+          //   }
+            
+          // });
+          // console.log(promises)
+          // promises.forEach(item => {
+          // Promise.all(item.url)
+          //   .then((result) => {
+          //     console.log(result)
+          //     let zip = new JSZip();// 创建压缩包
+          //     let img = zip.folder("image"); // 创建文件夹
+          //     let number = 0;
+          //     let file = zip.folder("file"); // 创建文件夹
+          //     let number1 = 0;
+          //     imgresult=result.filter((item)=>{return item.type.toLowerCase()==('jpg'||'png'||'jpeg')})
+          //     fileresult=result.filter((item)=>{return item.type.toLowerCase()!=('jpg'||'png'||'jpeg')})
+          //     imgresult.map((p) => {
+          //       let i = number++;
+          //       img.file(`${i}.png`, p, {
+          //         base64: true,
+          //       });
+          //     });
+          //     fileresult.map((p) => {
+          //       let i = number1++;
+          //       file.file(`${i}.${item.type}`, p, { binary: true });
+          //     });
+          //     zip.generateAsync({ type: "blob" }).then(function (content) {
+          //       // see FileSaver.js
+          //       FileSaver.saveAs(content, "file.zip");
+          //     });
+          //   })
+          //   .catch((err) => {});
+          // })
     },
+
     getBase64Image(src) {
       return new Promise(function (resolve, reject) {
         var canvas = document.createElement("canvas"),

+ 39 - 21
src/components/balanceAlert.vue

@@ -1,9 +1,21 @@
 <template>
   <div class="content">
-    <el-radio-group v-if="deptBudgetList.warehouseName=='榆树库'" @change="radiochange" v-model="radio">
-    <el-radio :label="1">大秤</el-radio>
-    <el-radio :label="2">小秤</el-radio>
-  </el-radio-group>
+    <div v-if="deptBudgetList.warehouseName=='榆树库'">
+      <!-- <el-radio-group @change="radiochange" v-model="radio">
+          <el-radio :label="1">大秤</el-radio>
+          <el-radio :label="2">小秤</el-radio>
+        </el-radio-group> -->
+        <div class="select">
+          <el-select @change="radiochange" v-model="value" placeholder="请选择">
+            <el-option
+              v-for="item in options"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value">
+            </el-option>
+          </el-select>
+        </div>
+    </div>
     <div class="title" v-if="information.indexOf('毛重') > -1">毛重</div>
     <div class="title" v-else>皮重</div>
     <div class="contentInfo">
@@ -26,14 +38,25 @@ export default {
       param: 9600,
       grossWeightVal: '',
       tareVal: '',
-      radio:1
+      radio:1,
+      options: [{
+          value: '1',
+          label: '大秤'
+        }, {
+          value: '2',
+          label: '小秤'
+        }],
+        value: '1'
     }
   },
   activated() {},
   mounted() {
-
     console.log(this.deptBudgetList)
+    if(localStorage.getItem('balanceStatus')){
+      this.value=localStorage.getItem('balanceStatus')
+    }
     this.openPort()
+    
   },
   computed: {},
   created() {},
@@ -51,7 +74,7 @@ export default {
     radiochange(e){
       console.log(e)
       localStorage.setItem('balanceStatus',e)
-      this.openPort()
+      // this.openPort()
     },
     async closePort() {
       console.log('closePort')
@@ -63,7 +86,7 @@ export default {
       if ('serial' in navigator) {
         if (!this.$store.state.app.reader) {
           if(localStorage.getItem('balanceStatus')){
-            this.radio=localStorage.getItem('balanceStatus')
+            this.value=localStorage.getItem('balanceStatus')
           }
           // The Web Serial API is supported.
           console.log('the Web Serial API is supported.')
@@ -81,7 +104,7 @@ export default {
             this.param = 2400
           } else if(this.deptBudgetList.warehouseName == '大庆朝阳沟库' ){
             this.param = 4800
-          }else if(this.deptBudgetList.warehouseName == '榆树库' &&this.radio==2){
+          }else if(this.deptBudgetList.warehouseName == '榆树库' &&this.value==1){
             this.param = 1200
           } else {
             this.param = 9600
@@ -149,7 +172,8 @@ export default {
             this.deptBudgetList.warehouseName == '洮南胡力吐粮食储备库' ||
             this.deptBudgetList.warehouseName == '鲅鱼圈祥腾库'||
             this.deptBudgetList.warehouseName == '洮南向阳乡金昊'||
-            this.deptBudgetList.warehouseName == '佳屹农仓储库'
+            this.deptBudgetList.warehouseName == '佳屹农仓储库'||
+            (this.deptBudgetList.warehouseName == '榆树库'&&this.value==1)
           ) {
             console.log('value:', value)
             var start = new Date().getTime()
@@ -334,7 +358,7 @@ export default {
         }
         await port.close()
       } else {
-        console.log('the Web Serial API is not supported.', navigator)
+        // console.log('the Web Serial API is not supported.', navigator)
       }
     }
   }
@@ -346,16 +370,6 @@ export default {
   position:absolute;
   top:29px;
 }
-/deep/.el-radio{
-  color:#fff;
-}
-/deep/.el-radio__input.is-checked+.el-radio__label{
-  color:#2aff7c;
-}
-/deep/.el-radio__input.is-checked .el-radio__inner {
-  background: #2aff7c !important;
-  border-color: #2aff7c !important;
-}
 .content {
   height: 350px;
   position: relative;
@@ -393,4 +407,8 @@ export default {
   text-align: right;
   margin-bottom: 20px;
 }
+.select{
+  position: absolute;
+  left: 20px;
+}
 </style>

+ 106 - 0
src/global.js

@@ -13,6 +13,112 @@ export default {
     setWs: function(newWs) {
         this.ws = newWs
     },
+    openDB:function(dbName, version = 1) {
+        return new Promise((resolve, reject) => {
+          //  兼容浏览器
+          var indexedDB =
+            window.indexedDB ||
+            window.mozIndexedDB ||
+            window.webkitIndexedDB ||
+            window.msIndexedDB;
+          let db;
+          // 打开数据库,若没有则会创建
+          const request = indexedDB.open(dbName, version);
+          // 数据库打开成功回调
+          request.onsuccess = function (event) {
+            db = event.target.result; // 数据库对象
+            console.log("数据库打开成功");
+            resolve(db);
+          };
+          // 数据库打开失败的回调
+          request.onerror = function (event) {
+            console.log("数据库打开报错");
+          };
+          // 数据库有更新时候的回调
+          request.onupgradeneeded = function (event) {
+            // 数据库创建或升级的时候会触发
+            console.log("onupgradeneeded");
+            db = event.target.result; // 数据库对象
+            var objectStore;
+            // 创建存储库
+            objectStore = db.createObjectStore("signalChat", {
+              keyPath: "sequenceId", // 这是主键
+              // autoIncrement: true // 实现自增
+            });
+            // 创建索引,在后面查询数据的时候可以根据索引查
+            objectStore.createIndex("sequenceId", "sequenceId", { unique: false });
+
+          };
+        });
+      },
+      addData(db, storeName, data) {
+        var request = db
+          .transaction([storeName], "readwrite") // 事务对象 指定表格名称和操作模式("只读"或"读写")
+          .objectStore(storeName) // 仓库对象
+          .add(data);
+      
+        request.onsuccess = function (event) {
+          console.log("数据写入成功");
+        };
+      
+        request.onerror = function (event) {
+          console.log("数据写入失败");
+        };
+      },
+      updateDB(db, storeName, data) {
+        var request = db
+          .transaction([storeName], "readwrite") // 事务对象
+          .objectStore(storeName) // 仓库对象
+          .put(data);
+      
+        request.onsuccess = function () {
+          console.log("数据更新成功");
+        };
+      
+        request.onerror = function () {
+          console.log("数据更新失败");
+        };
+      },
+      getDataByKey(db, storeName, key) {
+        return new Promise((resolve, reject) => {
+          var transaction = db.transaction([storeName]); // 事务
+          var objectStore = transaction.objectStore(storeName); // 仓库对象
+          var request = objectStore.get(key); // 通过主键获取数据
+      
+          request.onerror = function (event) {
+            console.log("事务失败");
+          };
+      
+          request.onsuccess = function (event) {
+            console.log("主键查询结果: ", request.result);
+            resolve(request.result);
+          };
+        });
+      },
+      deleteDB(db, storeName, id) {
+        var request = db
+          .transaction([storeName], "readwrite")
+          .objectStore(storeName)
+          .delete(id);
+      
+        request.onsuccess = function () {
+          console.log("数据删除成功");
+        };
+      
+        request.onerror = function () {
+          console.log("数据删除失败");
+        };
+      },
+      deleteDBAll(dbName) {
+        console.log(dbName);
+        let deleteRequest = window.indexedDB.deleteDatabase(dbName);
+        deleteRequest.onerror = function (event) {
+          console.log("删除失败");
+        };
+        deleteRequest.onsuccess = function (event) {
+          console.log("删除成功");
+        };
+      },
     whetherWebSocket: function(type) {
         var that = this
         if ('WebSocket' in window) {

+ 75 - 1
src/global/directive.js

@@ -24,6 +24,79 @@
 // })
 // 输入框只允许输入数字  v-number-input.float
 
+const enterToNext = {
+  install (Vue, options = {}) {
+    Vue.directive('enterToNext',{
+      // inserted:function(el){
+      //   console.log(el)
+      //   console.log("enterToNext...")
+      //   //let frm = el.querySelector('.el-form');
+      //   let inputs = el.querySelectorAll('input');
+      //   console.log(inputs)
+      //   var arr=[]
+      //   for( var i = 0 ;i < inputs.length ; i++ ){
+      //     if(!inputs[i].disabled){
+      //       arr.push(inputs[i])
+      //     }
+      //   }
+      //   //绑定回写事件
+      //   for( var i = 0 ;i < arr.length ; i++ ){
+      //     arr[i].setAttribute("keyFocusIndex",i);
+      //     arr[i].addEventListener('keyup', (ev) => {
+      //       if (ev.keyCode === 13) {
+      //         let targetTo = ev.srcElement.getAttribute('keyFocusTo');
+      //         if(targetTo){
+      //           this.$refs[targetTo].$el.focus();
+      //         }else{
+      //           var attrIndex = ev.srcElement.getAttribute('keyFocusIndex');
+      //           var ctlI = parseInt(attrIndex);
+      //           if(ctlI<arr.length-1)
+      //             arr[ctlI+1].focus();
+      //         }
+      //       }
+      //     });
+      //   }
+    
+      // },
+      update:function(el){
+        console.log(el)
+        console.log("enterToNext...")
+        //let frm = el.querySelector('.el-form');
+        setTimeout(function(){
+        let inputs = el.querySelectorAll('input');
+        console.log(inputs)
+        var arr=[]
+        for( var i = 0 ;i < inputs.length ; i++ ){
+          if(!inputs[i].disabled&&inputs[i].parentNode.parentNode.className.indexOf('el-select')==-1&&inputs[i].parentNode.className.indexOf('el-date-editor')==-1){
+            arr.push(inputs[i])
+          }
+        }
+        console.log(arr)
+        //绑定回写事件
+        for( var i = 0 ;i < arr.length ; i++ ){
+          arr[i].setAttribute("keyFocusIndex",i);
+          arr[i].addEventListener('keyup', (ev) => {
+            if (ev.keyCode === 13) {
+              let targetTo = ev.srcElement.getAttribute('keyFocusTo');
+              if(targetTo){
+                this.$refs[targetTo].$el.focus();
+              }else{
+                var attrIndex = ev.srcElement.getAttribute('keyFocusIndex');
+                var ctlI = parseInt(attrIndex);
+                if(ctlI<arr.length-1)
+
+                  arr[ctlI+1].focus();
+              }
+            }
+          });
+        }
+        },1000)
+        
+    
+      },
+    })
+  }
+}
 /**
  * 拖动
  */
@@ -204,5 +277,6 @@ export default {
   numberInput,
   loadmore,
   drag,
-  permissionCheck
+  permissionCheck,
+  enterToNext
 }

+ 4 - 1
src/global/index.js

@@ -2,7 +2,10 @@ import './prototypes'
 import directive from './directive'
 import Vue from 'vue'
 // import filters from '@/global/filters';
-Object.values(directive).forEach(value => Vue.use(value))
+Object.values(directive).forEach(value =>{
+    console.log(value)
+    Vue.use(value)
+} )
 // const install = () => {
 
 //   Object.keys(directive).forEach((key) => Vue.use(directive[key]));

+ 1 - 0
src/lang/zh.js

@@ -572,6 +572,7 @@ export default {
     stockWarehouseReceiptRegulation: '库存贸易服务',
     onWaywarehouseReceiptRegulation: '在途贸易服务',
     warehouseReceiptAdd: '创建仓单',
+    warehouseReceiptgoods:'创建仓单  /  选择货源',
     inOutRecord: '出入库记录',
     reviewWarehouseReceipt: '审核仓单',
     approveWarehouseReceipt: '审批仓单',

+ 44 - 0
src/model/defalutConfig/indexRx1.js

@@ -0,0 +1,44 @@
+import axios from 'axios'
+import { Sequelize, EventBus } from 'base-core-lib'
+const instance = axios.create({
+  baseURL: process.env.VUE_APP_BASE_API,
+  withCredentials: process.env.VUE_APP_WITHCREDENTIALS,
+  timeout: process.env.VUE_APP_AJAX_TIMEOUT
+})
+instance.interceptors.request.use(
+  (config) => {
+      
+    
+    // console.info(config.url, 'config.url')
+    console.log(config, 'config.url')
+    
+    return config
+  },
+  (error) => {
+    console.log(error) // for debug
+    return Promise.reject(error)
+  },
+)
+
+// 添加一个响应拦截器
+instance.interceptors.response.use(
+  (response) => {
+    // Do something with response data
+    // console.log('response->', response)
+    closeLoading()
+    return response
+  },
+  (error) => {
+    console.log(error, 'error')
+    // Do something with response error
+    closeLoading()
+    return Promise.reject(error)
+  },
+)
+function closeLoading () {
+  setTimeout(() => {
+    EventBus.$emit('hideLoading')
+  }, 200)
+}
+
+export const appRx1 = instance

+ 5 - 2
src/model/houseSelfCollect/index.js

@@ -72,7 +72,8 @@ import {
     API_POST_GETCARNUMBER,
     API_POST_GETOKEN,
     API_POST_GEROM,
-    API_GETQUALITY
+    API_GETQUALITY,
+    API_POST_UPLOADSELF
 } from '@/api/V2/houseSelfCollect'
 //客户管理列表
 export const getCustomerManage = appRx.get(API_GET_CUSTOMER_MANAGE, errorCatcher, errorHandle, filter)
@@ -216,4 +217,6 @@ export const getwarehouse = appRx.get(API_GET_WAREHOUSE, errorCatcher, errorHand
 export const getToken = appRx.post(API_POST_GETOKEN, errorCatcher, errorHandle, filter)
 export const getRom = appRx.post(API_POST_GEROM, errorCatcher, errorHandle, filter)
 // 查询交易量
-export const getquality = appRx.get(API_GETQUALITY, errorCatcher, errorHandle, filter)
+export const getquality = appRx.get(API_GETQUALITY, errorCatcher, errorHandle, filter)
+// 上传自产证明
+export const uploadself = appRx.post(API_POST_UPLOADSELF, errorCatcher, errorHandle, filter)

+ 9 - 1
src/model/warehouse/index.js

@@ -93,7 +93,10 @@ import {
     API_GET_LOOKMATERIAL,
     API_GET_GETQUALITYZHE,
     API_GET_GETQUALITYREAL,
-    API_SALESTRANINFO
+    API_SALESTRANINFO,
+    API_GET_EXPORT,
+    API_GET_EXPORTJYNIN,
+    API_GET_EXPORTJYNOUT
     // API_GET_EXPENSEINFO
 } from '@/api/V2/warehouse'
 // import { app } from 'electron'
@@ -178,6 +181,8 @@ export const getReceiptTaskNo = appRx.get(API_GET_RECEIPTTASKNO,errorCatcher, er
 export const postExport = appRx.post(API_POST_EXPORT)
 //导出出库
 export const postExportOut = appRx.post(API_POST_EXPORTOUT)
+//物料导出
+export const postExportMaterial = appRx.post(API_GET_EXPORT)
 //导出历史库存记录
 export const exportHistoricalInventory = appRx.post(API_POST_EXPORTHISTORICALINVENTORY)
 //打印增量
@@ -287,3 +292,6 @@ export const getQualityZhe = appRx.get(API_GET_GETQUALITYZHE, errorCatcher, erro
 export const getQualityReal = appRx.get(API_GET_GETQUALITYREAL, errorCatcher, errorHandle, filter)
 //销售转移
 export const salestraninfo = appRx.post(API_SALESTRANINFO, errorCatcher, errorHandle, filter)
+// 佳屹农导出入库出库
+export const postExportjynin = appRx.post(API_GET_EXPORTJYNIN)
+export const postExportjynout = appRx.post(API_GET_EXPORTJYNOUT)

+ 3 - 0
src/views/contractManagement/acquisitionContractExamine.vue

@@ -49,6 +49,9 @@
         <ws-form-item label="合同编号" span="1" prop="contractNo">
           {{ deptBudgetList.contractNo }}
         </ws-form-item>
+        <ws-form-item  label="合同提示" span="1" prop="contractNo" >
+          {{ deptBudgetList.pointOut }}
+        </ws-form-item>
         <ws-form-item label="交易主体" span="1" prop="transactionSubject" class="readonly">
           {{deptBudgetList.transactionSubject}}
         </ws-form-item>

+ 3 - 0
src/views/contractManagement/collectionContractExamine.vue

@@ -50,6 +50,9 @@
         <ws-form-item label="合同编号" span="1" prop="contractNo">
           {{ deptBudgetList.contractNo }}
         </ws-form-item>
+        <ws-form-item  label="合同提示" span="1" prop="contractNo" >
+          {{ deptBudgetList.pointOut }}
+        </ws-form-item>
         <ws-form-item label="结算方式" span="1" prop="settlementMethod">{{ deptBudgetList.settlementMethod }}
         </ws-form-item>
         <ws-form-item label="买方" span="1" prop="buyer">

+ 2 - 2
src/views/contractManagement/purchaseContractAdd.vue

@@ -746,7 +746,7 @@ import { isUndefined } from 'xe-utils/methods'
         for (let i = 0; i < this.customerinfo.length; i++) {
           console.log(this.customerinfo[i].customerName,item)
           if(this.customerinfo[i].customerName==item){
-            this.deptBudgetList.sellerPhone=this.customerinfo[i].customerPhone
+            this.$set(this.deptBudgetList,'sellerPhone',this.customerinfo[i].customerPhone)
           }
         }
       },
@@ -755,7 +755,7 @@ import { isUndefined } from 'xe-utils/methods'
         for (let i = 0; i < this.customerinfo.length; i++) {
           console.log(this.customerinfo[i].customerName,item)
           if(this.customerinfo[i].customerName==item){
-            this.deptBudgetList.buyerPhone=this.customerinfo[i].customerPhone
+            this.$set(this.deptBudgetList,'buyerPhone',this.customerinfo[i].customerPhone)
           }
         }
       },

+ 3 - 0
src/views/contractManagement/purchaseContractExamine.vue

@@ -52,6 +52,9 @@
         <ws-form-item label="合同编号" v-if="deptBudgetList.agreementType=='采购合同'" span="1" prop="contractNo">
           {{ deptBudgetList.contractNo }}
         </ws-form-item>
+        <ws-form-item  label="合同提示" span="1" prop="contractNo" >
+          {{ deptBudgetList.pointOut }}
+        </ws-form-item>
         <ws-form-item label="交易主体" span="1" prop="transactionSubject" class="readonly">
           {{deptBudgetList.transactionSubject}}
         </ws-form-item>

+ 1 - 1
src/views/contractManagement/salesContract.vue

@@ -655,7 +655,7 @@ export default {
         data = { id: row.id }
       }
       if (e == '执行中') {
-        if (row.addressUrl == '') {
+        if (row.addressUrl == ''&&localStorage.getItem('ws-pf_compName')=='黑龙江中天昊元贸易有限公司') {
           this.$notify.error({
             title: '失败',
             message: '修改失败,未上传双章合同附件',

+ 2 - 2
src/views/contractManagement/salesContractAdd.vue

@@ -645,7 +645,7 @@
         for (let i = 0; i < this.customerinfo.length; i++) {
           console.log(this.customerinfo[i].customerName,item)
           if(this.customerinfo[i].customerName==item){
-            this.deptBudgetList.buyerPhone=this.customerinfo[i].customerPhone
+            this.$set(this.deptBudgetList,'buyerPhone',this.customerinfo[i].customerPhone)
           }
         }
       },
@@ -654,7 +654,7 @@
         for (let i = 0; i < this.customerinfo.length; i++) {
           console.log(this.customerinfo[i].customerName,item)
           if(this.customerinfo[i].customerName==item){
-            this.deptBudgetList.sellerPhone=this.customerinfo[i].customerPhone
+            this.$set(this.deptBudgetList,'sellerPhone',this.customerinfo[i].customerPhone)
           }
         }
       },

+ 3 - 0
src/views/contractManagement/salesContractExamine.vue

@@ -57,6 +57,9 @@
               {{ deptBudgetList.contractNo }}
             </div>
           </ws-form-item>
+          <ws-form-item  label="合同提示" span="1" prop="contractNo" >
+          {{ deptBudgetList.pointOut }}
+        </ws-form-item>
           <ws-form-item label="交易主体" span="1" prop="transactionSubject" class="readonly">
           <div class="unchanged">
               {{deptBudgetList.transactionSubject}}

+ 16 - 0
src/views/houseSelfCollect/customerManagementAdd.vue

@@ -220,6 +220,15 @@
               :disabled="disabled"
             />
           </div>
+          <!-- <ws-form-item label="村委会电话" span="1" prop="villageCommitteePhone">
+            <ws-input
+              v-model="customerList.villageCommitteePhone"
+              placeholder="村委会电话"
+              maxlength="100"
+              size="small"
+              :disabled="disabled"
+            />
+          </ws-form-item> -->
         </ws-info-table>
         <div class="but">
           <el-button
@@ -591,6 +600,13 @@
           })
           return
         }
+        // if (!this.customerList.villageCommitteePhone) {
+        //   this.$message({
+        //     message: '请输入村委会电话',
+        //     type: 'warning',
+        //   })
+        //   return
+        // }
         // 验证码校验
         GetCustomerCodeJY({
             phone: this.customerList.customerPhone,

+ 57 - 4
src/views/houseSelfCollect/inspectInfoLook.vue

@@ -221,11 +221,52 @@
               <ws-input @mousewheel.native.prevent v-model="inspect.reColorLustre"
                 placeholder="请输入复检色泽/气味是否正常" maxlength="100" size="small" :disabled="disabled" />
             </ws-form-item>
-            <ws-form-item label="复检备注" span="2" prop="reMemo" v-if="information == '编辑复检' || statusShow == '已复检'">
-              <ws-input type="textarea" v-model="inspect.reMemo" placeholder="请输入复检备注" maxlength="300" v-if="statusShow != '已复检'" />
-              <ws-input type="textarea" v-model="inspect.reMemo" placeholder="请输入复检备注" maxlength="300" v-else disabled />
+            <ws-form-item label="复检备注" span="2" prop="reMemo" >
+              <ws-input type="textarea" v-model="inspect.reMemo" placeholder="请输入复检备注" maxlength="300" disabled />
             </ws-form-item>
-          </ws-info-table>
+
+            <ws-form-item label="规格(公斤)" span="1" prop="boxNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                  <el-select disabled filterable clearable v-model="inspect.specifications" placeholder="请选择规格"
+                    class="typeselect" >
+                    <el-option label="830" value="830" />
+                    <el-option label="850" value="850" />
+                  </el-select>
+              </ws-form-item>
+              <ws-form-item label="工厂" span="1" prop="titleNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                  <ws-input disabled v-model="inspect.factory" placeholder="请输入工厂" maxlength="30"
+                    size="small" />
+                </ws-form-item>
+                <ws-form-item label="生产日期" span="1" prop="titleNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                    <el-date-picker value-format="yyyy-MM-dd"  disabled v-model="inspect.produceDate" type="date" placeholder="选择生产日期"></el-date-picker>
+                </ws-form-item>
+                <ws-form-item label="污染件数" span="1" prop="titleNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                  <ws-input disabled v-model="inspect.polluteNum" placeholder="请输入污染件数" maxlength="30"
+                    size="small" />
+                </ws-form-item>
+                
+                <ws-form-item label="破损件数" span="1" prop="titleNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                  <ws-input disabled v-model="inspect.wornNum" placeholder="请输入破损件数" maxlength="30"
+                    size="small" />
+                </ws-form-item>
+                
+              </ws-info-table>
+              <ws-info-table class='upload-address-wrap'>
+                <ws-form-item class='upload-address' label="污染附件" span="1" prop="titleNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                  <ws-upload :editable="false" ref="upload"  :comp-id="compId" :appendix-ids="inspect.polluteUrl" :size-limit="size"
+                  accept=".jpg, .jpeg, .png, .pdf, .doc, .docx, .zip, .rar" />
+                </ws-form-item>
+                <ws-form-item class='upload-address' label="破损附件" span="1" prop="titleNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                  <ws-upload ref="upload1" :editable="false"  :comp-id="compId" :appendix-ids="inspect.wornUrl" :size-limit="size"
+                   accept=".jpg, .jpeg, .png, .pdf, .doc, .docx, .zip, .rar" />
+                </ws-form-item>
+              </ws-info-table>
           <div class="but">
             <el-button @click="cancel" v-if="types != 2" type="primary">取消</el-button>
                <el-button @click="checkOk" v-if="types == 4" type="primary">确认初检信息</el-button>
@@ -261,9 +302,11 @@
   import inspectInfoPrint from './component/inspectInfoPrint.vue'
   import html2canvas from 'html2canvas'
   import axios from 'axios'
+  import WsUpload from '@/components/WsUpload'
   export default {
     components: {
       inspectInfoPrint,
+      WsUpload
     },
     watch: {},
     data() {
@@ -280,6 +323,9 @@
           type: '潮粮'
         },
         carNumberList: [],
+        compName:localStorage.getItem('ws-pf_compName'),
+        size:9,
+        compId: localStorage.getItem('ws-pf_compId'),
         disabled: false,
         disabled1: false,
         disabled2: false,
@@ -1370,4 +1416,11 @@
     text-align: center;
     // margin: 20px auto;
   }
+  /deep/.upload-address-wrap .el-form-item  .el-form-item__content{
+  height:300px;
+  align-items: flex-start;
+}
+/deep/.ws-upload{
+  overflow-x:scroll;
+}
 </style>

+ 113 - 45
src/views/houseSelfCollect/inspectionManagementNew.vue

@@ -152,7 +152,7 @@
                     @change="carChange($event, 0)">
                     <el-option v-for="item in options2" :key="item.constKey" :label="item.carNo" :value="item.carNo" />
                   </el-select> -->
-                  <el-select :disabled="disabled2" v-if="carNumberList.length > 0 && serviceManagementType == 3"
+                  <el-select :disabled="disabled2" v-if="carNumberList.length > 0 && carstatus"
                     filterable clearable :allow-create="true" v-model="deptBudgetList.carNo" placeholder="请选择车牌号"
                     class="typeselect" @change="carChange($event, 1)">
                     <el-option v-for="item in carNumberList" :key="item.id" :label="item.carNo" :value="item.carNo" />
@@ -309,23 +309,24 @@
                 </ws-form-item>
                 <ws-form-item v-if="serviceManagementType == 1 && deptBudgetList.outType == '汽运'" label="车牌号" span="1"
                   prop="carNo">
-                  <!-- <ws-input :disabled="disabled2"
-                    v-if="carInputStatus"
+                  <ws-input :disabled="disabled2"
+                    v-if="carInputStatus&&!carstatus"
                     v-model="deptBudgetList.carNo" placeholder="请输入车牌号" maxlength="7" size="small" />
                   <el-select :disabled="disabled2"
-                    v-if="!carInputStatus&&compName!='辽宁佳屹农商贸有限公司'"
+                    v-if="!carInputStatus&&carstatus"
                     filterable clearable v-model="deptBudgetList.carNo1" placeholder="请选择车牌号" class="typeselect"
-                    @change="carChange($event, 0)">
+                    @change="(val) => {carChange(val, 0)}">
                     <el-option v-for="(item, index) in options2" :key="index"
                       :label="item.carNo + '(' + item.tranCarNo + ')'" :value="index" />
                   </el-select>
-                  <el-select :disabled="disabled2" v-if="!carInputStatus&&compName=='辽宁佳屹农商贸有限公司'"
-                    filterable clearable :allow-create="true" v-model="deptBudgetList.carNo" placeholder="请选择车牌号"
-                    class="typeselect" @change="carChange($event, 1)">
-                    <el-option v-for="item in carNumberList" :key="item.id" :label="item.carNo" :value="item.carNo" />
+                  <el-select :disabled="disabled2" v-if="!carInputStatus&&!carstatus"
+                    filterable clearable v-model="deptBudgetList.carNo1" placeholder="请选择车牌号"
+                    class="typeselect" @change=" (val) => {carChange(val, 1)}">
+                    <el-option v-for="(item,index) in carNumberList" :key="item.id" :label="item.carNo" :value="index" />
                   </el-select>
-                  <el-button @click="editcarStatus" type="text">{{ cartext }}</el-button> -->
-                  <ws-input :disabled="disabled2"
+                  <el-button v-if='switchStatus' @click="editcarStatus" type="text">{{ cartext }}</el-button>
+
+                  <!-- <ws-input :disabled="disabled2"
                     v-if="options2.length == 0 && serviceManagementType == 1 && deptBudgetList.inOutType != '移库入库'&&deptBudgetList.inOutType != '退库' || statusTypetext != '初检'||deptBudgetList.inOutType == '退库'&&tranTaskFlag!=1"
                     v-model="deptBudgetList.carNo" placeholder="请输入车牌号" maxlength="7" size="small" />
                   <el-select :disabled="disabled2"
@@ -340,7 +341,8 @@
                     v-model="deptBudgetList.carNo" placeholder="请选择车牌号" class="typeselect"
                     @change="carChange($event, 0)">
                     <el-option v-for="item in options2" :key="item.constKey" :label="item.carNo" :value="item.carNo" />
-                  </el-select>
+                  </el-select> -->
+
                   <!-- <el-select :disabled="disabled2" v-if="carNumberList.length > 0 && serviceManagementType == 3"
                     filterable clearable v-model="deptBudgetList.carNo"
                     placeholder="请选择车牌号" class="typeselect" @change="carChange($event, 1)">
@@ -413,34 +415,6 @@
                   <ws-input :disabled='recheck' v-model="deptBudgetList.titleNoOther" placeholder="请输入封号" maxlength="20"
                     size="small" />
                 </ws-form-item>
-                <!-- <ws-form-item label="规格(公斤)" span="1" prop="boxNoOther"
-                  v-if="compName=='辽宁佳屹农商贸有限公司'">
-                  <el-select :disabled='recheck' filterable clearable v-model="deptBudgetList.specifications" placeholder="请选择规格"
-                    class="typeselect" >
-                    <el-option label="830" value="830" />
-                    <el-option label="850" value="850" />
-                  </el-select>
-                </ws-form-item>
-                <ws-form-item label="工厂" span="1" prop="titleNoOther"
-                  v-if="compName=='辽宁佳屹农商贸有限公司'">
-                  <ws-input :disabled='recheck' v-model="deptBudgetList.factory" placeholder="请输入工厂" maxlength="30"
-                    size="small" />
-                </ws-form-item>
-                <ws-form-item label="污染件数" span="1" prop="titleNoOther"
-                  v-if="compName=='辽宁佳屹农商贸有限公司'">
-                  <ws-input :disabled='recheck' v-model="deptBudgetList.polluteNum" placeholder="请输入污染件数" maxlength="30"
-                    size="small" />
-                </ws-form-item>
-                <ws-form-item label="污染件数" span="1" prop="titleNoOther"
-                  v-if="compName=='辽宁佳屹农商贸有限公司'">
-                  <ws-input :disabled='recheck' v-model="deptBudgetList.polluteNum" placeholder="请输入污染件数" maxlength="30"
-                    size="small" />
-                </ws-form-item>
-                <ws-form-item label="破损件数" span="1" prop="titleNoOther"
-                  v-if="compName=='辽宁佳屹农商贸有限公司'">
-                  <ws-input :disabled='recheck' v-model="deptBudgetList.wornNum" placeholder="请输入破损件数" maxlength="30"
-                    size="small" />
-                </ws-form-item> -->
               </ws-info-table>
 
               <div class="title"
@@ -575,7 +549,49 @@
                     type="number" @focus="pricefocus($event, 4)" @blur="priceblur($event, 4)" @input="deductionchange"
                     placeholder="请输入质量扣价" maxlength="40" size="small" />
                 </ws-form-item>
+              <ws-form-item label="规格(公斤)" span="1" prop="boxNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                  <el-select :disabled='recheck' filterable clearable v-model="deptBudgetList.specifications" placeholder="请选择规格"
+                    class="typeselect" >
+                    <el-option label="830" value="830" />
+                    <el-option label="850" value="850" />
+                  </el-select>
+                </ws-form-item>
+                <ws-form-item label="工厂" span="1" prop="titleNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                  <ws-input :disabled='recheck' v-model="deptBudgetList.factory" placeholder="请输入工厂" maxlength="30"
+                    size="small" />
+                </ws-form-item>
+                <ws-form-item label="生产日期" span="1" prop="titleNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                    <el-date-picker value-format="yyyy-MM-dd"  :disabled='recheck' v-model="deptBudgetList.produceDate" type="date" placeholder="选择生产日期"></el-date-picker>
+                </ws-form-item>
+                <ws-form-item label="污染件数" span="1" prop="titleNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                  <ws-input :disabled='recheck' v-model="deptBudgetList.polluteNum" placeholder="请输入污染件数" maxlength="30"
+                    size="small" />
+                </ws-form-item>
+                
+                <ws-form-item label="破损件数" span="1" prop="titleNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                  <ws-input :disabled='recheck' v-model="deptBudgetList.wornNum" placeholder="请输入破损件数" maxlength="30"
+                    size="small" />
+                </ws-form-item>
+                
+              </ws-info-table>
+              <ws-info-table class='upload-address-wrap'>
+                <ws-form-item class='upload-address' label="污染附件" span="1" prop="titleNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                  <ws-upload ref="upload" :tipstatus='false' :comp-id="compId" :appendix-ids="deptBudgetList.polluteUrl" :size-limit="size"
+                  @onChange="onChange" accept=".jpg, .jpeg, .png, .pdf, .doc, .docx, .zip, .rar" />
+                </ws-form-item>
+                <ws-form-item class='upload-address' label="破损附件" span="1" prop="titleNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                  <ws-upload ref="upload1" :tipstatus='false' :comp-id="compId" :appendix-ids="deptBudgetList.wornUrl" :size-limit="size"
+                  @onChange="onChange1" accept=".jpg, .jpeg, .png, .pdf, .doc, .docx, .zip, .rar" />
+                </ws-form-item>
               </ws-info-table>
+
               <ws-info-table v-if="zjJurisdiction && statusTypetext == '初检' || statusTypetext != '初检'">
                 <ws-form-item label="净重单价(元/公斤)" span="1" prop="tidalGrainPrice"
                   v-if="deptBudgetList.type == '潮粮' && serviceManagementType == 3">
@@ -587,6 +603,7 @@
                   <ws-input type="number" @mousewheel.native.prevent @input="pricechange"
                     v-model="deptBudgetList.dryGrainPrice" placeholder="请输入干粮单价" maxlength="10" size="small" />
                 </ws-form-item>
+                
               </ws-info-table>
               <ws-info-table>
                 <el-form-item class='rememo' v-if='statusTypetext != "初检"' label="备注" span="1" prop="imperfectGrain">
@@ -654,6 +671,7 @@
         <el-button type="primary" @click="printBig">打印单据</el-button>
       </div>
     </el-dialog>
+    
   </div>
 </template>
 <script>
@@ -691,9 +709,11 @@ import axios from 'axios'
 import {
   getHp
 } from '@/utils/getHasPermission'
+import WsUpload from '@/components/WsUpload'
 export default {
   components: {
-    inspectInfoPrint
+    inspectInfoPrint,
+    WsUpload
   },
   watch: {
     '$route'(to, from) {
@@ -740,6 +760,8 @@ export default {
       shipInfoList: [],
       cost: '',
       pageSize: 10,
+      size:9,
+      switchStatus:false,
       cartext:'选择',
       carInputStatus:true,
       isShowPrint: false,
@@ -882,7 +904,8 @@ export default {
       qyJurisdiction: false,
       zjJurisdiction: false,
       fjJurisdiction: false,
-      qrJurisdiction: false
+      qrJurisdiction: false,
+      compId: localStorage.getItem('ws-pf_compId'),
 
     }
   },
@@ -926,7 +949,8 @@ export default {
         this.warehouseNameChange(_WarehouseName.value)
       }
     }
-
+    var date = new Date()
+    this.deptBudgetList.produceDate = date.getFullYear()+'-'+((date.getMonth()+1)>=10?(date.getMonth()+1):'0'+(date.getMonth()+1))+'-'+((date.getDate())>=10?date.getDate():'0'+date.getDate())
   },
   // activated() {
 
@@ -937,6 +961,28 @@ export default {
     }
   },
   methods: {
+    onChange() {
+        this.$refs.upload
+          .handleSaveBill()
+          .then(async response => {
+            this.deptBudgetList.polluteUrl = response
+          })
+          .catch(res => {
+            EventBus.$emit('error', (JSON.parse(res) || {}).message)
+            this.$refs.upload.clearFiles()
+          })
+      },
+      onChange1() {
+        this.$refs.upload1
+          .handleSaveBill()
+          .then(async response => {
+            this.deptBudgetList.wornUrl = response
+          })
+          .catch(res => {
+            EventBus.$emit('error', (JSON.parse(res) || {}).message)
+            this.$refs.upload1.clearFiles()
+          })
+      },
     editcarStatus(){
       if(this.deptBudgetList.inOutType!='移库入库'&&this.deptBudgetList.inOutType!='退库'){
         if(this.cartext=='选择'){
@@ -1017,7 +1063,7 @@ export default {
     },
     shipInfoChange(e) {
       for (let i = 0; i < this.shipInfoList.length; i++) {
-        if (this.shipInfoList[i].shipName == this.deptBudgetList.shipName) {
+        if (this.shipInfoList[i].shipName == this.deptBudgetList.shipName) {carNo
           this.deptBudgetList.shipNumber = this.shipInfoList[i].shipNo
         }
       }
@@ -1162,10 +1208,17 @@ export default {
       })
     },
     carChange(e, status) {
-      console.log(this.carNumberList, e)
+      console.log(this.carNumberList,e,status)
       if (status == 1) {
         this.$set(this.deptBudgetList, 'customerName', this.carNumberList[e].shipperName)
         this.$set(this.deptBudgetList, 'customerPhone', this.carNumberList[e].shipperPhone)
+        this.$set(this.deptBudgetList, 'shipId', this.carNumberList[e].shipId)
+        
+        for (let i = 0; i < this.carNumberList.length; i++) {
+          if(i==e){
+            this.$set(this.deptBudgetList, 'carNo', this.carNumberList[e].carNo)
+          }
+        }
       }
 
       for (let i = 0; i < this.customerList1.length; i++) {
@@ -1638,6 +1691,9 @@ export default {
             this.deptBudgetList.reBulkDensity = response.bulkDensity
             this.deptBudgetList.reMildewGrain = response.mildewGrain
           }
+          if(this.statusTypetext == '初检'){
+            this.deptBudgetList.donecount = response.inOutWarehouseTask.completedQuantity + '/' + response.inOutWarehouseTask.weight
+          }
           this.deptBudgetList.warehouseInOutDetail = {
             grade: response.grade,
             reGrade: response.reGrade,
@@ -4078,8 +4134,10 @@ export default {
 
       if (this.outContractNo.deliverType == '1') {
         this.carstatus = true
+        this.switchStatus=false
       } else {
         this.carstatus = false
+        this.switchStatus=true
       }
       if (this.outContractNo.tranCarInfoList) {
         this.options2 = this.outContractNo.tranCarInfoList
@@ -4425,4 +4483,14 @@ export default {
 /deep/.el-input.volumeofbusiness .el-input__inner {
   color: red !important;
 }
+/deep/.upload-address-wrap .el-form-item  .el-form-item__content{
+  height:300px;
+  align-items: flex-start;
+}
+/deep/.ws-upload{
+  overflow-x:scroll;
+}
+// /deep/.ws-info-table .upload-address.el-form-item .el-form-item__content{
+//   overflow-y:scroll;
+// }
 </style>

+ 83 - 3
src/views/houseSelfCollect/inspectionManagementrecord.vue

@@ -78,6 +78,39 @@
             v-if="scope.row.reInspector && scope.row.qualityInspector != scope.row.reInspector">,{{scope.row.reInspector}}</span>
         </template>
       </el-table-column>
+      <el-table-column v-if="compName=='辽宁佳屹农商贸有限公司'" :key='Math.random()' label="规格(公斤)" width="120">
+      </el-table-column>
+      <el-table-column v-if="compName=='辽宁佳屹农商贸有限公司'" :key='Math.random()' prop="factory" label="工厂"></el-table-column> 
+      <el-table-column v-if="compName=='辽宁佳屹农商贸有限公司'" :key='Math.random()' prop="polluteNum" label="污染件数" width="120">
+      </el-table-column>
+      <el-table-column v-if="compName=='辽宁佳屹农商贸有限公司'" :key='Math.random()' prop="type" 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,0)" alt="" />
+          <span v-if="scope.row.polluteUrlArray != null">
+            {{
+              scope.row.polluteUrlArray.length == 0
+                ? ''
+                : scope.row.polluteUrlArray.length
+            }}
+          </span>
+        </template>
+      </el-table-column> 
+      <el-table-column v-if="compName=='辽宁佳屹农商贸有限公司'" :key='Math.random()' prop="wornNum" label="破损件数" width="120">
+      </el-table-column>
+      <el-table-column v-if="compName=='辽宁佳屹农商贸有限公司'" :key='Math.random()' prop="type" 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,1)" alt="" />
+          <span v-if="scope.row.wornUrlArray != null">
+            {{
+              scope.row.wornUrlArray.length == 0
+                ? ''
+                : scope.row.wornUrlArray.length
+            }}
+          </span>
+        </template>
+      </el-table-column>
       <el-table-column prop="updateDate" label="质检时间" width="90px"></el-table-column>
       <el-table-column prop="status" label="状态">
         <template slot-scope="scope">
@@ -116,10 +149,15 @@
     </el-dialog>
     <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-size="pageSize" layout="total, sizes, prev, pager, next, jumper"
         :total="deptBudgetTotal">
       </el-pagination>
     </div>
+    <WinseaContentModal v-model="accessoryTFs" :title="$t('system.noticeCircular.information')"
+      @on-cancel="handleClose">
+      <ws-upload ref="upload" :comp-id="compId" :appendix-ids="appendixIdss" :editable="false"
+        accept=".jpg, .jpeg, .png, .pdf, .doc, .zip, .rar" />
+    </WinseaContentModal>
     <!-- </div> -->
   </div>
 </template>
@@ -132,9 +170,14 @@
     getQRcode
   } from '@/model/houseSelfCollect/index'
   import inspectInfoPrint from './component/inspectInfoPrint.vue'
+  import WsUpload from '@/components/WsUpload'
+  import {
+    dayjs,
+  } from 'base-core-lib'
   export default {
     components: {
-      inspectInfoPrint
+      inspectInfoPrint,
+      WsUpload
     },
     watch: {},
     data() {
@@ -161,10 +204,19 @@
         deductWeight: '', //扣重比
         saleLimit: '',
         allowEdit: '0',
-        statusTypetext:'全部'
+        statusTypetext:'全部',
+        accessoryTFs:false,
+        appendixIdss:'',
+        compId: localStorage.getItem('ws-pf_compId'),
+        compName:localStorage.getItem('ws-pf_compName'),
+        date: {
+        year: dayjs().format('YYYY'),
+        month: dayjs().format('MM'),
+      },
       }
     },
     mounted() {
+      console.log()
       this.selectWarehouse()
       let _WarehouseName = localStorage.getItem('houseSelfCollect_house1')
       _WarehouseName = JSON.parse(_WarehouseName)
@@ -174,6 +226,9 @@
     },
     
     methods: {
+      handleClose() {
+        this.dialogViewSpareMoney = false
+      },
       warehousetypechange(status){
         this.serviceManagementType=status
         this.getList()
@@ -203,6 +258,16 @@
       find() {
         this.getList()
       },
+      fujian(row,status) {
+        this.accessoryTFs = true
+        if(status==0){
+          this.appendixIdss = row.polluteUrl
+        }else{
+          this.appendixIdss = row.wornUrl
+        }
+        
+        console.log(this.appendixIdss)
+      },
       inspectInfo(row, index) {
         for (let i = 0; i < this.warehouseList.length; i++) {
           if (this.warehouseName == this.warehouseList[i].value) {
@@ -332,6 +397,7 @@
           })
       },
       getList() {
+        console.log(this.pageSize)
         getinspectList({
             compId: localStorage.getItem('ws-pf_compId'),
             currentPage: this.currentPage,
@@ -344,6 +410,20 @@
           })
           .toPromise()
           .then((response) => {
+            if(response.records.length>0){
+             for(var i=0;i<response.records.length;i++){
+              if(response.records[i].polluteUrl){
+                response.records[i].polluteUrlArray=response.records[i].polluteUrl.split(',')
+              }else{
+                response.records[i].polluteUrlArray=[]
+              }
+              if(response.records[i].wornUrl){
+                response.records[i].wornUrlArray=response.records[i].wornUrl.split(',')
+              }else{
+                response.records[i].wornUrlArray=[]
+              }
+             }
+            }
             this.inspect = response.records
             this.deptBudgetTotal = response.total
             // this.$forceUpdate();

+ 63 - 10
src/views/houseSelfCollect/newWeighingManagement.vue

@@ -278,6 +278,14 @@
             </el-option>
           </el-select>
         </div>
+        <div class="shdw-style" v-if="checked && serviceManagementType==3 || (!ddchecked && !checked && serviceManagementType==3)">
+          <div>发货单位:</div>
+          <!-- <div>{{companyName}}</div> -->
+          <el-select v-model="customer" placeholder="请选择" style="width: 75%;">
+            <el-option v-for="item in customerOptions" :key="item.value" :label="item.label" :value="item.value">
+            </el-option>
+          </el-select>
+        </div>
         <div v-if="warehouseName=='鲅鱼圈金信库'||warehouseName=='白城内陆港'||warehouseName=='杜尔伯特家禾库'||warehouseName=='甘南宏旗库'||warehouseName=='洮南新友谊兴旺库'||warehouseName=='洮南向阳乡金昊'||warehouseName=='山东园丰库'">
           <div class="print-type-ew">
             <el-checkbox v-model="checked" @change="changeEw">打印额外票据</el-checkbox>
@@ -487,10 +495,12 @@ export default {
       deptBudgetTotal: 0,
       pList: [],
       mList: [],
+      serviceManagementType:1,
       index: 0,
       status: 1,
       carList: [],
       carListCopy: [],
+      customerOptions:[],
       carWeightInfo: {
         carNumber: '',
         type: '',
@@ -552,6 +562,7 @@ export default {
       id: '',
       inOutData: {},
       idPrint: '',
+      customer:'',
       ewCustomerOptions: [
         {
           value: '黑龙江中天昊元贸易有限公司',
@@ -649,6 +660,7 @@ export default {
       jjSelectPrintList: [],
       printSeparately: false,
       number: '',
+      warehousingType: 1,
     }
   },
   beforeDestroy() {
@@ -1169,6 +1181,9 @@ export default {
               this.dialogDataList.push(_datas)
             } else {
               this.dialogData.compName = this.companyName
+              if(this.dialogData&&this.dialogData.contractManagement&& this.warehousingType != 3){
+                this.dialogData.customer = this.dialogData.contractManagement.seller
+              }
               this.dialogDataList.push(this.dialogData)
             }
             
@@ -1239,6 +1254,7 @@ export default {
       if (this.inWarehouseType == 1 && this.status == 2) {
         this.status = 1
       }
+      this.warehousingType = this.inWarehouseType
       this.getList()
     },
     setVal(data) {
@@ -1858,7 +1874,16 @@ export default {
         }
         return true
 
-      }
+      }else if (type == 3) {
+          for (var _tmp = 0; _tmp < this.companyNameOptions.length; _tmp++) {
+            console.log(name)
+            if (this.companyNameOptions[_tmp].label == name) {
+              return false
+            }
+          }
+          return true
+
+        }
 
     },
     print() {
@@ -2270,25 +2295,37 @@ export default {
                     message: '保存成功',
                   })
                   this.idPrint = response
-                  if (this.weighingList.serviceManagementType == 1 && (this.warehouseName == '鲅鱼圈金信库' ||
+                  
+                  if (this.weighingList.serviceManagementType==1&&( this.warehouseName == '鲅鱼圈金信库' ||
                     this
                       .warehouseName == '洮南向阳乡金昊' || this
                         .warehouseName == '白城内陆港' || this
                           .warehouseName == '山东园丰库'|| this
-                          .warehouseName == '杜尔伯特家禾库'||this.warehouseName=='甘南宏旗库'||this.warehouseName=='洮南新友谊兴旺库')) {
+                          .warehouseName == '杜尔伯特家禾库'||this.warehouseName=='甘南宏旗库'||this.warehouseName=='洮南新友谊兴旺库'||this.warehouseName=='佳屹农仓储库')) {
                     if (this.weighingList.seller && this.weighingList.buyer) {
                       let cang = {}
                       cang.value = this.weighingList.seller
                       cang.label = this.weighingList.seller
-                      if (this.check(this.weighingList.seller, 1)) {
-                        this.ewCustomerOptions.push(cang)
-                      }
                       let cang1 = {}
                       cang1.value = this.weighingList.buyer
                       cang1.label = this.weighingList.buyer
-                      if (this.check(this.weighingList.buyer, 2)) {
+                      
+                      if(this.warehouseName=='佳屹农仓储库'){
+                        this.customerOptions=[{label:this.weighingList.customer,value:this.weighingList.customer}]
+                        if (this.check(this.weighingList.buyer, 3)) {
+                          this.companyNameEWOptions.push(cang1)
+                          this.companyName=this.weighingList.buyer
+                        }
+                        
+                      }else{
+                        if (this.check(this.weighingList.buyer, 2)) {
                         this.companyNameEWOptions.push(cang1)
                       }
+                      }
+                      if (this.check(this.weighingList.seller, 1)) {
+                          this.ewCustomerOptions.push(cang)
+                        }
+                      
                     }
                   }
                   if(this.warehouseName=='鲅鱼圈金信库'){
@@ -2397,17 +2434,33 @@ export default {
                             message: '保存成功',
                           })
                           this.idPrint = response
+                          this.serviceManagementType=this.weighingList.serviceManagementType
+                          if(this.weighingList.serviceManagementType == 3){
+                            this.customerOptions=[{label:this.weighingList.customer,value:this.weighingList.customer}]
+                            this.customerOptions.push({label:this.weighingList.seller,value:this.weighingList.seller})
+                            this.customer=this.weighingList.customer
+                          }
                           if (this.weighingList.serviceManagementType == 1 && (this.warehouseName == '鲅鱼圈金信库' || this
                             .warehouseName == '洮南向阳乡金昊' || this
                               .warehouseName == '白城内陆港' || this
                                 .warehouseName == '山东园丰库' || this
-                                  .warehouseName == '杜尔伯特家禾库' || this.warehouseName == '甘南宏旗库' || this.warehouseName == '洮南新友谊兴旺库')) {
+                                  .warehouseName == '杜尔伯特家禾库' || this.warehouseName == '甘南宏旗库' || this.warehouseName == '洮南新友谊兴旺库'||this.warehouseName=='佳屹农仓储库')) {
                             if (this.weighingList.seller && this.weighingList.buyer) {
                               let cang = {}
                               cang.value = this.weighingList.seller
                               cang.label = this.weighingList.seller
-                              if (this.check(this.weighingList.seller, 1)) {
-                                this.ewCustomerOptions.push(cang)
+                              // if (this.check(this.weighingList.seller, 1)) {
+                              //   this.ewCustomerOptions.push(cang)
+                              // }
+                              if(this.warehouseName=='佳屹农仓储库'){
+                                if (this.check(this.weighingList.seller, 3)) {
+                                  this.companyNameOptions.push(cang)
+                                  this.companyName=this.weighingList.seller
+                                }
+                              }else{
+                                if (this.check(this.weighingList.seller, 1)) {
+                                  this.ewCustomerOptions.push(cang)
+                                }
                               }
                               let cang1 = {}
                               cang1.value = this.weighingList.buyer

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

@@ -11,6 +11,7 @@
             <el-checkbox label="打印银行卡" name="type" class="label-width" @change="selectType"></el-checkbox>
             <el-checkbox label="打印结算凭证" name="type" class="label-width" @change="selectType($event)"></el-checkbox>
             <el-checkbox label="打印检斤单" name="type" class="label-width" @change="selectType($event)"></el-checkbox>
+            <el-checkbox label="打印自产证明" name="type" class="label-width" @change="selectType($event)"></el-checkbox>
             <!-- <el-checkbox label="打印回执单" name="type" class="label-width" @change="selectType($event)"></el-checkbox> -->
             <!-- <el-checkbox label="打印发票" name="type" class="label-width" @change="selectType($event)"></el-checkbox> -->
           </el-checkbox-group>
@@ -45,7 +46,7 @@
         <el-select class="warehouse_select" v-model="goodNames" placeholder="请选择货名" @change="goodsNameChange" filterable
           clearable  multiple :multiple-limit="multipleLimit" style="margin: 0 10px">
           <el-option label="全部货名" value="全部货名"></el-option>
-          <el-option v-for="item in goodnameList" :key="item.id" :label="item.goodsName" :value="item.goodsName">
+          <el-option v-for="item in goodnameList" :key="item.id" :label="item.constValue" :value="item.constValue">
           </el-option>
         </el-select>
         <el-date-picker style="margin: 0 10px 0 0" value-format="yyyy-MM-dd" v-model="value2" @change="datechange"
@@ -105,7 +106,13 @@
           href="https://taohaoliang.oss-cn-beijing.aliyuncs.com/pcfiles/%E6%94%B6%E8%B4%AD%E4%BF%A1%E6%81%AF%E5%AF%BC%E5%85%A5%E6%A8%A1%E6%9D%BF%EF%BC%88%E6%96%B0%EF%BC%89.xlsx"
           style="margin-left: 8px"
         >
-          <el-button type="primary">模板下载</el-button>
+          <el-button type="primary">收购导入模板</el-button>
+        </el-link>
+        <el-link
+          href="https://taohaoliang.oss-cn-beijing.aliyuncs.com/pcfiles/2023%E5%B9%B4%E8%87%AA%E4%BA%A7%E8%87%AA%E9%94%80%E8%AF%81%E6%98%8E%EF%BC%88%E6%97%A0%E7%BB%8F%E6%B5%8E%E4%BA%BA%EF%BC%89%202023.4.19.xlsx"
+          style="margin-left: 8px"
+        >
+          <el-button type="primary">自产证明模板</el-button>
         </el-link>
       </el-col>
       <el-col :span="4">
@@ -158,6 +165,15 @@
           </div>
         </template>
       </el-table-column>
+      <el-table-column class="table_td" prop="accountPaymentDate" width="120" label="总账付款日期"></el-table-column>
+      <el-table-column class="table_td" prop="paymentVoucherNumber" width="120" label="付款凭证编号"></el-table-column>
+      <el-table-column class="table_td" prop="amountIngPayable" width="80" 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.selfCertificate != null">1</span>
+        </template>
+      </el-table-column>
       <el-table-column class="table_td" prop="updateDate" label="更新时间" width="150" sortable></el-table-column>
       <el-table-column class="table_td" prop="status" width="80" label="状态">
         <template scope="scope">
@@ -207,9 +223,9 @@
               (scope.row.status != '待结算' && !scope.row.approveStatus)
             " @click="print1(scope.row,2)" v-hasPermission="`acquisitionManagement.acquisitionPay.yeda`">业务打印
           </el-button>
-          <el-button @click="previewPayOrder(scope.row)" class="my-pre"
+          <!-- <el-button @click="previewPayOrder(scope.row)" class="my-pre"
             v-hasPermission="`acquisitionManagement.acquisitionPay.pay`">预览付款单
-          </el-button>
+          </el-button> -->
           <el-button type="danger" v-show="
               (!scope.row.approveStatus ||
                 scope.row.approveStatus == '待结算') &&
@@ -377,6 +393,15 @@
         <el-button type="primary" @click="invoicingconfirm">确 定</el-button>
       </span>
     </el-dialog>
+    <WinseaContentModal v-model="accessoryTFs" :title="$t('system.noticeCircular.information')">
+      <div v-if="!appendixIdss">
+      <ws-upload ref="upload" :size-limit="size" @onChange="onChange" :comp-id="compId" :appendix-ids="appendixIdss"
+        accept=".jpg, .jpeg, .png, .pdf, .doc, .docx, .zip, .rar" 
+        />
+      </div>
+      <ws-upload v-else ref="upload" :comp-id="compId" :appendix-ids="appendixIdss" :editable="false"
+        accept=".jpg, .jpeg, .png, .pdf, .doc, .zip, .rar" />
+    </WinseaContentModal>
     <div class="mask1" v-show="isShowPrintTypeBills"></div>
     <div class="print-type1" v-show="isShowPrintTypeBills">
       <div class="print-type-content">
@@ -434,6 +459,9 @@
     dayjs,
     EventBus
   } from 'base-core-lib'
+  import {
+    packList,
+  } from '@/model/contarct/index'
   import {
     downloadFile
   } from '@/utils/batchDown'
@@ -455,7 +483,8 @@
     suspendinstance,
     importWord,
     getPrint,
-    getwarehouse
+    getwarehouse,
+    uploadself
   } from '@/model/houseSelfCollect/index'
   import {
     posthandle,
@@ -465,10 +494,13 @@
   import {
     getHp
   } from '@/utils/getHasPermission'
+  import { getFileList } from '@/model/upload'
   import download from '../../components/WsDownload/download'
+  import WsUpload from '@/components/WsUpload'
   export default {
     components: {
       paymentPrint,
+      WsUpload
     },
     watch: {},
     data() {
@@ -481,6 +513,7 @@
         isShowPrintType2: true,
         isShowPrintType3: true,
         isShowPrintType4: true,
+        isShowPrintType5:false,
         customerInfo: false,
         form: {},
         labelposition: 'right',
@@ -648,7 +681,11 @@
         ewCustomer: '黑龙江利润元粮食贸易有限公司',
         printSeparately:false,
         onePrint:false,
-        dialogDataList:[]
+        dialogDataList:[],
+        id:'',
+        accessoryTFs:false,
+        appendixIdss:'',
+        deptBudgetList:{}
       }
     },
     mounted() {
@@ -657,6 +694,14 @@
       this.pageSize =Number(sessionStorage.getItem('pageSize') ) || 10;
       console.log( this.currentPage,this.pageSize)
       this.getPassYearFormatDate()
+      // 货名
+      packList({
+            constId: 'CON2'
+          })
+          .toPromise()
+          .then((response) => {
+            this.goodnameList = response
+          })
       this.getWarehouse()
       this.compId=localStorage.getItem('ws-pf_compId')
       localStorage.setItem('pengyuPrint', false)
@@ -806,6 +851,31 @@
       })
     },
     methods: {
+      onChange() {
+        this.$refs.upload
+          .handleSaveBill()
+          .then(async (response) => {
+            this.deptBudgetList.selfCertificate = response
+            this.deptBudgetList.id = this.id
+            uploadself(this.deptBudgetList)
+              .toPromise()
+              .then((response) => {
+                this.accessoryTFs = false
+                this.$message.success('上传成功')
+                this.getList()
+              })
+          })
+          .catch((res) => {
+            EventBus.$emit('error', (JSON.parse(res) || {}).message)
+            this.$refs.upload.clearFiles()
+          })
+      },
+      fujian(row) {
+        this.id = row.id
+        this.accessoryTFs = true
+        this.appendixIdss = row.selfCertificate
+        console.log(this.appendixIdss)
+      },
       changeEw(e) {
         this.ddchecked = false
         if (e) {
@@ -1369,6 +1439,9 @@
             case '打印检斤单':
               this.isShowPrintType4 = !this.isShowPrintType4
               break
+            case '打印自产证明':
+              this.isShowPrintType5 = !this.isShowPrintType5
+              break
             // case '打印回执单':
             //   this.isShowPrintType5 = !this.isShowPrintType5
             //   break
@@ -1403,14 +1476,15 @@
             //       // this.isShowPrint = true
             //       this.printBig()
             //     }
-                await getpaymentexamine({
+                var response=await getpaymentexamine({
                     id: this.modification[i].id,
                   })
                   .toPromise()
-                  .then((response) => {
+
                     if (response.compName == '黑龙江秋收有限公司') {
                       response.compName = '黑龙江中天昊元贸易有限公司'
                     }
+                    
                     index1++
                     let date = new Date()
                     response.currentTime =
@@ -1429,7 +1503,9 @@
                       // this.isShowPrint = true
                       this.printBig()
                     }
-                  })
+                  if(response.selfCertificate){
+                    response.selfCertificateURL=await getFileList({ appendixIds:response.selfCertificate }).toPromise()
+                  }
               // })
           }
         } else {
@@ -1572,7 +1648,7 @@
       getWarehouse() {
         let _wareHouse = localStorage.getItem('houseSelfCollect_house1')
         _wareHouse = JSON.parse(_wareHouse)
-        selectWarehouseSelf({
+        getwarehouse({
             compId: localStorage.getItem('ws-pf_compId'),
           })
           .toPromise()
@@ -1736,13 +1812,13 @@
       getList() {
         for (let _temp = 0; _temp < this.warehouseList.length; _temp++) {
           if (this.warehouseName == this.warehouseList[_temp].warehouseName) {
-            if(this.warehouseList[_temp].goodsNameInfos){
-              for (let _num = 0; _num < this.warehouseList[_temp].goodsNameInfos.length; _num++) {
-                const res = new Map()
-                this.goodnameList = this.warehouseList[_temp].goodsNameInfos.filter((arr) => !res.has(arr.goodsName) &&
-                  res.set(arr.goodsName, 1))
-              }
-            }
+            // if(this.warehouseList[_temp].goodsNameInfos){
+            //   for (let _num = 0; _num < this.warehouseList[_temp].goodsNameInfos.length; _num++) {
+            //     const res = new Map()
+            //     this.goodnameList = this.warehouseList[_temp].goodsNameInfos.filter((arr) => !res.has(arr.goodsName) &&
+            //       res.set(arr.goodsName, 1))
+            //   }
+            // }
             
           }
         }

+ 75 - 12
src/views/houseSelfCollect/weightCheckRecord.vue

@@ -113,6 +113,14 @@
             </el-option>
           </el-select>
         </div>
+        <div class="shdw-style" v-if="checked && serviceManagementType==3 || (!ddchecked && !checked && serviceManagementType==3)">
+          <div>发货单位:</div>
+          <!-- <div>{{companyName}}</div> -->
+          <el-select v-model="customer" placeholder="请选择" style="width: 75%;">
+            <el-option v-for="item in customerOptions" :key="item.value" :label="item.label" :value="item.value">
+            </el-option>
+          </el-select>
+        </div>
         <div v-if="warehouseName=='鲅鱼圈金信库'&&printType==2||
         warehouseName=='白城内陆港'&&printType==2||
         warehouseName=='杜尔伯特家禾库'&&printType==2||
@@ -453,6 +461,8 @@
         ddchecked: false,
         checked: false,
         outchecked:false,
+        customerOptions:[],
+        customer:'',
         isShowPrintType: false,
         dialogDataList: [],
         jjSelectPrintList: [],
@@ -478,6 +488,7 @@
         customerNumberCard:'',
         positionId:'',
         warehouseInOutDetail:{},
+        serviceManagementType:1,
       }
     },
     activated() {
@@ -1067,6 +1078,7 @@
               }else{
                 this.dialogData.compName = this.companyName
               }
+              this.dialogData.customer=this.customer
               if (this.checked) {
                 if(this.dialogData&&!this.dialogData.customer&&this.dialogData.contractManagement){
                   this.dialogData.customer = this.dialogData.contractManagement.seller
@@ -1132,6 +1144,7 @@
                 if (response.compName == '黑龙江秋收有限公司') {
                   response.compName = '黑龙江中天昊元贸易有限公司'
                 }
+                response.customer=this.customer
                 this.jjSelectPrintList.push(response)
                 if (index1 == this.modification.length) {
                   this.printBig(1, this.radio)
@@ -1167,6 +1180,15 @@
           }
           return true
 
+        } else if (type == 3) {
+          for (var _tmp = 0; _tmp < this.companyNameOptions.length; _tmp++) {
+            console.log(name)
+            if (this.companyNameOptions[_tmp].label == name) {
+              return false
+            }
+          }
+          return true
+
         }
 
       },
@@ -1179,19 +1201,39 @@
             return
           }
           for (let _num = 0; _num < this.modification.length; _num++) {
-            if (this.modification[_num].serviceManagementType == 1 && (this.warehouseName == '鲅鱼圈金信库'|| this.warehouseName == '杜尔伯特家禾库'||this.warehouseName=='洮南新友谊兴旺库'||this.warehouseName=='甘南宏旗库' || this.warehouseName == '白城内陆港' || this.warehouseName == '洮南向阳乡金昊'||this.warehouseName=='山东园丰库')) {
+            this.serviceManagementType=this.modification[_num].serviceManagementType
+            if(this.modification[_num].serviceManagementType == 3){
+                    this.customerOptions=[{label:this.modification[_num].customer,value:this.modification[_num].customer}]
+                    this.customerOptions.push({label:this.modification[_num].seller,value:this.modification[_num].seller})
+                    this.customer=this.modification[_num].customer
+                  }
+            if (this.modification[_num].serviceManagementType == 1&&(this.warehouseName == '鲅鱼圈金信库'|| this.warehouseName == '杜尔伯特家禾库'||this.warehouseName=='洮南新友谊兴旺库'||this.warehouseName=='甘南宏旗库' || this.warehouseName == '白城内陆港' || this.warehouseName == '洮南向阳乡金昊'||this.warehouseName=='山东园丰库'||this.warehouseName=='佳屹农仓储库')){
               if (this.modification[_num].seller && this.modification[_num].buyer) {
                 let cang = {}
                 cang.value = this.modification[_num].seller
                 cang.label = this.modification[_num].seller
-                if (this.check(this.modification[_num].seller, 1)) {
-                  this.ewCustomerOptions.push(cang)
-                }
                 let cang1 = {}
                 cang1.value = this.modification[_num].buyer
                 cang1.label = this.modification[_num].buyer
-                if (this.check(this.modification[_num].buyer, 2)) {
-                  this.companyNameEWOptions.push(cang1)
+                // if (this.check(this.modification[_num].seller, 1)) {
+                //   this.ewCustomerOptions.push(cang)
+                // }
+                
+                
+                if(this.warehouseName=='佳屹农仓储库'){
+                  if (this.check(this.modification[_num].buyer, 3)) {
+                    this.companyNameOptions.push(cang1)
+                    this.companyName=this.modification[_num].buyer
+                  }
+                  
+                }else{
+                  if (this.check(this.modification[_num].buyer, 2)) {
+                    this.ewCustomerOptions.push(cang1)
+                  }
+                }
+                
+                if (this.check(this.modification[_num].seller, 1)) {
+                  this.companyNameEWOptions.push(cang)
                 }
               }
             }
@@ -1200,20 +1242,41 @@
           this.isShowPrintType = true
           
         } else {
-          if (row.serviceManagementType == 1 && (this.warehouseName == '鲅鱼圈金信库' || this.warehouseName == '杜尔伯特家禾库'||this.warehouseName=='洮南新友谊兴旺库'||this.warehouseName=='甘南宏旗库' || this.warehouseName == '白城内陆港' || this.warehouseName == '洮南向阳乡金昊'||this.warehouseName=='山东园丰库')) {
+          this.serviceManagementType=row.serviceManagementType
+          if(row.serviceManagementType == 3){
+            this.customerOptions=[{label:row.customer,value:row.customer}]
+            this.customerOptions.push({label:row.seller,value:row.seller})
+            this.customer=row.customer
+            console.log(this.customerOptions,this.customer,222222)
+          }
+          if (row.serviceManagementType == 1&&(this.warehouseName == '鲅鱼圈金信库' || this.warehouseName == '杜尔伯特家禾库'||this.warehouseName=='洮南新友谊兴旺库'||this.warehouseName=='甘南宏旗库' || this.warehouseName == '白城内陆港' || this.warehouseName == '洮南向阳乡金昊'||this.warehouseName=='山东园丰库'||this.warehouseName=='佳屹农仓储库')) {
             if (row.seller && row.buyer) {
               let cang = {}
               cang.value = row.seller
               cang.label = row.seller
-              if (this.check(row.seller, 1)) {
-                this.ewCustomerOptions.push(cang)
-              }
+              // if (this.check(row.seller, 1)) {
+              //   this.ewCustomerOptions.push(cang)
+              // }
               let cang1 = {}
               cang1.value = row.buyer
               cang1.label = row.buyer
-              if (this.check(row.buyer, 2)) {
-                this.companyNameEWOptions.push(cang1)
+              
+              if(this.warehouseName=='佳屹农仓储库'){
+                if (this.check(row.buyer, 3)) {
+                  this.companyNameOptions.push(cang1)
+                  this.companyName=row.buyer
+                }
+                
+               
+              }else{
+                if (this.check(row.buyer, 2)) {
+                  this.companyNameEWOptions.push(cang1)
+                }
               }
+              if (this.check(row.seller, 1)) {
+                  this.ewCustomerOptions.push(cang)
+                }
+              
             }
           }
           this.idPrint = row.id

+ 2 - 0
src/views/outboundManagement/component/route.js

@@ -96,6 +96,7 @@ const outboundManagementRouter = {
               title:'newQualityInspectionManagement',
               shortcutEntrance:'outboundManagement',
               module:'outbound.acquisitionQualityOut.view',
+              // module:'outbound.acquisitionWeightOut.view',
               permissicon: [],
               keepAlive: true,
               _title:'出库管理质检管理'
@@ -110,6 +111,7 @@ const outboundManagementRouter = {
           meta: {
             title: 'outInspectRecord',
             shortcutEntrance: 'outInspectRecord',
+            // module:'outbound.acquisitionWeightOut.view',
             module: 'outbound.acquisitionQualityOut.edit',
             permissicon: [],
             keepAlive: true,

+ 79 - 2
src/views/outboundManagement/newQualityInspectionManagement.vue

@@ -168,6 +168,49 @@
                 type="number" :disabled="disabled" />
             </ws-form-item>
           </ws-info-table>
+          <ws-info-table>
+              <ws-form-item label="规格(公斤)" span="1" prop="boxNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                  <el-select :disabled='recheck' filterable clearable v-model="inspect.specifications" placeholder="请选择规格"
+                    class="typeselect" >
+                    <el-option label="830" value="830" />
+                    <el-option label="850" value="850" />
+                  </el-select>
+                </ws-form-item>
+                <ws-form-item label="工厂" span="1" prop="titleNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                  <ws-input v-model="inspect.factory" placeholder="请输入工厂" maxlength="30"
+                    size="small" />
+                </ws-form-item>
+                <ws-form-item label="生产日期" span="1" prop="titleNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                    <el-date-picker value-format="yyyy-MM-dd" v-model="inspect.produceDate" type="date" placeholder="选择生产日期"></el-date-picker>
+                </ws-form-item>
+                <ws-form-item label="污染件数" span="1" prop="titleNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                  <ws-input v-model="inspect.polluteNum" placeholder="请输入污染件数" maxlength="30"
+                    size="small" />
+                </ws-form-item>
+                
+                <ws-form-item label="破损件数" span="1" prop="titleNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                  <ws-input v-model="inspect.wornNum" placeholder="请输入破损件数" maxlength="30"
+                    size="small" />
+                </ws-form-item>
+                
+              </ws-info-table>
+              <ws-info-table class='upload-address-wrap'>
+                <ws-form-item class='upload-address' label="污染附件" span="1" prop="titleNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                  <ws-upload ref="upload" :tipstatus='false' :comp-id="compId" :appendix-ids="inspect.polluteUrl" :size-limit="size"
+                  @onChange="onChange" accept=".jpg, .jpeg, .png, .pdf, .doc, .docx, .zip, .rar" />
+                </ws-form-item>
+                <ws-form-item class='upload-address' label="破损附件" span="1" prop="titleNoOther"
+                  v-if="compName=='辽宁佳屹农商贸有限公司'">
+                  <ws-upload ref="upload1" :tipstatus='false' :comp-id="compId" :appendix-ids="inspect.wornUrl" :size-limit="size"
+                  @onChange="onChange1" accept=".jpg, .jpeg, .png, .pdf, .doc, .docx, .zip, .rar" />
+                </ws-form-item>
+              </ws-info-table>
         </ws-form>
         <div class="but">
           <!-- <el-button @click="print" type="primary">提交</el-button> -->
@@ -201,9 +244,11 @@
   import html2canvas from 'html2canvas'
   import axios from 'axios'
   import outInspectPrint from './component/outInspectPrint.vue'
+  import WsUpload from '@/components/WsUpload'
   export default {
     components: {
       outInspectPrint,
+      WsUpload
     },
     watch: {},
     data() {
@@ -233,7 +278,8 @@
         isShowPrint: false,
         printData: {},
         nosuccess: 0,
-        success: 0
+        success: 0,
+        compName:localStorage.getItem('ws-pf_compName'),
       }
     },
     beforeDestroy() {
@@ -304,6 +350,28 @@
         })
     },
     methods: {
+      onChange() {
+        this.$refs.upload
+          .handleSaveBill()
+          .then(async response => {
+            this.inspect.polluteUrl = response
+          })
+          .catch(res => {
+            EventBus.$emit('error', (JSON.parse(res) || {}).message)
+            this.$refs.upload.clearFiles()
+          })
+      },
+      onChange1() {
+        this.$refs.upload1
+          .handleSaveBill()
+          .then(async response => {
+            this.inspect.wornUrl = response
+          })
+          .catch(res => {
+            EventBus.$emit('error', (JSON.parse(res) || {}).message)
+            this.$refs.upload1.clearFiles()
+          })
+      },
       refreshClick(type) {
         let that = this
         if (type == 1) {
@@ -361,6 +429,8 @@
               }
               that.deptBudgetTotal2 = response.total
               that.success = response.total
+              var date = new Date()
+              that.inspect.produceDate = date.getFullYear()+'-'+((date.getMonth()+1)>=10?(date.getMonth()+1):'0'+(date.getMonth()+1))+'-'+((date.getDate())>=10?date.getDate():'0'+date.getDate())
             })
         } else {
           clearInterval(that.timer)
@@ -990,7 +1060,7 @@
     margin-top: 20px;
     background: #FFFFFF;
     border-radius: 4px;
-    height: 300px;
+    height: 630px;
 
     .formList {
       width: 90%;
@@ -1024,4 +1094,11 @@
   /deep/.switchpage.el-pagination .el-select .el-input {
     margin: 0 30px 0 10px;
   }
+  /deep/.upload-address-wrap .el-form-item  .el-form-item__content{
+  height:300px;
+  align-items: flex-start;
+}
+/deep/.ws-upload{
+  overflow-x:scroll;
+}
 </style>

+ 71 - 3
src/views/outboundManagement/outInspectRecord.vue

@@ -48,6 +48,39 @@
       <el-table-column prop="binNumber" label="仓位号"></el-table-column>
       <el-table-column prop="qualityInspector" label="质检员"></el-table-column>
       <el-table-column prop="updateDate" label="质检时间"></el-table-column>
+      <el-table-column v-if="compName=='辽宁佳屹农商贸有限公司'" :key='Math.random()' label="规格(公斤)" width="120">
+      </el-table-column>
+      <el-table-column v-if="compName=='辽宁佳屹农商贸有限公司'" :key='Math.random()' prop="factory" label="工厂"></el-table-column> 
+      <el-table-column v-if="compName=='辽宁佳屹农商贸有限公司'" :key='Math.random()' prop="polluteNum" label="污染件数" width="120">
+      </el-table-column>
+      <el-table-column v-if="compName=='辽宁佳屹农商贸有限公司'" :key='Math.random()' prop="type" 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,0)" alt="" />
+          <span v-if="scope.row.polluteUrlArray != null">
+            {{
+              scope.row.polluteUrlArray.length == 0
+                ? ''
+                : scope.row.polluteUrlArray.length
+            }}
+          </span>
+        </template>
+      </el-table-column> 
+      <el-table-column v-if="compName=='辽宁佳屹农商贸有限公司'" :key='Math.random()' prop="wornNum" label="破损件数" width="120">
+      </el-table-column>
+      <el-table-column v-if="compName=='辽宁佳屹农商贸有限公司'" :key='Math.random()' prop="type" 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,1)" alt="" />
+          <span v-if="scope.row.wornUrlArray != null">
+            {{
+              scope.row.wornUrlArray.length == 0
+                ? ''
+                : scope.row.wornUrlArray.length
+            }}
+          </span>
+        </template>
+      </el-table-column>
       <el-table-column prop="status" label="状态"></el-table-column>
       <el-table-column width="300" label="操作">
         <template slot-scope="scope">
@@ -68,6 +101,11 @@
         :total="deptBudgetTotal">
       </el-pagination>
     </div>
+    <WinseaContentModal v-model="accessoryTFs" :title="$t('system.noticeCircular.information')"
+      @on-cancel="handleClose">
+      <ws-upload ref="upload" :comp-id="compId" :appendix-ids="appendixIdss" :editable="false"
+        accept=".jpg, .jpeg, .png, .pdf, .doc, .zip, .rar" />
+    </WinseaContentModal>
   </div>
 </template>
 <script>
@@ -75,9 +113,11 @@
     selectWarehouseSelf,
     getinspectList,
   } from '@/model/outboundManagement/index'
-
+  import WsUpload from '@/components/WsUpload'
   export default {
-    components: {},
+    components: {
+      WsUpload
+    },
     watch: {},
     data() {
       return {
@@ -94,7 +134,11 @@
         inspect: [],
         warehouseList: [],
         cangid: '', //仓库id
-        statusType:'1'
+        statusType:'1',
+        accessoryTFs:false,
+        appendixIdss:'',
+        compId: localStorage.getItem('ws-pf_compId'),
+        compName:localStorage.getItem('ws-pf_compName'),
       }
     },
     activated() {
@@ -102,6 +146,16 @@
       this.showType = this.isShow
     },
     methods: {
+      fujian(row,status) {
+        this.accessoryTFs = true
+        if(status==0){
+          this.appendixIdss = row.polluteUrl
+        }else{
+          this.appendixIdss = row.wornUrl
+        }
+        
+        console.log(this.appendixIdss)
+      },
         returnsales(){
             this.$router.go(-1)
         },
@@ -184,6 +238,20 @@
           })
           .toPromise()
           .then((response) => {
+            if(response.records.length>0){
+             for(var i=0;i<response.records.length;i++){
+              if(response.records[i].polluteUrl){
+                response.records[i].polluteUrlArray=response.records[i].polluteUrl.split(',')
+              }else{
+                response.records[i].polluteUrlArray=[]
+              }
+              if(response.records[i].wornUrl){
+                response.records[i].wornUrlArray=response.records[i].wornUrl.split(',')
+              }else{
+                response.records[i].wornUrlArray=[]
+              }
+             }
+            }
             this.inspect = response.records
             this.deptBudgetTotal = response.total
           })

+ 7 - 0
src/views/outboundManagement/qualityInspection.vue

@@ -284,4 +284,11 @@ export default {
   text-align: center;
   margin: 20px auto;
 }
+/deep/.upload-address-wrap .el-form-item  .el-form-item__content{
+  height:300px;
+  align-items: flex-start;
+}
+/deep/.ws-upload{
+  overflow-x:scroll;
+}
 </style>

+ 143 - 49
src/views/outboundManagement/weighingManagementNew.vue

@@ -69,7 +69,7 @@
                   <!-- </el-badge> -->
                 </el-button>
               </div>
-              <ws-form class="right-content">
+              <el-form class="right-content" v-enterToNext="true">
                 <div class="left1">
                   <div class="weightInfo">
                     <ws-info-table>
@@ -182,21 +182,21 @@
                       weighingList.outType == '集装箱船'||
                       weighingList.outType == '火运'
                     ">
-                        <ws-input v-model="weighingList.boxNo" placeholder="请输入箱号" maxlength="20" size="small" :disabled="recheck1"/>
+                        <el-input v-model="weighingList.boxNo" placeholder="请输入箱号" maxlength="20" size="small" />
                       </ws-form-item>
                       <ws-form-item label="封号-1" span="1" prop="titleNo" v-if="
                       weighingList.outType == '汽运' ||
                       weighingList.outType == '集装箱船'||
                       weighingList.outType == '火运'
                     ">
-                        <ws-input v-model="weighingList.titleNo" placeholder="请输入封号" maxlength="20" size="small" :disabled="recheck1"/>
+                        <el-input v-model="weighingList.titleNo" placeholder="请输入封号" maxlength="20" size="small" />
                       </ws-form-item>
                       <ws-form-item label="箱号-2" span="1" prop="boxNoOther" v-if="
                       weighingList.outType == '汽运' ||
                       weighingList.outType == '集装箱船'||
                       weighingList.outType == '火运'
                     ">
-                        <ws-input v-model="weighingList.boxNoOther" placeholder="请输入箱号" maxlength="20" size="small" :disabled="recheck1"/>
+                        <el-input v-model="weighingList.boxNoOther" placeholder="请输入箱号" maxlength="20" size="small" />
                       </ws-form-item>
 
                       <ws-form-item label="封号-2" span="1" prop="titleNoOther" v-if="
@@ -204,7 +204,7 @@
                       weighingList.outType == '集装箱船'||
                       weighingList.outType == '火运'
                     ">
-                        <ws-input v-model="weighingList.titleNoOther" placeholder="请输入封号" maxlength="20" size="small" :disabled="recheck1"/>
+                        <el-input v-model="weighingList.titleNoOther" placeholder="请输入封号" maxlength="20" size="small" />
                       </ws-form-item>
                       <!-- <ws-form-item label="车厢号-1" span="1" prop="wingNumber" v-if="weighingList.outType == '火运'">
                         <ws-input v-model="weighingList.wingNumber" placeholder="请输入车厢号" maxlength="20" size="small" />
@@ -289,7 +289,7 @@
                     <!-- </div> -->
                   </div>
                 </div>
-              </ws-form>
+              </el-form>
             </div>
           </el-col>
           <el-col :span="12">
@@ -774,6 +774,8 @@
           }
         }
       }
+      
+      // window.addEventListener("keydown", this.enterCallback);
     })
       this.getNowTime()
       this.selectWarehouse()
@@ -787,10 +789,40 @@
           this.disabled = true
         }
       }
-
+      
     },
     activated() {},
     methods: {
+      findFormItem(el) {
+      const parent = el.parentElement;
+      if (!parent) return document.body;
+      if (
+      parent.className.includes("el-form-item") &&
+      parent.className.includes("el-form-item--small")
+      ) {
+      return parent;
+      }
+      return this.findFormItem(parent);
+      },
+      findInput(container) {
+      let nextEl = container.nextElementSibling;
+      if (!nextEl) return;
+      let input = nextEl.querySelector("input");
+      while (input.id === "el-select") {
+      nextEl = nextEl.nextElementSibling;
+      if (!nextEl) return;
+      input = nextEl.querySelector("input");
+      }
+      if (input.className.includes("el-input__inner")) return input;
+      },
+      enterCallback(e) {
+        console.log(e)
+      if (e.keyCode === 13) {
+      // 按下回车后的逻辑
+      const container = this.findFormItem(document.activeElement);
+      this.findInput(container) && this.findInput(container).focus();
+      }
+      },
       shipInfoChange(e){
         for (let i = 0; i < this.shipInfoList.length; i++) {
           if(this.shipInfoList[i].shipName==this.weighingList.shipName){
@@ -827,10 +859,14 @@
                 this.dialogDataList.push(_datas)
                 this.printBig(1, this.radio)
               } else {
-                this.dialogData.companyName = this.companyName
+                this.dialogData.compName = this.companyName
                 if(this.dialogData&&!this.dialogData.customer&&this.dialogData.contractManagement){
                   this.dialogData.customer = this.dialogData.contractManagement.buyer
                 }
+                  if(this.dialogData.contractManagement.agreementType=='代储合同'){
+                this.dialogData.customer = this.dialogData.contractManagement.seller
+              }
+                console.log(111,this.dialogData)
                 this.dialogDataList.push(this.dialogData)
                 this.printBig('', this.radio)
               }
@@ -1402,14 +1438,31 @@
           }
           return true
 
+        } else if (type == 3) {
+          for (var _tmp = 0; _tmp < this.companyNameOptions.length; _tmp++) {
+            console.log(name)
+            if (this.companyNameOptions[_tmp].label == name) {
+              return false
+            }
+          }
+          return true
+
+        }
+
+      },
+      isNumber(val){
+        var regPos = /^[0-9]+.?[0-9]*/; //判断是否是数字。
+        if(regPos.test(val) ){
+            return true;
+        }else{
+            return false;
         }
 
       },
       print() {
         this.weighingList.warehouseType = this.warehouseType
         console.log(this.weighingList,this.weighingList.binNumbe ,this.weighingList.warehouseType)
-        this.carjudge=false
-        this.carChange1 = '手动填写'
+        
         // if(this.tpyeNo==2){
         //   if(this.weighingList.qualityInspectionManagement.status != '已质检'){
         //     this.$message.error("该条信息未质检!")
@@ -1445,14 +1498,25 @@
           //   })
           //   return
           // }
-          if (!this.weighingList.contractPrice && this.weighingList.inOutType != '移库出库'
-          ||this.weighingList.inOutType == '移库出库'&&this.weighingList.priceType=='随行就市'&&this.weighingList.warehouseType==2) {
-            this.$message({
-              message: '价格不能为空',
-              type: 'warning',
-            })
-            return
+          if(this.weighingList.agreementType!='代储合同'&&this.tpyeNo == 1){
+            if (!this.weighingList.contractPrice && this.weighingList.inOutType != '移库出库'
+            ||this.weighingList.inOutType == '移库出库'&&this.weighingList.priceType=='随行就市'&&this.weighingList.warehouseType==2) {
+              this.$message({
+                message: '价格不能为空',
+                type: 'warning',
+              })
+              return
+            }
+            console.log(this.isNumber(this.weighingList.contractPrice))
+            if(!this.isNumber(this.weighingList.contractPrice)&&!this.priceedit){
+              this.$message({
+                message: '价格不能为非数字',
+                type: 'warning',
+              })
+              return
+            }
           }
+          
           if (
             this.weighingList.storageNumber&&this.weighingList.storageNumber.length < 1 ||
             this.weighingList.storageNumber&&this.weighingList.storageNumber.length > 10
@@ -1618,7 +1682,8 @@
                           JSON.stringify(this.weighingList)
                         )
                         // this.isShowPrint = true
-                        this.isShowPrintType = true
+                        
+                        // this.isShowPrintType = true
                         this.weighingList = {
                           grossWeight: 0,
                           tare: 0,
@@ -1683,31 +1748,33 @@
                         this.inspect = JSON.parse(
                           JSON.stringify(this.weighingList)
                         )
-                        if(this.warehouseName == '鲅鱼圈金信库' ||
-                        this
-                        .warehouseName == '哈尔滨依兰库' || this
-                        .warehouseName == '白城内陆港'|| this
-                        .warehouseName == '山东园丰库'|| this
-                        .warehouseName == '杜尔伯特家禾库'||this.warehouseName=='洮南新友谊兴旺库'||this.warehouseName=='甘南宏旗库'){
-                          if(this.weighingList.contractManagement){
-                            let cang = {}
-                            cang.value = this.weighingList.contractManagement.seller
-                            cang.label = this.weighingList.contractManagement.seller
-                            if (this.check(this.weighingList.contractManagement.seller, 1)) {
-                              this.ewCustomerOptions.push(cang)
-                              }
-                              let cang1 = {}
-                              cang1.value = this.weighingList.contractManagement.buyer
-                              cang1.label = this.weighingList.contractManagement.buyer
-                              if (this.check(this.weighingList.contractManagement.buyer, 2)) {
-                                this.companyNameEWOptions.push(cang1)
-                              }
-                              this.myCompanyCustomer = this.weighingList.contractManagement.buyer
-                          }
-                          this.isShowPrintType = true
-                        }else{
-                          this.isShowPrintType = true
-                        }
+                        // if(this.warehouseName == '鲅鱼圈金信库' ||
+                        // this
+                        // .warehouseName == '哈尔滨依兰库' || this
+                        // .warehouseName == '白城内陆港'|| this
+                        // .warehouseName == '山东园丰库'|| this
+                        // .warehouseName == '杜尔伯特家禾库'||this.warehouseName=='洮南新友谊兴旺库'||this.warehouseName=='甘南宏旗库'){
+                        //   if(this.weighingList.contractManagement){
+                        //     let cang = {}
+                        //     cang.value = this.weighingList.contractManagement.seller
+                        //     cang.label = this.weighingList.contractManagement.seller
+                        //     if (this.check(this.weighingList.contractManagement.seller, 1)) {
+                        //       this.ewCustomerOptions.push(cang)
+                        //       }
+                        //       let cang1 = {}
+                        //       cang1.value = this.weighingList.contractManagement.buyer
+                        //       cang1.label = this.weighingList.contractManagement.buyer
+                        //       if (this.check(this.weighingList.contractManagement.buyer, 2)) {
+                        //         this.companyNameEWOptions.push(cang1)
+                        //       }
+                        //       this.myCompanyCustomer = this.weighingList.contractManagement.buyer
+                        //   }
+                        //   this.isShowPrintType = true
+                        // }else{
+                        //   this.isShowPrintType = true
+                        // }
+                        this.carjudge=false
+                        this.carChange1 = '手动填写'
                         this.weighingList = {
                           grossWeight: 0,
                           tare: 0,
@@ -1771,25 +1838,52 @@
                         .warehouseName == '哈尔滨依兰库' || this
                         .warehouseName == '白城内陆港'|| this
                         .warehouseName == '山东园丰库'|| this
-                        .warehouseName == '杜尔伯特家禾库'||this.warehouseName=='洮南新友谊兴旺库'||this.warehouseName=='甘南宏旗库'){
+                        .warehouseName == '杜尔伯特家禾库'||this.warehouseName=='洮南新友谊兴旺库'||this.warehouseName=='甘南宏旗库'||this.warehouseName=='佳屹农仓储库'){
                           this.weighingList = response
                       this.inspect = JSON.parse(
                         JSON.stringify(this.weighingList)
                       )
                           if(this.weighingList.contractManagement){
                             let cang = {}
-                            cang.value = this.weighingList.contractManagement.seller
+                            if(this.weighingList.contractManagement.agreementType=='代储合同'){
+                            cang.value = this.weighingList.contractManagement.buyer
+                            cang.label = this.weighingList.contractManagement.buyer
+                            if(this.warehouseName=='佳屹农仓储库'){
+                              if (this.check(this.weighingList.contractManagement.buyer, 3)) {
+                                this.companyNameOptions.push(cang)
+                                
+                              }this.companyName=this.weighingList.contractManagement.buyer
+                            }else{
+                              if (this.check(this.weighingList.contractManagement.buyer, 1)) {
+                                this.ewCustomerOptions.push(cang)
+                              }
+                            }
+                            }else{
+                              cang.value = this.weighingList.contractManagement.seller
                             cang.label = this.weighingList.contractManagement.seller
-                            if (this.check(this.weighingList.contractManagement.seller, 1)) {
-                              this.ewCustomerOptions.push(cang)
+                            if(this.warehouseName=='佳屹农仓储库'){
+                              if (this.check(this.weighingList.contractManagement.seller, 3)) {
+                                this.companyNameOptions.push(cang)
+                                
+                              }this.companyName=this.weighingList.contractManagement.seller
+                            }else{
+                              if (this.check(this.weighingList.contractManagement.seller, 1)) {
+                                this.ewCustomerOptions.push(cang)
                               }
+                            }
+                            }
                               let cang1 = {}
                               cang1.value = this.weighingList.contractManagement.buyer
                               cang1.label = this.weighingList.contractManagement.buyer
                               if (this.check(this.weighingList.contractManagement.buyer, 2)) {
                                 this.companyNameEWOptions.push(cang1)
                               }
-                              this.myCompanyCustomer = this.weighingList.contractManagement.buyer
+                              if(this.weighingList.contractManagement.agreementType=='代储合同'){
+                                  this.myCompanyCustomer = this.weighingList.contractManagement.seller
+                              }
+                              else{
+                                  this.myCompanyCustomer = this.weighingList.contractManagement.buyer
+                              }
                           }
                           
                           this.isShowPrintType = true
@@ -1811,7 +1905,6 @@
                     type: 'success',
                   })
                   this.inspect = JSON.parse(JSON.stringify(this.weighingList))
-
                   // this.isShowPrint = true
                   this.weighingList = {
                     grossWeight: 0,
@@ -2315,6 +2408,7 @@
         }
         getcontract({contractNo:this.weighingList.contractNo,warehouseName:this.warehouseName,compId:localStorage.getItem('ws-pf_compId')}).toPromise().then((response) => {
           this.outContractNo=response
+          this.weighingList.agreementType=response.agreementType
             this.shipInfoList=this.outContractNo.shipInfoList
             this.fireDirectionList=this.outContractNo.fireDirectionList
             this.weighingList.goodsName = this.outContractNo.goodsName

+ 60 - 10
src/views/outboundManagement/weighingManagementrecord.vue

@@ -570,8 +570,16 @@
                 this.printBig(1, this.radio)
               } else {
                 this.dialogData.compName = this.companyName
+                // console.log(                this.dialogData)
+                //代储合同出库收货方是卖方
+                if(this.dialogData.contractManagement){
+                
+                if(this.dialogData.contractManagement.agreementType=='代储合同'){
+                    this.dialogData.customer = this.dialogData.contractManagement.seller
+                  }
+                }
                 if(this.dialogData&&!this.dialogData.customer&&this.dialogData.contractManagement){
-                  this.dialogData.customer = this.dialogData.contractManagement.buyer
+                    this.dialogData.customer = this.dialogData.contractManagement.buyer
                 }
                 this.dialogDataList.push(this.dialogData)
                 this.printBig('', this.radio)
@@ -616,13 +624,21 @@
             return
           }
           for (let _num = 0; _num < this.modification.length; _num++) {
-            if (this.modification[_num].serviceManagementType == 1 && (this.warehouseName == '鲅鱼圈金信库' || this.warehouseName == '杜尔伯特家禾库'||this.warehouseName=='洮南新友谊兴旺库'||this.warehouseName=='甘南宏旗库' || this.warehouseName == '白城内陆港' || this.warehouseName == '哈尔滨依兰库'||this.warehouseName=='山东园丰库')) {
+            
+            if (this.modification[_num].serviceManagementType == 1 && (this.warehouseName == '鲅鱼圈金信库' || this.warehouseName == '杜尔伯特家禾库'||this.warehouseName=='洮南新友谊兴旺库'||this.warehouseName=='甘南宏旗库' || this.warehouseName == '白城内陆港' || this.warehouseName == '哈尔滨依兰库'||this.warehouseName=='山东园丰库'||this.warehouseName=='佳屹农仓储库')) {
               if (this.modification[_num].seller && this.modification[_num].buyer) {
                 let cang = {}
                 cang.value = this.modification[_num].seller
                 cang.label = this.modification[_num].seller
-                if (this.check(this.modification[_num].seller, 1)) {
-                  this.ewCustomerOptions.push(cang)
+                if(this.warehouseName=='佳屹农仓储库'){
+                  if (this.check(this.modification[_num].seller, 3)) {
+                    this.companyNameOptions.push(cang)
+                    this.companyName=this.modification[_num].seller
+                  }
+                }else{
+                  if (this.check(this.modification[_num].seller, 1)) {
+                    this.ewCustomerOptions.push(cang)
+                  }
                 }
                 let cang1 = {}
                 cang1.value = this.modification[_num].buyer
@@ -635,14 +651,36 @@
           }
           this.isShowPrintType = true
         } else {
-          if (row.serviceManagementType == '2' && (this.warehouseName == '鲅鱼圈金信库' || this.warehouseName == '杜尔伯特家禾库'||this.warehouseName=='洮南新友谊兴旺库'||this.warehouseName=='甘南宏旗库'|| this.warehouseName == '白城内陆港' || this.warehouseName == '哈尔滨依兰库'||this.warehouseName=='山东园丰库')) {
+          if (row.serviceManagementType == '2' && (this.warehouseName == '鲅鱼圈金信库' || this.warehouseName == '杜尔伯特家禾库'||this.warehouseName=='洮南新友谊兴旺库'||this.warehouseName=='甘南宏旗库'|| this.warehouseName == '白城内陆港' || this.warehouseName == '哈尔滨依兰库'||this.warehouseName=='山东园丰库'||this.warehouseName=='佳屹农仓储库')) {
             if (row.seller && row.buyer) {
               let cang = {}
-              cang.value = row.seller
-              cang.label = row.seller
-              if (this.check(row.seller, 1)) {
-                this.ewCustomerOptions.push(cang)
+               if(row.contractManagement.agreementType=='代储合同'){
+                cang.value = row.buyer
+                cang.label = row.buyer
+              }
+              else{
+                cang.value = row.seller
+                cang.label = row.seller
+              }
+              if(this.warehouseName=='佳屹农仓储库'){
+                if(row.contractManagement.agreementType=='代储合同'){
+                  if (this.check(row.buyer, 3)) {
+                    this.companyNameOptions.push(cang)
+                  }
+                  this.companyName=row.buyer
+                }
+                else{
+                  if (this.check(row.seller, 3)) {
+                    this.companyNameOptions.push(cang)  
+                  }
+                  this.companyName=row.seller
+                }
+              }else{
+                if (this.check(row.seller, 1)) {
+                  this.ewCustomerOptions.push(cang)
+                }
               }
+              
               let cang1 = {}
               cang1.value = row.buyer
               cang1.label = row.buyer
@@ -650,6 +688,9 @@
                 this.companyNameEWOptions.push(cang1)
               }
               this.myCompanyCustomer = row.buyer
+              if(row.contractManagement.agreementType=='代储合同'){
+                this.myCompanyCustomer = row.seller
+              }
             }
           }
           this.idPrint = row.id
@@ -674,6 +715,15 @@
           }
           return true
 
+        } else if (type == 3) {
+          for (var _tmp = 0; _tmp < this.companyNameOptions.length; _tmp++) {
+            console.log(name)
+            if (this.companyNameOptions[_tmp].label == name) {
+              return false
+            }
+          }
+          return true
+
         }
 
       },
@@ -1088,7 +1138,7 @@
           this.makeEWjjSelectPrintList()
           //  this.selectEW = true;
         }
-       
+       console.log(type)
         if (type == 1) {
           localStorage.setItem('selectPrint_jjSelectPrintList', JSON.stringify(this.dialogDataList))
           window.open('../../../../static/weightCheckOutNew.html?type=2&radioType=' + radioType + '&selectEW=' + this

+ 8 - 3
src/views/profitable/cashout.vue

@@ -43,9 +43,9 @@
           <el-form-item label-width='100px' v-if='deptBudgetList.purpose == "库点费用"' label="是否自动分配" span="1"
             prop="contractNo" class="readonly">
             <ws-select v-model="deptBudgetList.autoAssign" class="typeselect">
-              <ws-option label="不自动分配" value="不自动分配" style="color: #8890b1" />
+              <ws-option label="不自动分配" value="1" style="color: #8890b1" />
               <!-- <ws-option label="仓储费自动分配" value="仓储费自动分配" style="color: #8890b1" /> -->
-              <ws-option label="燃料费自动分配" value="燃料费自动分配" style="color: #8890b1" />
+              <ws-option label="燃料费自动分配" value="5" style="color: #8890b1" />
             </ws-select>
           </el-form-item>
           <el-form-item label-width='100px' label="单价(元/吨)" span="1" prop="coalPrice"
@@ -652,6 +652,11 @@ export default {
         if (this.contractList[i].contractNo == e) {
           this.deptBudgetList.contractId = this.contractList[i].id
           this.signingDate = this.contractList[i].signingDate
+          if(this.contractList[i].agreementType=='采购合同'){
+            this.deptBudgetList.payerHeader=this.contractList[i].buyer
+          }else if(this.contractList[i].agreementType=='销售合同'){
+            this.deptBudgetList.payerHeader=this.contractList[i].seller
+          }
           getpayeeinfo({ compId: localStorage.getItem('ws-pf_compId'), contractNo: e }).toPromise()
             .then((response1) => {
               this.deptBudgetList.payee = response1.customerType == '企业客户' ? response1.compName : response1.customerName
@@ -914,7 +919,7 @@ export default {
         })
         return
       }
-      if (this.deptBudgetList.autoAssign != '燃料费自动分配') {//库点费用  仓储费自动分配和煤款自动分配不需要自动请款
+      if (this.deptBudgetList.autoAssign != '5') {//库点费用  仓储费自动分配和煤款自动分配不需要自动请款
         if (this.deptBudgetList.expensesPurpose == 1 && this.deptBudgetList.costType == 3 && this.mode == '全部分配' || this.deptBudgetList.expensesPurpose == 3 && this.mode == '全部分配') {
           this.deptBudgetList.amountMoney = Number(this.deptBudgetList.amountMoney).toFixed(2)
           if (this.amount != this.deptBudgetList.amountMoney) {

+ 1 - 1
src/views/profitable/payment.vue

@@ -252,7 +252,7 @@
           }).catch((response) => {
             this.$message({
               message: '提交失败!',
-              type: 'success',
+              type: 'error',
             })
           })
         })

+ 2 - 2
src/views/statisticalReport/autoSettlementList.vue

@@ -722,10 +722,10 @@ export default {
         this.$message.warning('请至少勾选一条条目!')
       }
       for (var i = 0; i < this.modification.length; i++) {
-          if (!this.modification[i].unloadingWeight&&status==1||this.modification[i].status != '待请款'&&status==1 ) {
+          if (this.modification[i].unloadingWeight=='未卸车'&&status==1||this.modification[i].status != '待请款'&&status==1 ) {
             this.$message.warning('只有已卸车并且未请款的条目才可清空服务费!')
             return
-          }else if (!this.modification[i].unloadingWeight&&status==2||this.modification[i].status != '待请款'&&status==2 ) {
+          }else if (this.modification[i].unloadingWeight=='未卸车'&&status==2||this.modification[i].status != '待请款'&&status==2 ) {
             this.$message.warning('只有已卸车并且未请款的条目才可清空税点!')
             return
           }

+ 9 - 0
src/views/taskManagement/inOutWarehouseTaskEdit.vue

@@ -130,6 +130,9 @@
               :value="item.staffName"
             />
           </el-form-item>
+          <el-form-item label="任务标识">
+              {{ dataList.taskFlag }}
+					</el-form-item>
           <!--业务描述=-->
           <el-form-item label="业务描述">
             {{dataList.businessDescribe}}
@@ -246,6 +249,9 @@
             />
             {{dataList1.agent}}
           </el-form-item>
+          <el-form-item label="任务标识">
+              {{ dataList1.taskFlag }}
+					</el-form-item>
           <!--业务描述=-->
           <el-form-item label="业务描述">
             {{dataList1.businessDescribe}}
@@ -356,6 +362,9 @@
             />
             <!-- </el-select> -->
           </el-form-item>
+          <el-form-item label="任务标识">
+              {{ dataList.taskFlag }}
+					</el-form-item>
           <!--业务描述=-->
           <el-form-item label="业务描述">
             {{dataList.businessDescribe}}

+ 7 - 1
src/views/taskManagement/tranManagementWarehouseInOutTaskAdd.vue

@@ -368,7 +368,7 @@
 						</el-select>
 					</el-form-item>
 					<el-form-item label="任务标识">
-						<el-input :disabled="dataList.taskTypeKey == 4" v-model="dataList.taskFlag"
+						<el-input @input='taskFlaginput' :disabled="dataList.taskTypeKey == 4" v-model="dataList.taskFlag"
 							placeholder="请输入任务标识" maxlength="6" size="small" class="huom" />
 					</el-form-item>
 					<!--业务描述=-->
@@ -645,6 +645,12 @@
 		},
 		methods: {
 			taskFlaginput(e){
+				if(this.dataList.taskTypeKey==1){
+					this.dataList.taskFlag=e
+				}
+				if(this.dataList.taskTypeKey==2){
+					this.dataList1.taskFlag=e
+				}
 				if(this.dataList.taskTypeKey==3){
 					this.dataList1.taskFlag=e
 				}

+ 9 - 0
src/views/taskManagement/tranManagementWarehouseInOutTaskEdit.vue

@@ -278,6 +278,9 @@
               />
             </el-select>
           </el-form-item>
+          <el-form-item label="任务标识">
+              {{ dataList.taskFlag }}
+					</el-form-item>
           <!--业务描述=-->
           <el-form-item
             v-if="dataList.taskTypeKey != 3"
@@ -535,6 +538,9 @@
               />
             </el-select>
           </el-form-item>
+          <el-form-item label="任务标识">
+              {{ dataList1.taskFlag }}
+					</el-form-item>
           <!--业务描述=-->
           <el-form-item v-if="dataList.taskTypeKey != 4" label="业务描述">
             <el-input
@@ -746,6 +752,9 @@
               />
             </el-select>
           </el-form-item>
+          <el-form-item label="任务标识">
+              {{ dataList.taskFlag }}
+					</el-form-item>
           <!--业务描述=-->
           <el-form-item label="业务描述">
             <el-input

+ 16 - 0
src/views/tradeServicesManagement/component/routers/route.js

@@ -64,6 +64,22 @@ const tradeServicesManagementRouter = {
       },
       hidden: true
     },
+    //创建仓单
+    {
+      path: 'warehouseReceiptgoods',
+      component: () =>
+        import( /* webpackChunkName: "applDetail" */ '@/views/tradeServicesManagement/goods'),
+      name: 'warehouseReceiptgoods',
+      meta: {
+        title: 'warehouseReceiptgoods',
+        shortcutEntrance: 'warehouseReceiptRegulation',
+        module: 'tradeServicesManagement.tradeService.add',
+        permissicon: [],
+        keepAlive: true,
+        _title:'创建仓单-选择货源'
+      },
+      hidden: true
+    },
     //审核仓单
     {
       path: 'reviewWarehouseReceipt',

+ 1011 - 0
src/views/tradeServicesManagement/goods.vue

@@ -0,0 +1,1011 @@
+<template>
+  <div class="container">
+    <el-row class="top">
+      <el-col :span="18">
+        <h2 class="bg-left title1">选择货源</h2>
+      </el-col>
+      <el-col :span="6" class="bg-right">
+        <el-button class="bg-bottom" type="primary" size="small" @click="returnWarehouse()">返回</el-button>
+      </el-col>
+    </el-row>
+    <el-row class="top-row">
+      <el-col :span="18">
+        <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>
+        <el-select filterable clearable v-model="inOutType" placeholder="请选择货名" class="typeselect"
+            @change="binNumberChange">
+            <el-option key="全部类型" label="全部类型" value="" />
+            <el-option v-for="item in inOutTypeList" :key="item.value" :label="item.value"
+              :value="item.value" />
+          </el-select>
+      </el-col>
+      <el-col :span="6" class="bg-right">
+        <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 />
+        </ws-button>
+      </el-col>
+    </el-row>
+    <el-row class="top-row">
+      <el-col :span="18">
+        <el-button @click="bindedChange('')" :type="binded==''?'primary':''" size="small">全部</el-button>
+        <el-button @click="bindedChange('0')" :type="binded=='0'?'primary':''" size="small">未绑定</el-button>
+        <el-button @click="bindedChange('1')" :type="binded=='1'?'primary':''" size="small">已绑定</el-button>
+        <span>库点:{{deptBudgetList.warehouseName}}</span>
+      </el-col>
+      <el-col :span="6" class="bg-right">
+        <el-button type="primary" @click="bindedselect">确定货源</el-button>
+      </el-col>
+    </el-row>
+    <div class="center">
+        <el-table 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 prop="warehouseReceipt" label="所属仓单" width="180">
+          </el-table-column>
+          <el-table-column prop="inOutTaskNo" label="业务编号" width="180">
+          </el-table-column>
+          <el-table-column prop="cargoRights" label="货源归属" width="60px"> </el-table-column>
+          <el-table-column prop="inOutType" label="入库类型" width="100"> </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="goodsName" 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 label="水分(%)" span="1" prop="waterContent"></el-table-column>
+          <el-table-column label="容重(g/l)" span="1" prop="bulkDensity"></el-table-column>
+          <!-- <el-table-column prop="type" label="类型" width="60px"> </el-table-column> -->
+          <el-table-column prop="cost" label="单价(元/吨)">
+          </el-table-column>
+          <el-table-column prop="price" label="粮款(元)"> </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="createDate" label="入库日期">
+            <template slot-scope="scope">
+              <span style="color: #8890b1">{{ scope.row.createDate }}</span>
+            </template>
+          </el-table-column>
+
+        </el-table>
+        <el-table @selection-change="handleSelectionChange" :data="warehouseList.records" height="560"
+          v-show="this.warehouseType== '2'">
+          <el-table-column type="selection" width="55" :selectable="selectInit"></el-table-column>
+          <el-table-column prop="warehouseReceipt" label="所属仓单" width="180">
+          </el-table-column>
+          <el-table-column prop="inOutTaskNo" label="业务编号" width="180">
+          </el-table-column>
+          <el-table-column prop="cargoRights" label="货源归属" width="60px"> </el-table-column>
+          <el-table-column prop="inOutType" label="入库类型" width="100"> </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="goodsName" 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 label="水分(%)" span="1" prop="waterContent"></el-table-column>
+          <el-table-column label="容重(g/l)" span="1" prop="bulkDensity"></el-table-column>
+          <!-- <el-table-column prop="type" label="类型" width="60px"> </el-table-column> -->
+          <el-table-column prop="cost" label="单价(元/吨)">
+          </el-table-column>
+          <el-table-column prop="price" label="粮款(元)"> </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="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,
+    getExpense,
+
+  } from '@/model/warehouse/index'
+  import {
+    packList,
+
+  } from '@/model/contarct/index'
+  import * as global from '@/global'
+  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: '',
+        form:{},
+        contractNo:{},
+        show:false,
+        srcList: [],
+        binded:'',
+        currectdata:{
+          compId: localStorage.getItem('ws-pf_compId'),
+        },
+        inOutType:'',
+        goodsList:[],
+        num:0,
+        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',
+        taskNolist1:[],
+        compId: localStorage.getItem('ws-pf_compId'),
+        deptCircularPage: {},
+        pcFlag: 1,
+        date: {
+          year: dayjs().format('YYYY'),
+          month: dayjs().format('MM'),
+        },
+        warehouseList: [],
+        taskNolist:[],
+        taskNolist1:[],
+        arr2:[],
+        deptBudgetList: {},
+        historyList: [],
+        searchType: '',
+        allurl: '../../../public/img/radio.png',
+        pickerBeginDateBefore: {
+          disabledDate: (time) => {
+            return time.getTime() > Date.now()
+          },
+        },
+        accessoryTFs: false,
+        modification: [],
+        printList: [], //批量打印数据
+        warehouseAllXiaLa:[]
+      }
+    },
+
+    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: {
+      async bindedselect(){
+        var db=await global.default.openDB('warehouseReceipt')
+        console.log(this.modification)
+        console.log()
+        var data=await global.default.getDataByKey(db,'signalChat',1)
+        if(data){
+          if(data.modification&&data.modification.length>0){
+            global.default.updateDB(db,'signalChat',{sequenceId:1,modification:this.modification})
+          }
+        }else{
+          global.default.addData(db,'signalChat',{sequenceId:1,modification:this.modification})
+        }
+        // localStorage.setItem('warehouseReceiptGood',this.modification)
+        this.$router.go(-1)
+      },
+      bindedChange(e){
+        this.binded=e
+        this.getList()
+      },
+      warehousechange(){
+        this.getList()
+      },
+      async salesTransfer(){
+        var arr=[]
+        if (this.modification.length == 0) {
+          this.$message.error("请勾选要转移的条目!")
+        } else {
+          this.num=0
+          for (var i = 0; i < this.modification.length; i++) {
+            if(this.modification[i].inOutType!='销售出库'){
+              this.$message.error("请勾选相同合同编号的销售出库记录!")
+              return
+            }
+            this.num+=Number(this.modification[i].netWeight)
+            if(arr.length==0){
+              arr.push(this.modification[i])
+            }
+            var arr1=arr.filter((item)=>{return item.contractNo==this.modification[i].contractNo})
+            if(arr1.length==0){
+              arr.push(this.modification[i])
+            }
+          }
+          if(arr.length>1){
+            this.$message.error("请勾选相同合同编号的销售出库记录!")
+            return
+          }
+          var contractNo=await getExpense({ contractNo: arr[0].contractNo, compId: this.compId }).toPromise()
+          if(contractNo.status=='已完成'||contractNo.status=='已结算'){
+            this.$message.error("已完成的合同记录不可转移!")
+            return
+          }
+          this.currectdata.warehouseInOutInfoList=this.modification
+          
+          let map = new Map();
+          for (let item of this.modification) {
+            map.set(item.inOutTaskNo, item.inOutTaskNo);
+          }
+          var arr = [...map.values()]
+          console.log(arr)
+          this.currectdata.taskNo=arr.toString()
+          this.currectdata.contractNo=this.modification[0].contractNo
+          this.currectdata.pointOut=contractNo.pointOut
+          this.taskNolist=this.taskNolist1
+          this.arr2=[]
+          for (let i = 0; i < this.taskNolist.length; i++) {
+            if(this.taskNolist[i].contractNo&&this.taskNolist[i].contractNo!=this.currectdata.contractNo||this.taskNolist[i].moveTaskNo&&this.taskNolist[i].moveTaskNo!=this.currectdata.contractNo){
+              this.arr2.push(this.taskNolist[i])
+            }
+          }
+          console.log(this.arr2)
+          this.show=true
+        }
+      },
+      handleSelectionChange(val) {
+        this.modification = val
+        console.log("sfasa", this.modification)
+      },
+      selectInit(row) {
+        if (row.binded ==0||!row.binded) {
+          return true
+        } else {
+          return false
+        }
+      },
+      binNumberChange(e) {
+        if (e == '全部仓位') {
+          this.deptBudgetList.positionId = ''
+          this.getList()
+        } 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()
+          // var seperator1 = "-"
+          // var date = new Date()
+      
+          // var formatDate = date.getFullYear() + seperator1 + Number(date.getMonth() + 1) + seperator1 + date.getDate()
+          // 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.go(-1)
+			},
+			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
+        this.show=true
+			},
+			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]:''
+				}
+        // 货名
+        packList({
+            constId: 'CON2'
+          })
+          .toPromise()
+          .then((response) => {
+            this.goodnameList = response
+          })
+				if (this.warehouseType == 1) {
+					
+					addselectinfoList({
+							compId: localStorage.getItem('ws-pf_compId'),
+							baseId: this.deptBudgetList.baseId,
+							positionId: this.deptBudgetList.positionId,
+							warehouseName: this.deptBudgetList.warehouseName,
+							startDate:startDate,
+       				endDate:endDate,
+              inOutType:this.inOutType,
+							searchType: this.searchType,
+							searchKeyWord: this.searchKeyWord,
+							currentPage: this.currentPage,
+							pcFlag: this.pcFlag,
+							pageSize: this.pageSize,
+              binded:this.binded
+						})
+						.toPromise()
+						.then((response) => {
+							for (var i = 0; i < response.records.length; i++) {
+								if (response.records[i].cost&&response.records[i].pureWeight) {
+									response.records[i].price=response.records[i].cost*response.records[i].pureWeight
+								} else {
+									response.records[i].price=0
+								}
+							}
+							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,
+              binded:this.binded
+						})
+						.toPromise()
+						.then((response) => {
+							for (var i = 0; i < response.records.length; i++) {
+								if (response.records[i].cost&&response.records[i].pureWeight) {
+									response.records[i].price=response.records[i].cost*response.records[i].pureWeight
+								} else {
+									response.records[i].price=0
+								}
+							}
+							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;
+  }
+
+  .title1 {
+    position: relative;
+  }
+
+  .title1::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;
+  }
+
+  .top .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__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: 50% !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;
+  }
+  .top-row{
+    margin:10px 0;
+  }
+</style>

+ 77 - 10
src/views/tradeServicesManagement/warehouseReceiptAdd.vue

@@ -22,10 +22,12 @@
         </el-col>
       </el-form-item>
       <el-form-item label="名头" prop="renown" class="forlist">
-        <el-select v-model="deptBudgetList.renown" placeholder="请选择名头" @change="changeCompOptionList" filterable clearable>
+        <el-input v-model="deptBudgetList.renown" placeholder="请输入名头" maxlength="20" size="small" >
+          </el-input>
+        <!-- <el-select v-model="deptBudgetList.renown" placeholder="请选择名头" @change="changeCompOptionList" filterable clearable>
           <el-option :label="item.compName" :key="index" :value="item.compId" v-for="(item,index) in compOptionList">
           </el-option>
-        </el-select>
+        </el-select> -->
       </el-form-item>
       <el-form-item label="仓库名称" prop="warehouseName" class="forlist">
         <el-select v-model="deptBudgetList.warehouseName" filterable placeholder="请选择仓库" @change="changeWarehouse" clearable>
@@ -63,6 +65,11 @@
       <el-form-item label="可用储量(吨)" prop="useWeight" class="forlist">
         <el-input disabled v-model="deptBudgetList.useWeight" placeholder="请输入可用储量" size="small"></el-input>
       </el-form-item>
+      <el-form-item label="货源" prop="weight" class="forlist supplyofgoods">
+        <el-input disabled v-model="goodstext" placeholder="" size="small" @input='inputChange'>
+        </el-input>
+        <el-button @click='selectgoods' type="primary">选择货源</el-button>
+      </el-form-item>
       <el-form-item label="本单重量(吨)" prop="weight" class="forlist">
         <el-input v-model="deptBudgetList.weight" placeholder="输入本次仓单申请所需的重量" size="small" @input='inputChange'>
         </el-input>
@@ -112,9 +119,14 @@
     getbillno,
     WarehouseReceiptBankList,
   } from '@/model/tradeServicesManagement/index'
+
   import {
-    selectWarehouseSelf,
+    getwarehouse
   } from '@/model/houseSelfCollect/index'
+  import {
+    getcomp
+  } from '@/model/indexRx'
+  import * as global from '@/global'
   import WsUpload from '@/components/WsUpload'
   export default {
     components: {
@@ -128,7 +140,8 @@
           useWeight:'',
           nowWeight:'',
           warehouseNo:'',
-          warehouseName:''
+          warehouseName:'',
+          renown:''
         },
         size: 10,
         compId: '',
@@ -136,6 +149,8 @@
         compOptionList: [],
         cwNumberList: [],
         goodsList: [],
+        db:{},
+        goodstext:'已选0辆车',
         rules: {
           // unitPrice: [
           //   { required: true, message: '单价不能为空!', trigger: 'blur' },
@@ -146,17 +161,50 @@
         threeList:[],
       }
     },
-    activated() {
+    async activated() {
       this.compId = localStorage.getItem('ws-pf_compId')
       this.deptBudgetList.compId = this.compId
+      this.deptBudgetList.renownId = this.compId
+      this.deptBudgetList.renown=localStorage.getItem('ws-pf_compName')
+      // 
       let i = localStorage.getItem('pageUp')
-      if(i != 1){
-      this.getcompList()
+      if(i != 1&&!localStorage.getItem('warehouseReceiptdata')){
+        this.getWarehouse()
+      // this.getcompList()
       this.getList()
       }
+      // getcomp({userMobilePhone:JSON.parse(localStorage.getItem('ws_login_getTenantInfoByUser')).loginInfo.userMobilePhone}).toPromise().then((res)=>{
+        console.log(localStorage.getItem('ws-pf_compName'))
+        this.deptBudgetList.renown=localStorage.getItem('ws-pf_compName')
+      // })
+      if(localStorage.getItem('warehouseReceiptdata')){
+        this.deptBudgetList=JSON.parse(localStorage.getItem('warehouseReceiptdata'))
+        this.db=await global.default.openDB('warehouseReceipt')
+        var data=await global.default.getDataByKey(this.db,'signalChat',1)
+        if(data){
+          if(data.modification&&data.modification.length>0){
+            this.goodstext='已选'+data.modification.length+'辆车'
+          }
+        }
+      }
+      // console.log(this.deptBudgetList)
       
+        
     },
     methods: {
+      selectgoods(){
+        localStorage.setItem('warehouseReceiptdata',JSON.stringify(this.deptBudgetList))
+        this.$router.push({
+          name: 'warehouseReceiptgoods',
+          query: {
+            baseId: this.deptBudgetList.baseId,
+            positionId: this.deptBudgetList.warehouseNoId,
+            warehouseName: this.deptBudgetList.warehouseName,
+            warehouseType: this.deptBudgetList.warehouseType,
+            warehouseNo:this.deptBudgetList.warehouseNo,
+          }
+        })
+      },
       inputChange(e) {
         if (this.deptBudgetList.unitPrice && this.deptBudgetList.weight) {
           this.deptBudgetList.totalValue = this.deptBudgetList.unitPrice * this.deptBudgetList.weight
@@ -191,19 +239,20 @@
           .toPromise()
           .then((res) => {
             this.compOptionList = res
-            this.deptBudgetList.renown = res[0].compName
+            // this.deptBudgetList.renown = res[0].compName
              this.changeCompOptionList(res[0].compId)
           })
           .catch((err) => {})
       },
       getWarehouse() {
         //获取仓库
-        selectWarehouseSelf({
+        getwarehouse({
             compId: this.compId
           }).toPromise()
           .then(response => {
             this.warehouseList = response
             this.deptBudgetList.warehouseName = response[0].warehouseName
+            this.deptBudgetList.warehouseType = response[0].warehouseType
             this.deptBudgetList.warehouseAddress = response[0].warehousePrivate + response[0].warehouseCity + response[0].warehouseArea + response[0].detailedAddress
               if(response[0].positionInfos){
                  this.deptBudgetList.warehouseNoId = response[0].positionInfos.length != 0 ? response[0].positionInfos[0].id : ''
@@ -318,6 +367,8 @@
         let _data = this.warehouseList
         for (let i = 0; i < _data.length; i++) {
           if (_data[i].warehouseName == val) {
+            global.default.deleteDB(this.db,'signalChat',1)
+            this.goodstext='已选0辆车'
             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 : ''
@@ -327,6 +378,7 @@
             this.deptBudgetList.useWeight =_data[i].goodsNameInfos.length!=0?_data[i].goodsNameInfos[0].useStorage:''
             this.deptBudgetList.goodsName = _data[i].goodsNameInfos.length != 0 ? _data[i].goodsNameInfos[0].goodsName : ''
             this.deptBudgetList.warehouseId = _data[i].id
+            this.deptBudgetList.warehouseType = _data[i].warehouseType
             this.deptBudgetList.goodsNameKey = _data[i].goodsNameInfos.length != 0 ? _data[i].goodsNameInfos[0].goodsNameKey : ''
             this.deptBudgetList.warehouseNoId = _data[i].positionInfos.length != 0 ? _data[i].positionInfos[0].id : ''
             this.deptBudgetList.baseId = _data[i].positionInfos.length != 0 ? _data[i].positionInfos[0].baseId : ''
@@ -414,7 +466,14 @@
         // }
         return true
       },
-      submit() {
+      async submit() {
+        var data=await global.default.getDataByKey(this.db,'signalChat',1)
+        if(data){
+          if(data.modification){
+            this.deptBudgetList.warehouseInOutInfoList=data.modification
+          }
+        }
+        
         let isValidate = false
         isValidate = this.validate()
         if (isValidate) {
@@ -426,7 +485,9 @@
             addList(this.deptBudgetList).toPromise().then((response) => {
               // this.tableData = response.records
               localStorage.removeItem('pageUp')
+              localStorage.removeItem('warehouseReceiptdata')
               this.$message.success('提交成功')
+              global.default.deleteDB(this.db,'signalChat',1)
               this.$router.push({
                 path: 'warehouseReceiptRegulation'
               })
@@ -450,6 +511,9 @@
       },
       cancel() {
         localStorage.removeItem('pageUp')
+        localStorage.removeItem('pageUp')
+        localStorage.removeItem('warehouseReceiptdata')
+        global.default.deleteDB(this.db,'signalChat',1)
         this.$router.push({
           path: 'warehouseReceiptRegulation'
         })
@@ -515,4 +579,7 @@
     font-weight: 600;
     margin: 20px 0;
   }
+  .supplyofgoods .el-input{
+    width:75%;
+  }
 </style>

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

@@ -1,8 +1,8 @@
 //贸易服务管理
 <template>
   <div class="container">
-    <map-drag :class="{active:isActive}" :listData='mapInfo'></map-drag>
-    <div class="bottom" :class="{active:isActive}">
+    <!-- <map-drag :class="{active:isActive}" :listData='mapInfo'></map-drag> -->
+    <!-- <div class="bottom" :class="{active:isActive}">
       <div class="bottom-content">
         <div class="bottom-item" @click="startHacking">查看申请记录</div>
         <div class="bottom-item" @click="startHacking"><i class="el-icon-d-arrow-right icon"></i></div>
@@ -15,7 +15,7 @@
         <div class="top-item" @click="startHacking1"><i class="el-icon-d-arrow-left icon"></i></div>
         <el-radio class="top-item" v-model="radio" label="2" @change="selectShowType(2)">默认列表</el-radio>
       </div>
-    </div>
+    </div> -->
     <div class="content2">
       <div class="header">
         <el-button :type="!searchType ? 'primary' : ''" @click="handlestatus()">全部</el-button>

+ 2 - 0
src/views/universalityAudit/audit.vue

@@ -497,6 +497,7 @@ export default {
               })
               this.getList()
             })
+            this.flag=''
             this.form = {}
             this.$refs.upload.clearFiles()
             this.addshow = false
@@ -517,6 +518,7 @@ export default {
               })
               this.getList()
             })
+            this.flag=''
             this.form = {}
             this.$refs.upload.clearFiles()
             this.addshow = false

+ 196 - 9
src/views/warehousenew/materialInOutRecord.vue

@@ -34,17 +34,25 @@
                 </el-col>
             </el-row>
             <el-row>
-                <el-col :span="18" style="height: 33px;">
+                <el-col :span="6" style="height: 33px;">
                     <el-button style="margin-left: 10px !important" @click="inOutChange('')"
                         :type="inOutFlag == '' ? 'primary' : ''">全部</el-button>
                     <el-button @click="inOutChange(2)" :type="inOutFlag == 2 ? 'primary' : ''">入库</el-button>
                     <el-button @click="inOutChange(1)" :type="inOutFlag == 1 ? 'primary' : ''">出库</el-button>
                 </el-col>
-                <el-col :span="18" style="display:flex;margin-left: 45%;">
-                    <div style="text-align:right;margin-right:80px;">合计入库重量(吨):{{ inWeight }}</div>
-                    <div style="text-align:right;margin-right:60px;">合计出库重量(吨):{{ outWeight }}</div>
-                    <div style="text-align:right;margin-right:40px;">合计入库数量(个):{{ inCount }}</div>
-                    <div style="text-align:right;margin-right:20px;">合计出库数量(个):{{ outCount }}</div>
+                <el-col :span="18" style="text-align:right;">
+                    <div style="display:flex;align-items:center;flex-direction: row-reverse;">
+                        <el-button @click="excelOpen" >导出</el-button>
+                        <div style="text-align:right;margin-right:20px;">合计出库数量(个):{{ outCount }}</div>
+                        <div style="text-align:right;margin-right:40px;">合计入库数量(个):{{ inCount }}</div>
+                        <div style="text-align:right;margin-right:60px;">合计出库重量(吨):{{ outWeight }}</div>
+                        <div style="text-align:right;margin-right:80px;">合计入库重量(吨):{{ inWeight }}</div>
+                        
+                        
+                        
+                        
+                    </div>
+                    
                 </el-col>
             </el-row>
             <el-table class="forData" :data="weighingRecordList" style="width: 100%; margin-top: 20px" height="500"
@@ -75,6 +83,18 @@
                 <el-table-column prop="netWeight" label="净重(公斤)" width="150"></el-table-column>
                 <el-table-column prop="carNo" label="车牌号" width="150"></el-table-column>
                 <el-table-column prop="materialQuantity" label="数量(个)" width="100"></el-table-column>
+                <el-table-column prop="deliveryMethod" label="备注" width="100">
+                    <template scope="scope">
+                        <el-popover
+                        placement="bottom"
+                        title="备注"
+                        width="200"
+                        trigger="click"
+                        :content="scope.row.remark">
+                            <el-button slot="reference">查看</el-button>
+                        </el-popover>
+                    </template>
+                </el-table-column>
                 <el-table-column label="经办人" width="200">
                     <template scope="scope">
                         <span v-if="scope.row.grossAgent == scope.row.tareAgent"> {{ scope.row.grossAgent }}</span>
@@ -84,7 +104,7 @@
                 <el-table-column prop="status" label="状态"></el-table-column>
                 <el-table-column prop="inOutWarehouseDate" label="出入库日期">
                     <template scope="scope">
-                        <span>{{ scope.row.inOutWarehouseDate.split(" ")[0] }}</span>
+                        <span>{{ scope.row.inOutWarehouseDate }}</span>
                     </template>
                 </el-table-column>
                 <!-- <el-table-column label="操作"  width="200">
@@ -146,16 +166,70 @@
                 <el-button @click="typePrintCannelClick1">取消</el-button>
             </div>
         </div> -->
+        <div class="mask" v-show="isShowPrintType"></div>
+    <div class="print-type" v-show="isShowPrintType">
+      <div class="print-type-content">
+        <div class="print-type-title">导出记录</div>
+        <div class="print-type-checkbox">
+          <el-form ref="form" label-width="110px">
+            <el-form-item label="类型">
+              <el-radio-group v-model="parameter.inOutFlag">
+                <el-radio :label="3">入库记录</el-radio>
+                <el-radio :label="2">出库记录</el-radio>
+              </el-radio-group>
+            </el-form-item>
+            <el-form-item label="起始日期">
+              <el-date-picker type="datetime" @change="startDataChange" format="yyyy-MM-dd HH:mm:ss"  value-format="yyyy-MM-dd HH:mm:ss" placeholder="请选择起始日期" v-model="parameter.startDate"  default-time="00:00:00"></el-date-picker>
+              <!-- <el-date-picker v-model="value3" type="datetime" placeholder="选择日期时间" default-time="12:00:00"></el-date-picker> -->
+            </el-form-item>
+            <el-form-item label="截止日期">
+              <el-date-picker type="datetime" @change="endDataChange" format="yyyy-MM-dd HH:mm:ss"  value-format="yyyy-MM-dd HH:mm:ss" placeholder="请选择截止日期" v-model="parameter.endDate"  default-time="00:00:00">
+              </el-date-picker>
+            </el-form-item>
+              <!-- <el-form-item label="截止日期1">
+              <el-date-picker value-format="timestamp" type="date" placeholder="请选择截止日期" v-model="parameter.endDate1">
+              </el-date-picker>
+            </el-form-item> -->
+            <!--仓库名称-->
+            <el-form-item label="仓库名称" span="1" prop="warehouseName">
+               
+              <el-select @change="warehousechange" v-model="parameter.baseId" placeholder="请选择仓库名称" filterable clearable>
+                 <el-option  key="" label="全部仓库" value="全部仓库" />
+                <el-option  v-for="item in warehouseList" :key="item.id" :label="item.warehouseName"
+                                :value="item.id" />
+              </el-select>
+            </el-form-item>
+
+            <!-- <el-form-item label="增量比例(%)" v-if="headerText == '打印记录'">
+              <el-input placeholder="请输入增量比例" v-model="parameter.proportion" clearable class="proportion_css">
+              </el-input>
+            </el-form-item> -->
+          </el-form>
+        </div>
+      </div>
+      <div class="bottom-btn">
+        <el-button @click="exportexcel()">确定</el-button>
+        <el-button @click="removePrint">取消</el-button>
+      </div>
+    </div>
     </div>
 </template>
 <script>
 import {
     // delMaterial,
-    getMaterialRecord
+    getMaterialRecord,
+    postExportMaterial
 } from '@/model/warehouse/index'
+import {
+  downloadFile
+} from '@/utils/batchDown'
 import {
     selectWarehouseSelf,
 } from '@/model/outboundManagement/index'
+import {
+    dayjs,
+    EventBus
+  } from 'base-core-lib'
 export default {
     data() {
         return {
@@ -163,13 +237,16 @@ export default {
             warehouseId: '',
             warehouseName: '',
             warehouseName1: '',
-
+            isShowPrintType:false,
             compId: '',
             inOutFlag: '',
             //分页
             currentPage: 1,
             pageSize: 10,
             value2: '',
+            parameter:{
+                compId: localStorage.getItem('ws-pf_compId'),
+            },
             deptCircularPage: {},
             deptBudgetTotal: 0,
             warehouseList: [], //仓库
@@ -303,6 +380,10 @@ export default {
             printSeparately: false,
             onePrint: false,
             dialogDataList: [],
+            date: {
+                year: dayjs().format('YYYY'),
+                month: dayjs().format('MM'),
+            },
             printData: {
             }
         }
@@ -453,6 +534,47 @@ export default {
         this.getList()
     },
     methods: {
+        removePrint() {
+        this.parameter = {
+                compId: localStorage.getItem('ws-pf_compId'),
+            }
+        this.isShowPrintType = false
+      },
+        excelOpen(){
+            this.isShowPrintType=true
+
+        },
+        downloadFile(url, fileName){ 
+        //fileurl文件地址(一般是接口返回) filename文件下载后的名字
+        const x = new XMLHttpRequest()
+        x.open('GET', url, true)
+        x.responseType = 'blob'
+        x.onload = function() {
+          const url = window.URL.createObjectURL(x.response)
+          const a = document.createElement('a')
+          a.href = url
+          a.download = fileName
+          a.click()
+          document.body.removeChild(a);
+          // 然后移除
+        }
+        x.send()
+      },
+        async exportexcel() {
+      const 
+        data
+       = await postExportMaterial({
+        compId: localStorage.getItem('ws-pf_compId'),
+        baseId: this.warehouseId,
+        inOutFlag: this.inOutFlag,
+        startDate: this.startDate,
+        endDate: this.endDate,
+      }).toPromise()
+      console.log(data)
+      this.downloadFile(data.data.data, `${
+            this.date.year + (this.date.month ? `-${this.date.month}` : '')
+          }物料导出记录`)
+    },
         inOutChange(num) {
             this.inOutFlag = num
             this.getList()
@@ -943,4 +1065,69 @@ export default {
         align-items: center;
     }
 }
+
+.mask {
+    background: black;
+    width: 100vw;
+    height: 100vh;
+    position: fixed;
+    top: 0;
+    z-index: 99;
+    opacity: 0.3;
+  }
+
+  .count {
+    text-align: center;
+    margin-bottom: 10px;
+  }
+
+  .print-type {
+    position: absolute;
+    top: 0;
+    bottom: 0;
+    left: 0;
+    right: 0;
+    margin: auto;
+    width: 340px;
+    height: 346px;
+    background: white;
+    border-radius: 10px;
+    z-index: 999;
+
+    .bottom-btn {
+      text-align: center;
+    }
+  }
+
+  .print-type-title {
+    text-align: center;
+    font-size: 18px;
+    // margin: 20px;
+    margin: 20px 20px 10px;
+  }
+
+  .print-type-checkbox {
+    padding-left: 20px;
+
+    .el-date-editor.el-input {
+      width: 85% !important;
+    }
+
+    .proportion_css {
+      width: 85%;
+    }
+  }
+  /deep/.print-type{
+
+  }
+  /deep/.print-type .el-radio__label{
+    font-size:12px;
+  }
+  /deep/.print-type .el-form-item{
+    display: flex;
+    align-items: center;
+    .el-form-item__content{
+        margin:0 !important;
+    }
+  }
 </style>

+ 31 - 12
src/views/warehousenew/materialInOutWarehouse.vue

@@ -108,40 +108,49 @@
                 <div class="left1">
                   <div class="weightInfo">
                     <ws-info-table>
-                      <ws-form-item label="物料名称" span="1" prop="itemName">
+                      <el-form-item label="物料名称" span="1" prop="itemName">
                         <ws-input @mousewheel.native.prevent v-model="materialList.itemName" placeholder="请输入物料名称"
                           maxlength="10" size="small" :disabled="recheck" />
-                      </ws-form-item>
-                      <ws-form-item label="车牌号" span="1" prop="carNo" v-show="materialList.deliveryMethod == '1'">
+                      </el-form-item>
+                      <el-form-item label="车牌号" span="1" prop="carNo" v-show="materialList.deliveryMethod == '1'">
                         <ws-input @mousewheel.native.prevent v-model="materialList.carNo" placeholder="请输入车牌号"
                           maxlength="7" size="small" :disabled="recheck" />
-                      </ws-form-item>
-                      <ws-form-item label="毛重(KG)" span="1" prop="grossWeight"
+                      </el-form-item>
+                      <el-form-item label="毛重(KG)" span="1" prop="grossWeight"
                         v-show="grossShow && materialList.deliveryMethod == '1'">
                         <ws-input type="number" @mousewheel.native.prevent v-model="materialList.grossWeight"
                           @input="calculation" placeholder="自动获取" maxlength="100" size="small"
                           :disabled="disabled || grossDisabled" />
                         <el-button v-if="tpyeNo == 2" @click="openPort">
                           重新获取</el-button>
-                      </ws-form-item>
-                      <ws-form-item label="皮重(KG)" span="1" prop="tare"
+                      </el-form-item>
+                      <el-form-item label="皮重(KG)" span="1" prop="tare"
                         v-show="tareShow && materialList.deliveryMethod == '1'">
                         <ws-input type="number" @mousewheel.native.prevent v-model="materialList.tare"
                           @input="calculation" placeholder="自动获取" maxlength="100" size="small"
                           :disabled="disabled || tareDisabled" />
                         <el-button v-if="tpyeNo == 1" @click="openPort">
                           重新获取</el-button>
-                      </ws-form-item>
-                      <ws-form-item label="净重(KG)" span="1" prop="tare"
+                      </el-form-item>
+                      <el-form-item label="净重(KG)" span="1" prop="tare"
                         v-show="netWeightShow && materialList.deliveryMethod == '1'">
                         <ws-input type="number" @mousewheel.native.prevent v-model="materialList.netWeight"
                           @input="calculation" placeholder="自动计算" maxlength="100" size="small" disabled />
-                      </ws-form-item>
-                      <ws-form-item label="数量" span="1" prop="materialQuantity"
+                      </el-form-item>
+                      <el-form-item label="数量" span="1" prop="materialQuantity"
                         v-show="materialList.deliveryMethod == '3'">
                         <ws-input type="number" @mousewheel.native.prevent v-model="materialList.materialQuantity"
                           placeholder="请输入数量" maxlength="10" size="small" />
-                      </ws-form-item>
+                      </el-form-item>
+                      <el-form-item label="日期" span="1" prop="itemName">
+                        <el-date-picker value-format="yyyy-MM-dd" v-model="materialList.inOutWarehouseDate" type="date" placeholder="选择日期">
+                        </el-date-picker>
+                      </el-form-item>
+                      <el-form-item class="remarkWrap" label="备注" span="1" prop="itemName">
+                        <el-input @mousewheel.native.prevent v-model="materialList.remark" placeholder="请输入物料名称"
+                          maxlength="10" type="textarea" :disabled="recheck" />
+                          
+                      </el-form-item>
                     </ws-info-table>
                     <div class="but">
                       <el-button @click="submit" type="primary">提交</el-button>
@@ -898,6 +907,8 @@ export default {
                 this.$set(this.materialList, 'tare', '')
                 this.$set(this.materialList, 'netWeight', '')
                 this.$set(this.materialList, 'materialQuantity', '')
+                this.$set(this.materialList, 'inOutWarehouseDate', '')
+                this.$set(this.materialList, 'remark', '')
                 this.getList()
               })
           } else if ((this.inOutFlag == 1 && this.tpyeNo == 2) || (this.inOutFlag == 2 && this.tpyeNo == 1)) {//出库称毛+入库称皮
@@ -914,6 +925,8 @@ export default {
                 this.$set(this.materialList, 'tare', '')
                 this.$set(this.materialList, 'netWeight', '')
                 this.$set(this.materialList, 'materialQuantity', '')
+                this.$set(this.materialList, 'inOutWarehouseDate', '')
+                this.$set(this.materialList, 'remark', '')
                 lookMaterial({ id: this.materialList.id }).toPromise()
                   .then((response) => {
                     this.printData = response
@@ -1586,4 +1599,10 @@ export default {
     align-items: center;
   }
 }
+/deep/.ws-info-table .remarkWrap.el-form-item .el-form-item__content {
+  height:auto;
+}
+/deep/.ws-info-table .remarkWrap.el-form-item .el-form-item__content .el-textarea__inner{
+  width:100%;
+}
 </style>

+ 78 - 34
src/views/warehousenew/warehouseManagementList.vue

@@ -261,7 +261,7 @@
                 <el-option v-for="item in typeList" :key="item.id" :label="item.binNumber" :value="item.binNumber" />
               </el-select>
             </el-form-item>
-            <el-form-item v-if='compName=="辽宁佳屹农商贸有限公司"' label="货名" span="1" prop="warehouseName">
+            <el-form-item v-if='compName=="辽宁佳屹农商贸有限公司"&&headerText!="导出记录"' label="货名" span="1" prop="warehouseName">
               <el-select v-model="parameter.goodsName" placeholder="请选择货名" filterable clearable >
                 <el-option v-for="item in goodnameList" :key="item.constKey" :label="item.constValue"
               :value="item.constValue" />
@@ -331,7 +331,9 @@
     deletewarehouse,
     postInWeight,
     getwarehousNameNew,
-    getbintype
+    getbintype,
+    postExportjynin, 
+    postExportjynout
   } from '@/model/warehouse/index'
   import mapDrag from '@/components/mapdrag/warehouseMap'
   import {
@@ -454,6 +456,22 @@
           
         }
         
+      },
+      downloadFile(url, fileName){ 
+        //fileurl文件地址(一般是接口返回) filename文件下载后的名字
+        const x = new XMLHttpRequest()
+        x.open('GET', url, true)
+        x.responseType = 'blob'
+        x.onload = function() {
+          const url = window.URL.createObjectURL(x.response)
+          const a = document.createElement('a')
+          a.href = url
+          a.download = fileName
+          a.click()
+          document.body.removeChild(a);
+          // 然后移除
+        }
+        x.send()
       },
        //导出、打印EndDate
       outData(index) {
@@ -515,39 +533,65 @@
         this.isShowPrintType = false
         if (this.headerText == '导出记录') {
           if (this.parameter.radio == 3) {
-            const {
-              data
-            } = await postExport({
-              startDate: this.parameter.printStartDate,
-              endDate: this.parameter.printEndDate,
-              warehouseName: this.parameter.warehouseName,
-            }, {}, {
-              responseType: 'blob'
-            }).toPromise()
-            downloadFile({
-              res: data,
-              fileName: `${
-          this.date.year + (this.date.month ? `-${this.date.month}` : '')
-        }导出入库记录`,
-              type: 'xls',
-            })
+            if(this.compName=="辽宁佳屹农商贸有限公司"){
+               const data= await postExportjynin({
+                compId: localStorage.getItem('ws-pf_compId'),
+                startDate: this.parameter.printStartDate,
+                endDate: this.parameter.printEndDate,
+                warehouseName: this.parameter.warehouseName,
+              }).toPromise()
+              console.log(data)
+              // window.open(data.data.data)
+              this.downloadFile(data.data.data, `${
+            this.date.year + (this.date.month ? `-${this.date.month}` : '')
+          }导出出库记录`)
+            }else{
+              const {data} = await postExport({
+                startDate: this.parameter.printStartDate,
+                endDate: this.parameter.printEndDate,
+                warehouseName: this.parameter.warehouseName,
+              }, {}, {
+                responseType: 'blob'
+              }).toPromise()
+              downloadFile({
+                res: data,
+                fileName: `${
+            this.date.year + (this.date.month ? `-${this.date.month}` : '')
+          }导出入库记录`,
+                type: 'xls',
+              })
+            }
+            
           } else if (this.parameter.radio == 2) {
-            const {
-              data
-            } = await postExportOut({
-              startDate: this.parameter.printStartDate,
-              endDate: this.parameter.printEndDate,
-              warehouseName: this.parameter.warehouseName,
-            }, {}, {
-              responseType: 'blob'
-            }).toPromise()
-            downloadFile({
-              res: data,
-              fileName: `${
-          this.date.year + (this.date.month ? `-${this.date.month}` : '')
-        }导出出库记录`,
-              type: 'xls',
-            })
+            if(this.compName=="辽宁佳屹农商贸有限公司"){
+              
+              const data= await postExportjynout({
+                compId: localStorage.getItem('ws-pf_compId'),
+                startDate: this.parameter.printStartDate,
+                endDate: this.parameter.printEndDate,
+                warehouseName: this.parameter.warehouseName,
+              }).toPromise()
+              console.log(data)
+              this.downloadFile(data.data.data, `${
+            this.date.year + (this.date.month ? `-${this.date.month}` : '')
+          }导出出库记录`)
+            }else{
+              const {data} = await postExportOut({
+                startDate: this.parameter.printStartDate,
+                endDate: this.parameter.printEndDate,
+                warehouseName: this.parameter.warehouseName,
+              }, {}, {
+                responseType: 'blob'
+              }).toPromise()
+              downloadFile({
+                res: data,
+                fileName: `${
+            this.date.year + (this.date.month ? `-${this.date.month}` : '')
+          }导出出库记录`,
+                type: 'xls',
+              })
+            }
+            
           }
         } else if (this.headerText == '打印记录') {
           if(this.parameter.binNumber=='全部合营'){

+ 29 - 2
src/views/warehousenew/warehouseManagementRecord.vue

@@ -13,7 +13,10 @@
     <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>
+        <!-- <span style="color: #323233">{{ deptBudgetList.warehouseName }}</span> -->
+        <el-select @change="warehousechange" v-model="deptBudgetList.baseId" placeholder="请选择仓库名称" filterable clearable>
+            <el-option v-for="item in warehouseAllXiaLa" :key="item.warehouseName" :label="item.warehouseName" :value="item.id" />
+        </el-select>
         <div class="ware" v-show="warehouseType==1">
           <!-- {{binNumber}}仓位(容量{{capacity}}吨) -->
           <span class="binNo">仓位号:</span>
@@ -368,7 +371,8 @@
     getbinnumber,
     getExpense,
     getReceiptTaskNo,
-    salestraninfo
+    salestraninfo,
+    getwarehousNameNew
   } from '@/model/warehouse/index'
   import {
     downloadFile
@@ -474,6 +478,7 @@
         accessoryTFs: false,
         modification: [],
         printList: [], //批量打印数据
+        warehouseAllXiaLa:[]
       }
     },
 
@@ -485,6 +490,18 @@
       // this.binNumber = this.$route.query.binNumber
       this.capacity = this.$route.query.capacity
       this.warehouseType = this.$route.query.warehouseType
+      getwarehousNameNew({
+        compId: localStorage.getItem('ws-pf_compId')
+      })
+      .toPromise()
+      .then((response) => {
+        for(var tmp = 0 ; tmp < response.length ; tmp++){
+          if(response[tmp].warehouseType == '2'){
+            response[tmp].warehouseName = response[tmp].warehouseName + ' (临)'
+          }
+        }
+        this.warehouseAllXiaLa = response
+      })
       this.getList()
       // this.getPassYearFormatDate()
       this.showType = this.isShow
@@ -495,6 +512,14 @@
       })
     },
     methods: {
+      warehousechange(e){
+        for (let i = 0; i < this.warehouseAllXiaLa.length; i++) {
+          if(this.warehouseAllXiaLa[i].id==e){
+            this.deptBudgetList.warehouseName=this.warehouseAllXiaLa[i].warehouseName
+          }
+        }
+        this.getList()
+      },
       onSubmit(){
         if(!this.currectdata.taskNoNew){
           this.$message.error("合同/移库编号不能为空!")
@@ -758,6 +783,7 @@
 				// this.onChangeFlag = true
 			},
 			getList() {
+        
 					var startDate=''
 					var endDate=''
 					if(this.value2){
@@ -829,6 +855,7 @@
 							this.deptBudgetTotal = response.total
 							this.warehouseList = response
 						})
+            
 				}
         getReceiptTaskNo({
             flag: 1,

+ 31 - 3
src/views/warehousenew/warehousingOrder.vue

@@ -239,6 +239,17 @@
               <ws-upload ref="upload" :size-limit="size" @onChange="onChange" :comp-id="compId"
                 accept=".jpg, .jpeg, .png, .pdf, .doc, .docx, .zip, .rar" />
             </el-form-item>
+            <el-form-item label="付款凭证编号">
+              <el-input placeholder="输入付款凭证编号" v-model="form.paymentVoucherNumber"></el-input>
+            </el-form-item>
+            <el-form-item label="总账付款日期">
+              <el-date-picker
+                v-model="form.accountPaymentDate"
+                type="date"
+                value-format='yyyy-MM-dd'
+                placeholder="选择日期">
+              </el-date-picker>
+            </el-form-item>
           </el-form>
         </div>
 
@@ -709,8 +720,8 @@ export default {
         distributionEd: '',
         distributionCan: '',
         distributionNot: '',
-        distributionIng: ''
-
+        distributionIng: '',
+        accountPaymentDate:''
       },
       // 表格显示数据
       tableDate: [],
@@ -1931,6 +1942,7 @@ export default {
         .replace('T', ' ')
         .split('.')[0]//默认结束时间今天
       // console.log([start.split(' '), end])
+      this.form.accountPaymentDate=end.split(' ')[0]
       return [start.split(' ')[0], end.split(' ')[0]]
     },
     cancel(item) {
@@ -2069,7 +2081,8 @@ export default {
 
       }
       console.log(arr2)
-      paymoney({ flag: 0, warehousingOrderList: arr2 }).toPromise()
+      paymoney({ flag: 0,accountPaymentDate:this.form.accountPaymentDate,
+        paymentVoucherNumber:this.form.paymentVoucherNumber, warehousingOrderList: arr2 }).toPromise()
         .then((response) => {
           this.$message({
             message: '付款成功',
@@ -2077,6 +2090,21 @@ export default {
           });
           this.aduitshow = false
           this.paymentScreenshot = ''
+          this.form={
+            accumulatedPrepayment: '',
+            recoveryPrepayments: '',
+            distributionEd: '',
+            distributionCan: '',
+            distributionNot: '',
+            distributionIng: '',
+            accountPaymentDate:''
+          }
+          const end = new Date(new Date().getTime())
+        .toISOString()
+        .replace('T', ' ')
+        .split('.')[0]//默认结束时间今天
+      // console.log([start.split(' '), end])
+      this.form.accountPaymentDate=end.split(' ')[0]
           this.$refs.upload.clearFiles()
           this.getList()
         }).catch(() => {