gjy 3 年之前
父节点
当前提交
f27c25065c
共有 100 个文件被更改,包括 7458 次插入1214 次删除
  1. 3 2
      .env.production
  2. 1 1
      .env.staging
  3. 20 6
      .env.test
  4. 1 1
      .eslintrc.js
  5. 1 0
      .gitignore
  6. 1014 55
      package-lock.json
  7. 11 1
      package.json
  8. 123 0
      print.js
  9. 0 0
      public/cdn/element-ui/2.12.0/theme-chalk/index.css
  10. 0 0
      public/cdn/element-ui/2.13.2/theme-chalk/index.css
  11. 二进制
      public/img/1637204557176-s4AMbBA8.png
  12. 二进制
      public/img/1637204768818-70JRjz0H.png
  13. 二进制
      public/img/8b2c7255e9b19c71d68b33a08f20f74.png
  14. 二进制
      public/img/banklow.png
  15. 二进制
      public/img/bankup.png
  16. 二进制
      public/img/icons/acquisition1.png
  17. 二进制
      public/img/icons/acquisition2.png
  18. 二进制
      public/img/icons/acquisition3.png
  19. 二进制
      public/img/icons/acquisition4.png
  20. 二进制
      public/img/icons/acquisition5.png
  21. 二进制
      public/img/icons/acquisition6.png
  22. 二进制
      public/img/identitylow.png
  23. 二进制
      public/img/identityup.png
  24. 二进制
      public/img/mapicon.png
  25. 二进制
      public/img/quesheng@2x.png
  26. 二进制
      public/img/tmt.gif
  27. 二进制
      public/img/tmt.png
  28. 二进制
      public/img/zuobiao.gif
  29. 7 4
      public/index.html
  30. 371 3
      public/static/iconfont/demo_index.html
  31. 67 3
      public/static/iconfont/iconfont.css
  32. 0 0
      public/static/iconfont/iconfont.js
  33. 112 0
      public/static/iconfont/iconfont.json
  34. 二进制
      public/static/iconfont/iconfont.ttf
  35. 二进制
      public/static/iconfont/iconfont.woff
  36. 二进制
      public/static/iconfont/iconfont.woff2
  37. 391 0
      public/static/inspection.html
  38. 0 539
      public/static/logo/demo.css
  39. 0 207
      public/static/logo/demo_index.html
  40. 0 17
      public/static/logo/iconfont.css
  41. 0 0
      public/static/logo/iconfont.js
  42. 0 16
      public/static/logo/iconfont.json
  43. 二进制
      public/static/logo/iconfont.ttf
  44. 1241 0
      public/static/payprint.html
  45. 338 0
      public/static/print.html
  46. 335 0
      public/static/tradeServicesPrint.html
  47. 163 0
      public/static/warehouseBatchPrint.html
  48. 320 0
      public/static/warehousePrint.html
  49. 470 0
      public/static/weightCheck.html
  50. 232 0
      public/static/weightCheckInOut.html
  51. 245 0
      public/static/weightCheckOut.html
  52. 66 11
      src/App.vue
  53. 2 0
      src/api/V2/charts/index.js
  54. 22 0
      src/api/V2/contract/index.js
  55. 10 0
      src/api/V2/customer/index.js
  56. 18 0
      src/api/V2/customerFundManagement/index.js
  57. 14 0
      src/api/V2/financialManagement/index.js
  58. 99 0
      src/api/V2/houseSelfCollect/index.js
  59. 38 0
      src/api/V2/outboundManagement/index.js
  60. 39 0
      src/api/V2/platformaudit/index.js
  61. 35 0
      src/api/V2/purchasingManagement/index.js
  62. 28 0
      src/api/V2/salesManagement/index.js
  63. 105 0
      src/api/V2/statisticalReport/index.js
  64. 10 1
      src/api/V2/taskspost/index.js
  65. 42 0
      src/api/V2/tradeServicesManagement/index.js
  66. 14 2
      src/api/V2/transport/index.js
  67. 36 5
      src/api/V2/warehouse/index.js
  68. 7 1
      src/api/common/index.js
  69. 二进制
      src/assets/newTaks/baobiao.png
  70. 二进制
      src/assets/newTaks/caigou.png
  71. 二进制
      src/assets/newTaks/churuku.png
  72. 二进制
      src/assets/newTaks/xiaoshou.png
  73. 6 6
      src/business/common/index.js
  74. 10 0
      src/common.js
  75. 9 9
      src/components/RookieTraining/index.vue
  76. 2 2
      src/components/ShipDown/index.vue
  77. 1 2
      src/components/Tinymce/components/editorImage.vue
  78. 1 1
      src/components/Upload/showFile.vue
  79. 1 1
      src/components/Upload/upload.vue
  80. 1 1
      src/components/WinseaCom/upload.vue
  81. 3 3
      src/components/WsAutograph/index.vue
  82. 3 3
      src/components/WsAvatar/index.vue
  83. 10 10
      src/components/WsUpload/index.vue
  84. 292 0
      src/components/balanceAlert.vue
  85. 3 5
      src/components/base/BaseContainer/index.vue
  86. 1 1
      src/components/base/BaseDepartMentDropdown/index.vue
  87. 1 1
      src/components/base/BaseParameterSelect/index.vue
  88. 1 1
      src/components/base/BaseShipDropdown/index.vue
  89. 3 2
      src/components/editSelect/index.vue
  90. 33 0
      src/components/imgPreview/ImgPreview.vue
  91. 24 0
      src/components/imgPreview/index.js
  92. 282 0
      src/components/mapdrag/indexMap.vue
  93. 455 279
      src/components/mapdrag/mapdrag.vue
  94. 183 0
      src/components/mapdrag/warehouseReceiptMap.vue
  95. 1 1
      src/components/purHistory/index.vue
  96. 3 3
      src/components/shipDrop/index.vue
  97. 5 5
      src/components/typeDropdown/index.vue
  98. 1 1
      src/config/page.js
  99. 70 0
      src/global.js
  100. 2 2
      src/global/sys_prototypes_old.js

+ 3 - 2
.env.production

@@ -4,11 +4,12 @@
 
 
 NODE_ENV = 'production'
 NODE_ENV = 'production'
 # base api
 # base api
-VUE_APP_BASE_API = 'http://47.100.3.209/pb'
+VUE_APP_BASE_API = 'https://api2.eliangeyun.com'
+#VUE_APP_BASE_API = 'https://apitest.eliangeyun.com'
 
 
 # 微服务相关接口配置
 # 微服务相关接口配置
 ## 任务消息
 ## 任务消息
-VUE_APP_API_NOTICE= 'notice-se'
+VUE_APP_API_NOTICE= ''
 ## 新闻
 ## 新闻
 VUE_APP_API_NEWS= 'news-se'
 VUE_APP_API_NEWS= 'news-se'
 ## 证书
 ## 证书

+ 1 - 1
.env.staging

@@ -4,7 +4,7 @@ NODE_ENV = production
 VUE_APP_BASE_API = 'https://product-dev.winsea.com/pb'
 VUE_APP_BASE_API = 'https://product-dev.winsea.com/pb'
 
 
 # 微服务相关接口配置
 # 微服务相关接口配置
-VUE_APP_API_NOTICE= 'notice-se'
+VUE_APP_API_NOTICE= ''
 VUE_APP_API_NEWS= 'news-se'
 VUE_APP_API_NEWS= 'news-se'
 VUE_APP_API_CERTIFICATE= 'certificate-se'
 VUE_APP_API_CERTIFICATE= 'certificate-se'
 VUE_APP_API_CLOUDDISK= 'clouddisk-se'
 VUE_APP_API_CLOUDDISK= 'clouddisk-se'

+ 20 - 6
.env.test

@@ -1,20 +1,34 @@
-NODE_ENV = production
+#
+# 生产环境 环境变量
+#
 
 
+NODE_ENV = 'production'
 # base api
 # base api
-VUE_APP_BASE_API = 'https://product-dev.winsea.com/pb/'
-## 明宇测试环境
-#VUE_APP_BASE_API = 'http://standard-dev.winsea.com/pb'
+VUE_APP_BASE_API = 'https://apitest.eliangeyun.com'
 
 
 # 微服务相关接口配置
 # 微服务相关接口配置
-VUE_APP_API_NOTICE= 'notice-se'
+## 任务消息
+VUE_APP_API_NOTICE= ''
+## 新闻
 VUE_APP_API_NEWS= 'news-se'
 VUE_APP_API_NEWS= 'news-se'
+## 证书
 VUE_APP_API_CERTIFICATE= 'certificate-se'
 VUE_APP_API_CERTIFICATE= 'certificate-se'
+## 云盘
 VUE_APP_API_CLOUDDISK= 'clouddisk-se'
 VUE_APP_API_CLOUDDISK= 'clouddisk-se'
+## 运营后台
 VUE_APP_API_OPERATION= 'operation-se'
 VUE_APP_API_OPERATION= 'operation-se'
+## 维修保养
 VUE_APP_API_MAINTAIN= 'maintain-se'
 VUE_APP_API_MAINTAIN= 'maintain-se'
+## 备件/物料/采购
 VUE_APP_API_SUPPLY = 'purchase-se'
 VUE_APP_API_SUPPLY = 'purchase-se'
+## 服务商
 VUE_APP_API_SERVICER = 'servicer-se'
 VUE_APP_API_SERVICER = 'servicer-se'
+## 船员
 VUE_APP_API_CREW = 'crew-se'
 VUE_APP_API_CREW = 'crew-se'
+## 财务
+VUE_APP_API_FINANCE = 'finance-se'
+
+## NEW 产品
 VUE_APP_API_ISM= 'ism-se'
 VUE_APP_API_ISM= 'ism-se'
+
 VUE_APP_API_HELP = 'help-se'
 VUE_APP_API_HELP = 'help-se'
-VUE_APP_API_FINANCE = 'finance-se'

+ 1 - 1
.eslintrc.js

@@ -28,7 +28,7 @@ module.exports = {
     //空行最多不能超过100行
     //空行最多不能超过100行
     'no-multiple-empty-lines': [0, { max: 50 }],
     'no-multiple-empty-lines': [0, { max: 50 }],
     'no-alert': 0, //禁止使用alert confirm prompt
     'no-alert': 0, //禁止使用alert confirm prompt
-    'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
+    // 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
     'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
     'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
   },
   },
   parserOptions: {
   parserOptions: {

+ 1 - 0
.gitignore

@@ -163,3 +163,4 @@ deployment.yaml
 # Docker
 # Docker
 ######################
 ######################
 Dockerfile
 Dockerfile
+/vue.config.js

文件差异内容过多而无法显示
+ 1014 - 55
package-lock.json


+ 11 - 1
package.json

@@ -42,6 +42,7 @@
     "dist": "electron-builder"
     "dist": "electron-builder"
   },
   },
   "dependencies": {
   "dependencies": {
+    "@amap/amap-jsapi-loader": "^1.0.1",
     "@babel/polyfill": "^7.12.1",
     "@babel/polyfill": "^7.12.1",
     "@babel/preset-env": "^7.14.4",
     "@babel/preset-env": "^7.14.4",
     "axios": "^0.20.0",
     "axios": "^0.20.0",
@@ -52,17 +53,23 @@
     "echarts": "4.2.1",
     "echarts": "4.2.1",
     "element-china-area-data": "^5.0.2",
     "element-china-area-data": "^5.0.2",
     "element-ui": "^2.13.2",
     "element-ui": "^2.13.2",
+    "file-saver": "^2.0.5",
     "form-making-advanced": "^1.2.6",
     "form-making-advanced": "^1.2.6",
+    "html2canvas": "^1.3.2",
+    "js-base64": "^3.7.2",
     "js-cookie": "2.2.0",
     "js-cookie": "2.2.0",
+    "jszip": "^3.7.1",
     "lodash": "^4.17.20",
     "lodash": "^4.17.20",
     "node-gyp": "^5.0.6",
     "node-gyp": "^5.0.6",
     "nprogress": "0.2.0",
     "nprogress": "0.2.0",
     "path-to-regexp": "2.4.0",
     "path-to-regexp": "2.4.0",
     "pinyin": "^2.9.1",
     "pinyin": "^2.9.1",
+    "qrcodejs2": "^0.0.2",
     "querystring": "^0.2.0",
     "querystring": "^0.2.0",
     "register-service-worker": "^1.0.0",
     "register-service-worker": "^1.0.0",
     "sass-loader": "^7.1.0",
     "sass-loader": "^7.1.0",
     "script-loader": "^0.7.2",
     "script-loader": "^0.7.2",
+    "serialport": "^9.2.1",
     "sortablejs": "^1.8.4",
     "sortablejs": "^1.8.4",
     "tinymce": "4.9.2",
     "tinymce": "4.9.2",
     "url-loader": "^4.1.0",
     "url-loader": "^4.1.0",
@@ -70,13 +77,15 @@
     "vue-amap": "^0.5.10",
     "vue-amap": "^0.5.10",
     "vue-i18n": "7.3.2",
     "vue-i18n": "7.3.2",
     "vue-pdf": "^4.2.0",
     "vue-pdf": "^4.2.0",
+    "vue-print-nb": "^1.7.5",
     "vue-router": "3.0.2",
     "vue-router": "3.0.2",
     "vue-seamless-scroll": "^1.1.17",
     "vue-seamless-scroll": "^1.1.17",
     "vuedraggable": "2.20.0",
     "vuedraggable": "2.20.0",
     "vuex": "3.1.0",
     "vuex": "3.1.0",
     "winsea-component-library": "http://maven.zthymaoyi.com/nexus/repository/npm-hosted/winsea-component-library/-/winsea-component-library-1.0.1.tgz",
     "winsea-component-library": "http://maven.zthymaoyi.com/nexus/repository/npm-hosted/winsea-component-library/-/winsea-component-library-1.0.1.tgz",
     "winseaview": "^2.5.11",
     "winseaview": "^2.5.11",
-    "xe-utils": "^2.3.0"
+    "xe-utils": "^2.3.0",
+    "xlsx": "^0.17.4"
   },
   },
   "devDependencies": {
   "devDependencies": {
     "@babel/core": "^7.0.0",
     "@babel/core": "^7.0.0",
@@ -98,6 +107,7 @@
     "cz-conventional-changelog": "^2.1.0",
     "cz-conventional-changelog": "^2.1.0",
     "electron": "^12.0.5",
     "electron": "^12.0.5",
     "electron-builder": "^22.10.5",
     "electron-builder": "^22.10.5",
+    "electron-rebuild": "^3.2.3",
     "jquery": "^3.6.0",
     "jquery": "^3.6.0",
     "lint-staged": "^10.2.13",
     "lint-staged": "^10.2.13",
     "mockjs": "^1.0.1-beta3",
     "mockjs": "^1.0.1-beta3",

+ 123 - 0
print.js

@@ -0,0 +1,123 @@
+// 打印类属性、方法定义
+/* eslint-disable */
+const Print =function(dom, options) {
+    if (!(this instanceof Print)) return new Print(dom, options);
+  
+    this.options = this.extend({
+      'noPrint': '.no-print'
+    }, options);
+  
+    if ((typeof dom) === "string") {
+      this.dom = document.querySelector(dom);
+    } else {
+      this.dom = dom;
+    }
+  
+    this.init();
+  };
+  Print.prototype = {
+    init: function () {
+      var content = this.getStyle() + this.getHtml();
+      this.writeIframe(content);
+    },
+    extend: function (obj, obj2) {
+      for (var k in obj2) {
+        obj[k] = obj2[k];
+      }
+      return obj;
+    },
+  
+    getStyle: function () {
+      var str = "",
+        styles = document.querySelectorAll('style,link');
+      for (var i = 0; i < styles.length; i++) {
+        str += styles[i].outerHTML;
+      }
+      str += "<style>" + (this.options.noPrint ? this.options.noPrint : '.no-print') + "{display:none;}</style>";
+  
+      return str;
+    },
+  
+    getHtml: function () {
+      var inputs = document.querySelectorAll('input');
+      var textareas = document.querySelectorAll('textarea');
+      var selects = document.querySelectorAll('select');
+  
+      for (var k in inputs) {
+        if (inputs[k].type == "checkbox" || inputs[k].type == "radio") {
+          if (inputs[k].checked == true) {
+            inputs[k].setAttribute('checked', "checked")
+          } else {
+            inputs[k].removeAttribute('checked')
+          }
+        } else if (inputs[k].type == "text") {
+          inputs[k].setAttribute('value', inputs[k].value)
+        }
+      }
+  
+      for (var k2 in textareas) {
+        if (textareas[k2].type == 'textarea') {
+          textareas[k2].innerHTML = textareas[k2].value
+        }
+      }
+  
+      for (var k3 in selects) {
+        if (selects[k3].type == 'select-one') {
+          var child = selects[k3].children;
+          for (var i in child) {
+            if (child[i].tagName == 'OPTION') {
+              if (child[i].selected == true) {
+                child[i].setAttribute('selected', "selected")
+              } else {
+                child[i].removeAttribute('selected')
+              }
+            }
+          }
+        }
+      }
+  
+      return this.dom.outerHTML;
+    },
+  
+    writeIframe: function (content) {
+      var w, doc, iframe = document.createElement('iframe'),
+        f = document.body.appendChild(iframe);
+      iframe.id = "myIframe";
+      iframe.style = "position:absolute;width:0;height:0;top:-10px;left:-10px;";
+  
+      w = f.contentWindow || f.contentDocument;
+      doc = f.contentDocument || f.contentWindow.document;
+      doc.open();
+      doc.write(content);
+      doc.close();
+      this.toPrint(w);
+  
+      setTimeout(function () {
+        document.body.removeChild(iframe)
+      }, 100)
+    },
+  
+    toPrint: function (frameWindow) {
+      try {
+        setTimeout(function () {
+          frameWindow.focus();
+          try {
+            if (!frameWindow.document.execCommand('print', false, null)) {
+              frameWindow.print();
+            }
+          } catch (e) {
+            frameWindow.print();
+          }
+          frameWindow.close();
+        }, 10);
+      } catch (err) {
+        console.log('err', err);
+      }
+    }
+  };
+  const MyPlugin = {}
+  MyPlugin.install = function (Vue, options) {
+    // 4. 添加实例方法
+    Vue.prototype.$print = Print
+  }
+  export default MyPlugin

文件差异内容过多而无法显示
+ 0 - 0
public/cdn/element-ui/2.12.0/theme-chalk/index.css


文件差异内容过多而无法显示
+ 0 - 0
public/cdn/element-ui/2.13.2/theme-chalk/index.css


二进制
public/img/1637204557176-s4AMbBA8.png


二进制
public/img/1637204768818-70JRjz0H.png


二进制
public/img/8b2c7255e9b19c71d68b33a08f20f74.png


二进制
public/img/banklow.png


二进制
public/img/bankup.png


二进制
public/img/icons/acquisition1.png


二进制
public/img/icons/acquisition2.png


二进制
public/img/icons/acquisition3.png


二进制
public/img/icons/acquisition4.png


二进制
public/img/icons/acquisition5.png


二进制
public/img/icons/acquisition6.png


二进制
public/img/identitylow.png


二进制
public/img/identityup.png


二进制
public/img/mapicon.png


二进制
public/img/quesheng@2x.png


二进制
public/img/tmt.gif


二进制
public/img/tmt.png


二进制
public/img/zuobiao.gif


+ 7 - 4
public/index.html

@@ -11,20 +11,23 @@
   <link rel="icon" href="<%= BASE_URL %>/logo.ico">
   <link rel="icon" href="<%= BASE_URL %>/logo.ico">
   <!-- 强制Chromium内核,作用于其他双核浏览器 -->
   <!-- 强制Chromium内核,作用于其他双核浏览器 -->
   <meta name="force-rendering" content="webkit" />
   <meta name="force-rendering" content="webkit" />
-
+  <% if (process.env.NODE_ENV === 'production') { %>
+    <!-- 自动将HTTP请求升级成安全的HTTPS请求 -->
+  <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
+  <% } %>
   <!-- 如果有安装 Google Chrome Frame 插件则强制为Chromium内核,否则强制本机支持的最高版本IE内核,作用于IE浏览器 -->
   <!-- 如果有安装 Google Chrome Frame 插件则强制为Chromium内核,否则强制本机支持的最高版本IE内核,作用于IE浏览器 -->
   <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1" />
   <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1" />
   <link rel="manifest" href="<%= BASE_URL %>/manifest.json" />
   <link rel="manifest" href="<%= BASE_URL %>/manifest.json" />
-  <link rel="icon" href="<%= BASE_URL %>/logo.ico">
+  <!-- <link rel="icon" href="<%= BASE_URL %>/logo.ico"> -->
   <% for (var i in htmlWebpackPlugin.options.cdn && htmlWebpackPlugin.options.cdn.css[process.env.VUE_APP_PACKAGE_ENV]) { %>
   <% for (var i in htmlWebpackPlugin.options.cdn && htmlWebpackPlugin.options.cdn.css[process.env.VUE_APP_PACKAGE_ENV]) { %>
       <link href="<%= htmlWebpackPlugin.options.cdn.css[process.env.VUE_APP_PACKAGE_ENV][i] %>" rel="stylesheet">
       <link href="<%= htmlWebpackPlugin.options.cdn.css[process.env.VUE_APP_PACKAGE_ENV][i] %>" rel="stylesheet">
   <% } %>
   <% } %>
   <title>易粮易运</title>
   <title>易粮易运</title>
   <link rel="icon" href="<%= BASE_URL %>/logo.ico">
   <link rel="icon" href="<%= BASE_URL %>/logo.ico">
   <% if (process.env.NODE_ENV === 'production') { %>
   <% if (process.env.NODE_ENV === 'production') { %>
-    <script>
+    <!-- <script>
     !(function(c,i,e,b){var h = i.createElement("script");var f = i.getElementsByTagName("script")[0];h.type = "text/javascript";h.crossorigin = true;h.onload = function(){try {c[b]||(c[b] = new c.wpkReporter({bid: 'qj3rmxes-10jz7agi',spa: true,  plugins: []}));c[b].installAll();} catch (e) {console.error('init wpkReporter fail', e);}};f.parentNode.insertBefore(h, f);h.src = e})(window, document, "https://g.alicdn.com/woodpeckerx/jssdk??wpkReporter.js", "__wpk");
     !(function(c,i,e,b){var h = i.createElement("script");var f = i.getElementsByTagName("script")[0];h.type = "text/javascript";h.crossorigin = true;h.onload = function(){try {c[b]||(c[b] = new c.wpkReporter({bid: 'qj3rmxes-10jz7agi',spa: true,  plugins: []}));c[b].installAll();} catch (e) {console.error('init wpkReporter fail', e);}};f.parentNode.insertBefore(h, f);h.src = e})(window, document, "https://g.alicdn.com/woodpeckerx/jssdk??wpkReporter.js", "__wpk");
-    </script>
+    </script> -->
   <% } %>
   <% } %>
    <style>
    <style>
       html,
       html,

+ 371 - 3
public/static/iconfont/demo_index.html

@@ -54,6 +54,102 @@
       <div class="content unicode" style="display: block;">
       <div class="content unicode" style="display: block;">
           <ul class="icon_lists dib-box">
           <ul class="icon_lists dib-box">
           
           
+            <li class="dib">
+              <span class="icon iconfont">&#xe615;</span>
+                <div class="name">kehuzijin</div>
+                <div class="code-name">&amp;#xe615;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe614;</span>
+                <div class="name">shougou</div>
+                <div class="code-name">&amp;#xe614;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe613;</span>
+                <div class="name">chukuguanli备份</div>
+                <div class="code-name">&amp;#xe613;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe612;</span>
+                <div class="name">gongzuotongzi</div>
+                <div class="code-name">&amp;#xe612;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe610;</span>
+                <div class="name">kehuguanli</div>
+                <div class="code-name">&amp;#xe610;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe60f;</span>
+                <div class="name">caiwuguanli</div>
+                <div class="code-name">&amp;#xe60f;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe60e;</span>
+                <div class="name">shenhe</div>
+                <div class="code-name">&amp;#xe60e;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe60d;</span>
+                <div class="name">caigouguanli</div>
+                <div class="code-name">&amp;#xe60d;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe60c;</span>
+                <div class="name">xiaoshou2</div>
+                <div class="code-name">&amp;#xe60c;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe60b;</span>
+                <div class="name">tongjibaobiao</div>
+                <div class="code-name">&amp;#xe60b;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe641;</span>
+                <div class="name">对</div>
+                <div class="code-name">&amp;#xe641;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe60a;</span>
+                <div class="name">易粮易运</div>
+                <div class="code-name">&amp;#xe60a;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe605;</span>
+                <div class="name">历史</div>
+                <div class="code-name">&amp;#xe605;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe6c9;</span>
+                <div class="name">关  闭</div>
+                <div class="code-name">&amp;#xe6c9;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe63a;</span>
+                <div class="name">眼睛-睁眼</div>
+                <div class="code-name">&amp;#xe63a;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe63b;</span>
+                <div class="name">眼睛-闭眼</div>
+                <div class="code-name">&amp;#xe63b;</div>
+              </li>
+          
             <li class="dib">
             <li class="dib">
               <span class="icon iconfont">&#xe609;</span>
               <span class="icon iconfont">&#xe609;</span>
                 <div class="name">yunshuguanli</div>
                 <div class="name">yunshuguanli</div>
@@ -114,9 +210,9 @@
 <pre><code class="language-css"
 <pre><code class="language-css"
 >@font-face {
 >@font-face {
   font-family: 'iconfont';
   font-family: 'iconfont';
-  src: url('iconfont.woff2?t=1625617801377') format('woff2'),
-       url('iconfont.woff?t=1625617801377') format('woff'),
-       url('iconfont.ttf?t=1625617801377') format('truetype');
+  src: url('iconfont.woff2?t=1635728227466') format('woff2'),
+       url('iconfont.woff?t=1635728227466') format('woff'),
+       url('iconfont.ttf?t=1635728227466') format('truetype');
 }
 }
 </code></pre>
 </code></pre>
           <h3 id="-iconfont-">第二步:定义使用 iconfont 的样式</h3>
           <h3 id="-iconfont-">第二步:定义使用 iconfont 的样式</h3>
@@ -142,6 +238,150 @@
       <div class="content font-class">
       <div class="content font-class">
         <ul class="icon_lists dib-box">
         <ul class="icon_lists dib-box">
           
           
+          <li class="dib">
+            <span class="icon iconfont icon-kehuzijin"></span>
+            <div class="name">
+              kehuzijin
+            </div>
+            <div class="code-name">.icon-kehuzijin
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-a-4-shougoubeifen"></span>
+            <div class="name">
+              shougou
+            </div>
+            <div class="code-name">.icon-a-4-shougoubeifen
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-chukuguanlibeifen"></span>
+            <div class="name">
+              chukuguanli备份
+            </div>
+            <div class="code-name">.icon-chukuguanlibeifen
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-a-tongzhibeifen2"></span>
+            <div class="name">
+              gongzuotongzi
+            </div>
+            <div class="code-name">.icon-a-tongzhibeifen2
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-kehuguanli"></span>
+            <div class="name">
+              kehuguanli
+            </div>
+            <div class="code-name">.icon-kehuguanli
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-caiwuguanli"></span>
+            <div class="name">
+              caiwuguanli
+            </div>
+            <div class="code-name">.icon-caiwuguanli
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-shenhe"></span>
+            <div class="name">
+              shenhe
+            </div>
+            <div class="code-name">.icon-shenhe
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-caigouguanli"></span>
+            <div class="name">
+              caigouguanli
+            </div>
+            <div class="code-name">.icon-caigouguanli
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-xiaoshou2"></span>
+            <div class="name">
+              xiaoshou2
+            </div>
+            <div class="code-name">.icon-xiaoshou2
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-tongjibaobiao"></span>
+            <div class="name">
+              tongjibaobiao
+            </div>
+            <div class="code-name">.icon-tongjibaobiao
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-dui"></span>
+            <div class="name">
+              对
+            </div>
+            <div class="code-name">.icon-dui
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-yiliangyiyun"></span>
+            <div class="name">
+              易粮易运
+            </div>
+            <div class="code-name">.icon-yiliangyiyun
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-lishi"></span>
+            <div class="name">
+              历史
+            </div>
+            <div class="code-name">.icon-lishi
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-guanbi"></span>
+            <div class="name">
+              关  闭
+            </div>
+            <div class="code-name">.icon-guanbi
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-yanjing-zhengyan"></span>
+            <div class="name">
+              眼睛-睁眼
+            </div>
+            <div class="code-name">.icon-yanjing-zhengyan
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-yanjing-biyan"></span>
+            <div class="name">
+              眼睛-闭眼
+            </div>
+            <div class="code-name">.icon-yanjing-biyan
+            </div>
+          </li>
+          
           <li class="dib">
           <li class="dib">
             <span class="icon iconfont icon-yunshu2"></span>
             <span class="icon iconfont icon-yunshu2"></span>
             <div class="name">
             <div class="name">
@@ -232,6 +472,134 @@
       <div class="content symbol">
       <div class="content symbol">
           <ul class="icon_lists dib-box">
           <ul class="icon_lists dib-box">
           
           
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-kehuzijin"></use>
+                </svg>
+                <div class="name">kehuzijin</div>
+                <div class="code-name">#icon-kehuzijin</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-a-4-shougoubeifen"></use>
+                </svg>
+                <div class="name">shougou</div>
+                <div class="code-name">#icon-a-4-shougoubeifen</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-chukuguanlibeifen"></use>
+                </svg>
+                <div class="name">chukuguanli备份</div>
+                <div class="code-name">#icon-chukuguanlibeifen</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-a-tongzhibeifen2"></use>
+                </svg>
+                <div class="name">gongzuotongzi</div>
+                <div class="code-name">#icon-a-tongzhibeifen2</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-kehuguanli"></use>
+                </svg>
+                <div class="name">kehuguanli</div>
+                <div class="code-name">#icon-kehuguanli</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-caiwuguanli"></use>
+                </svg>
+                <div class="name">caiwuguanli</div>
+                <div class="code-name">#icon-caiwuguanli</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-shenhe"></use>
+                </svg>
+                <div class="name">shenhe</div>
+                <div class="code-name">#icon-shenhe</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-caigouguanli"></use>
+                </svg>
+                <div class="name">caigouguanli</div>
+                <div class="code-name">#icon-caigouguanli</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-xiaoshou2"></use>
+                </svg>
+                <div class="name">xiaoshou2</div>
+                <div class="code-name">#icon-xiaoshou2</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-tongjibaobiao"></use>
+                </svg>
+                <div class="name">tongjibaobiao</div>
+                <div class="code-name">#icon-tongjibaobiao</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-dui"></use>
+                </svg>
+                <div class="name">对</div>
+                <div class="code-name">#icon-dui</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-yiliangyiyun"></use>
+                </svg>
+                <div class="name">易粮易运</div>
+                <div class="code-name">#icon-yiliangyiyun</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-lishi"></use>
+                </svg>
+                <div class="name">历史</div>
+                <div class="code-name">#icon-lishi</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-guanbi"></use>
+                </svg>
+                <div class="name">关  闭</div>
+                <div class="code-name">#icon-guanbi</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-yanjing-zhengyan"></use>
+                </svg>
+                <div class="name">眼睛-睁眼</div>
+                <div class="code-name">#icon-yanjing-zhengyan</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-yanjing-biyan"></use>
+                </svg>
+                <div class="name">眼睛-闭眼</div>
+                <div class="code-name">#icon-yanjing-biyan</div>
+            </li>
+          
             <li class="dib">
             <li class="dib">
                 <svg class="icon svg-icon" aria-hidden="true">
                 <svg class="icon svg-icon" aria-hidden="true">
                   <use xlink:href="#icon-yunshu2"></use>
                   <use xlink:href="#icon-yunshu2"></use>

+ 67 - 3
public/static/iconfont/iconfont.css

@@ -1,8 +1,8 @@
 @font-face {
 @font-face {
   font-family: "iconfont"; /* Project id 2554236 */
   font-family: "iconfont"; /* Project id 2554236 */
-  src: url('iconfont.woff2?t=1625617801377') format('woff2'),
-       url('iconfont.woff?t=1625617801377') format('woff'),
-       url('iconfont.ttf?t=1625617801377') format('truetype');
+  src: url('iconfont.woff2?t=1635728227466') format('woff2'),
+       url('iconfont.woff?t=1635728227466') format('woff'),
+       url('iconfont.ttf?t=1635728227466') format('truetype');
 }
 }
 
 
 .iconfont {
 .iconfont {
@@ -13,6 +13,70 @@
   -moz-osx-font-smoothing: grayscale;
   -moz-osx-font-smoothing: grayscale;
 }
 }
 
 
+.icon-kehuzijin:before {
+  content: "\e615";
+}
+
+.icon-a-4-shougoubeifen:before {
+  content: "\e614";
+}
+
+.icon-chukuguanlibeifen:before {
+  content: "\e613";
+}
+
+.icon-a-tongzhibeifen2:before {
+  content: "\e612";
+}
+
+.icon-kehuguanli:before {
+  content: "\e610";
+}
+
+.icon-caiwuguanli:before {
+  content: "\e60f";
+}
+
+.icon-shenhe:before {
+  content: "\e60e";
+}
+
+.icon-caigouguanli:before {
+  content: "\e60d";
+}
+
+.icon-xiaoshou2:before {
+  content: "\e60c";
+}
+
+.icon-tongjibaobiao:before {
+  content: "\e60b";
+}
+
+.icon-dui:before {
+  content: "\e641";
+}
+
+.icon-yiliangyiyun:before {
+  content: "\e60a";
+}
+
+.icon-lishi:before {
+  content: "\e605";
+}
+
+.icon-guanbi:before {
+  content: "\e6c9";
+}
+
+.icon-yanjing-zhengyan:before {
+  content: "\e63a";
+}
+
+.icon-yanjing-biyan:before {
+  content: "\e63b";
+}
+
 .icon-yunshu2:before {
 .icon-yunshu2:before {
   content: "\e609";
   content: "\e609";
 }
 }

文件差异内容过多而无法显示
+ 0 - 0
public/static/iconfont/iconfont.js


+ 112 - 0
public/static/iconfont/iconfont.json

@@ -5,6 +5,118 @@
   "css_prefix_text": "icon-",
   "css_prefix_text": "icon-",
   "description": "",
   "description": "",
   "glyphs": [
   "glyphs": [
+    {
+      "icon_id": "25314150",
+      "name": "kehuzijin",
+      "font_class": "kehuzijin",
+      "unicode": "e615",
+      "unicode_decimal": 58901
+    },
+    {
+      "icon_id": "25314041",
+      "name": "shougou",
+      "font_class": "a-4-shougoubeifen",
+      "unicode": "e614",
+      "unicode_decimal": 58900
+    },
+    {
+      "icon_id": "25314040",
+      "name": "chukuguanli备份",
+      "font_class": "chukuguanlibeifen",
+      "unicode": "e613",
+      "unicode_decimal": 58899
+    },
+    {
+      "icon_id": "23871028",
+      "name": "gongzuotongzi",
+      "font_class": "a-tongzhibeifen2",
+      "unicode": "e612",
+      "unicode_decimal": 58898
+    },
+    {
+      "icon_id": "23506223",
+      "name": "kehuguanli",
+      "font_class": "kehuguanli",
+      "unicode": "e610",
+      "unicode_decimal": 58896
+    },
+    {
+      "icon_id": "23506216",
+      "name": "caiwuguanli",
+      "font_class": "caiwuguanli",
+      "unicode": "e60f",
+      "unicode_decimal": 58895
+    },
+    {
+      "icon_id": "23506010",
+      "name": "shenhe",
+      "font_class": "shenhe",
+      "unicode": "e60e",
+      "unicode_decimal": 58894
+    },
+    {
+      "icon_id": "23506008",
+      "name": "caigouguanli",
+      "font_class": "caigouguanli",
+      "unicode": "e60d",
+      "unicode_decimal": 58893
+    },
+    {
+      "icon_id": "23506003",
+      "name": "xiaoshou2",
+      "font_class": "xiaoshou2",
+      "unicode": "e60c",
+      "unicode_decimal": 58892
+    },
+    {
+      "icon_id": "23505876",
+      "name": "tongjibaobiao",
+      "font_class": "tongjibaobiao",
+      "unicode": "e60b",
+      "unicode_decimal": 58891
+    },
+    {
+      "icon_id": "2367514",
+      "name": "对",
+      "font_class": "dui",
+      "unicode": "e641",
+      "unicode_decimal": 58945
+    },
+    {
+      "icon_id": "23328186",
+      "name": "易粮易运",
+      "font_class": "yiliangyiyun",
+      "unicode": "e60a",
+      "unicode_decimal": 58890
+    },
+    {
+      "icon_id": "22771488",
+      "name": "历史",
+      "font_class": "lishi",
+      "unicode": "e605",
+      "unicode_decimal": 58885
+    },
+    {
+      "icon_id": "17984171",
+      "name": "关  闭",
+      "font_class": "guanbi",
+      "unicode": "e6c9",
+      "unicode_decimal": 59081
+    },
+    {
+      "icon_id": "10715457",
+      "name": "眼睛-睁眼",
+      "font_class": "yanjing-zhengyan",
+      "unicode": "e63a",
+      "unicode_decimal": 58938
+    },
+    {
+      "icon_id": "10715460",
+      "name": "眼睛-闭眼",
+      "font_class": "yanjing-biyan",
+      "unicode": "e63b",
+      "unicode_decimal": 58939
+    },
     {
     {
       "icon_id": "22711544",
       "icon_id": "22711544",
       "name": "yunshuguanli",
       "name": "yunshuguanli",

二进制
public/static/iconfont/iconfont.ttf


二进制
public/static/iconfont/iconfont.woff


二进制
public/static/iconfont/iconfont.woff2


+ 391 - 0
public/static/inspection.html

@@ -0,0 +1,391 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="utf-8">
+    <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
+    <title></title>
+
+    <style>
+      table,
+      table tr th,
+      table tr td {
+        border: 2px solid #333333;
+        padding: 5px 0;
+      }
+
+      #app {
+        /* height: 98vh;
+        position: relative; */
+      }
+
+      .content {
+        width: 1000px;
+        padding: 30px 20px 20px 20px;
+        font-size: 18px;
+        position: absolute;
+        top: 0;
+        bottom: 0;
+        left: 0;
+        right: 0;
+      }
+
+      table {
+        width: 100%;
+        text-align: center;
+        border-collapse: collapse;
+        border: 3px solid #333333;
+      }
+
+      .col-bgc {
+        background: #f6f7fb;
+      }
+
+      .bottom-row1 {
+        display: flex;
+        justify-content: space-between;
+        margin: 20px 0;
+      }
+
+      .bottom-row2 {
+        display: flex;
+        margin: 10px 0;
+
+      }
+      img,.left {
+        width: 110px;
+        height: 110px;
+        /* margin-right: 118px; */
+        position: absolute;
+          right: 20px;
+          top: 12px;
+      }
+
+      .config {
+        margin-right: 240px;
+      }
+
+      .bottom-row3 {
+        margin: 10px 0;
+      }
+
+      .title {
+        text-align: center;
+    font-size: 36px;
+    font-weight: 500;
+      }
+
+      .number {
+        text-align: right;
+        /* margin-bottom: 10px; */
+        margin: 10px 0;
+      }
+
+      .small-row {
+        display: flex;
+      }
+
+      .small-content {
+        width: 300px;
+     /*   margin: 0 auto;
+        border: 1px solid #ccc;
+        padding: 20px 20px 160px 20px;
+        position: absolute;
+        top: 0;
+        bottom: 0;
+        left: 0;
+        right: 0;
+        margin: auto;
+        height: 650px; */
+      }
+
+      .small-title {
+        text-align: center;
+        font-size: 18px;
+        display: flex;
+        flex-direction: column;
+        justify-content: space-between;
+        align-items: center;
+      }
+      .numberNo{
+        font-size: 36px;
+      }
+
+      .small-row {
+        display: flex;
+        justify-content: space-between;
+        margin: 10px;
+      }
+
+      .small-img {
+        margin-right: 0;
+      }
+      .sign{
+        margin-right: 100px;
+      }
+      .small-code{
+        position: relative;
+        left:calc(50% - 55px)
+      }
+    </style>
+  </head>
+  <body>
+    <div id="app">
+      <div class="content" v-if="bigContent">
+        <div>
+
+        <div class="title">{{tableData.compName}}</div>
+        <div class="title">粮食质检单</div>
+        <div class="left">
+          <img :src="tableData.codeUrl " alt="">
+        </div>
+        </div>
+
+        <div class="number">{{tableData.qualityNo}}</div>
+        <table class="table">
+          <tr class="row">
+            <td class="col col-bgc">客户姓名</td>
+            <td class="col" colspan="2">{{tableData.customerName}}</td>
+            <td class="col col-bgc">客户电话</td>
+            <td class="col" colspan="2">{{tableData.customerPhone}}</td>
+            <td class="col col-bgc">车牌号</td>
+            <td class="col">{{tableData.carNumber}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc">收货单位</td>
+            <td class="col" colspan="2">{{tableData.compName}}</td>
+            <td class="col col-bgc">联系人</td>
+            <td class="col" colspan="2">{{tableData.person}}</td>
+            <td class="col col-bgc">联系电话</td>
+            <td class="col">{{tableData.personPhone}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc">货名</td>
+            <td class="col">{{tableData.goodsName}}</td>
+            <td class="col col-bgc">类型</td>
+            <td class="col">{{tableData.type}}</td>
+            <td class="col col-bgc">容量(克/升)</td>
+            <td class="col">{{tableData.bulkDensity}}</td>
+            <td class="col col-bgc">不完善粒(%)</td>
+            <td class="col">{{tableData.imperfectGrain}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc">等级</td>
+            <td class="col">{{tableData.grade}}</td>
+            <td class="col col-bgc">水分(%)</td>
+            <td class="col">{{tableData.waterContent}}</td>
+            <td class="col col-bgc">热损伤(%)</td>
+            <td class="col">{{tableData.jiaorenli}}</td>
+            <td v-if="tableData.confirm == '1'" class="col col-bgc">单价(元/公斤)</td>
+            <td v-else class="col col-bgc">待定单价(元/公斤)</td>
+            <td class="col " v-if="tableData.type == '潮粮'">
+              {{tableData.tidalGrainPrice}}
+            </td>
+            <td class="col " v-if="tableData.type == '干粮'">
+              {{tableData.dryGrainPrice}}
+            </td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc">杂质(%)</td>
+            <td class="col">{{tableData.impurity}}</td>
+            <td class="col col-bgc">霉变粒(%)</td>
+            <td class="col">{{tableData.mildewGrain}}</td>
+            <td v-if="tableData.paramType == '1'"  class="col col-bgc">扣杂</td>
+            <td v-if="tableData.paramType == '1'"  class="col">{{tableData.buckleMiscellaneous}}</td>
+            <td v-if="tableData.paramType == '1'" class="col col-bgc" colspan="1">购粮性质</td>
+            <td v-else class="col col-bgc" colspan="2">购粮性质</td>
+            <td v-if="tableData.paramType == '1'" class="col" colspan="1">{{ tableData.natureOfGrainPurchase }}</td>
+            <td v-else class="col" colspan="2">{{ tableData.natureOfGrainPurchase }}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc">仓位号</td>
+            <td class="col">{{ tableData.binNumber }}</td>
+            <td class="col col-bgc">囤位号</td>
+            <td class="col">{{ tableData.storageTagNo }}</td>
+            <td class="col col-bgc" colspan="2">质检员</td>
+            <td class="col" colspan="2">{{ tableData.qualityInspector }}</td>
+          </tr>
+        </table>
+        <div class="bottom">
+          <div class="bottom-row1">
+            <div></div>
+            <div>{{tableData.qualityDate}}</div>
+          </div>
+          <div class="bottom-row2">
+            <!-- <div class="left">
+              <img :src="tableData.codeUrl " alt="">
+            </div> -->
+            <div class="config">收货单位签名或盖章</div>
+            <div class="">客户签名</div>
+          </div>
+          <!-- <div class="bottom-row3">扫一扫</div> -->
+        </div>
+      </div>
+      <div class="small-content" v-if="smallContent">
+        <div class="small-title">
+          <div class="numberNo">{{tableData.qualityNo.substring(tableData.qualityNo.length - 3)}}</div>
+          <div>粮食质检单</div>
+        </div>
+         <img :src="tableData.codeUrl " alt="" class="small-code">
+        <div class="small-row">
+          <div>编号:</div>
+          <div>{{tableData.qualityNo}}</div>
+        </div>
+        <div class="small-row">
+          <div>客户姓名:</div>
+          <div>{{tableData.customerName}}</div>
+        </div>
+        <div class="small-row">
+          <div>客户电话:</div>
+          <div>{{tableData.customerPhone}}</div>
+        </div>
+        <div class="small-row">
+          <div>车牌号:</div>
+          <div>{{tableData.carNumber}}</div>
+        </div>
+        <div class="small-row">
+          <div>收货单位:</div>
+          <div>{{tableData.compName}}</div>
+        </div>
+        <div class="small-row">
+          <div>联系人:</div>
+          <div>{{tableData.person}}</div>
+        </div>
+        <div class="small-row">
+          <div>联系电话:</div>
+          <div>{{tableData.personPhone}}</div>
+        </div>
+        <div class="small-row">
+          <div>货名:</div>
+          <div>{{tableData.goodsName}}</div>
+        </div>
+        <div class="small-row">
+          <div>类型:</div>
+          <div>{{tableData.type}}</div>
+        </div>
+        <div class="small-row">
+          <div>容量(克/升):</div>
+          <div>{{tableData.bulkDensity}}</div>
+        </div>
+        <div class="small-row">
+          <div>不完善粒(%):</div>
+          <div>{{tableData.imperfectGrain}}</div>
+        </div>
+        <div class="small-row">
+          <div>等级:</div>
+          <div>{{tableData.grade}}</div>
+        </div>
+        <div class="small-row">
+          <div>水分(%):</div>
+          <div>{{tableData.waterContent}}</div>
+        </div>
+        <div class="small-row">
+          <div>热损伤(%):</div>
+          <div>{{tableData.jiaorenli}}</div>
+        </div>
+        <div class="small-row">
+          <div v-if="tableData.confirm == '1'">单价(元/公斤):</div>
+          <div v-else>待定单价(元/公斤):</div>
+          <div  v-if="tableData.type == '潮粮'">
+            {{tableData.tidalGrainPrice}}
+          </div>
+          <div v-if="tableData.type == '干粮'">
+            {{tableData.dryGrainPrice}}
+          </div>
+          <!-- <div>{{tableData.tidalGrainPrice}}</div> -->
+        </div>
+        <div class="small-row">
+          <div>杂质(%):</div>
+          <div>{{tableData.impurity}}</div>
+        </div>
+        <div class="small-row">
+          <div>霉变粒(%):</div>
+          <div>{{tableData.mildewGrain}}</div>
+        </div>
+        <div v-if="tableData.paramType == '1'" class="small-row">
+          <div>扣杂:</div>
+          <div>{{tableData.buckleMiscellaneous}}</div>
+        </div>
+        <div class="small-row">
+          <div>购粮性质:</div>
+          <div>{{tableData.natureOfGrainPurchase}}</div>
+        </div>
+        <div class="small-row">
+          <div>质检:</div>
+          <div>{{tableData.qualityInspector}}</div>
+        </div>
+        <div class="small-row">
+          <div>时间:</div>
+          <div>{{tableData.qualityDate}}</div>
+        </div>
+        <div class="small-row">
+          <div>收货单位签名或盖章:</div>
+        </div>
+        <div class="small-row">
+         <div class="sign">客户签名:</div>
+        </div>
+      </div>
+    </div>
+  </body>
+  <script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
+  <script src="https://unpkg.com/element-ui/lib/index.js"></script>
+  <script type="text/javascript">
+    new Vue({
+      el: '#app',
+      data: {
+        tableData: "",
+        name: "",
+        bigContent: false,
+        smallContent: false,
+        printData :{},
+      },
+      computed: {},
+      methods: {
+        tableRowClassName({
+          row,
+          rowIndex
+        }) {
+          if (rowIndex === 1) {
+            return 'warning-row';
+          } else if (rowIndex === 3) {
+            return 'success-row';
+          }
+          return '';
+        },
+        getQueryVariable(variable) {
+          var query = window.location.search.substring(1);
+          var vars = query.split("&");
+          for (var i = 0; i < vars.length; i++) {
+            var pair = vars[i].split("=");
+            if (pair[0] == variable) {
+              return pair[1];
+            }
+          }
+          return (false);
+        },
+        printSmall() {},
+        printBig() {},
+      },
+      mounted() {
+        let _data = decodeURIComponent(this.getQueryVariable("dataList"))
+        let _type = decodeURIComponent(this.getQueryVariable("type"))
+        if (_type == 2) {
+          this.bigContent = true
+          this.smallContent = false
+        } else {
+          this.smallContent = true
+          this.bigContent = false
+        }
+        console.log(_data)
+        this.tableData = JSON.parse(_data)
+        console.log(this.tableData)
+        document.title="粮食质检单"
+        window.print()
+        window.onafterprint = function(event) {
+          window.history.back(-1)
+        };
+      },
+      watch: {}
+    })
+  </script>
+
+</html>

+ 0 - 539
public/static/logo/demo.css

@@ -1,539 +0,0 @@
-/* Logo 字体 */
-@font-face {
-  font-family: "iconfont logo";
-  src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834');
-  src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834#iefix') format('embedded-opentype'),
-    url('https://at.alicdn.com/t/font_985780_km7mi63cihi.woff?t=1545807318834') format('woff'),
-    url('https://at.alicdn.com/t/font_985780_km7mi63cihi.ttf?t=1545807318834') format('truetype'),
-    url('https://at.alicdn.com/t/font_985780_km7mi63cihi.svg?t=1545807318834#iconfont') format('svg');
-}
-
-.logo {
-  font-family: "iconfont logo";
-  font-size: 160px;
-  font-style: normal;
-  -webkit-font-smoothing: antialiased;
-  -moz-osx-font-smoothing: grayscale;
-}
-
-/* tabs */
-.nav-tabs {
-  position: relative;
-}
-
-.nav-tabs .nav-more {
-  position: absolute;
-  right: 0;
-  bottom: 0;
-  height: 42px;
-  line-height: 42px;
-  color: #666;
-}
-
-#tabs {
-  border-bottom: 1px solid #eee;
-}
-
-#tabs li {
-  cursor: pointer;
-  width: 100px;
-  height: 40px;
-  line-height: 40px;
-  text-align: center;
-  font-size: 16px;
-  border-bottom: 2px solid transparent;
-  position: relative;
-  z-index: 1;
-  margin-bottom: -1px;
-  color: #666;
-}
-
-
-#tabs .active {
-  border-bottom-color: #f00;
-  color: #222;
-}
-
-.tab-container .content {
-  display: none;
-}
-
-/* 页面布局 */
-.main {
-  padding: 30px 100px;
-  width: 960px;
-  margin: 0 auto;
-}
-
-.main .logo {
-  color: #333;
-  text-align: left;
-  margin-bottom: 30px;
-  line-height: 1;
-  height: 110px;
-  margin-top: -50px;
-  overflow: hidden;
-  *zoom: 1;
-}
-
-.main .logo a {
-  font-size: 160px;
-  color: #333;
-}
-
-.helps {
-  margin-top: 40px;
-}
-
-.helps pre {
-  padding: 20px;
-  margin: 10px 0;
-  border: solid 1px #e7e1cd;
-  background-color: #fffdef;
-  overflow: auto;
-}
-
-.icon_lists {
-  width: 100% !important;
-  overflow: hidden;
-  *zoom: 1;
-}
-
-.icon_lists li {
-  width: 100px;
-  margin-bottom: 10px;
-  margin-right: 20px;
-  text-align: center;
-  list-style: none !important;
-  cursor: default;
-}
-
-.icon_lists li .code-name {
-  line-height: 1.2;
-}
-
-.icon_lists .icon {
-  display: block;
-  height: 100px;
-  line-height: 100px;
-  font-size: 42px;
-  margin: 10px auto;
-  color: #333;
-  -webkit-transition: font-size 0.25s linear, width 0.25s linear;
-  -moz-transition: font-size 0.25s linear, width 0.25s linear;
-  transition: font-size 0.25s linear, width 0.25s linear;
-}
-
-.icon_lists .icon:hover {
-  font-size: 100px;
-}
-
-.icon_lists .svg-icon {
-  /* 通过设置 font-size 来改变图标大小 */
-  width: 1em;
-  /* 图标和文字相邻时,垂直对齐 */
-  vertical-align: -0.15em;
-  /* 通过设置 color 来改变 SVG 的颜色/fill */
-  fill: currentColor;
-  /* path 和 stroke 溢出 viewBox 部分在 IE 下会显示
-      normalize.css 中也包含这行 */
-  overflow: hidden;
-}
-
-.icon_lists li .name,
-.icon_lists li .code-name {
-  color: #666;
-}
-
-/* markdown 样式 */
-.markdown {
-  color: #666;
-  font-size: 14px;
-  line-height: 1.8;
-}
-
-.highlight {
-  line-height: 1.5;
-}
-
-.markdown img {
-  vertical-align: middle;
-  max-width: 100%;
-}
-
-.markdown h1 {
-  color: #404040;
-  font-weight: 500;
-  line-height: 40px;
-  margin-bottom: 24px;
-}
-
-.markdown h2,
-.markdown h3,
-.markdown h4,
-.markdown h5,
-.markdown h6 {
-  color: #404040;
-  margin: 1.6em 0 0.6em 0;
-  font-weight: 500;
-  clear: both;
-}
-
-.markdown h1 {
-  font-size: 28px;
-}
-
-.markdown h2 {
-  font-size: 22px;
-}
-
-.markdown h3 {
-  font-size: 16px;
-}
-
-.markdown h4 {
-  font-size: 14px;
-}
-
-.markdown h5 {
-  font-size: 12px;
-}
-
-.markdown h6 {
-  font-size: 12px;
-}
-
-.markdown hr {
-  height: 1px;
-  border: 0;
-  background: #e9e9e9;
-  margin: 16px 0;
-  clear: both;
-}
-
-.markdown p {
-  margin: 1em 0;
-}
-
-.markdown>p,
-.markdown>blockquote,
-.markdown>.highlight,
-.markdown>ol,
-.markdown>ul {
-  width: 80%;
-}
-
-.markdown ul>li {
-  list-style: circle;
-}
-
-.markdown>ul li,
-.markdown blockquote ul>li {
-  margin-left: 20px;
-  padding-left: 4px;
-}
-
-.markdown>ul li p,
-.markdown>ol li p {
-  margin: 0.6em 0;
-}
-
-.markdown ol>li {
-  list-style: decimal;
-}
-
-.markdown>ol li,
-.markdown blockquote ol>li {
-  margin-left: 20px;
-  padding-left: 4px;
-}
-
-.markdown code {
-  margin: 0 3px;
-  padding: 0 5px;
-  background: #eee;
-  border-radius: 3px;
-}
-
-.markdown strong,
-.markdown b {
-  font-weight: 600;
-}
-
-.markdown>table {
-  border-collapse: collapse;
-  border-spacing: 0px;
-  empty-cells: show;
-  border: 1px solid #e9e9e9;
-  width: 95%;
-  margin-bottom: 24px;
-}
-
-.markdown>table th {
-  white-space: nowrap;
-  color: #333;
-  font-weight: 600;
-}
-
-.markdown>table th,
-.markdown>table td {
-  border: 1px solid #e9e9e9;
-  padding: 8px 16px;
-  text-align: left;
-}
-
-.markdown>table th {
-  background: #F7F7F7;
-}
-
-.markdown blockquote {
-  font-size: 90%;
-  color: #999;
-  border-left: 4px solid #e9e9e9;
-  padding-left: 0.8em;
-  margin: 1em 0;
-}
-
-.markdown blockquote p {
-  margin: 0;
-}
-
-.markdown .anchor {
-  opacity: 0;
-  transition: opacity 0.3s ease;
-  margin-left: 8px;
-}
-
-.markdown .waiting {
-  color: #ccc;
-}
-
-.markdown h1:hover .anchor,
-.markdown h2:hover .anchor,
-.markdown h3:hover .anchor,
-.markdown h4:hover .anchor,
-.markdown h5:hover .anchor,
-.markdown h6:hover .anchor {
-  opacity: 1;
-  display: inline-block;
-}
-
-.markdown>br,
-.markdown>p>br {
-  clear: both;
-}
-
-
-.hljs {
-  display: block;
-  background: white;
-  padding: 0.5em;
-  color: #333333;
-  overflow-x: auto;
-}
-
-.hljs-comment,
-.hljs-meta {
-  color: #969896;
-}
-
-.hljs-string,
-.hljs-variable,
-.hljs-template-variable,
-.hljs-strong,
-.hljs-emphasis,
-.hljs-quote {
-  color: #df5000;
-}
-
-.hljs-keyword,
-.hljs-selector-tag,
-.hljs-type {
-  color: #a71d5d;
-}
-
-.hljs-literal,
-.hljs-symbol,
-.hljs-bullet,
-.hljs-attribute {
-  color: #0086b3;
-}
-
-.hljs-section,
-.hljs-name {
-  color: #63a35c;
-}
-
-.hljs-tag {
-  color: #333333;
-}
-
-.hljs-title,
-.hljs-attr,
-.hljs-selector-id,
-.hljs-selector-class,
-.hljs-selector-attr,
-.hljs-selector-pseudo {
-  color: #795da3;
-}
-
-.hljs-addition {
-  color: #55a532;
-  background-color: #eaffea;
-}
-
-.hljs-deletion {
-  color: #bd2c00;
-  background-color: #ffecec;
-}
-
-.hljs-link {
-  text-decoration: underline;
-}
-
-/* 代码高亮 */
-/* PrismJS 1.15.0
-https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript */
-/**
- * prism.js default theme for JavaScript, CSS and HTML
- * Based on dabblet (http://dabblet.com)
- * @author Lea Verou
- */
-code[class*="language-"],
-pre[class*="language-"] {
-  color: black;
-  background: none;
-  text-shadow: 0 1px white;
-  font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
-  text-align: left;
-  white-space: pre;
-  word-spacing: normal;
-  word-break: normal;
-  word-wrap: normal;
-  line-height: 1.5;
-
-  -moz-tab-size: 4;
-  -o-tab-size: 4;
-  tab-size: 4;
-
-  -webkit-hyphens: none;
-  -moz-hyphens: none;
-  -ms-hyphens: none;
-  hyphens: none;
-}
-
-pre[class*="language-"]::-moz-selection,
-pre[class*="language-"] ::-moz-selection,
-code[class*="language-"]::-moz-selection,
-code[class*="language-"] ::-moz-selection {
-  text-shadow: none;
-  background: #b3d4fc;
-}
-
-pre[class*="language-"]::selection,
-pre[class*="language-"] ::selection,
-code[class*="language-"]::selection,
-code[class*="language-"] ::selection {
-  text-shadow: none;
-  background: #b3d4fc;
-}
-
-@media print {
-
-  code[class*="language-"],
-  pre[class*="language-"] {
-    text-shadow: none;
-  }
-}
-
-/* Code blocks */
-pre[class*="language-"] {
-  padding: 1em;
-  margin: .5em 0;
-  overflow: auto;
-}
-
-:not(pre)>code[class*="language-"],
-pre[class*="language-"] {
-  background: #f5f2f0;
-}
-
-/* Inline code */
-:not(pre)>code[class*="language-"] {
-  padding: .1em;
-  border-radius: .3em;
-  white-space: normal;
-}
-
-.token.comment,
-.token.prolog,
-.token.doctype,
-.token.cdata {
-  color: slategray;
-}
-
-.token.punctuation {
-  color: #999;
-}
-
-.namespace {
-  opacity: .7;
-}
-
-.token.property,
-.token.tag,
-.token.boolean,
-.token.number,
-.token.constant,
-.token.symbol,
-.token.deleted {
-  color: #905;
-}
-
-.token.selector,
-.token.attr-name,
-.token.string,
-.token.char,
-.token.builtin,
-.token.inserted {
-  color: #690;
-}
-
-.token.operator,
-.token.entity,
-.token.url,
-.language-css .token.string,
-.style .token.string {
-  color: #9a6e3a;
-  background: hsla(0, 0%, 100%, .5);
-}
-
-.token.atrule,
-.token.attr-value,
-.token.keyword {
-  color: #07a;
-}
-
-.token.function,
-.token.class-name {
-  color: #DD4A68;
-}
-
-.token.regex,
-.token.important,
-.token.variable {
-  color: #e90;
-}
-
-.token.important,
-.token.bold {
-  font-weight: bold;
-}
-
-.token.italic {
-  font-style: italic;
-}
-
-.token.entity {
-  cursor: help;
-}

+ 0 - 207
public/static/logo/demo_index.html

@@ -1,207 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-  <meta charset="utf-8"/>
-  <title>iconfont Demo</title>
-  <link rel="shortcut icon" href="//img.alicdn.com/imgextra/i2/O1CN01ZyAlrn1MwaMhqz36G_!!6000000001499-73-tps-64-64.ico" type="image/x-icon"/>
-  <link rel="icon" type="image/svg+xml" href="//img.alicdn.com/imgextra/i4/O1CN01EYTRnJ297D6vehehJ_!!6000000008020-55-tps-64-64.svg"/>
-  <link rel="stylesheet" href="https://g.alicdn.com/thx/cube/1.3.2/cube.min.css">
-  <link rel="stylesheet" href="demo.css">
-  <link rel="stylesheet" href="iconfont.css">
-  <script src="iconfont.js"></script>
-  <!-- jQuery -->
-  <script src="https://a1.alicdn.com/oss/uploads/2018/12/26/7bfddb60-08e8-11e9-9b04-53e73bb6408b.js"></script>
-  <!-- 代码高亮 -->
-  <script src="https://a1.alicdn.com/oss/uploads/2018/12/26/a3f714d0-08e6-11e9-8a15-ebf944d7534c.js"></script>
-  <style>
-    .main .logo {
-      margin-top: 0;
-      height: auto;
-    }
-
-    .main .logo a {
-      display: flex;
-      align-items: center;
-    }
-
-    .main .logo .sub-title {
-      margin-left: 0.5em;
-      font-size: 22px;
-      color: #fff;
-      background: linear-gradient(-45deg, #3967FF, #B500FE);
-      -webkit-background-clip: text;
-      -webkit-text-fill-color: transparent;
-    }
-  </style>
-</head>
-<body>
-  <div class="main">
-    <h1 class="logo"><a href="https://www.iconfont.cn/" title="iconfont 首页" target="_blank">
-      <img width="200" src="https://img.alicdn.com/imgextra/i3/O1CN01Mn65HV1FfSEzR6DKv_!!6000000000514-55-tps-228-59.svg">
-      
-    </a></h1>
-    <div class="nav-tabs">
-      <ul id="tabs" class="dib-box">
-        <li class="dib active"><span>Unicode</span></li>
-        <li class="dib"><span>Font class</span></li>
-        <li class="dib"><span>Symbol</span></li>
-      </ul>
-      
-    </div>
-    <div class="tab-container">
-      <div class="content unicode" style="display: block;">
-          <ul class="icon_lists dib-box">
-          
-            <li class="dib">
-              <span class="icon iconfont">&#xe605;</span>
-                <div class="name">易粮易运</div>
-                <div class="code-name">&amp;#xe605;</div>
-              </li>
-          
-          </ul>
-          <div class="article markdown">
-          <h2 id="unicode-">Unicode 引用</h2>
-          <hr>
-
-          <p>Unicode 是字体在网页端最原始的应用方式,特点是:</p>
-          <ul>
-            <li>支持按字体的方式去动态调整图标大小,颜色等等。</li>
-            <li>默认情况下不支持多色,直接添加多色图标会自动去色。</li>
-          </ul>
-          <blockquote>
-            <p>注意:新版 iconfont 支持两种方式引用多色图标:SVG symbol 引用方式和彩色字体图标模式。(使用彩色字体图标需要在「编辑项目」中开启「彩色」选项后并重新生成。)</p>
-          </blockquote>
-          <p>Unicode 使用步骤如下:</p>
-          <h3 id="-font-face">第一步:拷贝项目下面生成的 <code>@font-face</code></h3>
-<pre><code class="language-css"
->@font-face {
-  font-family: 'iconfont';
-  src: url('iconfont.ttf?t=1620364525435') format('truetype');
-}
-</code></pre>
-          <h3 id="-iconfont-">第二步:定义使用 iconfont 的样式</h3>
-<pre><code class="language-css"
->.iconfont {
-  font-family: "iconfont" !important;
-  font-size: 16px;
-  font-style: normal;
-  -webkit-font-smoothing: antialiased;
-  -moz-osx-font-smoothing: grayscale;
-}
-</code></pre>
-          <h3 id="-">第三步:挑选相应图标并获取字体编码,应用于页面</h3>
-<pre>
-<code class="language-html"
->&lt;span class="iconfont"&gt;&amp;#x33;&lt;/span&gt;
-</code></pre>
-          <blockquote>
-            <p>"iconfont" 是你项目下的 font-family。可以通过编辑项目查看,默认是 "iconfont"。</p>
-          </blockquote>
-          </div>
-      </div>
-      <div class="content font-class">
-        <ul class="icon_lists dib-box">
-          
-          <li class="dib">
-            <span class="icon iconfont icon-yiliangyiyun"></span>
-            <div class="name">
-              易粮易运
-            </div>
-            <div class="code-name">.icon-yiliangyiyun
-            </div>
-          </li>
-          
-        </ul>
-        <div class="article markdown">
-        <h2 id="font-class-">font-class 引用</h2>
-        <hr>
-
-        <p>font-class 是 Unicode 使用方式的一种变种,主要是解决 Unicode 书写不直观,语意不明确的问题。</p>
-        <p>与 Unicode 使用方式相比,具有如下特点:</p>
-        <ul>
-          <li>相比于 Unicode 语意明确,书写更直观。可以很容易分辨这个 icon 是什么。</li>
-          <li>因为使用 class 来定义图标,所以当要替换图标时,只需要修改 class 里面的 Unicode 引用。</li>
-        </ul>
-        <p>使用步骤如下:</p>
-        <h3 id="-fontclass-">第一步:引入项目下面生成的 fontclass 代码:</h3>
-<pre><code class="language-html">&lt;link rel="stylesheet" href="./iconfont.css"&gt;
-</code></pre>
-        <h3 id="-">第二步:挑选相应图标并获取类名,应用于页面:</h3>
-<pre><code class="language-html">&lt;span class="iconfont icon-xxx"&gt;&lt;/span&gt;
-</code></pre>
-        <blockquote>
-          <p>"
-            iconfont" 是你项目下的 font-family。可以通过编辑项目查看,默认是 "iconfont"。</p>
-        </blockquote>
-      </div>
-      </div>
-      <div class="content symbol">
-          <ul class="icon_lists dib-box">
-          
-            <li class="dib">
-                <svg class="icon svg-icon" aria-hidden="true">
-                  <use xlink:href="#icon-yiliangyiyun"></use>
-                </svg>
-                <div class="name">易粮易运</div>
-                <div class="code-name">#icon-yiliangyiyun</div>
-            </li>
-          
-          </ul>
-          <div class="article markdown">
-          <h2 id="symbol-">Symbol 引用</h2>
-          <hr>
-
-          <p>这是一种全新的使用方式,应该说这才是未来的主流,也是平台目前推荐的用法。相关介绍可以参考这篇<a href="">文章</a>
-            这种用法其实是做了一个 SVG 的集合,与另外两种相比具有如下特点:</p>
-          <ul>
-            <li>支持多色图标了,不再受单色限制。</li>
-            <li>通过一些技巧,支持像字体那样,通过 <code>font-size</code>, <code>color</code> 来调整样式。</li>
-            <li>兼容性较差,支持 IE9+,及现代浏览器。</li>
-            <li>浏览器渲染 SVG 的性能一般,还不如 png。</li>
-          </ul>
-          <p>使用步骤如下:</p>
-          <h3 id="-symbol-">第一步:引入项目下面生成的 symbol 代码:</h3>
-<pre><code class="language-html">&lt;script src="./iconfont.js"&gt;&lt;/script&gt;
-</code></pre>
-          <h3 id="-css-">第二步:加入通用 CSS 代码(引入一次就行):</h3>
-<pre><code class="language-html">&lt;style&gt;
-.icon {
-  width: 1em;
-  height: 1em;
-  vertical-align: -0.15em;
-  fill: currentColor;
-  overflow: hidden;
-}
-&lt;/style&gt;
-</code></pre>
-          <h3 id="-">第三步:挑选相应图标并获取类名,应用于页面:</h3>
-<pre><code class="language-html">&lt;svg class="icon" aria-hidden="true"&gt;
-  &lt;use xlink:href="#icon-xxx"&gt;&lt;/use&gt;
-&lt;/svg&gt;
-</code></pre>
-          </div>
-      </div>
-
-    </div>
-  </div>
-  <script>
-  $(document).ready(function () {
-      $('.tab-container .content:first').show()
-
-      $('#tabs li').click(function (e) {
-        var tabContent = $('.tab-container .content')
-        var index = $(this).index()
-
-        if ($(this).hasClass('active')) {
-          return
-        } else {
-          $('#tabs li').removeClass('active')
-          $(this).addClass('active')
-
-          tabContent.hide().eq(index).fadeIn()
-        }
-      })
-    })
-  </script>
-</body>
-</html>

+ 0 - 17
public/static/logo/iconfont.css

@@ -1,17 +0,0 @@
-@font-face {
-  font-family: "iconfont"; /* Project id  */
-  src: url('iconfont.ttf?t=1620364525435') format('truetype');
-}
-
-.iconfont {
-  font-family: "iconfont" !important;
-  font-size: 16px;
-  font-style: normal;
-  -webkit-font-smoothing: antialiased;
-  -moz-osx-font-smoothing: grayscale;
-}
-
-.icon-yiliangyiyun:before {
-  content: "\e605";
-}
-

文件差异内容过多而无法显示
+ 0 - 0
public/static/logo/iconfont.js


+ 0 - 16
public/static/logo/iconfont.json

@@ -1,16 +0,0 @@
-{
-  "id": "",
-  "name": "",
-  "font_family": "iconfont",
-  "css_prefix_text": "icon-",
-  "description": "",
-  "glyphs": [
-    {
-      "icon_id": "21430593",
-      "name": "易粮易运",
-      "font_class": "yiliangyiyun",
-      "unicode": "e605",
-      "unicode_decimal": 58885
-    }
-  ]
-}

二进制
public/static/logo/iconfont.ttf


+ 1241 - 0
public/static/payprint.html

@@ -0,0 +1,1241 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css" />
+    <title></title>
+    <style>
+      table tr td {
+        border: 2px solid #333333;
+        padding: 5px 0;
+      }
+
+      #app {
+        height: 88vh;
+        position: relative;
+      }
+      .simple{
+        height: 120vh !important;
+      }
+      .content {
+        width: 1000px;
+        margin: auto;
+      }
+
+      table {
+        width: 100%;
+        text-align: center;
+        border-collapse: collapse;
+      }
+
+      .col-bgc {
+        background: #f6f7fb;
+      }
+
+      .bottom-row1 {
+        display: flex;
+        justify-content: space-between;
+        margin: 20px 0;
+      }
+
+      .bottom-row2 {
+        display: flex;
+        margin: 10px 0;
+      }
+
+      img {
+        width: 80px;
+        height: 80px;
+        /* margin-right: 118px; */
+      }
+      .leftimg{
+        width: 80px;
+        height: 80px;
+        position: absolute;
+        right: 20px;
+        top: 3px;
+      }
+
+      .config {
+        margin-right: 240px;
+      }
+
+      .bottom-row3 {
+        margin: 10px 0;
+      }
+
+      .title {
+        text-align: center;
+        font-size: 24px;
+      }
+
+      .number {
+        text-align: right;
+        margin-bottom: 10px;
+      }
+      .number1 {
+    text-align: right;
+    margin-bottom: 10px;
+    margin-top: 60px;
+}
+
+      .small-row {
+        display: flex;
+      }
+
+      .small-content {
+        width: 400px;
+        margin: 0 auto;
+        border: 1px solid #ccc;
+        padding: 20px 20px 160px 20px;
+        position: absolute;
+        top: 0;
+        bottom: 0;
+        left: 0;
+        right: 0;
+        margin: auto;
+        height: 650px;
+      }
+
+      .small-title {
+        text-align: center;
+        font-size: 18px;
+        display: flex;
+        justify-content: space-between;
+        align-items: center;
+      }
+
+      .small-row {
+        display: flex;
+        justify-content: space-between;
+        margin: 10px;
+      }
+
+      .small-img {
+        margin-right: 0;
+      }
+
+      .sign {
+        margin-right: 100px;
+      }
+
+      .header {
+        display: flex;
+        justify-content: space-between;
+        font-size: 16px;
+        margin: 10px 0;
+      }
+
+      .header1 {
+        font-size: 24px;
+        /* margin: 30px 60px 10px 60px; */
+        display: flex;
+        justify-content: center;
+      }
+
+      .line {
+        height: 2px;
+        width: 410px;
+        margin: 3px auto;
+        background: black;
+      }
+
+      .line:nth-of-type(3) {
+        margin-bottom: 30px;
+      }
+
+      .header-top {
+        display: flex;
+        justify-content: space-between;
+      }
+
+      .sfcard {
+        background: red;
+      }
+
+      .sfcard-content {
+        /*        display: flex;
+        align-items: center;
+        justify-content: space-evenly; */
+      }
+
+      .sfcard-content img {
+        width: 100%;
+        height: 130vh;
+      }
+
+      .sfcard-title {
+        font-size: 28px;
+        text-align: center;
+      }
+
+      .center {
+        height: 140vh;
+      }
+
+      .part2 {
+        height: 140vh;
+        /* background: red; */
+      }
+
+      .part5 {
+        width: 100%
+      }
+
+      .paymentScreenshot {
+        width: 100%;
+        height: 130vh
+      }
+
+      /* .onlypz-center{
+        height: 130vh;
+      } */
+    </style>
+  </head>
+  <body>
+    <div id="app">
+      <div v-if="selectPrint">
+        <div v-for="(item,index) in printData1" :key="index">
+          <div class="content">
+            <div class="part5" v-if="isShowPrintType5">
+              <div class="header1">
+                付款回执单
+              </div>
+              <img :src="printData1[index].codeUrl" class="paymentScreenshot" />
+            </div>
+            <div class="center" v-if="isShowPrintType3">
+              <div class="header1">{{ printData1[index].compName}}结算凭证</div>
+              <div class="line"></div>
+              <div class="line"></div>
+              <div class="header">
+                <div>单位名称:{{ printData1[index].compName}}</div>
+                <!-- <div>税务登记编号:91230230MA1BNL7Q93</div> -->
+              </div>
+              <div class="header-top">
+                <div>单位:公斤/元</div>
+                <div>No.</div>
+              </div>
+              <div class="header-top">
+                <div>开票日期:{{printData1[index].createDate}}</div>
+                <!-- <div>开票日期:{{new Date(yyyy,mm,dd)}}</div> -->
+                <div class="number">
+                  {{dealNo(printData1[index].paymentNo)}}
+                </div>
+              </div>
+              <table class="table">
+                <tr class="row">
+                  <td rowspan="4" class="col col-bgc">买方</td>
+                  <td class="col col-bgc">单位名称</td>
+                  <td class="col" colspan="3">
+                    {{ printData1[index].compName}}
+                  </td>
+                  <td rowspan="4" class="col col-bgc">卖方</td>
+                  <td class="col col-bgc">姓名</td>
+                  <td class="col" colspan="4">
+                    {{ printData1[index].customerName}}
+                  </td>
+                </tr>
+                <tr class="row">
+                  <td class="col col-bgc">税务登记号</td>
+                  <td class="col" colspan="3">
+                    {{ printData1[index].taxRegistrationNo}}
+                  </td>
+                  <td class="col col-bgc">身份证号</td>
+                  <td class="col" colspan="4">
+                    {{
+                    printData1[index].identityAuthenticationInfo.customerNumberCard}}
+                  </td>
+                </tr>
+                <tr class="row">
+                  <td class="col col-bgc">业务编号</td>
+                  <td class="col" colspan="3">
+                    {{ printData1[index].paymentNo}}
+                  </td>
+                  <td class="col col-bgc">卡号</td>
+                  <td class="col" colspan="4">
+                    {{printData1[index].identityAuthenticationInfo.bankDeposit}}{{printData1[index].identityAuthenticationInfo.bankCard}}
+                  </td>
+                </tr>
+                <tr class="row">
+                  <td class="col col-bgc">收货仓库</td>
+                  <td class="col" colspan="3">
+                    {{printData1[index].warehouseName}}
+                  </td>
+                  <td class="col col-bgc">地址</td>
+                  <td class="col" colspan="4">
+                    {{printData1[index].identityAuthenticationInfo.compAddress}}
+                  </td>
+                </tr>
+                <tr class="row">
+                  <td class="col col-bgc">货名</td>
+                  <td class="col col-bgc">类型</td>
+                  <td class="col col-bgc">等级</td>
+                  <td class="col col-bgc">水分%</td>
+                  <td class="col col-bgc">杂质%</td>
+                  <td class="col col-bgc">容重(克/升)</td>
+                  <td class="col col-bgc">毛重</td>
+                  <td class="col col-bgc">皮重</td>
+                  <td class="col col-bgc">扣杂重</td>
+                  <td class="col col-bgc">净重</td>
+                  <!-- <td class="col col-bgc">纯重</td> -->
+                </tr>
+                <tr class="row">
+                  <td class="col">{{ printData1[index].goodsName}}</td>
+                  <td class="col">{{ printData1[index].type}}</td>
+                  <td class="col">
+                    {{ printData1[index].qualityInspectionManagement.grade}}
+                  </td>
+                  <td class="col">
+                    {{
+                    printData1[index].qualityInspectionManagement.waterContent}}
+                  </td>
+                  <td class="col">
+                    {{ printData1[index].qualityInspectionManagement.impurity}}
+                  </td>
+                  <td class="col">  {{printData1[index].weighingManagement.qualityInspectionManagement?printData1[index].weighingManagement.qualityInspectionManagement.bulkDensity:''}}</td>
+                  <td class="col">{{ printData1[index].grossWeight}}</td>
+                  <td class="col">{{ printData1[index].tare}}</td>
+                  <td class="col">
+                    {{printData1[index].weighingManagement?printData1[index].weighingManagement.buckleMiscellaneous:''}}
+                  </td>
+                  <td class="col">{{ printData1[index].netWeight}}</td>
+                  <!-- <td class="col">{{ printData1[index].pureWeight}}</td> -->
+                </tr>
+                <tr class="row">
+                  <td class="col col-bgc">纯重</td>
+                  <td class="col col-bgc" v-if="printData1[index].type == '潮粮'">
+                    净重单价
+                  </td>
+                  <td class="col col-bgc" v-if="printData1[index].type == '干粮'">
+                    单价
+                  </td>
+                  <td class="col col-bgc">扣单价</td>
+                  <td class="col col-bgc">粮款</td>
+                  <td class="col col-bgc">称重补助</td>
+                  <td class="col col-bgc">运费补助</td>
+                  <td class="col col-bgc">卸车补助</td>
+                  <td class="col col-bgc">其他补助</td>
+                  <td class="col col-bgc">称重扣款</td>
+                  <td class="col col-bgc">运费扣款</td>
+                  <!-- <td class="col col-bgc">卸车扣款</td> -->
+                </tr>
+                <tr class="row">
+                  <td class="col">{{ printData1[index].pureWeight}}</td>
+                  <td class="col " v-if="printData1[index].type == '潮粮'">
+                    {{printData1[index].tidalGrainPrice}}
+                  </td>
+                  <td class="col " v-if="printData1[index].type == '干粮'">
+                    {{printData1[index].qualityInspectionManagement.dryGrainPrice}}
+                  </td>
+                  <td class="col ">{{ printData1[index].unitDeduction}}</td>
+                  <td class="col ">{{ printData1[index].grainMoney}}</td>
+                  <td class="col ">{{ printData1[index].weighingSubsidy}}</td>
+                  <td class="col ">{{ printData1[index].freightSubsidy}}</td>
+                  <td class="col ">{{ printData1[index].unloadSubsidy}}</td>
+                  <td class="col ">{{ printData1[index].otherSubsidy}}</td>
+                  <td class="col ">{{ printData1[index].weighingDeduction}}</td>
+                  <td class="col ">{{ printData1[index].freightDeduction}}</td>
+                  <!-- <td class="col ">{{ printData1[index].unloadDeduction}}</td> -->
+                </tr>
+                <tr class="row">
+                  <td class="col col-bgc">卸车扣款</td>
+                  <td class="col col-bgc">质量扣款</td>
+                  <td class="col col-bgc">其他扣款</td>
+                  <td class="col col-bgc" v-if="printData.type == '潮粮'">
+                    纯重单价
+                  </td>
+                  <td class="col col-bgc">合计应付</td>
+                  <td class="col col-bgc">购粮性质</td>
+                  <td class="col col-bgc">车牌号</td>
+                  <td class="col col-bgc" colspan="4">记事</td>
+                </tr>
+                <tr class="row">
+                  <td class="col ">{{ printData1[index].unloadDeduction}}</td>
+                  <td class="col ">{{ printData1[index].qualityDeduction}}</td>
+                  <td class="col ">{{ printData1[index].otherDeduction}}</td>
+                  <td class="col " v-if="printData1[index].type == '潮粮'">
+                    {{ printData1[index].solidGrainPrice}}
+                  </td>
+                  <td class="col ">
+                    {{ printData1[index].calculationPayable}}
+                  </td>
+                  <td class="col ">
+                    {{
+                    printData1[index].qualityInspectionManagement.natureOfGrainPurchase}}
+                  </td>
+                  <td class="col ">{{ printData1[index].carNo}}</td>
+                  <td class="col " colspan="4">
+                    {{ printData1[index].remarks}}
+                  </td>
+                </tr>
+                <tr class="row">
+                  <td class="col col-bgc">实付金额</td>
+                  <td class="col " colspan="2">
+                    {{printData1[index].actualPayment}}
+                  </td>
+                  <td class="col col-bgc" colspan="3">人民币(大写)</td>
+                  <td class="col " colspan="4">
+                    {{printData1[index].capitalize}}
+                  </td>
+                </tr>
+              </table>
+
+              <div class="bottom">
+                <div class="bottom-row1">
+                  <div>
+                    质检:{{
+                    printData1[index].qualityInspectionManagement.qualityInspector}}
+                  </div>
+                  <div>
+                    毛检:{{
+                    printData1[index].weighingManagement.secretaryWeigher}}
+                  </div>
+                  <div>
+                    皮检:{{
+                    printData1[index].weighingManagement.skinInspector}}
+                  </div>
+                  <div>结算:{{ printData1[index].settlementClerk}}</div>
+                  <div>付款:{{ printData1[index].cashier}}</div>
+                  <div>复点:{{ }}</div>
+                  <div></div>
+                </div>
+                <div class="bottom-row2">
+                  <!-- <div class="left">
+                   <img src="../../../../public/img/add.png" alt="" />
+                 </div> -->
+                  <div class="config">收货单位签名或盖章</div>
+                  <div class="">客户签名</div>
+                </div>
+                <!-- <div class="bottom-row3">扫一扫</div> -->
+                <!-- <div class="bottom-row4">
+                 <el-button type="primary">关闭</el-button>
+                  <el-button type="primary" @click="printSmall">打印小票</el-button>
+                  <el-button type="primary" @click="printBig">打印单据</el-button>
+               </div> -->
+              </div>
+            </div>
+            <div v-if="isShowPrintType4" class="part2">
+              <div style="height: 120px;">
+             
+                  <div class="title">入库检斤单</div>
+                  <div class="leftimg">
+                    <img :src="printData1[index].weighingManagement.codeUrl" alt="">
+                  </div>
+                  <div class="number1">{{printData1[index].weighingManagement.number}}</div>
+                </div>
+             
+              <table class="table">
+                <tr class="row">
+                  <td class="col col-bgc">客户姓名</td>
+                  <td class="col" colspan="2">{{printData1[index].weighingManagement.customer}}</td>
+                  <td class="col col-bgc">客户电话</td>
+                  <td class="col">{{printData1[index].weighingManagement.customerPhone}}</td>
+                  <td class="col col-bgc">车牌号</td>
+                  <td class="col" colspan="2">{{printData1[index].weighingManagement.carNumber}}</td>
+                </tr>
+                <tr class="row">
+                  <td class="col col-bgc">收货单位</td>
+                  <td class="col" colspan="2">{{printData1[index].weighingManagement.compName}}</td>
+                  <td class="col col-bgc">联系人</td>
+                  <td class="col">{{printData1[index].weighingManagement.person}}</td>
+                  <td class="col col-bgc">联系电话</td>
+                  <td class="col" colspan="2">{{printData1[index].weighingManagement.personPhone}}</td>
+                </tr>
+                <tr class="row">
+                  <td class="col col-bgc">货名</td>
+                  <td class="col">{{printData1[index].weighingManagement.goodsName}}</td>
+                  <td class="col col-bgc">类型</td>
+                  <td class="col">{{printData1[index].weighingManagement.type}}</td>
+                  <td class="col col-bgc">容量(克/升)</td>
+                  <td class="col">
+                    {{printData1[index].weighingManagement.qualityInspectionManagement?printData1[index].weighingManagement.qualityInspectionManagement.bulkDensity:''}}
+                  </td>
+                  <td class="col col-bgc">不完善粒(%)</td>
+                  <td class="col">
+                    {{printData1[index].weighingManagement.qualityInspectionManagement?printData1[index].weighingManagement.qualityInspectionManagement.imperfectGrain:''}}
+                  </td>
+                </tr>
+                <tr class="row">
+                  <td class="col col-bgc">等级</td>
+                  <td class="col">
+                    {{printData1[index].weighingManagement.qualityInspectionManagement?printData1[index].weighingManagement.qualityInspectionManagement.grade:''}}
+                  </td>
+                  <td class="col col-bgc">水分(%)</td>
+                  <td class="col">
+                    {{printData1[index].weighingManagement.qualityInspectionManagement?printData1[index].weighingManagement.qualityInspectionManagement.waterContent:''}}
+                  </td>
+                  <td class="col col-bgc">热损伤(%)</td>
+                  <td class="col">
+                    {{printData1[index].weighingManagement.qualityInspectionManagement?printData1[index].weighingManagement.qualityInspectionManagement.jiaorenli:''}}
+                  </td>
+                  <td class="col col-bgc">质检时间</td>
+                  <td class="col">
+                    {{printData1[index].weighingManagement.qualityInspectionManagement?printData1[index].weighingManagement.qualityInspectionManagement.qualityDate:''}}
+                  </td>
+                </tr>
+                <tr class="row">
+                  <td class="col col-bgc">杂质(%)</td>
+                  <td class="col">
+                    {{printData1[index].weighingManagement.qualityInspectionManagement?printData1[index].weighingManagement.qualityInspectionManagement.impurity:''}}
+                  </td>
+                  <td class="col col-bgc">霉变粒(%)</td>
+                  <td class="col">
+                    {{printData1[index].weighingManagement.qualityInspectionManagement?printData1[index].weighingManagement.qualityInspectionManagement.mildewGrain:''}}
+                  </td>
+                  <td class="col col-bgc">扣杂</td>
+                  <td class="col">
+                    {{printData1[index].weighingManagement.qualityInspectionManagement?printData1[index].weighingManagement.qualityInspectionManagement.buckleMiscellaneous:''}}
+                  </td>
+                  <td class="col " colspan="2"></td>
+                </tr>
+                <tr class="row">
+                  <td class="col col-bgc">毛重(公斤)</td>
+                  <td class="col">{{printData1[index].weighingManagement.grossWeight}}</td>
+                  <td class="col col-bgc">皮重(公斤)</td>
+                  <td class="col">{{printData1[index].weighingManagement.tare}}</td>
+                  <td class="col col-bgc">扣重(公斤)</td>
+                  <td class="col">{{printData1[index].weighingManagement.buckleMiscellaneous}}</td>
+                  <td class="col col-bgc">净重(公斤)</td>
+                  <td class="col">{{printData1[index].weighingManagement.netWeight}}</td>
+                </tr>
+                <tr class="row">
+                  <td class="col col-bgc" colspan="2">毛重检斤时间</td>
+                  <td class="col" colspan="2">{{printData1[index].weighingManagement.grossDate}}</td>
+                  <td class="col col-bgc" colspan="2">皮重检斤时间</td>
+                  <td class="col" colspan="2">{{printData1[index].weighingManagement.tareDate}}</td>
+                </tr>
+              </table>
+
+              <div class="bottom">
+                <div class="bottom-row1">
+                  <div>毛检:{{printData1[index].weighingManagement.secretaryWeigher}}</div>
+                  <div style="margin-left:60px">
+                    皮检:{{printData1[index].weighingManagement.skinInspector}}
+                  </div>
+                  <!-- <div>{{tableData.qualityDate}}</div> -->
+                </div>
+                <div class="bottom-row2">
+                  <!-- <div class="leftimg">
+                    <img src="../img/add.png" alt="">
+                  </div> -->
+                  <div class="config">收货单位签名或盖章:</div>
+                  <div class="autograph">客户签名:</div>
+                </div>
+                <!-- <div class="bottom-row3">扫一扫</div> -->
+              </div>
+            </div>
+
+            <div class="part1" v-if="isShowPrintType1">
+              <div class="sfcard-content">
+                <div class="sfcard-title">
+                  {{
+                  printData1[index].customerName}}{{printData1[index].identityAuthenticationInfo.customerNumberCard}}
+                </div>
+                <img :src="customerList1[index].imgURl.imageUrl1" class="avatar" />
+              </div>
+              <div class="sfcard-content">
+                <div class="sfcard-title">
+                  {{
+                  printData1[index].customerName}}{{printData1[index].identityAuthenticationInfo.customerNumberCard}}
+                </div>
+                <img :src="customerList1[index].imgURl.imageUrl2" class="avatar" />
+              </div>
+            </div>
+            <div class="bankcard" v-if="isShowPrintType2">
+
+              <div class="sfcard-content part2">
+                <div class="sfcard-title">
+                  {{printData1[index].identityAuthenticationInfo.bankDeposit}}{{printData1[index].identityAuthenticationInfo.bankCard}}
+                </div>
+                <img :src="customerList1[index].imgURl.imageUrl3" class="avatar" />
+              </div>
+              <div class="sfcard-content part2">
+                <div class="sfcard-title">
+                  {{printData1[index].identityAuthenticationInfo.bankDeposit}}{{printData1[index].identityAuthenticationInfo.bankCard}}
+                </div>
+                <img :src="customerList1[index].imgURl.imageUrl4" class="avatar" />
+              </div>
+            </div>
+          </div>
+        </div>
+      </div>
+      <div class="content" v-else>
+        <div class="part5" v-if="isShowPrintType5">
+          <div class="header1">
+            付款回执单
+          </div>
+          <img :src="printData.paymentScreenshot" class="paymentScreenshot" />
+        </div>
+        <div class="center part1" v-if="isShowPrintType3" :class="!selectPrint? 'simple':''">
+          <div class="header1">{{ printData.compName}}结算凭证</div>
+          <div class="line"></div>
+          <div class="line"></div>
+          <div class="header">
+            <div>单位名称:{{ printData.compName}}</div>
+            <!-- <div>税务登记编号:91230230MA1BNL7Q93</div> -->
+          </div>
+          <div class="header-top">
+            <div>单位:公斤/元</div>
+            <div>No.</div>
+          </div>
+          <div class="header-top">
+            <div>开票日期:{{printData.createDate}}</div>
+            <!-- <div>开票日期:{{new Date(yyyy,mm,dd)}}</div> -->
+            <div class="number">{{dealNo(printData.paymentNo)}}</div>
+          </div>
+          <table class="table">
+            <tr class="row">
+              <td rowspan="4" class="col col-bgc">买方</td>
+              <td class="col col-bgc">单位名称</td>
+              <td class="col" colspan="3">{{ printData.compName}}</td>
+              <td rowspan="4" class="col col-bgc">卖方</td>
+              <td class="col col-bgc">姓名</td>
+              <td class="col" colspan="4">{{ printData.customerName}}</td>
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc">税务登记号</td>
+              <td class="col" colspan="3">{{ printData.taxRegistrationNo}}</td>
+              <td class="col col-bgc">身份证号</td>
+              <td class="col" colspan="4">
+                {{ printData.identityAuthenticationInfo.customerNumberCard}}
+              </td>
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc">业务编号</td>
+              <td class="col" colspan="3">{{ printData.paymentNo}}</td>
+              <td class="col col-bgc">卡号</td>
+              <td class="col" colspan="4">
+                {{printData.identityAuthenticationInfo.bankDeposit}}{{printData.identityAuthenticationInfo.bankCard}}
+              </td>
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc">收货仓库</td>
+              <td class="col" colspan="3">{{printData.warehouseName}}</td>
+              <td class="col col-bgc">地址</td>
+              <td class="col" colspan="4">
+                {{printData.identityAuthenticationInfo.compAddress}}
+              </td>
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc">货名</td>
+              <td class="col col-bgc">类型</td>
+              <td class="col col-bgc">等级</td>
+              <td class="col col-bgc">水分%</td>
+              <td class="col col-bgc">杂质%</td>
+              <td class="col col-bgc">毛重</td>
+              <td class="col col-bgc">皮重</td>
+              <td class="col col-bgc">扣杂重</td>
+              <td class="col col-bgc">净重</td>
+              <td class="col col-bgc">纯重</td>
+            </tr>
+            <tr class="row">
+              <td class="col">{{ printData.goodsName}}</td>
+              <td class="col">{{ printData.type}}</td>
+              <td class="col">
+                {{ printData.qualityInspectionManagement.grade}}
+              </td>
+              <td class="col">
+                {{ printData.qualityInspectionManagement.waterContent}}
+              </td>
+              <td class="col">
+                {{ printData.qualityInspectionManagement.impurity}}
+              </td>
+              <td class="col">{{ printData.grossWeight}}</td>
+              <td class="col">{{ printData.tare}}</td>
+              <td class="col">
+                {{ printData.weighingManagement.buckleMiscellaneous}}
+              </td>
+              <td class="col">{{ printData.netWeight}}</td>
+              <td class="col">{{ printData.pureWeight}}</td>
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc" v-if="printData.type == '潮粮'">
+                净重单价
+              </td>
+              <td class="col col-bgc" v-if="printData.type == '干粮'">单价</td>
+              <td class="col col-bgc">扣单价</td>
+              <td class="col col-bgc">粮款</td>
+              <td class="col col-bgc">称重补助</td>
+              <td class="col col-bgc">运费补助</td>
+              <td class="col col-bgc">卸车补助</td>
+              <td class="col col-bgc">其他补助</td>
+              <td class="col col-bgc">称重扣款</td>
+              <td class="col col-bgc">运费扣款</td>
+              <td class="col col-bgc">卸车扣款</td>
+            </tr>
+            <tr class="row">
+              <td class="col " v-if="printData.type == '潮粮'">
+                {{printData.tidalGrainPrice}}
+              </td>
+              <td class="col " v-if="printData.type == '干粮'">
+                {{printData.qualityInspectionManagement.dryGrainPrice}}
+              </td>
+              <td class="col ">{{ printData.unitDeduction}}</td>
+              <td class="col ">{{ printData.grainMoney}}</td>
+              <td class="col ">{{ printData.weighingSubsidy}}</td>
+              <td class="col ">{{ printData.freightSubsidy}}</td>
+              <td class="col ">{{ printData.unloadSubsidy}}</td>
+              <td class="col ">{{ printData.otherSubsidy}}</td>
+              <td class="col ">{{ printData.weighingDeduction}}</td>
+              <td class="col ">{{ printData.freightDeduction}}</td>
+              <td class="col ">{{ printData.unloadDeduction}}</td>
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc">质量扣款</td>
+              <td class="col col-bgc">其他扣款</td>
+              <td class="col col-bgc" v-if="printData.type == '潮粮'">
+                纯重单价
+              </td>
+              <td class="col col-bgc">合计应付</td>
+              <td class="col col-bgc">购粮性质</td>
+              <td class="col col-bgc">车牌号</td>
+              <td class="col col-bgc" colspan="5">记事</td>
+            </tr>
+            <tr class="row">
+              <td class="col ">{{ printData.qualityDeduction}}</td>
+              <td class="col ">{{ printData.otherDeduction}}</td>
+              <td class="col " v-if="printData.type == '潮粮'">
+                {{ printData.solidGrainPrice}}
+              </td>
+              <td class="col ">{{ printData.calculationPayable}}</td>
+              <td class="col ">
+                {{ printData.qualityInspectionManagement.natureOfGrainPurchase}}
+              </td>
+              <td class="col ">{{ printData.carNo}}</td>
+              <td class="col " colspan="5">{{ printData.remarks}}</td>
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc">实付金额</td>
+              <td class="col " colspan="2">{{printData.actualPayment}}</td>
+              <td class="col col-bgc" colspan="3">人民币(大写)</td>
+              <td class="col " colspan="4">{{printData.capitalize}}</td>
+            </tr>
+          </table>
+          <div class="bottom">
+            <div class="bottom-row1">
+              <div>
+                质检:{{
+                printData.qualityInspectionManagement.qualityInspector}}
+              </div>
+              <div>
+                毛检:{{ printData.weighingManagement.secretaryWeigher}}
+              </div>
+              <div>皮检:{{ printData.weighingManagement.skinInspector}}</div>
+              <div>结算:{{ printData.settlementClerk}}</div>
+              <div>付款:{{ printData.cashier}}</div>
+              <div>复点:{{ }}</div>
+              <div></div>
+            </div>
+            <div class="bottom-row2">
+              <!-- <div class="left">
+               <img src="../../../../public/img/add.png" alt="" />
+             </div> -->
+              <div class="config">收货单位签名或盖章</div>
+              <div class="">客户签名</div>
+            </div>
+            <!-- <div class="bottom-row3">扫一扫</div> -->
+            <!-- <div class="bottom-row4">
+             <el-button type="primary">关闭</el-button>
+              <el-button type="primary" @click="printSmall">打印小票</el-button>
+              <el-button type="primary" @click="printBig">打印单据</el-button>
+           </div> -->
+          </div>
+        </div>
+
+        <div v-if="isShowPrintType4" class="part2">
+          <div>
+        
+          <div class="title">入库检斤单</div>
+          <div class="leftimg">
+            <img :src="tableData.codeUrl" alt="">
+          </div>
+          <div class="number1">{{tableData.number}}</div>
+        </div>
+          <table class="table">
+            <tr class="row">
+              <td class="col col-bgc">客户姓名</td>
+              <td class="col" colspan="2">{{tableData.customer}}</td>
+              <td class="col col-bgc">客户电话</td>
+              <td class="col">{{tableData.customerPhone}}</td>
+              <td class="col col-bgc">车牌号</td>
+              <td class="col" colspan="2">{{tableData.carNumber}}</td>
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc">收货单位</td>
+              <td class="col" colspan="2">{{tableData.compName}}</td>
+              <td class="col col-bgc">联系人</td>
+              <td class="col">{{tableData.person}}</td>
+              <td class="col col-bgc">联系电话</td>
+              <td class="col" colspan="2">{{tableData.personPhone}}</td>
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc">货名</td>
+              <td class="col">{{tableData.goodsName}}</td>
+              <td class="col col-bgc">类型</td>
+              <td class="col">{{tableData.type}}</td>
+              <td class="col col-bgc">容量(克/升)</td>
+              <td class="col">
+                {{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.bulkDensity:''}}
+              </td>
+              <td class="col col-bgc">不完善粒(%)</td>
+              <td class="col">
+                {{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.imperfectGrain:''}}
+              </td>
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc">等级</td>
+              <td class="col">
+                {{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.grade:''}}
+              </td>
+              <td class="col col-bgc">水分(%)</td>
+              <td class="col">
+                {{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.waterContent:''}}
+              </td>
+              <td class="col col-bgc">热损伤(%)</td>
+              <td class="col">
+                {{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.jiaorenli:''}}
+              </td>
+              <td class="col col-bgc">质检时间</td>
+              <td class="col">
+                {{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.qualityDate:''}}
+              </td>
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc">杂质(%)</td>
+              <td class="col">
+                {{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.impurity:''}}
+              </td>
+              <td class="col col-bgc">霉变粒(%)</td>
+              <td class="col">
+                {{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.mildewGrain:''}}
+              </td>
+              <td class="col col-bgc">扣杂</td>
+              <td class="col">
+                {{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.buckleMiscellaneous:''}}
+              </td>
+              <td class="col " colspan="2"></td>
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc">毛重(公斤)</td>
+              <td class="col">{{tableData.grossWeight}}</td>
+              <td class="col col-bgc">皮重(公斤)</td>
+              <td class="col">{{tableData.tare}}</td>
+              <td class="col col-bgc">扣重(公斤)</td>
+              <td class="col">{{tableData.buckleMiscellaneous}}</td>
+              <td class="col col-bgc">净重(公斤)</td>
+              <td class="col">{{tableData.netWeight}}</td>
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc" colspan="2">毛重检斤时间</td>
+              <td class="col" colspan="2">{{tableData.grossDate}}</td>
+              <td class="col col-bgc" colspan="2">皮重检斤时间</td>
+              <td class="col" colspan="2">{{tableData.tareDate}}</td>
+            </tr>
+          </table>
+
+          <div class="bottom">
+            <div class="bottom-row1">
+              <div>毛检:{{tableData.secretaryWeigher}}</div>
+              <div style="margin-left:60px">
+                皮检:{{tableData.skinInspector}}
+              </div>
+              <!-- <div>{{tableData.qualityDate}}</div> -->
+            </div>
+            <div class="bottom-row2">
+              <!-- <div class="left">
+                <img src="../img/add.png" alt="">
+              </div> -->
+              <div class="config">收货单位签名或盖章:</div>
+              <div class="autograph">客户签名:</div>
+            </div>
+            <!-- <div class="bottom-row3">扫一扫</div> -->
+          </div>
+        </div>
+
+        <div class="sfcard part3" v-if="isShowPrintType1">
+          <div class="sfcard-content">
+            <div class="sfcard-title">
+              {{ printData.customerName}}{{
+              printData.identityAuthenticationInfo.customerNumberCard}}
+            </div>
+            <img :src="imageUrl1" class="avatar" />
+          </div>
+          <div class="sfcard-content">
+            <div class="sfcard-title">
+              {{ printData.customerName}}{{
+              printData.identityAuthenticationInfo.customerNumberCard}}
+            </div>
+            <img :src="imageUrl2" class="avatar" />
+          </div>
+        </div>
+
+        <div class="bankcard part4" v-if="isShowPrintType2">
+          <div class="sfcard-content">
+            <div class="sfcard-title">
+              {{printData.identityAuthenticationInfo.bankDeposit}}{{printData.identityAuthenticationInfo.bankCard}}
+            </div>
+            <img :src="imageUrl3" class="avatar" />
+          </div>
+          <div class="sfcard-content">
+            <div class="sfcard-title">
+              {{printData.identityAuthenticationInfo.bankDeposit}}{{printData.identityAuthenticationInfo.bankCard}}
+            </div>
+            <img :src="imageUrl4" class="avatar" />
+          </div>
+
+        </div>
+      </div>
+
+      <div class="small-content" v-if="smallContent">
+        <div class="small-title">
+          <div>
+            {{printData.compName}}结算凭证
+          </div>
+          <img class="small-img" src="../img/add.png" alt="" />
+        </div>
+        <div class="small-row">
+          <div>开票日期</div>
+          <div>{{printData.createDate}}</div>
+        </div>
+        <div class="small-row">
+          <div>买方单位名称</div>
+          <div>{{printData.compName}}</div>
+        </div>
+        <div class="small-row">
+          <div>买方姓名</div>
+          <div>{{printData.customerName}}</div>
+        </div>
+        <div class="small-row">
+          <div>税务登记号</div>
+          <div>{{printData.taxRegistrationNo}}</div>
+        </div>
+        <div class="small-row">
+          <div>身份证号</div>
+          <div>{{printData.customerNumberCard}}</div>
+        </div>
+        <div class="small-row">
+          <div>化验单号</div>
+          <div>{{printData.paymentNo}}</div>
+        </div>
+        <div class="small-row">
+          <div>卡号</div>
+          <div>{{printData.bankCard}}</div>
+        </div>
+        <div class="small-row">
+          <div>收货仓库</div>
+          <div>{{printData.warehouseName}}</div>
+        </div>
+        <div class="small-row">
+          <div>货名</div>
+          <div>{{printData.goodsName}}</div>
+        </div>
+        <div class="small-row">
+          <div>类型</div>
+          <div>{{printData.type}}</div>
+        </div>
+        <div class="small-row">
+          <div>等级</div>
+          <div>{{printData.grade}}</div>
+        </div>
+        <div class="small-row">
+          <div>水分%</div>
+          <div>{{printData.waterContent}}</div>
+        </div>
+        <div class="small-row">
+          <div>杂质%</div>
+          <div>{{printData.impurity}}</div>
+        </div>
+        <div class="small-row">
+          <div>毛重</div>
+          <div>{{printData.grossWeight}}</div>
+        </div>
+        <div class="small-row">
+          <div>皮重</div>
+          <div>{{printData.tare}}</div>
+        </div>
+        <div class="small-row">
+          <div>扣杂重</div>
+          <div>{{printData.weighingManagement.buckleMiscellaneous}}</div>
+        </div>
+        <div class="small-row">
+          <div>净重</div>
+          <div>{{printData.netWeight}}</div>
+        </div>
+        <div class="small-row">
+          <div>纯重</div>
+          <div>{{printData.pureWeight}}</div>
+        </div>
+        <div class="small-row">
+          <div>净重单价</div>
+          <div>{{printData.tidalGrainPrice}}</div>
+        </div>
+        <div class="small-row">
+          <div>粮款</div>
+          <div>{{printData.grainMoney}}</div>
+        </div>
+        <div class="small-row">
+          <div>称重补助</div>
+          <div>{{printData.weighingSubsidy}}</div>
+        </div>
+        <div class="small-row">
+          <div>运费补助</div>
+          <div>{{printData.freightSubsidy}}</div>
+        </div>
+        <div class="small-row">
+          <div>卸车补助</div>
+          <div>{{printData.unloadSubsidy}}</div>
+        </div>
+        <div class="small-row">
+          <div>其他补助</div>
+          <div>{{printData.otherSubsidy}}</div>
+        </div>
+        <div class="small-row">
+          <div>称重扣款</div>
+          <div>{{printData.weighingDeduction}}</div>
+        </div>
+        <div class="small-row">
+          <div>运费扣款</div>
+          <div>{{printData.freightDeduction}}</div>
+        </div>
+        <div class="small-row">
+          <div>卸车扣款</div>
+          <div>{{printData.unloadDeduction}}</div>
+        </div>
+        <div class="small-row">
+          <div>质量扣款</div>
+          <div>{{printData.qualityDeduction}}</div>
+        </div>
+        <div class="small-row">
+          <div>其他扣款</div>
+          <div>{{printData.otherDeduction}}</div>
+        </div>
+        <div class="small-row">
+          <div>纯重单价</div>
+          <div>{{printData.solidGrainPrice}}</div>
+        </div>
+        <div class="small-row">
+          <div>合计应付</div>
+          <div>{{printData.calculationPayable}}</div>
+        </div>
+        <div class="small-row">
+          <div>购粮性质</div>
+          <div>{{printData.natureOfGrainPurchase}}</div>
+        </div>
+        <div class="small-row">
+          <div>车牌号</div>
+          <div>{{printData.carNo}}</div>
+        </div>
+        <div class="small-row">
+          <div>记事</div>
+          <div>{{printData.remarks}}</div>
+        </div>
+        <div class="small-row">
+          <div>实付金额</div>
+          <div>{{printData.actualPayment}}</div>
+        </div>
+        <div class="small-row">
+          <div>人民币(大写)</div>
+          <div>{{printData.capitalize}}</div>
+        </div>
+        <div class="small-row">
+          <div>质检</div>
+          <div>{{printData.qualityInspector}}</div>
+        </div>
+        <div class="small-row">
+          <div>毛检</div>
+          <div>{{printData.secretaryWeigher}}</div>
+        </div>
+        <div class="small-row">
+          <div>皮检</div>
+          <div>{{printData.skinInspector}}</div>
+        </div>
+        <div class="small-row">
+          <div>结算</div>
+          <div>{{printData.settlementClerk}}</div>
+        </div>
+        <div class="small-row">
+          <div>付款</div>
+          <div>{{printData.actualPayment}}</div>
+        </div>
+        <div class="small-row">
+          <div>复点</div>
+          <div>&nbsp;&nbsp;&nbsp;</div>
+        </div>
+      </div>
+    </div>
+  </body>
+  <script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
+  <script src="https://unpkg.com/element-ui/lib/index.js"></script>
+  <script type="text/javascript">
+    new Vue({
+      el: '#app',
+      data: {
+        isShowPrintType1: false,
+        isShowPrintType2: false,
+        isShowPrintType3: false,
+        isShowPrintType4: false,
+        isShowPrintType5:false,
+        showType: [],
+        printData: {},
+        printData1: [],
+        customerList: {},
+        customerList1: [],
+        name: '',
+        bigContent: false,
+        smallContent: false,
+        date: '',
+        imageUrl1: '',
+        imageUrl2: '',
+        imageUrl3: '',
+        imageUrl4: '',
+        identity: [],
+        bank: [],
+        selectPrint: false,
+        onlyShowPz: false,
+        tableData: []
+      },
+      computed: {},
+      methods: {
+        dealNo(str) {
+          return str.slice(4)
+        },
+        tableRowClassName({
+          row,
+          rowIndex
+        }) {
+          if (rowIndex === 1) {
+            return 'warning-row'
+          } else if (rowIndex === 3) {
+            return 'success-row'
+          }
+          return ''
+        },
+        getQueryVariable(variable) {
+          var query = window.location.search.substring(1)
+          var vars = query.split('&')
+          for (var i = 0; i < vars.length; i++) {
+            var pair = vars[i].split('=')
+            if (pair[0] == variable) {
+              return pair[1]
+            }
+          }
+          return false
+        },
+        printSmall() {},
+        printBig() {}
+      },
+      mounted() {
+        this.date = new Date().toLocaleString()
+        let _data = decodeURIComponent(this.getQueryVariable('dataList'))
+        if (!_data) {
+          this.selectPrint = true
+          this.printData1 = JSON.parse(
+            localStorage.getItem('selectPrint_selectPrintList')
+          )
+          console.log("对象", this.printData1)
+          console.log("对象", this.printData)
+          for (let i = 0; i < this.printData1.length; i++) {
+            if(!this.printData1[i].identityAuthenticationInfo.compAddress) this.printData1[i].identityAuthenticationInfo.compAddress=''
+            if (this.printData1[i].identityAuthenticationInfo.compAddress.length > 24) {
+              this.printData1[i].identityAuthenticationInfo.compAddress = this.printData1[i]
+                .identityAuthenticationInfo
+                .compAddress.substring(0, 24)
+            }
+          }
+        } else {
+          this.printData = JSON.parse(_data)
+          //地址过长截取
+          if (this.printData.identityAuthenticationInfo.compAddress.length > 24) {
+            this.printData.identityAuthenticationInfo.compAddress = this.printData.identityAuthenticationInfo
+              .compAddress.substring(0, 24)
+          }
+          this.selectPrint = false
+        }
+        let _type = decodeURIComponent(this.getQueryVariable('type'))
+        this.showType = decodeURIComponent(
+          this.getQueryVariable('printTypeList')
+        )
+        // this.pzList = this.showType.split(',')
+        // if((this.showType.indexOf('打印结算凭证')>-1)&&this.pzList.length==1){
+        //   this.onlyShowPz = true
+        // }
+        // this.pageType = decodeURIComponent(this.getQueryVariable('printTypeList'))
+        let _data1 = decodeURIComponent(this.getQueryVariable('customerList'))
+        if (!_data1) {
+          this.customerList1 = JSON.parse(
+            localStorage.getItem('selectPrint_selectCustomerList')
+          )
+        } else {
+          this.customerList = JSON.parse(_data1)
+        }
+        console.log('cwprint', localStorage.getItem('cwprint'))
+        var cwprint = localStorage.getItem('cwprint')
+        if (cwprint == 'true') {
+          if (this.selectPrint) {
+            for (let i = 0; i < this.customerList1.length; i++) {
+              let _url1 = this.customerList1[i].cardAddressUrl.split(',')
+              let _url2 = this.customerList1[i].payeeAddressUrl.split(',')
+              this.customerList1[i].imgURl = {
+                imageUrl1: _url1[0],
+                imageUrl2: _url1[1],
+                imageUrl3: _url2[0],
+                imageUrl4: _url2[0]
+              }
+            }
+          } else {
+            if (this.customerList.cardAddressUrl) {
+              this.identity = this.customerList.cardAddressUrl.split(',')
+              this.imageUrl1 = this.identity[0]
+              this.imageUrl2 = this.identity[1]
+            }
+            if (this.customerList.payeeAddressUrl) {
+              this.bank = this.customerList.payeeAddressUrl.split(',')
+
+              this.imageUrl3 = this.bank[0]
+              this.imageUrl4 = this.bank[1]
+            }
+            this.tableData = this.printData.weighingManagement
+          }
+          let _lsit = this.showType.split(',')
+          for (let i = 0; i < _lsit.length; i++) {
+            switch (_lsit[i]) {
+              case '打印身份证(正反面)':
+                this.isShowPrintType1 = !this.isShowPrintType1
+                break
+              case '打印银行卡(正反面)':
+                this.isShowPrintType2 = !this.isShowPrintType2
+                break
+              case '打印结算凭证':
+                this.isShowPrintType3 = !this.isShowPrintType3
+                break
+              case '打印检斤单':
+                this.isShowPrintType4 = !this.isShowPrintType4
+                break
+                case '打印回执单':
+                  this.isShowPrintType5 = !this.isShowPrintType5
+                  break
+            }
+          }
+        } else {
+          this.isShowPrintType3 = true
+        }
+        if (_type == 2) {
+          this.bigContent = true
+          this.smallContent = false
+        } else {
+          this.smallContent = true
+          this.bigContent = false
+        }
+        if (this.printData.compName == undefined) this.printData.compName = ''
+        document.title = this.printData.compName + '结算凭证'
+        window.print()
+        // sessionStorage.removeItem('selectPrint_selectPrintList');
+        // sessionStorage.removeItem('selectPrint_selectCustomerList');
+        window.onafterprint = function(event) {
+          window.history.back(-1)
+        }
+      },
+      watch: {}
+    })
+  </script>
+</html>

+ 338 - 0
public/static/print.html

@@ -0,0 +1,338 @@
+<!DOCTYPE html>
+<html>
+
+<head>
+  <meta charset="utf-8">
+  <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
+  <title></title>
+  <style>
+    .content {
+      text-align: center;
+      display: flex;
+      align-items: center;
+      justify-content: center;
+      flex-direction: column;
+    }
+
+    .title {
+      width: 600px;
+      position: relative;
+      /* border-top: 1px solid #EBEEF5;
+      border-left: 1px solid #EBEEF5;
+      border-right: 1px solid #EBEEF5; */
+      /* padding: 20px; */
+      box-sizing: border-box;
+      display: flex;
+      justify-content: center;
+      align-items: center;
+    }
+
+    .name {
+      font-size: 16px;
+      font-weight: 500;
+      color: #323233;
+      margin: 10px;
+    }
+
+    .price {
+      /* position: absolute;
+      right: 10px;
+      bottom: 0;
+      margin: auto;
+      font-size: 14px;
+      top: 0;
+      display: flex;
+    align-items: center; */
+    }
+    .tableBox {
+      width: 80px;
+      border-left: 1px solid #ccc;
+      /* border-right: 1px solid #ccc; */
+    }
+    .tableBox tr {
+      font-size: 12px;
+      padding: 0 !important;
+      display: flow-root;
+      /* border-left:1px solid #ccc; */
+      /* border-right:1px solid #ccc;*/
+      border-bottom:1px solid #ccc; 
+      display: flex;
+      justify-content: space-between;
+      padding-right: 10px;
+    }
+
+    .tableBox td {
+      font-size: 12px;
+      padding: 0 !important;
+    }
+
+    .tableBox .cell {
+      text-align: center;
+      padding: 0!important;
+      line-height: 22px;
+      /* margin:0 2px!important; */
+    }
+    .table-row{
+      display: flex;
+      border-top: 1px solid #ccc;
+    }
+    .el-table--scrollable-x .el-table__body-wrapper{
+      overflow: hidden!important;
+    }
+    .el-table td.el-table__cell, .el-table th.el-table__cell.is-leaf {
+    border: 0;
+    padding: 0;
+    text-overflow: initial;
+    border-right: 1px solid #ccc;
+}
+.el-table__row td:nth-of-type(1){
+  width: 40%;
+  /* border-right: 1px solid #ccc!important; */
+  background: #cccccc3d;
+}
+.el-table__row td:nth-of-type(2){
+  width: 60%;
+}
+.el-table::before {
+    left: 0;
+    bottom: 0;
+    width: 100%;
+    height: 0px;
+}
+.content0{
+  /* margin-bottom: 30vh; */
+  /* padding-top: 5vh; */
+  /* background-color: powderblue; */
+}
+.content1{
+  /* margin-bottom: 20vh; */
+  /* padding-top: 5vh; */
+  margin-top: 15vh;
+/* background: palegreen; */
+}
+.content2{
+  /* padding-top: 5vh; */
+  /* margin-bottom: 30vh; */
+  margin-top: 15vh;
+  /* background: yellow; */
+}
+.content3{
+  /* padding-top: 10px; */
+  margin-top: 15vh;
+  /* background-color: red; */
+}
+.has-gutter th:nth-of-type(1){
+  width: 40%;
+}
+.has-gutter th:nth-of-type(2){
+  width: 60%;
+}
+.tableBox7 tr{
+border-right: 1px solid #ccc!important;
+}
+  </style>
+</head>
+
+<body>
+  <div id="app">
+    <div class="content" :class="'content'+index" v-for="(item,index) in 4">
+      <div class="title">
+        <div class="name" v-if="index==0">一等单价 {{name}}价格对照表(按水分)</div>
+        <div class="name" v-if="index==1">二等单价 {{name}}价格对照表(按水分)</div>
+        <div class="name" v-if="index==2">三等单价 {{name}}价格对照表(按水分)</div>
+        <div class="name" v-if="index==3">等外单价 {{name}}价格对照表(按水分)</div>
+        <div class="price">价格单位:元/公斤</div>
+      </div>
+      <div class="table-row" >
+        <el-table :data="tableData1" :row-class-name="tableRowClassName" class="tableBox">
+          <el-table-column prop="waterMin" label="水分" header-align="center">
+          </el-table-column>
+          <!-- <el-table-column prop="waterMax" label="水分上限(%)" header-align="center">
+            </el-table-column> -->
+          <el-table-column prop="price1" label="单价" v-if="index==0" header-align="center">
+          </el-table-column>
+          <el-table-column prop="price2" label="单价" v-if="index==1" header-align="center">
+          </el-table-column>
+          <el-table-column prop="price3" label="单价" v-if="index==2" header-align="center">
+          </el-table-column>
+          <el-table-column prop="priceOther" label="单价" v-if="index==3" header-align="center">
+          </el-table-column>
+        </el-table>
+        <el-table :data="tableData2" :row-class-name="tableRowClassName" class="tableBox">
+          <el-table-column prop="waterMin" label="水分" header-align="center">
+          </el-table-column>
+          <!-- <el-table-column prop="waterMax" label="水分上限(%)" header-align="center">
+           </el-table-column> -->
+          <el-table-column prop="price1" label="单价" v-if="index==0" header-align="center">
+          </el-table-column>
+          <el-table-column prop="price2" label="单价" v-if="index==1" header-align="center">
+          </el-table-column>
+          <el-table-column prop="price3" label="单价" v-if="index==2" header-align="center">
+          </el-table-column>
+          <el-table-column prop="priceOther" label="单价" v-if="index==3" header-align="center">
+          </el-table-column>
+        </el-table>
+        <el-table :data="tableData3" :row-class-name="tableRowClassName" class="tableBox">
+          <el-table-column prop="waterMin" label="水分" header-align="center">
+          </el-table-column>
+          <!-- <el-table-column prop="waterMax" label="水分上限(%)" header-align="center">
+           </el-table-column> -->
+          <el-table-column prop="price1" label="单价" v-if="index==0" header-align="center">
+          </el-table-column>
+          <el-table-column prop="price2" label="单价" v-if="index==1" header-align="center">
+          </el-table-column>
+          <el-table-column prop="price3" label="单价" v-if="index==2" header-align="center">
+          </el-table-column>
+          <el-table-column prop="priceOther" label="单价" v-if="index==3" header-align="center">
+          </el-table-column>
+        </el-table>
+        <el-table :data="tableData4" :row-class-name="tableRowClassName" class="tableBox">
+          <el-table-column prop="waterMin" label="水分" header-align="center">
+          </el-table-column>
+          <!-- <el-table-column prop="waterMax" label="水分上限(%)" header-align="center">
+           </el-table-column> -->
+          <el-table-column prop="price1" label="单价" v-if="index==0" header-align="center">
+          </el-table-column>
+          <el-table-column prop="price2" label="单价" v-if="index==1" header-align="center">
+          </el-table-column>
+          <el-table-column prop="price3" label="单价" v-if="index==2" header-align="center">
+          </el-table-column>
+          <el-table-column prop="priceOther" label="单价" v-if="index==3" header-align="center">
+          </el-table-column>
+        </el-table>
+        <el-table :data="tableData5" :row-class-name="tableRowClassName" class="tableBox">
+          <el-table-column prop="waterMin" label="水分" header-align="center">
+          </el-table-column>
+          <!-- <el-table-column prop="waterMax" label="水分上限(%)" header-align="center">
+           </el-table-column> -->
+          <el-table-column prop="price1" label="单价" v-if="index==0" header-align="center">
+          </el-table-column>
+          <el-table-column prop="price2" label="单价" v-if="index==1" header-align="center">
+          </el-table-column>
+          <el-table-column prop="price3" label="单价" v-if="index==2" header-align="center">
+          </el-table-column>
+          <el-table-column prop="priceOther" label="单价" v-if="index==3" header-align="center">
+          </el-table-column>
+        </el-table>
+          <el-table :data="tableData6" :row-class-name="tableRowClassName" class="tableBox">
+            <el-table-column prop="waterMin" label="水分" header-align="center">
+            </el-table-column>
+            <!-- <el-table-column prop="waterMax" label="水分上限(%)" header-align="center">
+             </el-table-column> -->
+            <el-table-column prop="price1" label="单价" v-if="index==0" header-align="center">
+            </el-table-column>
+            <el-table-column prop="price2" label="单价" v-if="index==1" header-align="center">
+            </el-table-column>
+            <el-table-column prop="price3" label="单价" v-if="index==2" header-align="center">
+            </el-table-column>
+            <el-table-column prop="priceOther" label="单价" v-if="index==3" header-align="center">
+            </el-table-column>
+          </el-table>
+          <el-table :data="tableData7" :row-class-name="tableRowClassName" class="tableBox tableBox7">
+            <el-table-column prop="waterMin" label="水分" header-align="center">
+            </el-table-column>
+            <!-- <el-table-column prop="waterMax" label="水分上限(%)" header-align="center">
+             </el-table-column> -->
+            <el-table-column prop="price1" label="单价" v-if="index==0" header-align="center">
+            </el-table-column>
+            <el-table-column prop="price2" label="单价" v-if="index==1" header-align="center">
+            </el-table-column>
+            <el-table-column prop="price3" label="单价" v-if="index==2" header-align="center">
+            </el-table-column>
+            <el-table-column prop="priceOther" label="单价" v-if="index==3" header-align="center">
+            </el-table-column>
+          </el-table>
+      </div>
+
+    </div>
+
+  </div>
+</body>
+<script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
+<script src="https://unpkg.com/element-ui/lib/index.js"></script>
+<script type="text/javascript">
+  new Vue({
+    el: '#app',
+    data: {
+      tableData: [],
+      tableData1: [],
+      tableData2: [],
+      tableData3: [],
+      tableData4: [],
+      tableData5: [],
+      tableData6: [],
+      tableData7: [],
+      name: "",
+      waterMin: '',
+      waterMax: ''
+    },
+    computed: {},
+    methods: {
+      tableRowClassName({
+        row,
+        rowIndex
+      }) {
+        if (rowIndex === 1) {
+          return 'warning-row';
+        } else if (rowIndex === 3) {
+          return 'success-row';
+        }
+        return '';
+      },
+      getQueryVariable(variable) {
+        var query = window.location.search.substring(1);
+        var vars = query.split("&");
+        for (var i = 0; i < vars.length; i++) {
+          var pair = vars[i].split("=");
+          if (pair[0] == variable) {
+            return pair[1];
+          }
+        }
+        return (false);
+      }
+    },
+    mounted() {
+      let _data = localStorage.getItem("pricePrintList")
+      this.name = decodeURIComponent(this.getQueryVariable("name"))
+      console.log(_data)
+      this.tableData = JSON.parse(_data)
+      // 构造显示数据
+      this.waterMin = this.tableData[0].waterMin
+      this.waterMax = this.tableData[0].waterMax
+      document.title = this.name + '价格对照表(按水分)'
+      for (let i = 0; i < this.tableData.length; i++) {
+        // if(!this.tableData[i].waterMin.toString().split(".")[1]){
+        //   this.tableData[i].waterMin = this.tableData[i].waterMin+'.0'
+        // }
+        if (i <= 39) {
+          this.tableData1.push(this.tableData[i])
+        } else if (i <= 79 && i > 39) {
+          this.tableData2.push(this.tableData[i])
+        }
+        else if (i <= 119 && i > 79) {
+          this.tableData3.push(this.tableData[i])
+        }
+        else if (i <= 159 && i > 119) {
+          this.tableData4.push(this.tableData[i])
+        }
+        else if (i <= 199 && i > 159) {
+          this.tableData5.push(this.tableData[i])
+        }
+        else if (i <= 239 && i > 199) {
+          this.tableData6.push(this.tableData[i])
+        }
+        else if (i <= 279 && i > 239) {
+          this.tableData7.push(this.tableData[i])
+        }
+      }
+      // window.print()
+      window.onafterprint = function (event) {
+        window.history.back(-1)
+      };
+    },
+    watch: {
+    }
+  })
+</script>
+
+</html>

+ 335 - 0
public/static/tradeServicesPrint.html

@@ -0,0 +1,335 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css" />
+    <title></title>
+    <style>
+      table,
+      table tr th,
+      table tr td {
+        border: 2px solid #333333;
+        padding: 5px 0;
+      }
+
+      #app {
+        height: 88vh;
+        position: relative;
+      }
+
+      .content {
+        width: 1000px;
+        /* height: 583px; */
+        margin: auto;
+        /* position: absolute; */
+        /* top: -5vh; */
+        /* bottom: 0;
+        left: 0;
+        right: 0; */
+      }
+
+      table {
+        width: 100%;
+        text-align: center;
+        border-collapse: collapse;
+        border: 3px solid #333333;
+      }
+
+      .col-bgc {
+        background: #f6f7fb;
+      }
+
+      .bottom-row1 {
+        display: flex;
+        justify-content: space-between;
+        margin: 20px 0;
+      }
+
+      .bottom-row2 {
+        display: flex;
+        margin: 10px 0;
+      }
+      .config {
+        margin-right: 240px;
+      }
+
+      .bottom-row3 {
+        margin: 10px 0;
+      }
+
+      .title {
+        text-align: center;
+        font-size: 24px;
+      }
+
+      .number {
+        text-align: right;
+        margin-bottom: 10px;
+      }
+      .sign {
+        margin-right: 100px;
+      }
+
+      .header {
+        display: flex;
+        justify-content: space-between;
+        font-size: 16px;
+        margin: 10px 0;
+      }
+      .header-top {
+        display: flex;
+        justify-content: space-between;
+      }
+      .center {
+       height: calc(100vh - 8px);
+      }
+    </style>
+  </head>
+  <body>
+    <div id="app">
+      <div v-for="(item,index) in printData" >
+        <div class="center">
+            <div class="title">磅码单</div>
+            <div class="title">{{item.code}}</div>
+            <table class="table">
+              <tr class="row">
+                <td class="col col-bgc">单位</td>
+                <td class="col" colspan="4">{{item.companyName}}</td>
+                <td class="col col-bgc">类型</td>
+                <td class="col" colspan="1">{{item.inOutType}}</td>
+                <td class="col col-bgc">车牌号</td>
+                <td class="col" colspan="1">{{item.carNo}}</td>
+              </tr>
+              <tr class="row">
+                <td class="col col-bgc">仓库</td>
+                <td class="col" colspan="4">{{item.warehouseName}}</td>
+                <td class="col col-bgc">仓位</td>
+                <td class="col" colspan="1">{{item.binNumber}}</td>
+                <td class="col col-bgc">货名</td>
+                <td class="col" colspan="1">{{item.goodsName}}</td>
+              </tr>
+              <tr class="row">
+                <td class="col col-bgc">毛重(公斤)</td>
+                <td class="col" colspan="1">{{item.grossWeight}}</td>
+                <td class="col col-bgc">皮重(公斤)</td>
+                <td class="col" colspan="2">{{item.tare}}</td>
+                <td class="col col-bgc">扣重(公斤)</td>
+                <td class="col" colspan="1">{{item.weight}}</td>
+                <td class="col col-bgc">净重(公斤)</td>
+                <td class="col" colspan="1">{{item.netWeight}}</td>
+              </tr>
+            </table> 
+            <div class="bottom">
+              <div style='justify-content: space-between;' class="bottom-row1">
+                <div class="config">毛检:{{item.secretaryWeigher}}皮检:{{item.skinInspector}}</div>
+                <div class="autograph">日期:{{item.inOutDate}}</div>
+              </div>
+            </div>
+        </div>
+      </div>
+      <div v-for="(item,index) in printData1" :key="index">
+      <div class="center">
+        <div class="title">中天昊元粮食贸易有限公司结算凭证</div>
+        <div class="header">
+           <div>单位名称:{{item.compName}}</div>
+        </div>
+        <div class="header-top">
+          <div>单位:公斤/元</div>
+          <div>No.</div>
+        </div>
+        <div class="header-top">
+          <div>开票日期:{{item.createDate}}</div>
+          <div class="number">{{item.paymentNo}}</div>
+        </div>
+        <table class="table">
+          <tr class="row">
+            <td rowspan="4" class="col col-bgc">买方</td>
+            <td class="col col-bgc">单位名称</td>
+            <td class="col" colspan="3">{{ item.compName}}</td>
+            <td rowspan="4" class="col col-bgc">卖方</td>
+            <td class="col col-bgc">姓名</td>
+            <td class="col" colspan="4">{{ item.customerName}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc">税务登记号</td>
+            <td class="col" colspan="3">{{ item.taxRegistrationNo}}</td>
+            <td class="col col-bgc">身份证号</td>
+            <td class="col" colspan="4">{{ item.identityAuthenticationInfo.customerNumberCard}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc">业务编号</td>
+            <td class="col" colspan="3">{{ item.paymentNo}}</td>
+            <td class="col col-bgc">卡号</td>
+            <td class="col" colspan="4">{{item.identityAuthenticationInfo.bankDeposit}}{{item.identityAuthenticationInfo.bankCard}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc">收货仓库</td>
+            <td class="col" colspan="3">{{item.warehouseName}}</td>
+            <td class="col col-bgc">地址</td>
+            <td class="col" colspan="4">{{item.identityAuthenticationInfo.compAddress}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc">货名</td>
+            <td class="col col-bgc">类型</td>
+            <td class="col col-bgc">等级</td>
+            <td class="col col-bgc">水分%</td>
+            <td class="col col-bgc">杂质%</td>
+            <td class="col col-bgc">毛重</td>
+            <td class="col col-bgc">皮重</td>
+            <td class="col col-bgc">扣重</td>
+            <td class="col col-bgc">扣杂</td>
+            <td class="col col-bgc">净重</td>
+          </tr>
+          <tr class="row">
+            <td class="col">{{ item.goodsName}}</td>
+            <td class="col">{{ item.type}}</td>
+            <td class="col">{{ item.qualityInspectionManagement.grade}}</td>
+            <td class="col">{{ item.qualityInspectionManagement.waterContent}}</td>
+            <td class="col">{{ item.qualityInspectionManagement.impurity}}</td>
+            <td class="col">{{ item.grossWeight}}</td>
+            <td class="col">{{ item.tare}}</td>
+            <td class="col" v-if="item.type == '干粮'">{{item.weighingManagement.buckleMiscellaneous}}</td>
+            <td class="col" v-if="item.type == '潮粮'">0</td>
+            <td class="col" v-if="item.type == '干粮'">0</td>
+            <td class="col" v-if="item.type == '潮粮'">{{item.netWeight}}</td>
+            <td class="col">{{item.pureWeight}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc"  v-if="item.type == '潮粮'">净重单价</td>
+            <td class="col col-bgc" v-if="item.type == '干粮'">单价</td>
+            <td class="col col-bgc">扣单价</td>
+            <td class="col col-bgc">粮款</td>
+            <td class="col col-bgc">称重补助</td>
+            <td class="col col-bgc">运费补助</td>
+            <td class="col col-bgc">卸车补助</td>
+            <td class="col col-bgc">其他补助</td>
+            <td class="col col-bgc">称重扣款</td>
+            <td class="col col-bgc">运费扣款</td>
+            <td class="col col-bgc">卸车扣款</td>
+          </tr>
+          <tr class="row">
+            <td class="col " v-if="item.type == '潮粮'">{{item.tidalGrainPrice}}</td>
+            <td class="col " v-if="item.type == '干粮'">{{item.qualityInspectionManagement.dryGrainPrice}}</td>
+            <td class="col ">{{ item.unitDeduction}}</td>
+            <td class="col ">{{ item.grainMoney}}</td>
+            <td class="col ">{{ item.weighingSubsidy}}</td>
+            <td class="col ">{{ item.freightSubsidy}}</td>
+            <td class="col ">{{ item.unloadSubsidy}}</td>
+            <td class="col ">{{ item.otherSubsidy}}</td>
+            <td class="col ">{{ item.weighingDeduction}}</td>
+            <td class="col ">{{ item.freightDeduction}}</td>
+            <td class="col ">{{ item.unloadDeduction}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc">质量扣款</td>
+            <td class="col col-bgc">其他扣款</td>
+            <td class="col col-bgc">合计应付</td>
+            <td class="col col-bgc">购粮性质</td>
+            <td class="col col-bgc">车牌号</td>
+            <td class="col col-bgc" colspan="5">记事</td>
+          </tr>
+          <tr class="row">
+            <td class="col ">{{ item.qualityDeduction}}</td>
+            <td class="col ">{{ item.otherDeduction}}</td>
+            <td class="col ">{{ item.calculationPayable}}</td>
+            <td class="col ">{{ item.qualityInspectionManagement.natureOfGrainPurchase}}</td>
+            <td class="col ">{{ item.carNo}}</td>
+            <td class="col " colspan="5">{{ item.remarks}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc" colspan="3">人民币(大写)</td>
+            <td class="col " colspan="7">{{item.capitalize}}</td>
+    
+          </tr>
+        </table>
+        <div class="bottom">
+          <div class="bottom-row1">
+            <div>质检:{{ item.qualityInspectionManagement.qualityInspector}}</div>
+            <div>毛检:{{ item.weighingManagement.secretaryWeigher}}</div>
+            <div>皮检:{{ item.weighingManagement.skinInspector}}</div>
+            <div>结算:{{ item.settlementClerk}}</div>
+            <div>付款:{{ item.cashier}}</div>
+            <div>复点:{{ }}</div>
+            <div></div>
+          </div>
+          <div class="bottom-row2">
+            <!-- <div class="left">
+              <img src="../../../../public/img/add.png" alt="" />
+            </div> -->
+            <div class="config">收货单位签名或盖章</div>
+            <div class="">客户签名</div>
+          </div>
+          <!-- <div class="bottom-row3">扫一扫</div> -->
+          <!-- <div class="bottom-row4">
+            <el-button type="primary">关闭</el-button> 
+             <el-button type="primary" @click="printSmall">打印小票</el-button> 
+             <el-button type="primary" @click="printBig">打印单据</el-button>
+          </div> -->
+        </div>
+      </div>
+    </div>
+    </div>
+  </body>
+  <script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
+  <script src="https://unpkg.com/element-ui/lib/index.js"></script>
+  <script type="text/javascript">
+    new Vue({
+      el: '#app',
+      data: {
+        printData: [
+            {
+                identityAuthenticationInfo:{},
+                qualityInspectionManagement:{},
+                weighingManagement:{},
+                customerNumberCard:{},
+            }
+        ],
+        printData1: [],
+        date: '',
+      },
+      computed: {},
+      methods: {
+        dealNo(str) {
+          return str.slice(4)
+        },
+        tableRowClassName({
+          row,
+          rowIndex
+        }) {
+          if (rowIndex === 1) {
+            return 'warning-row'
+          } else if (rowIndex === 3) {
+            return 'success-row'
+          }
+          return ''
+        },
+        getQueryVariable(variable) {
+          var query = window.location.search.substring(1)
+          var vars = query.split('&')
+          for (var i = 0; i < vars.length; i++) {
+            var pair = vars[i].split('=')
+            if (pair[0] == variable) {
+              return pair[1]
+            }
+          }
+          return false
+        },
+        printSmall() {},
+        printBig() {}
+      },
+      mounted() {
+        this.date = new Date().toLocaleString()
+        this.printData = JSON.parse(sessionStorage.getItem('inOutRecord_printBD'))
+        this.printData1 = JSON.parse(sessionStorage.getItem('inOutRecord_printJSD'))
+        console.log("磅单",this.printData)
+        console.log("结算单",this.printData1)
+        // document.title = this.printData.compName + '结算凭证'
+        window.print()
+        window.onafterprint = function(event) {
+          window.history.back(-1)
+        }
+      },
+      watch: {}
+    })
+  </script>
+</html>

+ 163 - 0
public/static/warehouseBatchPrint.html

@@ -0,0 +1,163 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="utf-8">
+    <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
+    <title></title>
+    <style>
+      table,
+      table tr th,
+      table tr td {
+        border: 2px solid #333333;
+        padding: 5px 0;
+        height: 55px;
+      }
+
+      #app {
+         /* height: 98vh;  */
+        position: relative; 
+      }
+
+      .content {
+        width: 1000px;
+        padding: 70px 20px 20px 20px;
+        font-size: 22px;
+        height: calc(100vh - 7.5vh) ;
+        top: 0;
+        bottom: 0;
+        left: 0;
+        right: 0;
+      }
+
+      table {
+        width: 100%;
+        text-align: center;
+        border-collapse: collapse;
+        border: 3px solid #333333;
+      }
+
+      .col-bgc {
+        background: #f6f7fb;
+      }
+
+      .bottom-row1 {
+        display: flex;
+        /* justify-content: space-between; */
+        margin-top: 5px 0;
+      }
+
+      .bottom-row2 {
+        display: flex;
+      }
+      .config {
+        margin-top: 10px;
+        margin-right: 240px;
+      }
+      .autograph{
+        margin-top: 10px;
+     }
+
+      .title {
+        text-align: center;
+        font-size: 36px;
+        font-weight: 500;
+        margin-bottom: 20px;
+      }
+    </style>
+  </head>
+  <body>
+    <div id="app">
+      <div class="content"  v-for="(item,index) in tableData">
+        <div v-if="item.inOutFlag == '2'" class="title">{{item.companyName}}</div>
+        <div v-else  class="title">{{item.contractManagementInfo?item.contractManagementInfo.seller:item.companyName}}</div>
+        <div v-if="item.inOutFlag == '2'" class="title">入库检斤单</div>
+        <div v-else class="title">出库检斤单</div>
+        <table class="table">
+          <tr class="row">
+            <td class="col col-bgc">送货单位</td>
+            <td class="col" colspan="4">{{item.contractManagementInfo?item.contractManagementInfo.seller:item.warehouseName}}</td>
+            <td class="col col-bgc">车牌号</td>
+            <td class="col" colspan="1">{{item.carNo}}</td>
+            <td class="col col-bgc">货名</td>
+            <td class="col" colspan="1">{{item.goodsName}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc">收货单位</td>
+            <td class="col" colspan="4">{{item.contractManagementInfo?item.contractManagementInfo.buyer:item.receiveWarehouse}}</td>
+            <td class="col col-bgc">类型</td>
+            <td class="col"colspan="1">{{item.type}}</td>
+            <td class="col col-bgc">检斤时间</td>
+            <td class="col" colspan="1">{{item.updateDate}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc">毛重(吨)</td>
+            <td class="col" colspan="2">{{item.grossWeight}}</td>
+            <td class="col col-bgc">皮重(吨)</td>
+            <td class="col" colspan="2">{{item.tare}}</td>
+            <td class="col col-bgc">净重(吨)</td>
+            <td class="col" colspan="2">{{item.netWeight}}</td>
+          </tr>
+        </table>
+        <div class="bottom">
+          <div class="bottom-row1">
+            <div>检斤员:{{item.backOffice}}</div>
+          </div>
+          <div class="bottom-row2">
+            <div class="config">收货单位签名或盖章:</div>
+            <div class="autograph">客户签名:</div>
+          </div>
+        </div>
+      </div>
+    </div>
+  </body>
+  <script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
+  <script src="https://unpkg.com/element-ui/lib/index.js"></script>
+  <script type="text/javascript">
+    new Vue({
+      el: '#app',
+      data: {
+        tableData: {
+        },
+        name: "",
+      },
+      computed: {},
+      methods: {
+        tableRowClassName({
+          row,
+          rowIndex
+        }) {
+          if (rowIndex === 1) {
+            return 'warning-row';
+          } else if (rowIndex === 3) {
+            return 'success-row';
+          }
+          return '';
+        },
+        getQueryVariable(variable) {
+          var query = window.location.search.substring(1);
+          var vars = query.split("&");
+          for (var i = 0; i < vars.length; i++) {
+            var pair = vars[i].split("=");
+            if (pair[0] == variable) {
+              return pair[1];
+            }
+          }
+          return (false);
+        },
+        printSmall() {},
+        printBig() {},
+      },
+      mounted() {
+        this.tableData = JSON.parse(localStorage.getItem("warehouseBatchPrint"))
+        console.log("打印数据", this.tableData)
+        document.title = "粮食检斤单"
+        window.print()
+        window.onafterprint = function(event) {
+          window.history.back(-1)
+        };
+      },
+      watch: {}
+    })
+  </script>
+
+</html>

+ 320 - 0
public/static/warehousePrint.html

@@ -0,0 +1,320 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="utf-8" />
+    <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css" />
+    <title></title>
+    <style>
+      table,
+      table tr th,
+      table tr td {
+        border: 2px solid #333333;
+        padding: 5px 0;
+      }
+
+      #app {
+        height: 88vh;
+        position: relative;
+      }
+
+      .content {
+        width: 1000px;
+        /* height: 583px; */
+        margin: auto;
+        /* position: absolute; */
+        /* top: -5vh; */
+        /* bottom: 0;
+        left: 0;
+        right: 0; */
+      }
+
+      table {
+        width: 100%;
+        text-align: center;
+        border-collapse: collapse;
+        border: 3px solid #333333;
+      }
+
+      .col-bgc {
+        background: #f6f7fb;
+      }
+
+      .bottom-row1 {
+        display: flex;
+        justify-content: space-between;
+        margin: 20px 0;
+      }
+
+      .bottom-row2 {
+        display: flex;
+        margin: 10px 0;
+      }
+
+      img {
+        width: 41px;
+        height: 41px;
+        /* margin-right: 118px; */
+      }
+
+      .config {
+        margin-right: 240px;
+      }
+
+      .bottom-row3 {
+        margin: 10px 0;
+      }
+
+      .title {
+        text-align: center;
+        font-size: 24px;
+      }
+
+      .number {
+        text-align: right;
+        margin-bottom: 10px;
+      }
+
+      .small-row {
+        display: flex;
+      }
+
+      .small-content {
+        width: 400px;
+        margin: 0 auto;
+        border: 1px solid #ccc;
+        padding: 20px 20px 160px 20px;
+        position: absolute;
+        top: 0;
+        bottom: 0;
+        left: 0;
+        right: 0;
+        margin: auto;
+        height: 650px;
+      }
+
+      .small-title {
+        text-align: center;
+        font-size: 18px;
+        display: flex;
+        justify-content: space-between;
+        align-items: center;
+      }
+
+      .small-row {
+        display: flex;
+        justify-content: space-between;
+        margin: 10px;
+      }
+
+      .small-img {
+        margin-right: 0;
+      }
+
+      .sign {
+        margin-right: 100px;
+      }
+
+      .header {
+        display: flex;
+        justify-content: space-between;
+        font-size: 16px;
+        margin: 10px 0;
+      }
+
+      .header1 {
+        font-size: 24px;
+        margin: 30px 60px 10px 60px;
+        display: flex;
+        justify-content: center;
+      }
+
+      .line {
+        height: 2px;
+        width: 410px;
+        margin: 3px auto;
+        background: black;
+      }
+
+      .line:nth-of-type(3) {
+        margin-bottom: 30px;
+      }
+
+      .header-top {
+        display: flex;
+        justify-content: space-between;
+      }
+
+      .sfcard {}
+
+      .sfcard-content {
+        display: flex;
+        align-items: center;
+        justify-content: space-evenly;
+      }
+
+      .sfcard-content img {
+        width: 45%;
+        height: 50vh;
+      }
+
+      .sfcard-title {
+        font-size: 28px;
+        text-align: center;
+        margin: 10px 0;
+      }
+
+      .avatar {
+        margin-bottom: 120px;
+      }
+
+      .avatar:nth-of-type(2) {
+        margin-bottom: 140px;
+      }
+
+      .center {
+        height: calc(100vh - 8px);
+      }
+    </style>
+  </head>
+  <body>
+    <div id="app">
+      <div class="center">
+        <div class="title">黑龙江中天昊元贸易有限公司<span v-if="type == '2'">出</span><span v-if="type == '3'">入</span>库单</div>
+        <div class='title12'>
+          <span>仓库名:</span>
+          <span>{{warehouseName}}</span>
+          <span>质检员:</span>
+          <span>{{printData[0].qualityInspector}}</span>
+          <span>复检员:</span>
+          <span>{{printData[0].reInspector}}</span>
+          <span>检斤员:</span>
+          <span>{{printData[0].agent}}</span>
+          <p>
+            <span>值班日期:</span>
+            <span>{{startDate}}</span>
+            <span>到</span>
+            <span>{{endDate}}</span>
+          </p>
+          <p>
+            <span>货名:</span>
+            <span>玉米</span>
+            <span style="margin-left:100px">质量单位:吨</span>
+          </p>
+        </div>
+        <table class="table">
+          <tr class="row">
+            <th v-if="type == '2'">出库日期</th>
+            <th v-if="type == '3'">入库日期</th>
+            <th>车牌号</th>
+            <th>仓位号</th>
+            <th>箱一号</th>
+            <th>箱二号</th>
+            <th>毛重</th>
+            <th>皮重</th>
+            <th>净重</th>
+          </tr>
+          <tr class="row" v-for="(item,index) in printData">
+            <td class="col">{{item.inOutDate}}</td>
+            <td class="col">{{item.carNo}}</td>
+            <td class="col">{{item.binNumber}}</td>
+            <td class="col">{{item.boxNo}}</td>
+            <td class="col">{{item.boxNo}}</td>
+            <td class="col">{{item.grossWeight}}</td>
+            <td class="col">{{item.tare}}</td>
+            <td class="col">{{item.netWeight}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col">合计</td>
+            <td class="col"></td>
+            <td class="col"></td>
+            <td class="col"></td>
+            <td class="col"></td>
+            <td class="col">{{maoZhong.toFixed(3)}}</td>
+            <td class="col">{{piZhong.toFixed(3)}}</td>
+            <td class="col">{{jingZhong.toFixed(3)}}</td>
+          </tr>
+        </table>
+      </div>
+
+    </div>
+  </body>
+  <script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
+  <script src="https://unpkg.com/element-ui/lib/index.js"></script>
+  <script type="text/javascript">
+    new Vue({
+      el: '#app',
+      data: {
+        showType: [],
+        printData: [{
+          identityAuthenticationInfo: {},
+          qualityInspectionManagement: {},
+          weighingManagement: {},
+          customerNumberCard: {},
+        }],
+        printData1: [],
+        customerList: {},
+        customerList1: [],
+
+        date: '',
+        warehouseName: "",
+        type: "",
+        maoZhong: 0,
+        piZhong: 0,
+        jingZhong: 0,
+        binNos: [],
+        binNoShow: "",
+        startDate: "",
+        endDate: "",
+      },
+      computed: {},
+      methods: {
+        dealNo(str) {
+          return str.slice(4)
+        },
+        tableRowClassName({
+          row,
+          rowIndex
+        }) {
+          if (rowIndex === 1) {
+            return 'warning-row'
+          } else if (rowIndex === 3) {
+            return 'success-row'
+          }
+          return ''
+        },
+        getQueryVariable(variable) {
+          var query = window.location.search.substring(1)
+          var vars = query.split('&')
+          for (var i = 0; i < vars.length; i++) {
+            var pair = vars[i].split('=')
+            if (pair[0] == variable) {
+              return pair[1]
+            }
+          }
+          return false
+        },
+        printSmall() {},
+        printBig() {}
+      },
+      mounted() {
+        this.date = new Date().toLocaleString()
+        this.type = decodeURIComponent(this.getQueryVariable('type'))
+        this.warehouseName = decodeURIComponent(this.getQueryVariable('warehouseName'))
+        this.startDate = this.getQueryVariable('startDate')
+        this.endDate =this.getQueryVariable('endDate')
+        this.printData = JSON.parse(sessionStorage.getItem('inOutWarehouse_Print'))
+        for (var count = 0; count < this.printData.length; count++) {
+          this.maoZhong += this.printData[count].grossWeight
+          this.piZhong += this.printData[count].tare
+          this.jingZhong += this.printData[count].netWeight
+        }
+        // document.title = this.printData.compName + '结算凭证'
+        window.print()
+        window.onafterprint = function(event) {
+          window.history.back(-1)
+        }
+      },
+      watch: {}
+    })
+  </script>
+</html>

+ 470 - 0
public/static/weightCheck.html

@@ -0,0 +1,470 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="utf-8">
+    <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
+    <title></title>
+    <style>
+      table,
+      table tr th,
+      table tr td {
+        border: 2px solid #333333;
+        padding: 5px 0;
+        height: 43px;
+      }
+
+      #app {
+        /* height: 98vh;
+        position: relative; */
+      }
+
+      .content {
+        width: 1000px;
+        padding: 30px 20px 20px 20px;
+        font-size: 18px;
+        height: 660px;
+      }
+
+      .a5-content {
+        height: 130vh;
+      }
+
+      table {
+        width: 100%;
+        text-align: center;
+        border-collapse: collapse;
+        border: 3px solid #333333;
+      }
+
+      .col-bgc {
+        background: #f6f7fb;
+      }
+
+      .bottom-row1 {
+        display: flex;
+        /* justify-content: space-between; */
+        margin-top: 5px 0;
+      }
+
+      .bottom-row2 {
+        display: flex;
+      }
+
+      img,.left{
+        width: 120px;
+        height: 120px;
+        position: absolute;
+        right: 20px;
+        top: 12px;
+      }
+
+      .config {
+        margin-top: 10px;
+        margin-right: 240px;
+      }
+
+      .autograph {
+        margin-top: 10px;
+      }
+
+      .bottom-row3 {
+        margin: 10px 0;
+      }
+
+      .title {
+        text-align: center;
+        font-size: 36px;
+        font-weight: 500;
+        position: relative;
+      }
+
+      .number {
+        text-align: right;
+        margin-bottom: 10px;
+        margin-top: 30px;
+      }
+
+      .small-row {
+        display: flex;
+      }
+
+      .small-content {
+        width: 300px;
+        /* margin: 0 auto;
+        border: 1px solid #ccc;
+        padding: 20px 20px 160px 20px;
+        position: absolute;
+        top: 0;
+        bottom: 0;
+        left: 0;
+        right: 0;
+        margin: auto; */
+      }
+
+      .small-title {
+        text-align: center;
+        font-size: 18px;
+        /* display: flex; */
+        justify-content: space-between;
+        align-items: center;
+      }
+       .numberNo{
+          font-size: 36px;
+          margin: auto;
+        }
+      .small-row {
+        display: flex;
+        justify-content: space-between;
+        margin: 10px;
+      }
+
+      .small-img {
+        margin-right: 0;
+      }
+
+      .sign {
+        margin-right: 100px;
+      }
+      .small-code{
+        position: relative;
+        left:calc(50% - 55px)
+      }
+    </style>
+  </head>
+  <body>
+    <div id="app">
+      <div v-if="selectPrint">
+        <div v-for="(item,index) in tableData1" :key="index">
+          <div class="content" :class="pageType=='A5'?'a5-content':''">
+            <div class="title">{{item.compName}}</div>
+            <div class="title">入库检斤单</div>
+            <div class="left">
+              <img :src="item.codeUrl" alt="">
+            </div>
+            <div class="number">{{item.number}}</div>
+            <table class="table">
+              <tr class="row">
+                <td class="col col-bgc">客户姓名</td>
+                <td class="col" colspan="2">{{item.customer}}</td>
+                <td class="col col-bgc">客户电话</td>
+                <td class="col">{{item.customerPhone}}</td>
+                <td class="col col-bgc">车牌号</td>
+                <td class="col" colspan="2">{{item.carNumber}}</td>
+              </tr>
+              <tr class="row">
+                <td class="col col-bgc">收货单位</td>
+                <td class="col" colspan="2">{{item.compName}}</td>
+                <td class="col col-bgc">联系人</td>
+                <td class="col">{{item.person}}</td>
+                <td class="col col-bgc">联系电话</td>
+                <td class="col" colspan="2">{{item.personPhone}}</td>
+              </tr>
+              <tr class="row">
+                <td class="col col-bgc">货名</td>
+                <td class="col">{{item.goodsName}}</td>
+                <td class="col col-bgc">类型</td>
+                <td class="col">{{item.type}}</td>
+                <td class="col col-bgc">容量(克/升)</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.bulkDensity:''}}</td>
+                <td class="col col-bgc">不完善粒(%)</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.imperfectGrain:''}}</td>
+              </tr>
+              <tr class="row">
+                <td class="col col-bgc">等级</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.grade:''}}</td>
+                <td class="col col-bgc">水分(%)</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.waterContent:''}}</td>
+                <td class="col col-bgc">热损伤(%)</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.jiaorenli:''}}</td>
+                <td class="col col-bgc">质检时间</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.qualityDate:''}}</td>
+              </tr>
+              <tr class="row">
+                <td class="col col-bgc">杂质(%)</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.impurity:''}}</td>
+                <td class="col col-bgc">霉变粒(%)</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.mildewGrain:''}}</td>
+                <td class="col col-bgc">扣杂</td>
+                <td class="col">{{item.qualityInspectionManagement?item.qualityInspectionManagement.buckleMiscellaneous:''}}</td>
+                <td class="col " colspan="2"></td>
+              </tr>
+              <tr class="row">
+                <td class="col col-bgc">毛重(公斤)</td>
+                <td class="col">{{item.grossWeight}}</td>
+                <td class="col col-bgc">皮重(公斤)</td>
+                <td class="col">{{item.tare}}</td>
+                <td class="col col-bgc">扣重(公斤)</td>
+                <td class="col">{{item.buckleMiscellaneous}}</td>
+                <td class="col col-bgc">净重(公斤)</td>
+                <td class="col">{{item.netWeight}}</td>
+                <!-- <td class="col " colspan="2"></td> -->
+
+              </tr>
+              <tr class="row">
+                <td class="col col-bgc" colspan="2">毛重检斤时间</td>
+                <td class="col" colspan="2">{{item.grossDate}}</td>
+                <td class="col col-bgc" colspan="2"> 皮重检斤时间</td>
+                <td class="col" colspan="2">{{item.tareDate}}</td>
+              </tr>
+            </table>
+            <div class="bottom">
+              <div class="bottom-row1">
+                <div>毛检:{{item.secretaryWeigher}}</div>
+                <div style="margin-left:60px">皮检:{{item.skinInspector}}</div>
+                <!-- <div>{{tableData.qualityDate}}</div> -->
+              </div>
+              <div class="bottom-row2">
+                <!-- <div class="left">
+                <img :src="item.codeUrl" alt="">
+              </div> -->
+                <div class="config">收货单位签名或盖章:</div>
+                <div class="autograph">客户签名:</div>
+              </div>
+              <!-- <div class="bottom-row3">扫一扫</div> -->
+            </div>
+          </div>
+        </div>
+      </div>
+      <div v-else>
+        <div class="content" v-if="bigContent">
+
+          <div class="title">{{tableData.compName}}</div>
+          <div class="title">入库检斤单</div>
+          <div class="left">
+            <img :src="tableData.codeUrl" alt="">
+          </div>
+          <div class="number">{{tableData.number}}</div>
+          <table class="table">
+            <tr class="row">
+              <td class="col col-bgc">客户姓名</td>
+              <td class="col" colspan="2">{{tableData.customer}}</td>
+              <td class="col col-bgc">客户电话</td>
+              <td class="col">{{tableData.customerPhone}}</td>
+              <td class="col col-bgc">车牌号</td>
+              <td class="col" colspan="2">{{tableData.carNumber}}</td>
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc">收货单位</td>
+              <td class="col" colspan="2">{{tableData.compName}}</td>
+              <td class="col col-bgc">联系人</td>
+              <td class="col">{{tableData.person}}</td>
+              <td class="col col-bgc">联系电话</td>
+              <td class="col" colspan="2">{{tableData.personPhone}}</td>
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc">货名</td>
+              <td class="col">{{tableData.goodsName}}</td>
+              <td class="col col-bgc">类型</td>
+              <td class="col">{{tableData.type}}</td>
+              <td class="col col-bgc">容量(克/升)</td>
+              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.bulkDensity:''}}</td>
+              <td class="col col-bgc">不完善粒(%)</td>
+              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.imperfectGrain:''}}</td>
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc">等级</td>
+              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.grade:''}}</td>
+              <td class="col col-bgc">水分(%)</td>
+              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.waterContent:''}}</td>
+              <td class="col col-bgc">热损伤(%)</td>
+              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.jiaorenli:''}}</td>
+              <td class="col col-bgc">质检时间</td>
+              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.qualityDate:''}}</td>
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc">杂质(%)</td>
+              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.impurity:''}}</td>
+              <td class="col col-bgc">霉变粒(%)</td>
+              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.mildewGrain:''}}</td>
+              <td class="col col-bgc">扣杂</td>
+              <td class="col">{{tableData.qualityInspectionManagement?tableData.qualityInspectionManagement.buckleMiscellaneous:''}}</td>
+              <td class="col " colspan="2"></td>
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc">毛重(公斤)</td>
+              <td class="col">{{tableData.grossWeight}}</td>
+              <td class="col col-bgc">皮重(公斤)</td>
+              <td class="col">{{tableData.tare}}</td>
+              <td class="col col-bgc">扣重(公斤)</td>
+              <td class="col">{{tableData.buckleMiscellaneous}}</td>
+              <td class="col col-bgc">净重(公斤)</td>
+              <td class="col">{{tableData.netWeight}}</td>
+              <td class="col " colspan="2"></td>
+
+            </tr>
+            <tr class="row">
+              <td class="col col-bgc" colspan="2">毛重检斤时间</td>
+              <td class="col" colspan="2">{{tableData.grossDate}}</td>
+              <td class="col col-bgc" colspan="2"> 皮重检斤时间</td>
+              <td class="col" colspan="2">{{tableData.tareDate}}</td>
+            </tr>
+          </table>
+          <div class="bottom">
+            <div class="bottom-row1">
+              <div>毛检:{{tableData.secretaryWeigher}}</div>
+              <div style="margin-left:60px">皮检:{{tableData.skinInspector}}</div>
+              <!-- <div>{{tableData.qualityDate}}</div> -->
+            </div>
+            <div class="bottom-row2">
+              <!-- <div class="left">
+                <img :src="tableData.codeUrl" alt="">
+              </div> -->
+              <div class="config">收货单位签名或盖章:</div>
+              <div class="autograph">客户签名:</div>
+            </div>
+            <!-- <div class="bottom-row3">扫一扫</div> -->
+          </div>
+        </div>
+      </div>
+
+      <div class="small-content" v-if="smallContent">
+        <div class="small-title">
+          <div  class="numberNo">{{tableData.number.substring(tableData.number.length - 3)}}</div>
+          <div style="margin: auto;">粮食检斤单</div>
+        </div>
+        <img :src="tableData.codeUrl" alt="" class="small-code">
+        <div class="small-row">
+          <div>编号</div>
+          <div>{{tableData.number}}</div>
+        </div>
+        <div class="small-row">
+          <div>客户姓名</div>
+          <div>{{tableData.customer}}</div>
+        </div>
+        <div class="small-row">
+          <div>客户电话</div>
+          <div>{{tableData.customerPhone}}</div>
+        </div>
+        <div class="small-row">
+          <div>车牌号</div>
+          <div>{{tableData.carNumber}}</div>
+        </div>
+        <div class="small-row">
+          <div>收货单位</div>
+          <div>{{tableData.compName}}</div>
+        </div>
+        <div class="small-row">
+          <div>联系人</div>
+          <div>{{tableData.person}}</div>
+        </div>
+        <div class="small-row">
+          <div>联系电话</div>
+          <div>{{tableData.personPhone}}</div>
+        </div>
+        <div class="small-row">
+          <div>货名</div>
+          <div>{{tableData.goodsName}}</div>
+        </div>
+        <div class="small-row">
+          <div>类型</div>
+          <div>{{tableData.type}}</div>
+        </div>
+        <div class="small-row">
+          <div>皮重(公斤)</div>
+          <div>{{tableData.tare}}</div>
+        </div>
+        <div class="small-row">
+          <div>皮检时间</div>
+          <div>{{tableData.tareDate}}</div>
+        </div>
+        <div class="small-row">
+          <div>毛重(公斤)</div>
+          <div>{{tableData.grossWeight}}</div>
+        </div>
+        <div class="small-row">
+          <div>毛检时间</div>
+          <div>{{tableData.grossDate}}</div>
+        </div>
+
+        <!-- <div class="small-row">
+          <div>扣杂(公斤)</div>
+          <div>{{tableData.buckleMiscellaneous}}</div>
+        </div> -->
+        <div class="small-row">
+          <div>净重(公斤)</div>
+          <div>{{tableData.netWeight}}</div>
+        </div>
+        <div class="small-row">
+          <div>收货单位签名或盖章:</div>
+        </div>
+        <div class="small-row">
+          <div class="sign">客户签名:</div>
+        </div>
+      </div>
+    </div>
+  </body>
+  <script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
+  <script src="https://unpkg.com/element-ui/lib/index.js"></script>
+  <script type="text/javascript">
+    new Vue({
+      el: '#app',
+      data: {
+        tableData: {
+          // qualityInspectionManagement:{}
+        },
+        tableData1: [],
+        selectPrint: false,
+        name: "",
+        bigContent: false,
+        smallContent: false,
+        pageType: ''
+      },
+      computed: {},
+      methods: {
+        tableRowClassName({
+          row,
+          rowIndex
+        }) {
+          if (rowIndex === 1) {
+            return 'warning-row';
+          } else if (rowIndex === 3) {
+            return 'success-row';
+          }
+          return '';
+        },
+        getQueryVariable(variable) {
+          var query = window.location.search.substring(1);
+          var vars = query.split("&");
+          for (var i = 0; i < vars.length; i++) {
+            var pair = vars[i].split("=");
+            if (pair[0] == variable) {
+              return pair[1];
+            }
+          }
+          return (false);
+        },
+        printSmall() {},
+        printBig() {},
+      },
+      mounted() {
+        let _data = decodeURIComponent(this.getQueryVariable("tableData"))
+        let _type = decodeURIComponent(this.getQueryVariable("type"))
+        this.pageType = decodeURIComponent(this.getQueryVariable("radioType"))
+        if (_type == 2) {
+          this.bigContent = true
+          this.smallContent = false
+        } else {
+          this.smallContent = true
+          this.bigContent = false
+        }
+        if (_data == 'false') {
+          this.selectPrint = true;
+          this.tableData1 = JSON.parse(localStorage.getItem('selectPrint_jjSelectPrintList'))
+        } else {
+          this.tableData = JSON.parse(_data)
+          console.log(this.tableData)
+        }
+        // sessionStorage.setItem('record_print', JSON.stringify(response))
+        // this.tableData = JSON.parse(sessionStorage.getItem("record_print"))
+
+        document.title = "粮食检斤单"
+        window.print()
+        window.onafterprint = function(event) {
+          window.history.back(-1)
+        };
+      },
+      watch: {}
+    })
+  </script>
+
+</html>

+ 232 - 0
public/static/weightCheckInOut.html

@@ -0,0 +1,232 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="utf-8">
+    <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
+    <title></title>
+    <style>
+      table,
+      table tr th,
+      table tr td {
+        border: 2px solid #333333;
+        padding: 5px 0;
+        height: 55px;
+      }
+
+      #app {
+        /* height: 98vh;
+        position: relative; */
+      }
+
+      .content {
+        width: 1000px;
+        padding: 70px 20px 20px 20px;
+        font-size: 22px;
+        position: absolute;
+        top: 0;
+        bottom: 0;
+        left: 0;
+        right: 0;
+      }
+
+      table {
+        width: 100%;
+        text-align: center;
+        border-collapse: collapse;
+        border: 3px solid #333333;
+      }
+
+      .col-bgc {
+        background: #f6f7fb;
+      }
+
+      .bottom-row1 {
+        display: flex;
+        /* justify-content: space-between; */
+        margin-top: 5px 0;
+      }
+
+      .bottom-row2 {
+        display: flex;
+      }
+
+      img {
+        width: 41px;
+        height: 41px;
+        margin-right: 118px;
+      }
+
+      .config {
+        margin-top: 10px;
+        margin-right: 240px;
+      }
+      .autograph{
+    margin-top: 10px;
+     }
+      .bottom-row3 {
+        margin: 10px 0;
+      }
+
+      .title {
+        text-align: center;
+        font-size: 36px;
+        font-weight: 500;
+        margin-bottom: 20px;
+      }
+
+      .number {
+        text-align: right;
+        margin-bottom: 10px;
+        margin-top: 20px;
+      }
+
+      .small-row {
+        display: flex;
+      }
+
+      .small-content {
+        width: 400px;
+        margin: 0 auto;
+        border: 1px solid #ccc;
+        padding: 20px 20px 160px 20px;
+        position: absolute;
+        top: 0;
+        bottom: 0;
+        left: 0;
+        right: 0;
+        margin: auto;
+        height: 450px;
+      }
+
+      .small-title {
+        text-align: center;
+        font-size: 18px;
+        display: flex;
+        justify-content: space-between;
+        align-items: center;
+      }
+
+      .small-row {
+        display: flex;
+        justify-content: space-between;
+        margin: 10px;
+      }
+
+      .small-img {
+        margin-right: 0;
+      }
+      .sign{
+        margin-right: 100px;
+      }
+    </style>
+  </head>
+  <body>
+    <div id="app">
+      <div class="content" v-if="true">
+        <div v-if="tableData.inOutFlag == '2'"  class="title">{{tableData.companyName}}</div>
+        <div v-else  class="title">{{tableData.contractManagementInfo?tableData.contractManagementInfo.seller:tableData.companyName}}</div>
+        <div v-if="tableData.inOutFlag == '2'" class="title">入库检斤单</div>
+        <div v-else class="title">出库检斤单</div>
+        <table class="table">
+          <tr class="row">
+            <td class="col col-bgc">送货单位</td>
+            <td class="col" colspan="4">{{tableData.contractManagementInfo?tableData.contractManagementInfo.seller:tableData.warehouseName}}</td>
+            <td class="col col-bgc">车牌号</td>
+            <td class="col" colspan="1">{{tableData.carNo}}</td>
+            <td class="col col-bgc">货名</td>
+            <td class="col" colspan="1">{{tableData.goodsName}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc">收货单位</td>
+            <td class="col" colspan="4">{{tableData.contractManagementInfo?tableData.contractManagementInfo.buyer:tableData.receiveWarehouse}}</td>
+            <td class="col col-bgc">类型</td>
+            <td class="col"colspan="1">{{tableData.type}}</td>
+            <td class="col col-bgc">检斤时间</td>
+            <td class="col" colspan="1">{{tableData.updateDate}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc">毛重(吨)</td>
+            <td class="col" colspan="2">{{tableData.grossWeight}}</td>
+            <td class="col col-bgc">皮重(吨)</td>
+            <td class="col" colspan="2">{{tableData.tare}}</td>
+            <td class="col col-bgc">净重(吨)</td>
+            <td class="col" colspan="2">{{tableData.netWeight}}</td>
+          </tr>
+        </table>
+        <div class="bottom">
+          <div class="bottom-row1">
+            <div>检斤员:{{tableData.backOffice}}</div>
+          </div>
+          <div class="bottom-row2">
+            <div class="config">收货单位签名或盖章:</div>
+            <div class="autograph">客户签名:</div>
+          </div>
+        </div>
+      </div>
+    </div>
+  </body>
+  <script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
+  <script src="https://unpkg.com/element-ui/lib/index.js"></script>
+  <script type="text/javascript">
+    new Vue({
+      el: '#app',
+      data: {
+        tableData: {
+          // qualityInspectionManagement:{}
+        },
+        name: "",
+        bigContent: false,
+        smallContent: false
+      },
+      computed: {},
+      methods: {
+        tableRowClassName({
+          row,
+          rowIndex
+        }) {
+          if (rowIndex === 1) {
+            return 'warning-row';
+          } else if (rowIndex === 3) {
+            return 'success-row';
+          }
+          return '';
+        },
+        getQueryVariable(variable) {
+          var query = window.location.search.substring(1);
+          var vars = query.split("&");
+          for (var i = 0; i < vars.length; i++) {
+            var pair = vars[i].split("=");
+            if (pair[0] == variable) {
+              return pair[1];
+            }
+          }
+          return (false);
+        },
+        printSmall() {},
+        printBig() {},
+      },
+      mounted() {
+        console.log(this.getQueryVariable("tableData"))
+        let _data = decodeURIComponent(this.getQueryVariable("tableData"))
+        let _type = decodeURIComponent(this.getQueryVariable("type"))
+        if (_type == 2) {
+          this.bigContent = true
+          this.smallContent = false
+        } else {
+          this.smallContent = true
+          this.bigContent = false
+        }
+        console.log(_data,"sddsd")
+        this.tableData = JSON.parse(_data)
+        console.log(this.tableData)
+        document.title = "粮食检斤单"
+        window.print()
+        window.onafterprint = function(event) {
+          window.history.back(-1)
+        };
+      },
+      watch: {}
+    })
+  </script>
+
+</html>

+ 245 - 0
public/static/weightCheckOut.html

@@ -0,0 +1,245 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="utf-8">
+    <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
+    <title></title>
+    <style>
+      table,
+      table tr th,
+      table tr td {
+        border: 2px solid #333333;
+        padding: 5px 0;
+        height: 55px;
+      }
+
+      #app {
+        /* height: 98vh;
+        position: relative; */
+      }
+
+      .content {
+        width: 1000px;
+        padding: 70px 20px 20px 20px;
+        font-size: 22px;
+        position: absolute;
+        top: 0;
+        bottom: 0;
+        left: 0;
+        right: 0;
+      }
+
+      table {
+        width: 100%;
+        text-align: center;
+        border-collapse: collapse;
+        border: 3px solid #333333;
+      }
+
+      .col-bgc {
+        background: #f6f7fb;
+      }
+
+      .bottom-row1 {
+        display: flex;
+        /* justify-content: space-between; */
+        margin-top: 5px 0;
+      }
+
+      .bottom-row2 {
+        display: flex;
+      }
+
+      img {
+        width: 41px;
+        height: 41px;
+        margin-right: 118px;
+      }
+
+      .config {
+        margin-top: 10px;
+        margin-right: 240px;
+      }
+
+      .autograph {
+        margin-top: 10px;
+      }
+
+      .bottom-row3 {
+        margin: 10px 0;
+      }
+
+      .title {
+        text-align: center;
+        font-size: 36px;
+        font-weight: 500;
+        margin-bottom: 20px;
+      }
+
+      .number {
+        text-align: right;
+        margin-bottom: 10px;
+        margin-top: 20px;
+      }
+
+      .small-row {
+        display: flex;
+      }
+
+      .small-content {
+        width: 400px;
+        margin: 0 auto;
+        border: 1px solid #ccc;
+        padding: 20px 20px 160px 20px;
+        position: absolute;
+        top: 0;
+        bottom: 0;
+        left: 0;
+        right: 0;
+        margin: auto;
+        height: 450px;
+      }
+
+      .small-title {
+        text-align: center;
+        font-size: 18px;
+        display: flex;
+        justify-content: space-between;
+        align-items: center;
+      }
+
+      .small-row {
+        display: flex;
+        justify-content: space-between;
+        margin: 10px;
+      }
+
+      .small-img {
+        margin-right: 0;
+      }
+
+      .sign {
+        margin-right: 100px;
+      }
+    </style>
+  </head>
+  <body>
+    <div id="app">
+      <div class="content" v-if="true">
+        <div class="title">出库检斤单</div>
+        <div>{{tableData.updateDate}}</div>
+        <table class="table">
+          <tr class="row">
+            <td class="col col-bgc">送货单位</td>
+            <td class="col" colspan="4">{{tableData.seller}}</td>
+            <td class="col col-bgc">货名</td>
+            <td class="col" colspan="4">{{tableData.goodsName}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc">收货单位</td>
+            <td class="col" colspan="4">{{tableData.buyer}}</td>
+            <td class="col col-bgc">检斤员</td>
+            <td class="col" colspan="4">{{tableData.backOffice}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc">毛重(吨)</td>
+            <td class="col" colspan="2">{{tableData.grossWeight}}</td>
+            <td class="col col-bgc">皮重(吨)</td>
+            <td class="col" colspan="2">{{tableData.tare}}</td>
+            <td class="col col-bgc">净重(吨)</td>
+            <td class="col" colspan="2">{{tableData.netWeight}}</td>
+          </tr>
+          <tr class="row">
+            <td class="col col-bgc">运输方式</td>
+            <td class="col" colspan="2">{{tableData.outType}}</td>
+            <td class="col col-bgc" v-if='tableData.outType=="集装箱船"||tableData.outType=="汽运"'>车牌号</td>
+            <td class="col col-bgc" v-if='tableData.outType=="火运"'>车号</td>
+            <td class="col col-bgc" v-if='tableData.outType=="散船"'>船名</td>
+            <td class="col" colspan="2"
+              v-if='tableData.outType=="集装箱船"||tableData.outType=="汽运"||tableData.outType=="火运"'>{{tableData.carNo}}
+            </td>
+            <td class="col" colspan="2" v-if='tableData.outType=="散船"'>{{tableData.shipName}}</td>
+            <td class="col col-bgc" v-if='tableData.outType=="集装箱船"||tableData.outType=="汽运"'>箱号</td>
+            <td class="col col-bgc" v-if='tableData.outType=="火运"'>车厢号</td>
+            <td class="col col-bgc" v-if='tableData.outType=="散船"'>船次</td>
+            <td class="col" colspan="2" v-if='tableData.outType=="集装箱船"||tableData.outType=="汽运"'>
+              {{tableData.boxNo}},{{tableData.boxNoOther}}</td>
+            <td class="col" colspan="2" v-if='tableData.outType=="火运"'>
+              {{tableData.wingNumber}},{{tableData.wingNumberOther}}</td>
+            <td class="col" colspan="2" v-if='tableData.outType=="散船"'>{{tableData.shipNumber}}</td>
+          </tr>
+        </table>
+        <div class="bottom">
+          <div class="bottom-row2">
+            <div class="config">收货单位签名或盖章:</div>
+            <div class="autograph">客户签名:</div>
+          </div>
+        </div>
+      </div>
+    </div>
+  </body>
+  <script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
+  <script src="https://unpkg.com/element-ui/lib/index.js"></script>
+  <script type="text/javascript">
+    new Vue({
+      el: '#app',
+      data: {
+        tableData: {
+          // qualityInspectionManagement:{}
+        },
+        name: "",
+        bigContent: false,
+        smallContent: false
+      },
+      computed: {},
+      methods: {
+        tableRowClassName({
+          row,
+          rowIndex
+        }) {
+          if (rowIndex === 1) {
+            return 'warning-row';
+          } else if (rowIndex === 3) {
+            return 'success-row';
+          }
+          return '';
+        },
+        getQueryVariable(variable) {
+          var query = window.location.search.substring(1);
+          var vars = query.split("&");
+          for (var i = 0; i < vars.length; i++) {
+            var pair = vars[i].split("=");
+            if (pair[0] == variable) {
+              return pair[1];
+            }
+          }
+          return (false);
+        },
+        printSmall() {},
+        printBig() {},
+      },
+      mounted() {
+        console.log(decodeURIComponent(this.getQueryVariable("tableData")))
+        let _data = decodeURIComponent(this.getQueryVariable("tableData"))
+        let _type = decodeURIComponent(this.getQueryVariable("type"))
+        if (_type == 2) {
+          this.bigContent = true
+          this.smallContent = false
+        } else {
+          this.smallContent = true
+          this.bigContent = false
+        }
+        console.log(_data, "sddsd")
+        this.tableData = JSON.parse(_data)
+        console.log(this.tableData)
+        document.title = "粮食检斤单"
+        //window.print()
+        window.onafterprint = function(event) {
+          window.history.back(-1)
+        };
+      },
+      watch: {}
+    })
+  </script>
+
+</html>

+ 66 - 11
src/App.vue

@@ -14,12 +14,12 @@ import { EventBus } from 'base-core-lib'
 export default {
 export default {
   name: 'App',
   name: 'App',
   components: { RookieTraining },
   components: { RookieTraining },
-  provide () {
+  provide() {
     return {
     return {
       reload: this.reload // 将reload方法导出
       reload: this.reload // 将reload方法导出
     }
     }
   },
   },
-  data () {
+  data() {
     return {
     return {
       isRouterAlive: true
       isRouterAlive: true
     }
     }
@@ -28,28 +28,28 @@ export default {
     ...mapGetters(['isLoadding', 'roles'])
     ...mapGetters(['isLoadding', 'roles'])
   },
   },
   watch: {
   watch: {
-    $route (to, from) {
+    $route(to, from) {
       EventBus.$emit('routerCheck', { to, from })
       EventBus.$emit('routerCheck', { to, from })
     }
     }
   },
   },
-  created () {
+  created() {
     if (window.location.host === 'winsea.com') {
     if (window.location.host === 'winsea.com') {
       window.location.href = 'https://www.winsea.com'
       window.location.href = 'https://www.winsea.com'
       return
       return
     }
     }
     // EventBus.$emit('dayTheme')
     // EventBus.$emit('dayTheme')
   },
   },
-  mounted () {
+  mounted() {
     // setTimeout(() => {
     // setTimeout(() => {
     // 设置灰度模式
     // 设置灰度模式
     // toggleGrayMode(true)
     // toggleGrayMode(true)
     // }, 2000);
     // }, 2000);
   },
   },
   methods: {
   methods: {
-    reload () {
+    reload() {
       // reload实现
       // reload实现
       this.isRouterAlive = false
       this.isRouterAlive = false
-      this.$nextTick(function () {
+      this.$nextTick(function() {
         this.isRouterAlive = true
         this.isRouterAlive = true
       })
       })
     }
     }
@@ -62,10 +62,65 @@ export default {
   height: 100%;
   height: 100%;
   overflow: hidden;
   overflow: hidden;
 }
 }
-.flex{
-  display:flex;
+.el-table{
+overflow:visible !important;
 }
 }
-.gird{
-  display:gird;
+.flex {
+  display: flex;
+}
+.gird {
+  display: gird;
+}
+.el-table th.gutter{
+   display: table-cell!important;
+}
+.el-select-dropdown .el-scrollbar .el-scrollbar__wrap {
+  overflow: scroll !important;
+}
+.el-table .el-scrollbar .el-scrollbar__wrap {
+  overflow: scroll !important;
+}
+::-webkit-scrollbar {
+  width: 10px !important;
+  height: 10px !important;
+}
+::-webkit-scrollbar-thumb {
+  height: 8px !important;
+  background: #dadce7;
+  border-radius: 4px !important;
+}
+::-webkit-scrollbar-track-piece {
+  background: #f9fafe !important;
+}
+.el-button--primary{
+    background-color: #5878e8;
+    border-color: #5878e8;
+}
+input::-webkit-outer-spin-button,
+input::-webkit-inner-spin-button {
+      -webkit-appearance: none !important;
+    }
+input[type='number'] {
+      -moz-appearance: textfield !important;
+    }
+    .el-input.is-disabled .el-input__inner{
+      background: #f9FAFC!important;
+      color: #8890B1!important;
+    }
+    .el-table__body tr:hover>td {
+		background-color: #E8ECF6 !important;
+  }
+  .el-submenu__title:hover {
+  background-color: #5473E8!important;
+}
+.el-menu-item:hover {
+  outline: 0;
+  background-color: #5473E8!important;
+}
+.el-pagination{
+  padding: 20px!important;
+}
+.container{
+  overflow: auto;
 }
 }
 </style>
 </style>

+ 2 - 0
src/api/V2/charts/index.js

@@ -0,0 +1,2 @@
+
+export const API_GET_GETCHARTSDATA = `/biInfoController/selectBiInfo`

+ 22 - 0
src/api/V2/contract/index.js

@@ -18,6 +18,8 @@ export const API_POST_EXPORT = '/contractManagementInfo/export'
 export const API_GET_BILL_OPERATE_HIS = '/billOperateHis/query/commonBillOperateHis'
 export const API_GET_BILL_OPERATE_HIS = '/billOperateHis/query/commonBillOperateHis'
 // 修改状态
 // 修改状态
 export const API_POST_EDITSTATUS = '/contractManagementInfo/editStatus'
 export const API_POST_EDITSTATUS = '/contractManagementInfo/editStatus'
+// 补充协议查看关联合同
+export const API_GET_RELATION_CONTRACTNO = '/contractManagementInfo/selectContract'
 //删除销售合同
 //删除销售合同
 export const API_POST_CONTRACT_DELETE = '/contractManagementInfo/deleteInfo '
 export const API_POST_CONTRACT_DELETE = '/contractManagementInfo/deleteInfo '
 //销售合同修改编辑 
 //销售合同修改编辑 
@@ -25,4 +27,24 @@ export const API_POST_CONTRACT_DELETE = '/contractManagementInfo/deleteInfo '
 export const API_POST_EDITINFO = '/contractManagementInfo/editInfo'
 export const API_POST_EDITINFO = '/contractManagementInfo/editInfo'
 // 获取负责人
 // 获取负责人
 export const API_GET_STAFF = '/staff/query/getStaffListByCompId'
 export const API_GET_STAFF = '/staff/query/getStaffListByCompId'
+// 获取现货采购负责人
+export const API_GET_STAFF_FIND = '/staff/query/findRole'
+//运输任务-添加-根据仓库类型选库名
+export const API_GET_TRAN_TASK_WAREHOUSE = '/tranTaskInfo/selectWarehouseList'
 
 
+//查看点价确认单
+export const API_GET_SELECTCONFIRMATIONSHEET = '/priceConfirmationSheet/selectConfirmationSheet'
+
+//编辑点价确认单
+export const API_POST_CONFIRMATIONSHEET_EDIT = '/priceConfirmationSheet/api/editPriceConfirmationSheet'
+
+//创建点价确认单
+export const API_POST_CONFIRMATIONSHEET_ADD = '/priceConfirmationSheet/api/addPriceConfirmationSheet'
+
+//删除点价确认单
+export const API_POST_CONFIRMATIONSHEET_DELETE = '/priceConfirmationSheet/api/deletePriceConfirmationSheet'
+
+//编辑时查看点价确认单
+export const API_GET_GETINFO = '/priceConfirmationSheet/getInfo'
+//客户
+export const API_GET_CUSTOMERINFO = '/customerInfo/customerList'

+ 10 - 0
src/api/V2/customer/index.js

@@ -0,0 +1,10 @@
+
+//客户列表查看
+export const API_GET_CUSTOMERINFO_LOOK = '/customerInfo/selectCustomerInfo'
+
+// 设置默认定金比例
+export const API_GET_INSTALLDEPOSITRATIO = '/customerInfo/api/installDepositRatio'
+
+// 编辑
+export const API_POST_EDITCUSTOMERINFO = '/customerInfo/api/editCustomerInfo'
+

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

@@ -0,0 +1,18 @@
+
+//客户列表查看
+export const API_GET_CUSTOMERINFO_LOOK = '/customerInfo/selectCustomerInfo'
+
+//查看客户信息
+export const API_GET_LOOK_CUSTOMERINFO = '/customerInfo/getCustomerInfo'
+
+// 添加客户
+export const API_POST_ADDCUSTOMERINFO = '/customerInfo/api/addCustomerInfo'
+
+// 编辑
+export const API_POST_EDITCUSTOMERINFO = '/customerInfo/api/modifyCustomerInfo'
+
+// 删除
+export const API_POST_DELCUSTOMERINFO = '/customerInfo/deleteCustomerInfo'
+
+//识别银行卡
+export const API_GET_CUSTOMER_GETBANK = '/driverViewInfo/bankShibie'

+ 14 - 0
src/api/V2/financialManagement/index.js

@@ -0,0 +1,14 @@
+//收款管理
+export const API_GET_CAIWU_LIST= '/collectionManagement/selectCollectionInfo'
+//派发
+export const API_POST_PAIFA_LIST = '/collectionManagement/distribute'
+//查库管
+export const API_GET_KUGUAN_LIST = '/commonSysParameter/getStaffInfo'
+//派车查看
+export const API_GET_CHAKAN_LOOK = '/warehouseInOutInfo/selectDistributeCar'
+//删除
+export const API_POST_DEL_LIST = '/collectionManagement/deleteCar'
+// 编辑查看
+export const API_GET_EXAMINE_INFO = '/collectionManagement/getInfo'
+// 编辑
+export const API_GET_EDIT_INFO = '/collectionManagement/editInfo'

+ 99 - 0
src/api/V2/houseSelfCollect/index.js

@@ -0,0 +1,99 @@
+//客户管理列表
+export const API_GET_CUSTOMER_MANAGE = '/identityAuthenticationInfo/selectIdentityAuthenticationInfoPurchase'
+//新增粮商1
+export const API_POST_CUSTOMER_ADD = '/identityAuthenticationInfo/api/addIdentityAuthenticationInfo'
+//新增粮商2
+export const API_GET_CUSTOMER_IDENTITY = '/identityAuthenticationInfo/saveCompanyIdentity'
+//客户管理删除
+export const API_GET_CUSTOMER_DELETE = '/identityAuthenticationInfo/api/deleteCompanyIdentity'
+//客户查看
+export const API_GET_CUSTOMER_LOOK = '/identityAuthenticationInfo/api/getIdentityAuthenticationInfo'
+//收购管理列表
+export const API_GET_PURCHASEPRICE_MANAGE = '/purchasePrice/purchasePriceList'
+//收购管理添加
+export const API_POST_PURCHASEPRICE_ADD = '/purchasePrice/purchasePriceAdd'
+//收购管理查看
+export const API_GET_PURCHASEPRICE_LOOK = '/purchasePrice/purchasePriceLook'
+//收购管理编辑
+export const API_POST_PURCHASEPRICE_EDIT = '/purchasePrice/purchasePriceEdit'
+//收购管理删除
+export const API_POST_PURCHASEPRICE_DEL = '/purchasePrice/purchasePriceDel'
+//收购管理员手动编辑
+export const API_POST_PURCHASEPRICE_ALLOWEDIT = '/purchasePrice/purchasePriceAllowEdit'
+//查询仓库列表
+export const API_GET_WAREHOUSESELF = '/warehouseBaseInfo/selectWarehouseSelf'
+//客户修改
+export const API_POST_CUSTOMER_EDIT = '/identityAuthenticationInfo/api/editIdentityAuthenticationInfo'
+//客户获取验证码
+export const API_GET_CUSTOMER_CODE = '/commonUser/sendVerifyCode'
+//客户验证码校验
+export const API_GET_CUSTOMER_CODEJY = '/commonUser/checkVerifyCode'
+//质检添加
+export const API_POST_INSPECT_ADD = '/qualityInspectionManagement/api/addQualityInspection'
+//质检仓位下拉
+export const API_GET_INSPECT_GETBINNUMBER = '/warehouseBaseInfo/getWarehouse'
+//客户下拉
+export const API_GET_INSPECT_GETCUSTOMER = '/identityAuthenticationInfo/identityAuthenticationInfoCustomer'
+//获取二维码
+export const API_GET_INSPECT_GETQRCODE = '/identityAuthenticationInfo/generateQRCodeImage'
+//质检列表
+export const API_GET_INSPECT_GETINSPECTLIST = '/qualityInspectionManagement/selectQualityInspection'
+//质检查看
+export const API_GET_INSPECT_GETINSPECTLOOK = '/qualityInspectionManagement/api/getQualityInspection'
+//质检查看潮粮单价
+export const API_GET_INSPECT_GETINSPECTLOOKUNITPRICE = '/purchasePrice/tidalGrainPrice'
+//质检货名下拉
+export const API_GET_INSPECT_GETINSPECTLOOKGOODS = '/qualityInspectionManagement/api/goodsName'
+//质检修改
+export const API_POST_INSPECT_GETINSPECTEDIT = '/qualityInspectionManagement/api/editQualityInspection'
+//质检删除
+export const API_POST_INSPECT_GETINSPECTDELETE = '/qualityInspectionManagement/api/deleteQualityInspection'
+//付款管理列表
+export const API_GET_PAYMENTMANAGEMENT = '/paymentManagement/selectPaymentManagement'
+//检斤列表查看
+export const API_GET_WEIGHTCHECK_GETWEIGHINGLIST = '/weighingManagement/selectWeighingManagement'
+//皮重检斤保存
+export const API_POST_WEIGHTCHECK_TARE= '/weighingManagement/api/editTare'
+//毛重检斤保存
+export const API_POST_WEIGHTCHECK_GROSSWEIGHT = '/weighingManagement/api/editGrossWeight'
+//付款查看
+export const API_GET_PAYMENT = '/paymentManagement/getInfo'
+// 付款结算
+export const API_POST_PAYMENT_EDIT = '/paymentManagement/api/editInfo'
+//质检客户下拉校验
+export const API_GET_INSPECT_GETAMOUNT = '/paymentManagement/cumulant'
+//识别身份证
+export const API_GET_CUSTOMER_GETIDENTITY = '/driverViewInfo/personShibie'
+//识别银行卡
+export const API_GET_CUSTOMER_GETBANK = '/driverViewInfo/bankShibie'
+//查询货名有未结算状态
+export const API_GET_INSPECT_GETCOUNT= '/qualityInspectionManagement/api/settledCount'
+//检斤打印查看
+export const API_GET_WEIGHTCHECK_GETPRINT= '/weighingManagement/getWeighingManagement'
+//付款删除
+export const API_POST_PAYMENT_DEL = '/paymentManagement/api/deleteInfo'
+//付款审核
+export const API_POST_PAYMENT_AUDIT = '/paymentManagement/api/openAuditFlow'
+//付款提交
+export const API_POST_PAYMENT_PAYMENTSUBMIT = '/paymentManagement/api/payMoney'
+//付款结算修改
+export const API_POST_PAYMENT_SETTLEMENTEDIT = '/paymentManagement/api/editCollect'
+//付款结算修改
+export const API_GET_INSPECT_GETDRYGRAINPRICE = '/purchasePrice/dryGrainPrice'
+//付款权限查询
+export const API_GET_INSPECT_GETJURISDICTION = '/paymentManagement/selectTaskId'
+//财务开票
+export const API_POST_INVOICING = '/paymentManagement/api/readXmlManagement'
+export const API_POST_EXPORT = '/paymentManagement/export'
+// 车牌号
+export const API_GET_SHIPPINGINFOFORMATION = '/shippingInformation/selectShippingInformation'
+//确认质检信息
+export const API_POST_INSPECTIONCHECK = '/qualityInspectionManagement/api/editQualityInspection'
+//单据二维码
+export const API_GAT_QRCODE = '/weighingManagement/generateQRCodeImage'
+//二维码获取数据
+export const API_GAT_GETQRCODE = '/weighingManagement/getQRcode'
+//车型
+export const API_GAT_INFO = '/commonSysParameter/getInfo'
+// 审核之后接口
+export const API_POST_WORKFLOW_TASK = `/newWorkflow/getTaskWebsocket`

+ 38 - 0
src/api/V2/outboundManagement/index.js

@@ -0,0 +1,38 @@
+//质检列表
+export const API_GET_INSPECT_GETINSPECTLIST = '/qualityInspectionManagement/selectQualityInspection'
+//质检查看
+export const API_GET_INSPECT_GETINSPECTLOOK = '/qualityInspectionManagement/api/getQualityInspection'
+//质检添加
+export const API_POST_INSPECT_ADDOUT = '/qualityInspectionManagement/api/addQualityInspectionOut'
+//查询仓库列表
+export const API_GET_WAREHOUSESELF = '/warehouseBaseInfo/selectWarehouseSelf'
+//检斤列表查看
+export const API_GET_WEIGHTCHECK_GETWEIGHINGLIST = '/weighingManagement/selectWeighingManagement'
+//皮重检斤保存
+export const API_POST_WEIGHTCHECK_TARE = '/weighingManagement/api/editTare'
+//出库管理添加皮重检斤
+export const API_POST_WEIGHTCHECK_ADDTARE = '/weighingManagement/api/addTare'
+//出库管理编辑皮重检斤
+export const API_POST_WEIGHTCHECK_EDITTAREOUT = '/weighingManagement/api/editTareOut'
+//毛重检斤保存
+export const API_POST_WEIGHTCHECK_GROSSWEIGHT = '/weighingManagement/api/editGrossWeight'
+//检斤仓位下拉
+export const API_GET_INSPECT_GETBINNUMBER = '/warehouseBaseInfo/getWarehouse'
+//删除检斤信息
+export const API_POST_INSPECT_DELETEWEIGHING = '/weighingManagement/api/deleteWeightcheck'
+//收款合同编号下拉
+export const API_GET_INSPECT_CONTRANCLIST = '/paymentManagement/selectContractNoList'
+//检斤合同编号下拉
+export const API_GET_INSPECT_CONTRANCLISTWEIGHING = '/warehouseBaseInfo/selectContractNoList'
+//检斤查看
+export const API_GET_WEIGHTCHECK = '/weighingManagement/getWeighingManagement'
+//收款管理列表
+export const API_GET_COLLECTION_LIST = '/paymentManagement/selectPaymentManagement'
+//收款查看
+export const API_GET_COLLECTION = '/paymentManagement/getInfo'
+// 收款
+export const API_POST_COLLECTION_MONEY = '/paymentManagement/api/collectMoney'
+// 编辑实际应收
+export const API_POST_COLLECTION_EDITCOLLECT = '/paymentManagement/api/editCollect'
+// 添加备注
+export const API_POST_COLLECTION_ADDREMARKS = '/paymentManagement/api/addRemarks'

+ 39 - 0
src/api/V2/platformaudit/index.js

@@ -0,0 +1,39 @@
+//粮商审核
+export const API_POST_GRAINMERCHANTREVIEW = '/identityAuthenticationInfo/api/examine'
+//司机审核
+export const API_POST_DRIVERREVIEW = '/driverViewInfo/api/examine'
+//交易信息审核(采购)
+export const API_POST_TRANSACTIONINFORMATIONREVIEW = '/procurementPlanInfo/api/examine'
+//粮商列表
+export const API_GET_GRAINMERCHANT_LIST = '/identityAuthenticationInfo/selectIdentityAuthenticationInfoPc'
+//司机列表
+export const API_GET_DRIVER_LIST = '/driverViewInfo/selectDriverInfoPage'
+//交易信息列表(采购)
+export const API_GET_TRANSACTIONINFORMATION_LIST = '/procurementPlanInfo/selectProcurementPlanInfo'
+//交易信息删除(采购)
+export const API_POST_DELETETRANSACTIONINFORMATION = '/procurementPlanInfo/api/deleteProcurementPlan'
+//交易信息列表(销售)
+export const API_GET_SALE_LIST = '/salePlanInfo/selectSalePlanInfo'
+//交易信息删除(销售)
+export const API_POST_DELETESALE = '/salePlanInfo/api/deleteSalePlanInfo'
+//交易信息审核(销售)
+export const API_POST_SALEREVIEW = '/salePlanInfo/api/examine'
+//粮脉动态审核(列表)
+export const API_GET_DYNAMICS_LIST = '/settledCompanyDynamics/selectSettledCompanyDynamicsPage'
+//粮脉动态审核(查看)
+export const API_GET_DYNAMICS_LOOK = '/settledCompanyDynamics/getSettledCompanyDynamics'
+//粮脉动态审核(删除)
+export const API_POST_DYNAMICS_DELETE = '/settledCompanyDynamics/api/deleteSettledCompanyInfo'
+//粮脉动态审核
+export const API_POST_DYNAMICS_EXAMINE = '/settledCompanyDynamics/api/examine'
+//粮脉企业审核列表
+export const API_GET_SETTLEDCOMPANY_LIST = '/settledCompanyInfo/selectSettledCompanyInfo'
+//粮脉企业审核查看
+export const API_GET_SETTLEDCOMPANY = '/settledCompanyInfo/getSettledCompanyInfo'
+//粮脉企业审核编辑
+export const API_POST_EDIT_SETTLEDCOMPANY = '/settledCompanyInfo/api/editSettledCompanyInfo'
+//粮脉企业审核
+export const API_POST_SETTLED_EXAMINE = '/settledCompanyInfo/api/examine'
+//粮脉企业审核删除
+export const API_POST_DELETE_SETTLED = '/settledCompanyInfo/api/deleteSettledCompanyInfo'
+

+ 35 - 0
src/api/V2/purchasingManagement/index.js

@@ -0,0 +1,35 @@
+//采购订单列表
+export const API_GET_PURCHASING_LIST = '/purchaseOrder/selectPurchaseOrder'
+//采购订单成交
+export const API_POST_PURCHASING_LIST = '/purchaseOrder/api/deal'
+//采购订单平仓
+export const API_POST_PURCHASING_CLOSEPOSITION = '/purchaseOrder/api/closePosition'
+//采购计划列表
+export const API_GET_PROCUREMENT_LIST = '/procurementPlanInfo/selectProcurementPlanInfo'
+//采购计划查看
+export const API_GET_PROCUREMENT_LOOK = '/procurementPlanInfo/getProcurementPlan'
+//采购计划添加
+export const API_POST_PROCUREMENT_ADD = '/procurementPlanInfo/api/insertProcurementPlanInfo'
+//采购计划编辑
+export const API_POST_PROCUREMENT_EDIT = '/procurementPlanInfo/api/editProcurementPlan'
+//采购计划删除
+export const API_POST_PROCUREMENT_DELETE = '/procurementPlanInfo/api/deleteProcurementPlan'
+// 采购订单审核
+export const API_POST_ADUIT_PURCHASE = '/purchaseOrder/api/editPurchaseOrder'
+// 采购订单平仓查看成交价
+export const API_GET_PRICE_PURCHASE = '/transactionRecord/getPriceList'
+// 采购订单合同
+export const API_GET_ADUIT_CONTRACTNO = '/warehouseBaseInfo/selectContractNoList'
+// 采购订单flag0 补充定金 1解冻定金 2完成 3更改基差
+export const API_POST_EDITSTATUS = '/purchaseOrder/api/editStatus'
+//采购状态,基差,单价修改 
+export const API_POST_PROCUREMENT_EDITSTATUS = '/procurementPlanInfo/api/editStatus'
+// 采购订单删除
+export const API_POST_DELETEPURCHASE = '/purchaseOrder/api/deletePurchaseOrder'
+// 测试
+export const API_POST_SUBMIT = '/purchaseOrder/api/submitPurchaseOrder'
+// 审核通过不通过接口
+export const API_POST_WORKFLOW_API_HANDLE = `/workflow/api/handle`
+// export const API_POST_WORKFLOW_API_HANDLE ='/newWorkflow/api/handle'
+// 审核接口调用之后
+export const API_POST_QUERY_WORKFLOWINFO ='/newWorkflow/query/workflowInfo'

+ 28 - 0
src/api/V2/salesManagement/index.js

@@ -0,0 +1,28 @@
+//销售计划列表
+export const API_GET_SALEPLAN_LIST = '/salePlanInfo/selectSalePlanInfo'
+//销售计划查看
+export const API_GET_SALEPLAN_LOOK = '/salePlanInfo/getSalePlanInfo'
+//销售计划添加
+export const API_POST_SALEPLAN_ADD = '/salePlanInfo/api/insertSalePlanInfo'
+//销售计划编辑
+export const API_POST_SALEPLAN_EDIT = '/salePlanInfo/api/editSalePlanInfo'
+//销售计划删除
+export const API_POST_SALEPLAN_DELETE = '/salePlanInfo/api/deleteSalePlanInfo'
+//销售状态,基差,单价修改 
+export const API_POST_SALEPLAN_EDITSTATUS = '/salePlanInfo/api/editStatus' 
+//销售订单列表
+export const API_GET_SALE_ORDER_LIST = '/saleOrder/selectSaleOrder'
+//销售订单成交
+export const API_POST_SALE_ORDER_DEAL = '/saleOrder/api/deal'
+//销售订单平仓
+export const API_POST_SALE_CLOSEPOSITION = '/saleOrder/api/closePosition'
+//销售订单审核
+export const API_POST_ADUIT_SALE = '/saleOrder/api/editSaleOrder'
+//销售订单合同编号下拉列表
+export const API_GET_ADUIT_CONTRACTNO = '/warehouseBaseInfo/selectContractNoList'
+//销售订单flag0 补充定金 1解冻定金 2完成 3更改基差
+export const API_POST_EDITSTATUS = '/saleOrder/api/editStatus'
+//销售订单删除
+export const API_POST_DELETESALE = '/saleOrder/api/deleteSaleOrder'
+//成交价列表销售
+export const API_GET_GETSALEPRICELIST = '/transactionRecord/getSalePriceList'

+ 105 - 0
src/api/V2/statisticalReport/index.js

@@ -0,0 +1,105 @@
+//期货采购入库报表
+export const API_GET_PURCHRECEIPT = '/purchaseReceiptReport/selectPurchaseOrder'
+// 期货销售平仓合同
+export const API_GET_SALE_CONTRACTNO = '/salesClosingReport/selectContractNoList'
+// 期货销售出库合同
+export const API_GET_SALE_OUT_CONTRACTNO = '/salesDeliveryReport/selectContractNoList'
+// 期货采购平仓合同
+export const API_GET_PURCHASE_CONTRACTNO = '/purchaseClosingReport/selectContractNoList'
+// 期货采购入库合同
+export const API_GET_PURCHASE_IN_CONTRACTNO = '/purchaseReceiptReport/selectContractNoList'
+// 期货采购入库修改
+export const API_POST_AMEND_PURCHRECEIPT = '/purchaseReceiptReport/api/editProcurementReceiptReport'
+// 期货采购入库补货结转
+export const API_POST_REPLANISHENT = '/purchaseReceiptReport/api/replenishment'
+// 期货采购入库补货结转其他合同
+export const API_GET_SELECTCONTRACTNO = '/purchaseReceiptReport/selectContractNo'
+// 期货采购入库审核
+export const API_POST_AUDIT = '/purchaseReceiptReport/api/examinePurchaseOrder'
+// 期货采购入库付款
+export const API_POST_PAYMONEY = '/purchaseReceiptReport/api/payMoney'
+// 期货采购订单flag0 补充定金 1解冻定金 2完成 3更改基差
+export const API_POST_EDITSTATUS = '/purchaseOrder/api/editStatus'
+//期货采购状态,基差,单价修改 
+export const API_POST_PROCUREMENT_EDITSTATUS = '/procurementPlanInfo/api/editStatus'
+// 期货采购订单删除
+export const API_POST_DELETEPURCHASE = '/purchaseOrder/api/deletePurchaseOrder'
+// 期货采购入库报表头部信息
+export const API_GET_SELECTORDER= '/purchaseReceiptReport/selectOrder'
+// 期货销售平仓审核、通过、驳回
+export const API_POST_SALE_EXAMINE ='/salesClosingReport/api/examine'
+// 期货销售平仓列表
+export const API_GET_SALE_LIST ='/salesClosingReport/selectSalesClosingOrder'
+// 期货销售平仓付款
+export const API_POST_PAY_MONEY ='/salesClosingReport/api/payMoney'
+// 期货销售平仓收款
+export const API_POST_COLLECT_MONEY ='/salesClosingReport/api/collectMoney'
+//期货采购平仓报表
+export const API_GET_CLOSE = '/purchaseClosingReport/selectPurchaseOrder'
+//期货采购平仓审核
+export const API_POST_CLOAEAUDIT = '/purchaseClosingReport/api/examine'
+//期货采购平仓付款
+export const API_POST_CLOSEPAYMONEY = '/purchaseClosingReport/api/payMoney'
+//期货采购平仓收款
+export const API_POST_CLOSECOLLMONEY = '/purchaseClosingReport/api/collectMoney'
+//期货采购入库开发票
+export const API_POST_OPENINVOICE = '/purchaseReceiptReport/api/openInvoice'
+//期货采购入库批量开发票
+export const API_POST_BATCHOPENINVOICE = '/purchaseReceiptReport/api/openInvoiceList'
+//期货销售出库报表
+export const API_GET_SALELIST = '/salesDeliveryReport/selectSalesDeliveryReport'
+// 期货销售出库出纳收款
+export const API_POST_CASHIER_PAYMENT = '/salesDeliveryReport/api/collectMoney'
+// 期货销售出库开发票
+export const API_POST_SALES_INVOICING = '/salesDeliveryReport/api/openInvoice'
+// 期货销售出库批量开发票
+export const API_POST_SALES_BATCH_INVOICING = '/salesDeliveryReport/api/openInvoiceList'
+// 期货销售出库最终结算价
+export const API_POST_FINAL_SETTLEMENT_PRICE = '/salesDeliveryReport/api/editSalesDeliveryReport'
+// 期货销售出库审核
+export const API_POST_ISSUE_APPROVAL = '/salesDeliveryReport/api/examineSalesDeliveryReport'
+// 期货销售出库报表头部信息
+export const API_GET_SELECTSALEORDER= '/salesDeliveryReport/selectOrder'
+// 汽运结算报表
+export const API_GET_AUTOSETTLEMENT= '/tranSettlementReport/selectTranSettlementReport'
+// 汽运结算报表修改结算重量,扣款,已开发票
+export const API_POST_EDITAUTOSETTLEMENT= '/tranSettlementReport/api/editTranSettlementReport'
+// 汽运结算报表合同
+export const API_GET_AUTOCONTRACT= '/tranSettlementReport/selectContractNoList'
+// 汽运结算报表付款
+export const API_POST_AUTOPAYMONEY= '/tranSettlementReport/api/payMoney'
+// 汽运结算报表批量开发票
+export const API_POST_OPENINVOICELIST= '/tranSettlementReport/api/openInvoiceList'
+
+//现货采购入库报表
+export const API_GET_STOCKPURCHASERECEIPT = '/stockPurchaseReceiptReport/selectPurchaseOrder'
+//现货采购入库付款
+export const API_POST_STOCKPURCHASEPAYMONEY = '/stockPurchaseReceiptReport/api/payMoney'
+//现货采购入库 定金/备注
+export const API_POST_ADDDISORREMARKS = '/stockPurchaseReceiptReport/api/disAndRemark'
+//现货采购入库修改结算重量
+export const API_POST_EDITSETTLEMENTWEIGHT = '/stockPurchaseReceiptReport/api/edit'
+//现货采购入库合同
+export const API_GET_STOCK_PURCHASE_CONTRACTNO = '/stockPurchaseReceiptReport/selectContractNoList'
+
+
+//现货销售出库报表
+export const API_GET_STOCKSALECEIPT = '/stockSaleReceiptReport/selectSaleOrder'
+//现货销售出库收款
+export const API_POST_STOCKSALECOLLECTMONEY = '/stockSaleReceiptReport/api/collectMoney'
+//现货销售出库 定金/备注
+export const API_POST_DISORREMARKS = '/stockSaleReceiptReport/api/disAndRemark'
+//现货销售出库修改结算重量
+export const API_POST_SALEEDITSETTLEMENTWEIGHT = '/stockSaleReceiptReport/api/editSettlementWeight'
+//现货销售出库合同下拉
+export const API_GET_STOCK_SALE_CONTRACTNO = '/stockSaleReceiptReport/selectContractNoList'
+//现货销售出库修改反馈重量或单独开发票
+export const API_POST_EDIT_SETTLEMENTWEIGHT = '/stockSaleReceiptReport/api/editSettlementWeight'
+//现货销售出库批量开发票
+export const API_POST_INVOICELIST = '/stockSaleReceiptReport/api/openInvoiceList'
+// 火运,船运合同编号下拉
+export const API_GET_YUNSHUXIALA = '/tranTaskInfo/selectTranTask'
+// 火运,船运运输编号下拉
+export const API_GET_YUNSHUNUMBER = '/tranTaskInfo/selectTask'
+// 火运,船运实际价格
+export const API_POST_YUNSHUSETPRICE = '/tranProcessInfo/api/setUpTranPrice'

+ 10 - 1
src/api/V2/taskspost/index.js

@@ -20,6 +20,9 @@ export const API_GET_TRAN_EXAMINE = '/tranTaskInfo/getTranTask'
 export const API_GET_TRAN_EDIT = '/tranTaskInfo/api/editTranTask'
 export const API_GET_TRAN_EDIT = '/tranTaskInfo/api/editTranTask'
 // 审核通过不通过接口
 // 审核通过不通过接口
 export const API_POST_WORKFLOW_API_HANDLE = `/workflow/api/handle`
 export const API_POST_WORKFLOW_API_HANDLE = `/workflow/api/handle`
+// export const API_POST_WORKFLOW_API_HANDLE ='/newWorkflow/api/handle'
+// 审核之后接口
+export const API_POST_WORKFLOW_TASK = `/newWorkflow/query/taskCandidates`
 // 审核编辑
 // 审核编辑
 export const API_POST_INOUTWAREHOUSETASK = `/inOutWarehouseTask/api/checkOrUpdateInOutTask`
 export const API_POST_INOUTWAREHOUSETASK = `/inOutWarehouseTask/api/checkOrUpdateInOutTask`
 // 出入库任务-新增(编辑)
 // 出入库任务-新增(编辑)
@@ -39,4 +42,10 @@ export const API_GET_OUT_MOVELOOK = '/inOutWarehouseTask/getInOutWarehouseTaskRe
 //运输任务状态修改
 //运输任务状态修改
 export const API_POST_OUT_STATES = '/tranTaskInfo/api/editStatus'
 export const API_POST_OUT_STATES = '/tranTaskInfo/api/editStatus'
 //移库任务状态修改
 //移库任务状态修改
-export const API_POST_OUT_MOVESTATES = '/inOutWarehouseTask/api/editStatus'
+export const API_POST_OUT_MOVESTATES = '/inOutWarehouseTask/api/editStatus'
+// 删除运输阶段
+export const API_POST_DEL_HAULAGE_STAGE= '/tranProcessInfo/api/deleteTranProcess'
+// 审核记录
+export const API_GET_TASKHISTORIES= '/workflowHistory/query/taskHistories'
+// 获取发货人
+export const API_GET_STAFF = '/staff/query/getStaffListByCompId'

+ 42 - 0
src/api/V2/tradeServicesManagement/index.js

@@ -0,0 +1,42 @@
+// 列表
+export const API_GET_TRADESERVICES_LIST  = '/tradeWarehouseReceiptAppl/selectTradeWarehouseReceiptAppl'
+//获取地图
+export const API_GET_MAPINFO  = '/tradeWarehouseReceiptAppl/getMapInfo'
+//仓库列表查看
+export const API_GET_WAREHOUSE_LOOK = '/warehouseBaseInfo/getWarehouse'
+//仓单列表添加
+export const API_POST_RECEIPTAPPL_ADD = '/tradeWarehouseReceiptAppl/api/insertTradeWarehouseReceiptAppl'
+//仓单查看
+export const API_GET_WAREHOUSE_LIST = '/warehouseBaseInfo/getWarehouse'
+//仓单编辑
+export const API_POST_WAREHOUSE_EDIT = '/warehouseBaseInfo/getWarehouse'
+// 获取业务编号
+export const API_GET_BILLNO = '/tradeWarehouseReceiptAppl/getBillNo'
+// 列表页删除
+export const API_POST_DELETETRANEINFO = '/tradeWarehouseReceiptAppl/api/deleteTrageInfo'
+
+// 出入库记录
+export const API_GET_RECORD = 'warehouseInOutInfo/selectInfo'
+// 查看当天出/入数量
+export const API_GET_WAREHOUSE_COUNT = '/warehouseInOutInfo/count'
+// 出入库调整
+export const API_POST_WAREHOUSE_UPDATE = '/warehouseInOutInfo/adjustment'
+// 结算单
+export const API_GET_SETTLEACCOUT = '/warehouseInOutInfo/getInfo'
+//仓单查看
+export const API_GET_WAREHOUSE_SEE = '/tradeWarehouseReceiptAppl/getTrageInfo'
+//仓单修改
+export const API_POST_WAREHOUSERECEIPT_UPDATE = '/tradeWarehouseReceiptAppl/api/editTradeWarehouseReceiptAppl'
+//审核记录
+export const API_GET_WAREHOUSE_EXAMINE = '/workflowHistory/query/taskHistories'
+//还款列表
+export const API_GET_REPAYMENT_LIST = '/repaymentManagement/selectRepaymentManagement'
+//还款提交
+export const API_POST_REPAYMENT_SUBMIT = '/repaymentManagement/api/repaymentMoney'
+//银行
+export const API_GET_WAREHOUSERECEIPT_BANKLIST = '/commonSysParameter/getInfo'
+// 贸易服务默认显示
+export const API_GET_SETDEFAULT = '/enabledInfo/getEnabledInfo'
+// 贸易服务设置显示
+export const API_SET_SETDEFAULT = '/enabledInfo/api/setEnabledInfo'
+

+ 14 - 2
src/api/V2/transport/index.js

@@ -43,7 +43,19 @@ export const API_GET_AUTOMOBILE_NAME = "/driverViewInfo/selectDriverName"
 export const API_GET_AUTOMOBILE_ARRANGE = "/driverViewInfo/selectDriverDetail"
 export const API_GET_AUTOMOBILE_ARRANGE = "/driverViewInfo/selectDriverDetail"
 //发货反馈
 //发货反馈
 export const API_POST_AUTOMOBILE_FEEDBACK = '/tranProcessInfo/api/insertTranCar'
 export const API_POST_AUTOMOBILE_FEEDBACK = '/tranProcessInfo/api/insertTranCar'
-//更改反馈状态
+//更改发货反馈状态
 export const API_POST_AUTOMOBILE_STATE = '/tranProcessInfo/api/editFeedbackStatus'
 export const API_POST_AUTOMOBILE_STATE = '/tranProcessInfo/api/editFeedbackStatus'
+//更改收货反馈状态
+export const API_POST_AUTOMOBILE_STATEREC = '/tranProcessInfo/api/editReceivingStatus'
+// 他运反馈查看
+export const API_GET_TRANPROCESSINFO = '/tranProcessInfo/getThreeTranProcess'
+// 他运反馈提交
+export const API_POST_TRANPROCESSINFO = '/tranProcessInfo/api/addTranCar'
 //状态
 //状态
-export const API_POST_AUTOMOBILE_ALSOSTATE = '/tranProcessInfo/editStatus'
+export const API_POST_AUTOMOBILE_ALSOSTATE = '/tranProcessInfo/editStatus'
+//运输价格
+export const API_POST_AUTOMOBILE_TRANPRICE = '/tranProcessInfo/api/setUpTranPrice'
+// 删除运输车辆
+export const API_POST_DEL_HAULAGE_STAGE= '/tranCarInfo/api/deleteTranCar'
+// 导入
+export const API_GET_IMPORT= '/importController/readDocument'

+ 36 - 5
src/api/V2/warehouse/index.js

@@ -44,8 +44,11 @@ export const API_POST_WAREHOUSE_CLEARANCEE = '/warehouseBaseInfo/api/editCleared
 
 
 //临时出入库合同编号下拉
 //临时出入库合同编号下拉
 export const API_GET_WAREHOUSE_NO = '/warehouseBaseInfo/selectContractNoList'
 export const API_GET_WAREHOUSE_NO = '/warehouseBaseInfo/selectContractNoList'
+
+//获取检斤打印数据
+export const API_GET_PRINT_INFO = '/warehouseBaseInfo/getPrintInfo'
 // 获取负责人
 // 获取负责人
-export const API_GET_STAFF = '/staff/query/getStaffListByCompId'
+export const API_GET_STAFF = '/staff/query/getStaffListByCompIdAndWarehouseId'
 //临时仓库记录
 //临时仓库记录
 export const API_GET_WAREHOUSE_RECORDSS = '/warehouseInOutInfo/selectInfoTemporary'
 export const API_GET_WAREHOUSE_RECORDSS = '/warehouseInOutInfo/selectInfoTemporary'
 
 
@@ -55,7 +58,35 @@ export const API_GET_GOODSNAME_XIALA = '/warehouseInOutInfo/selectTemporaryGoods
 export const API_GET_WAREHOUSE_LIST = '/warehouseInOutInfo/selectWarehouseInOutInfoTemporary'
 export const API_GET_WAREHOUSE_LIST = '/warehouseInOutInfo/selectWarehouseInOutInfoTemporary'
 //任务列表
 //任务列表
 export const API_GET_WAREHOUSE_TASKLIST = '/inOutWarehouseTask/selectInOutWarehouseTask'
 export const API_GET_WAREHOUSE_TASKLIST = '/inOutWarehouseTask/selectInOutWarehouseTask'
-
-
-
-
+// 成本管理
+export const API_GET_COSTMANAGEMENT = '/costManagementInfo/selectCostManagementInfo'
+// 修改成本
+export const API_POST_EDITCOST = '/costManagementInfo/api/editCostManagementInfo'
+// 库点费用
+export const API_GET_INVENTORYCOSTINFO = '/inventoryCostInfo/selectInventoryCostInfo'
+// 添加库点费用
+export const API_POST_ADD_INVENTORYCOSTINFO = '/inventoryCostInfo/api/addInventoryCostInfo'
+// 编辑库点费用
+export const API_POST_EDIT_INVENTORYCOSTINFO = '/inventoryCostInfo/api/editInventoryCostInfo'
+// 加权明细
+export const API_GET_WEIGHTEDDETAILS = '/weightedDetails/selectInventoryCostInfo'
+// 库
+export const API_GET_WAREHOUSE = '/warehouseBaseInfo/selectWarehouse'
+// 出入库任务负责人
+export const API_GET_WAREHOUSERESPONSIBLE = '/warehouseBaseInfo/selectResponsible'
+// 出入库任务
+export const API_GET_WAREHOUSETASK = '/inOutWarehouseTask/selectWarehouseTask'
+// 修改经办人
+export const API_GET_CHECKORUPDATE = '/inOutWarehouseTask/api/checkOrUpdateInOutTask'
+// 获取出入库任务编号
+export const API_GET_RECEIPTTASKNO = '/inOutWarehouseTask/selectInOutWarehouseNo'
+//导出入库
+export const API_POST_EXPORT = '/warehouseBaseInfo/export'
+//导出出库
+export const API_POST_EXPORTOUT = '/warehouseBaseInfo/exportOut'
+//打印增量
+export const API_GET_PRINT = '/commonConstantFalse/getInfo'
+// 仓位号
+export const API_GET_WAREHOUSE_BINNUMBER = '/warehouseBaseInfo/getWarehouse'
+// 储量明细
+export const API_GET_WAREHOUSE_BASEINFO_RESERVES = '/warehouseBaseInfo/reservesDetails'

+ 7 - 1
src/api/common/index.js

@@ -58,8 +58,11 @@ export const API_GET_PROGRESS_PERCENTAGE = '/tbInitializationData/query/getProgr
 // 是否弹出 true/false
 // 是否弹出 true/false
 export const API_GET_IS_SHOW_DIALOG = '/tbInitializationData/query/getVesselList'
 export const API_GET_IS_SHOW_DIALOG = '/tbInitializationData/query/getVesselList'
 
 
+// 获取运输结算统计信息
+export const API_GET_INFO ='/tranSettlementReport/getInfo'
 
 
-
+// 通过手机号获取公司
+export const API_GET_COMP = '/commonUser/getCompList'
 /*
 /*
  * @Author: Myz
  * @Author: Myz
  * @Date: 2020-10-19 15:10:28
  * @Date: 2020-10-19 15:10:28
@@ -99,3 +102,6 @@ export const API_POST_UPLOADFILES = `/appendix/api/uploadFiles`
 export const API_POST_DELETEFILES = `/appendix/api/deleteFiles`
 export const API_POST_DELETEFILES = `/appendix/api/deleteFiles`
 // 上传附件
 // 上传附件
 export const API_POST_OTHERUPLOADFILES = `/appendix/api/uploadFiles`
 export const API_POST_OTHERUPLOADFILES = `/appendix/api/uploadFiles`
+//获取公司下拉列表
+export const API_GET_API_COMPLIST = `/commonUser/getComp`
+export const API_GET_ADMINID = `/commonUser/test`

二进制
src/assets/newTaks/baobiao.png


二进制
src/assets/newTaks/caigou.png


二进制
src/assets/newTaks/churuku.png


二进制
src/assets/newTaks/xiaoshou.png


+ 6 - 6
src/business/common/index.js

@@ -26,7 +26,7 @@ function getVesselList (commit, vesselsList) {
     commit('SET_VESSEL_LIST', vesselsList)
     commit('SET_VESSEL_LIST', vesselsList)
     return vesselsList
     return vesselsList
   }
   }
-  return (JSON.parse(sessionStorage.getItem('ws-pf_vessels')) || []).map(item => {
+  return (JSON.parse(localStorage.getItem('ws-pf_vessels')) || []).map(item => {
     return {
     return {
       ...item,
       ...item,
       vesselNameZh: item.vesselName,
       vesselNameZh: item.vesselName,
@@ -82,7 +82,7 @@ const actions = {
    * @param {*} { commit, state }
    * @param {*} { commit, state }
    * @param {*} params {}
    * @param {*} params {}
    */
    */
-  async getVesselDeptByCompId ({ commit, state }, params = { compId: sessionStorage.getItem('ws-pf_compId') }) {
+  async getVesselDeptByCompId ({ commit, state }, params = { compId: localStorage.getItem('ws-pf_compId') }) {
     if (state.deptList.length === 0) {
     if (state.deptList.length === 0) {
       let deptList = await getVesselDeptByCompId(params).toPromise()
       let deptList = await getVesselDeptByCompId(params).toPromise()
       const loadData = deptList.map(item => {
       const loadData = deptList.map(item => {
@@ -101,7 +101,7 @@ const actions = {
    * @param {*} param0
    * @param {*} param0
    * @param {*} params
    * @param {*} params
    */
    */
-  async getDeptListByCompId ({ commit, state }, params = { compId: sessionStorage.getItem('ws-pf_compId'), vesselBankFlag: sessionStorage.getItem('ws-pf_vesselBankFlag') }) {
+  async getDeptListByCompId ({ commit, state }, params = { compId: localStorage.getItem('ws-pf_compId'), vesselBankFlag: localStorage.getItem('ws-pf_vesselBankFlag') }) {
     if (state.landBasedDeptList.length === 0) {
     if (state.landBasedDeptList.length === 0) {
       let deptList = await getDeptListByCompId(params).toPromise()
       let deptList = await getDeptListByCompId(params).toPromise()
       const loadData = deptList.map(item => {
       const loadData = deptList.map(item => {
@@ -120,7 +120,7 @@ const actions = {
   * @param {*} param0
   * @param {*} param0
   * @param {*} params
   * @param {*} params
   */
   */
-  async getDeptListByCompIdAll ({ commit, state }, params = { compId: sessionStorage.getItem('ws-pf_compId') }) {
+  async getDeptListByCompIdAll ({ commit, state }, params = { compId: localStorage.getItem('ws-pf_compId') }) {
     if (state.landBasedDeptListAll.length === 0) {
     if (state.landBasedDeptListAll.length === 0) {
       let deptList = await getDeptListByCompId(params).toPromise()
       let deptList = await getDeptListByCompId(params).toPromise()
       const loadData = deptList.map(item => {
       const loadData = deptList.map(item => {
@@ -142,7 +142,7 @@ const actions = {
    * @param {*} { commit, state }
    * @param {*} { commit, state }
    * @param {*} params {}
    * @param {*} params {}
    */
    */
-  async getVessleRoleByCompId ({ commit, state }, params = { compId: sessionStorage.getItem('ws-pf_compId') }) {
+  async getVessleRoleByCompId ({ commit, state }, params = { compId: localStorage.getItem('ws-pf_compId') }) {
     if (state.vessleRoleList.length === 0) {
     if (state.vessleRoleList.length === 0) {
       let vessleRoleList = await getVessleRoleByCompId(params).toPromise()
       let vessleRoleList = await getVessleRoleByCompId(params).toPromise()
       commit('SET_VESSLEROLE_LIST', vessleRoleList)
       commit('SET_VESSLEROLE_LIST', vessleRoleList)
@@ -156,7 +156,7 @@ const actions = {
    * @param {*} { commit, state }
    * @param {*} { commit, state }
    * @param {*} params {}
    * @param {*} params {}
    */
    */
-  async getParameterCompany ({ commit, state }, params = { compId: sessionStorage.getItem('ws-pf_compId') }) {
+  async getParameterCompany ({ commit, state }, params = { compId: localStorage.getItem('ws-pf_compId') }) {
     if (!state.parameterCompany[params.constCode]) {
     if (!state.parameterCompany[params.constCode]) {
       let parameterCompany = await getParameterTenant(params).toPromise()
       let parameterCompany = await getParameterTenant(params).toPromise()
       commit('SET_COMPANY_LIST', { data: parameterCompany, constCode: params.constCode })
       commit('SET_COMPANY_LIST', { data: parameterCompany, constCode: params.constCode })

+ 10 - 0
src/common.js

@@ -0,0 +1,10 @@
+
+   const houseName= [{ payname: "" },{ payname: "" },{ payname: "" },{ payname: "" }]
+   let commonWeighingList = []
+   const name = ''
+
+export default {
+    houseName,
+    commonWeighingList,
+    name
+}

+ 9 - 9
src/components/RookieTraining/index.vue

@@ -231,7 +231,7 @@ export default {
       auth: '',
       auth: '',
       settleUserName: '',
       settleUserName: '',
       formData: new FormData(),
       formData: new FormData(),
-      compId: sessionStorage.getItem('ws-pf_compId'),
+      compId: localStorage.getItem('ws-pf_compId'),
       rules: {
       rules: {
         feedbackContent: [{ required: true, message: '请输入反馈内容' }]
         feedbackContent: [{ required: true, message: '请输入反馈内容' }]
       },
       },
@@ -272,12 +272,12 @@ export default {
           this.auth = params
           this.auth = params
           let guideList = []
           let guideList = []
           let data = await setNewGuideline({
           let data = await setNewGuideline({
-            userId: sessionStorage.getItem('ws-pf_userId'),
+            userId: localStorage.getItem('ws-pf_userId'),
             newGuidelineType: '1'
             newGuidelineType: '1'
           }).toPromise()
           }).toPromise()
           guideList = data.newGuidelineType.split(',')
           guideList = data.newGuidelineType.split(',')
 
 
-          // let localKey = sessionStorage.getItem('ws-pf_staffName') + 'guide'
+          // let localKey = localStorage.getItem('ws-pf_staffName') + 'guide'
           // let guideList = localStorage.getItem(localKey)
           // let guideList = localStorage.getItem(localKey)
           console.info(guideList, 'guideList')
           console.info(guideList, 'guideList')
           let isShow = true
           let isShow = true
@@ -293,7 +293,7 @@ export default {
             this.isTrain = true
             this.isTrain = true
           }
           }
           await setNewGuideline({
           await setNewGuideline({
-            userId: sessionStorage.getItem('ws-pf_userId'),
+            userId: localStorage.getItem('ws-pf_userId'),
             newGuidelineType: guideList.join(',')
             newGuidelineType: guideList.join(',')
           }).toPromise()
           }).toPromise()
           // })
           // })
@@ -305,7 +305,7 @@ export default {
     async getProblems () {
     async getProblems () {
       let obj = {
       let obj = {
         showNumber: 3,
         showNumber: 3,
-        functionModuleCode: sessionStorage.getItem('ws-pf_authority')
+        functionModuleCode: localStorage.getItem('ws-pf_authority')
       }
       }
       const data = await getHighFrequencyProblems(obj).toPromise()
       const data = await getHighFrequencyProblems(obj).toPromise()
       this.questionList = data
       this.questionList = data
@@ -314,8 +314,8 @@ export default {
     // 查看更多
     // 查看更多
     goMore (questionBankId) {
     goMore (questionBankId) {
       let query = {
       let query = {
-        roleId: sessionStorage.getItem('ws-pf_roleId'),
-        authority: sessionStorage.getItem('ws-pf_authority')
+        roleId: localStorage.getItem('ws-pf_roleId'),
+        authority: localStorage.getItem('ws-pf_authority')
       }
       }
       if (questionBankId && questionBankId.length > 0) {
       if (questionBankId && questionBankId.length > 0) {
         query.questionBankId = questionBankId
         query.questionBankId = questionBankId
@@ -355,10 +355,10 @@ export default {
     },
     },
     showFeedback () {
     showFeedback () {
       this.feedbackObj.moduleName = this.$t(
       this.feedbackObj.moduleName = this.$t(
-        'route.' + sessionStorage.getItem('ws-pf_moduleName')
+        'route.' + localStorage.getItem('ws-pf_moduleName')
       )
       )
       this.feedbackObj.screenName = this.$t(
       this.feedbackObj.screenName = this.$t(
-        'route.' + sessionStorage.getItem('ws-pf_menuName')
+        'route.' + localStorage.getItem('ws-pf_menuName')
       )
       )
       this.feedbackObj.feedbackContent = ''
       this.feedbackObj.feedbackContent = ''
       this.feedbackFlag = true
       this.feedbackFlag = true

+ 2 - 2
src/components/ShipDown/index.vue

@@ -44,7 +44,7 @@ export default {
     }
     }
   },
   },
   created () {
   created () {
-    this.shipList = JSON.parse(sessionStorage.getItem('ws-pf_vessels'))
+    this.shipList = JSON.parse(localStorage.getItem('ws-pf_vessels'))
     this.basicData()
     this.basicData()
   },
   },
   watch: {
   watch: {
@@ -68,7 +68,7 @@ export default {
     },
     },
     basicData () {
     basicData () {
       // 船岸端判断
       // 船岸端判断
-      if (sessionStorage.getItem('ws-pf_vesselBankFlag') === 'V') {
+      if (localStorage.getItem('ws-pf_vesselBankFlag') === 'V') {
         this.vesselBankFlag = true
         this.vesselBankFlag = true
         // this.allShipName = this.shipList[0].vesselName;
         // this.allShipName = this.shipList[0].vesselName;
         // this.vesselId = this.shipList[0].vesselId;
         // this.vesselId = this.shipList[0].vesselId;

+ 1 - 2
src/components/Tinymce/components/editorImage.vue

@@ -96,7 +96,7 @@ export default {
   },
   },
   data () {
   data () {
     return {
     return {
-      // vesselBankFlag: sessionStorage.getItem("ws-pf_serviceTypeFlag") == "true" ? "B" : "V",
+      // vesselBankFlag: localStorage.getItem("ws-pf_serviceTypeFlag") == "true" ? "B" : "V",
       vesselBankFlag: 'V',
       vesselBankFlag: 'V',
       curFileNum: 0,
       curFileNum: 0,
       tempFileList: [],
       tempFileList: [],
@@ -419,7 +419,6 @@ export default {
     },
     },
 
 
     getFilePath (path) {
     getFilePath (path) {
-      // debugger
       // if (this.vesselBankFlag === "V") {
       // if (this.vesselBankFlag === "V") {
       // const sysUrl = "http://" + window.location.host + "/";
       // const sysUrl = "http://" + window.location.host + "/";
       const sysUrl = this.$store.getters.baseInfo.fileUrl
       const sysUrl = this.$store.getters.baseInfo.fileUrl

+ 1 - 1
src/components/Upload/showFile.vue

@@ -54,7 +54,7 @@ export default {
       model: '',
       model: '',
       oldAppendixIds: '',
       oldAppendixIds: '',
       newAppendixIds: '',
       newAppendixIds: '',
-      companyId: sessionStorage.getItem('ws-pf_compId')
+      companyId: localStorage.getItem('ws-pf_compId')
     }
     }
   },
   },
   watch: {
   watch: {

+ 1 - 1
src/components/Upload/upload.vue

@@ -152,7 +152,7 @@ export default {
       // date = date > 9 ? date.toString() : '0' + date
       // date = date > 9 ? date.toString() : '0' + date
       // // fileName 生成
       // // fileName 生成
       // // 生成规则 saas/1/finance/payment/2019/0620/d496c207-16ca-45ce-976d-4982be23571b.txt
       // // 生成规则 saas/1/finance/payment/2019/0620/d496c207-16ca-45ce-976d-4982be23571b.txt
-      // const fileName = `saas/${sessionStorage.getItem('ws-pf_tenantId')}/${this.procurementName
+      // const fileName = `saas/${localStorage.getItem('ws-pf_tenantId')}/${this.procurementName
       //   }/${this.frameName}/${year}${month}${date}/${oldFileName}`
       //   }/${this.frameName}/${year}${month}${date}/${oldFileName}`
 
 
       // this.fileImage()
       // this.fileImage()

+ 1 - 1
src/components/WinseaCom/upload.vue

@@ -88,7 +88,7 @@ export default {
   },
   },
   data () {
   data () {
     return {
     return {
-      systemUrl: sessionStorage.getItem('ws-pf_systemUrl'),
+      systemUrl: localStorage.getItem('ws-pf_systemUrl'),
       showFile: false, // 是否显示已上传文件列表
       showFile: false, // 是否显示已上传文件列表
       enlargeShow: false,
       enlargeShow: false,
       zoomInPicture: '',
       zoomInPicture: '',

+ 3 - 3
src/components/WsAutograph/index.vue

@@ -127,7 +127,7 @@ export default {
     return {
     return {
       vesselBankFlag: 'V',
       vesselBankFlag: 'V',
       // vesselBankFlag:
       // vesselBankFlag:
-      //   sessionStorage.getItem('ws-pf_serviceTypeFlag') == 'true' ? 'B' : 'V',
+      //   localStorage.getItem('ws-pf_serviceTypeFlag') == 'true' ? 'B' : 'V',
       curFileNum: 0,
       curFileNum: 0,
       tempFileList: [],
       tempFileList: [],
       initFileList: [],
       initFileList: [],
@@ -275,7 +275,7 @@ export default {
           appendixName: data.appendixName,
           appendixName: data.appendixName,
           appendixPath: data.appendixPath,
           appendixPath: data.appendixPath,
           appendixSize: this.toKB(file.size),
           appendixSize: this.toKB(file.size),
-          appendixType: sessionStorage.getItem('ws-pf_serviceTypeFlag') == 'true'
+          appendixType: localStorage.getItem('ws-pf_serviceTypeFlag') == 'true'
             ? 'B'
             ? 'B'
             : 'V',
             : 'V',
           fromTableName: this.tableName,
           fromTableName: this.tableName,
@@ -457,7 +457,7 @@ export default {
     getFilePath (path) {
     getFilePath (path) {
       // if (this.vesselBankFlag === 'V') {
       // if (this.vesselBankFlag === 'V') {
       //   return (
       //   return (
-      //     sessionStorage.getItem('ws-pf_systemUrl') +
+      //     localStorage.getItem('ws-pf_systemUrl') +
       //     '/static/' +
       //     '/static/' +
       //     this.slash(path)
       //     this.slash(path)
       //   )
       //   )

+ 3 - 3
src/components/WsAvatar/index.vue

@@ -124,7 +124,7 @@ export default {
     return {
     return {
       vesselBankFlag: 'V',
       vesselBankFlag: 'V',
       // vesselBankFlag:
       // vesselBankFlag:
-      //   sessionStorage.getItem('ws-pf_serviceTypeFlag') == 'true' ? 'B' : 'V',
+      //   localStorage.getItem('ws-pf_serviceTypeFlag') == 'true' ? 'B' : 'V',
       curFileNum: 0,
       curFileNum: 0,
       tempFileList: [],
       tempFileList: [],
       initFileList: [],
       initFileList: [],
@@ -279,7 +279,7 @@ export default {
             appendixName: data.appendixName,
             appendixName: data.appendixName,
             appendixPath: data.appendixPath,
             appendixPath: data.appendixPath,
             appendixSize: this.toKB(file.size),
             appendixSize: this.toKB(file.size),
-            appendixType: sessionStorage.getItem('ws-pf_serviceTypeFlag') == 'true'
+            appendixType: localStorage.getItem('ws-pf_serviceTypeFlag') == 'true'
               ? 'B'
               ? 'B'
               : 'V',
               : 'V',
             fromTableName: this.tableName,
             fromTableName: this.tableName,
@@ -462,7 +462,7 @@ export default {
     getFilePath (path) {
     getFilePath (path) {
       // if (this.vesselBankFlag === 'V') {
       // if (this.vesselBankFlag === 'V') {
       //   return (
       //   return (
-      //     sessionStorage.getItem('ws-pf_systemUrl') +
+      //     localStorage.getItem('ws-pf_systemUrl') +
       //     '/static/' +
       //     '/static/' +
       //     this.slash(path)
       //     this.slash(path)
       //   )
       //   )

+ 10 - 10
src/components/WsUpload/index.vue

@@ -25,7 +25,7 @@
       </div>
       </div>
     </div>
     </div>
     <el-upload
     <el-upload
-      action="https://www.zthymaoyi.com/upload/admin"
+      action="#"
       list-type="picture-card"
       list-type="picture-card"
       :http-request="_handleRequest"
       :http-request="_handleRequest"
       :file-list="fileList"
       :file-list="fileList"
@@ -160,7 +160,7 @@ export default {
     },
     },
     ossKey: {
     ossKey: {
       type: String,
       type: String,
-      required: true,
+      required: false,
     },
     },
     compId: {
     compId: {
       // 公司ID
       // 公司ID
@@ -176,7 +176,7 @@ export default {
     tableName: {
     tableName: {
       // 要保存的表的名字
       // 要保存的表的名字
       type: String,
       type: String,
-      required: true,
+      required: false,
     },
     },
     onlineEdit: false,
     onlineEdit: false,
     disabled: false,
     disabled: false,
@@ -190,7 +190,7 @@ export default {
       pdfUrl: '',
       pdfUrl: '',
       pdfFileName: '',
       pdfFileName: '',
       isShowPdf: false,
       isShowPdf: false,
-      // vesselBankFlag: sessionStorage.getItem("ws-pf_serviceTypeFlag") == "true" ? "B" : "V",
+      // vesselBankFlag: localStorage.getItem("ws-pf_serviceTypeFlag") == "true" ? "B" : "V",
       vesselBankFlag: 'V',
       vesselBankFlag: 'V',
       curFileNum: 0,
       curFileNum: 0,
       tempFileList: [],
       tempFileList: [],
@@ -206,7 +206,7 @@ export default {
         companyId: this.compId,
         companyId: this.compId,
         basePath: '', //config.getUploadPath(this.ossKey, this.compId)
         basePath: '', //config.getUploadPath(this.ossKey, this.compId)
       },
       },
-      clientFag: sessionStorage.getItem('ws-pf_clientFag'),
+      clientFag: localStorage.getItem('ws-pf_clientFag'),
     }
     }
   },
   },
   computed: {
   computed: {
@@ -368,7 +368,7 @@ export default {
             appendixSize: this.toKB(file.size),
             appendixSize: this.toKB(file.size),
             // appendixType: "V",
             // appendixType: "V",
             appendixType:
             appendixType:
-              sessionStorage.getItem('ws-pf_serviceTypeFlag') == 'true'
+              localStorage.getItem('ws-pf_serviceTypeFlag') == 'true'
                 ? 'B'
                 ? 'B'
                 : 'V',
                 : 'V',
             fromTableName: this.tableName,
             fromTableName: this.tableName,
@@ -579,12 +579,13 @@ export default {
     },
     },
     getFilePath(path) {
     getFilePath(path) {
       // let sysUrl =  process.env.NODE_ENV === "production"?"http://" + window.location.host+"/":"http://product-dev.winsea.com/";
       // let sysUrl =  process.env.NODE_ENV === "production"?"http://" + window.location.host+"/":"http://product-dev.winsea.com/";
-      let sysUrl = this.$store.getters.baseInfo.fileUrl
-      path = this.checkUrl(path)
+      // let sysUrl = this.$store.getters.baseInfo.fileUrl
+      // path = this.checkUrl(path)
       // if (this.clientFag === "B") {
       // if (this.clientFag === "B") {
       //   // sysUrl+="pb/"
       //   // sysUrl+="pb/"
       // }
       // }
-      return sysUrl + this.slash(path)
+      // return sysUrl + this.slash(path)
+      return path
     },
     },
     // 字节转KB
     // 字节转KB
     toKB(bt) {
     toKB(bt) {
@@ -592,7 +593,6 @@ export default {
     },
     },
 
 
     clearFiles() {
     clearFiles() {
-      // debugger
       this.fileList = []
       this.fileList = []
     },
     },
     // 反斜杠转斜杠
     // 反斜杠转斜杠

+ 292 - 0
src/components/balanceAlert.vue

@@ -0,0 +1,292 @@
+
+<template>
+  <div class="content">
+    <div class="title" v-if="information.indexOf('毛重') > -1">毛重</div>
+    <div class="title" v-else>皮重</div>
+    <div class="contentInfo">
+      <div class="uncertain">浮动重量</div>
+      <div class="number" v-if="information.indexOf('毛重') > -1">
+        {{ grossWeightVal }} kg
+      </div>
+      <div class="number" v-else>{{ tareVal }} kg</div>
+    </div>
+
+    <div class="btn" @click="sendVal">确定</div>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'balanceAlert',
+  props: ['deptBudgetList', 'information'],
+  data() {
+    return {
+      param: 9600,
+      grossWeightVal: '',
+      tareVal: '',
+    }
+  },
+  activated() {},
+  mounted() {
+    console.log('11111111111111111111111111111111111')
+    console.log(this.deptBudgetList)
+    this.openPort()
+  },
+  computed: {},
+  created() {},
+  methods: {
+    sendVal() {
+      console.log(this.grossWeightVal)
+      console.log(this.tareVal)
+      console.log(this.deptBudgetList)
+      if (this.information.indexOf('毛重') > -1) {
+        this.$emit('balanceListen', this.grossWeightVal)
+      } else {
+        this.$emit('balanceListen', this.tareVal)
+      }
+    },
+    async closePort() {
+      console.log('closePort')
+      this.reader.cancel()
+    },
+    async openPort() {
+      console.log('openPort', navigator)
+      if ('serial' in navigator) {
+        if (!this.$store.state.app.reader) {
+          // The Web Serial API is supported.
+          console.log('the Web Serial API is supported.')
+          const port = await navigator.serial.requestPort()
+          if (this.deptBudgetList.warehouseName == '白城内陆港') {
+            this.param = 1200
+          } else {
+            this.param = 9600
+          }
+          console.log(this.param)
+          await port.open({
+            baudRate: this.param,
+          }) // set baud rate
+          this.reader = port.readable.getReader()
+          console.log('port  ', port)
+          this.$store.dispatch('app/setReader', this.reader)
+          console.log('reader  ', this.reader)
+        } else {
+          console.log('afterport', this.$store.state.app.reader)
+          this.reader = this.$store.state.app.reader
+        }
+        // 监听来自串行设备的数据
+        while (true) {
+          const { value, done } = await this.reader.read()
+          // console.log("value",value);
+          if (done) {
+            // 允许稍后关闭串口。
+            this.reader.releaseLock()
+            break
+          }
+          var result = ''
+          //2。获取16进制字符串
+          // var receData = HexConvert.ByteToString(value);
+          // console.log("receData",receData);
+          var flag = false
+          var flag1 = false
+          // for (var i = 0; i < value.length; i++) {
+          //   var tmp = String.fromCharCode(value[i])
+          //   if (tmp == '+') {
+          //     flag = true
+          //   }
+          //   if (flag && result.length < 6 && tmp != '+') {
+          //     result += tmp
+          //   }
+          // }
+          // if (this.information != '毛重检斤') {
+          //   if(parseInt(result)){
+          //     this.deptBudgetList.grossWeight = parseInt(result)
+          //   }
+          // } else {
+          //   if(parseInt(result)){
+          //     this.deptBudgetList.tare = parseInt(result)
+          //   }
+          // }
+          if(value.length > 3){
+            console.log('value23:', value)
+             if(value.length <= 6){
+              continue
+             }
+          }
+          else if(this.deptBudgetList.warehouseName == '白城内陆港'){
+            console.log('value:', value)
+            var start = (new Date()).getTime();
+            while((new Date()).getTime() - start < 400) {
+
+            }
+            continue;
+          }
+          if (
+            this.deptBudgetList.warehouseName &&
+            (this.deptBudgetList.warehouseName == '山东诸城迈饶库' ||
+              this.deptBudgetList.warehouseName == '克东千红库' ||
+              this.deptBudgetList.warehouseName == '鲅鱼圈祥腾库' ||
+              this.deptBudgetList.warehouseName == '哈尔滨依兰库' ||
+              this.deptBudgetList.warehouseName == '龙江金信库' ||
+              this.deptBudgetList.warehouseName == '白城内陆港')
+          ) {
+            for (var i = 0; i < value.length; i++) {
+              var tmp = String.fromCharCode(value[i])
+              if (tmp == '+') {
+                flag = true
+              }
+              if (flag && result.length < 6 && tmp != '+') {
+                result += tmp
+              }
+            }
+            if (this.information.indexOf('毛重') > -1) {
+              if (parseInt(result) || parseInt(result) == 0) {
+                this.grossWeightVal = parseInt(result)
+              }
+            } else {
+              if (parseInt(result) || parseInt(result) == 0) {
+                this.tareVal = parseInt(result)
+              }
+            }
+          } else if (
+            this.deptBudgetList.warehouseName &&
+            (this.deptBudgetList.warehouseName == '顺诚粮库' ||
+              this.deptBudgetList.warehouseName == '鲅鱼圈金信库')
+          ) {
+            for (var i = value.length - 1; i >= 0; i--) {
+              var tmp = String.fromCharCode(value[i])
+              console.log(tmp)
+              if (String.fromCharCode(value[0]) == '.') {
+                flag = true
+              }
+              if (flag && result.length < 9 && tmp != '=' && tmp != '.') {
+                result += tmp
+              }
+            }
+            if (this.information.indexOf('毛重') > -1) {
+              if (parseInt(result) || parseInt(result) == 0) {
+                this.grossWeightVal = parseInt(result)
+              }
+            } else {
+              if (parseInt(result) || parseInt(result) == 0) {
+                this.tareVal = parseInt(result)
+              }
+            }
+          } else {
+            if (value.length > 10) {
+              for (var i = 0; i < value.length; i++) {
+                var tmp = String.fromCharCode(value[i])
+
+                // if (value[0] != 49 && value[0] != 2) {
+                //   // if (
+                //   //   value[value.length - 1] == 48 &&
+                //   //   value[value.length - 2] == 48
+                //   // ) {
+                //   //   flag1 = true
+                //   // } else {
+                //   //   break
+                //   // }
+                //   // flag1 = true
+                //   if (i == 0) {
+                //     this.result1 = tmp + '0'
+                //   }
+                // }
+                // else{
+                //   if (tmp == String.fromCharCode(32)) {
+                //     flag = true
+                //   }
+                // }
+                if (tmp == String.fromCharCode(32)) {
+                  flag = true
+                }
+                if (
+                  flag &&
+                  result.length < 7 &&
+                  tmp != String.fromCharCode(32)
+                  // &&
+                  // !(
+                  //   value[value.length - 1] == 48 && value[value.length - 2] == 48
+                  // )
+                ) {
+                  if (i > 0 && value[i] == 48 && value[i - 1] == 32 && result) {
+                    break
+                  } else {
+                    result += tmp
+                  }
+                }
+                // if (flag1 && tmp != String.fromCharCode(32)) {
+                //   // if (
+                //   //   value[value.length - 1] == 48 &&
+                //   //   value[value.length - 2] == 48
+                //   // ) {
+                //   //   if (i == 0) {
+                //   //     this.result1 = tmp + '0'
+                //   //   }
+                //   // }
+                //   if (i == 0) {
+                //     this.result1 = tmp + '0'
+                //   }
+                // }
+              }
+            }
+
+            if (this.information.indexOf('毛重') > -1) {
+              if (parseInt(result) || parseInt(result) == 0) {
+                this.grossWeightVal = parseInt(result + this.result1)
+              }
+            } else {
+              if (parseInt(result) || parseInt(result) == 0) {
+                this.tareVal = parseInt(result + this.result1)
+              }
+            }
+          }
+          // setTimeout(1000)
+          // value 是一个 Uint8Array
+        }
+        await port.close()
+      } else {
+        console.log('the Web Serial API is not supported.', navigator)
+      }
+    },
+  },
+}
+</script>
+
+<style lang="scss" scoped>
+.content {
+  height: 350px;
+  position: relative;
+  background: black;
+  color: #2aff7c;
+  font-size: 32px;
+  text-align: right;
+  padding: 20px;
+  border-radius: 10px;
+  margin: 0 20px 20px 20px;
+  .btn {
+    position: absolute;
+    bottom: 20px;
+    right: 20px;
+    border: 1px solid #2aff7c;
+    width: 200px;
+    border-radius: 10px;
+    display: flex;
+    align-items: center;
+    justify-content: center;
+  }
+  .contentInfo {
+    display: flex;
+    .uncertain {
+      width: 35%;
+      text-align: left;
+    }
+    .number {
+      width: 65%;
+      text-align: right;
+    }
+  }
+}
+.title {
+  text-align: right;
+  margin-bottom: 20px;
+}
+</style>

+ 3 - 5
src/components/base/BaseContainer/index.vue

@@ -14,17 +14,15 @@ export default {
 
 
 <style lang="scss">
 <style lang="scss">
 .basic-container {
 .basic-container {
-  // padding: 10px 6px;
-  // min-width: 1166px;
-  margin: 10px;
-  height: calc(100% - 10px);
-  overflow: hidden;
+  height: 100%;
   border-radius: 4px;
   border-radius: 4px;
   box-sizing: border-box;
   box-sizing: border-box;
   .el-card {
   .el-card {
     width: 100%;
     width: 100%;
+    height: 100%;
     &__body {
     &__body {
       padding: 0 !important;
       padding: 0 !important;
+      height: 100%;
     }
     }
   }
   }
   // &:first-child {
   // &:first-child {

+ 1 - 1
src/components/base/BaseDepartMentDropdown/index.vue

@@ -55,7 +55,7 @@ export default {
   data () {
   data () {
     return {
     return {
       allDepartment: 'bj.qualityFeedback.department',
       allDepartment: 'bj.qualityFeedback.department',
-      vesselBankFlag: sessionStorage.getItem('ws-pf_vesselBankFlag') === 'V' && sessionStorage.getItem('ws-pf_dutyId') !== '1', //船岸端判断
+      vesselBankFlag: localStorage.getItem('ws-pf_vesselBankFlag') === 'V' && localStorage.getItem('ws-pf_dutyId') !== '1', //船岸端判断
       departmentList: [],
       departmentList: [],
       value2: '',
       value2: '',
       changeIcon: false,
       changeIcon: false,

+ 1 - 1
src/components/base/BaseParameterSelect/index.vue

@@ -99,7 +99,7 @@ export default {
      * 刷新数据集合 当远程加载的时候  远程加载数据接口,不使用远程加载的时候自动从本地获取数据
      * 刷新数据集合 当远程加载的时候  远程加载数据接口,不使用远程加载的时候自动从本地获取数据
      */
      */
     async onRefresh () {
     async onRefresh () {
-      this.options = (this.parameters || []).length > 0 ? cloneDeep(this.parameters) : await this.getParameterCompany({ constCode: this.typeCode, compId: sessionStorage.getItem('ws-pf_compId') })
+      this.options = (this.parameters || []).length > 0 ? cloneDeep(this.parameters) : await this.getParameterCompany({ constCode: this.typeCode, compId: localStorage.getItem('ws-pf_compId') })
       this.$emit('on-mounted', this.options);
       this.$emit('on-mounted', this.options);
     },
     },
     /**
     /**

+ 1 - 1
src/components/base/BaseShipDropdown/index.vue

@@ -68,7 +68,7 @@ export default {
   data () {
   data () {
     return {
     return {
       allShip: 'bj.qualityFeedback.allShipName',
       allShip: 'bj.qualityFeedback.allShipName',
-      vesselBankFlag: sessionStorage.getItem('ws-pf_vesselBankFlag') === 'V' && sessionStorage.getItem('ws-pf_dutyId') !== '1', //船岸端判断
+      vesselBankFlag: localStorage.getItem('ws-pf_vesselBankFlag') === 'V' && localStorage.getItem('ws-pf_dutyId') !== '1', //船岸端判断
       options: [],
       options: [],
       value2: '',
       value2: '',
       changeIcon: false,
       changeIcon: false,

+ 3 - 2
src/components/editSelect/index.vue

@@ -81,6 +81,7 @@
              :placeholder="getPleaseChoose"
              :placeholder="getPleaseChoose"
              style="width: 100%;"
              style="width: 100%;"
              filterable
              filterable
+             clearable
              @change="selectContract">
              @change="selectContract">
     <el-option v-for="(item,index) in unitList"
     <el-option v-for="(item,index) in unitList"
                :key="item.constValue"
                :key="item.constValue"
@@ -154,7 +155,7 @@ export default {
         constKey: '',
         constKey: '',
         constValue: '',
         constValue: '',
         id: '',
         id: '',
-        compId: sessionStorage.getItem('ws-pf_compId')
+        compId: localStorage.getItem('ws-pf_compId')
       }
       }
     }
     }
   },
   },
@@ -178,7 +179,7 @@ export default {
   methods: {
   methods: {
     getUnitList () {
     getUnitList () {
       customDropDown({
       customDropDown({
-        compId: sessionStorage.getItem('ws-pf_compId'),
+        compId: localStorage.getItem('ws-pf_compId'),
         constCode: this.type
         constCode: this.type
       }).toPromise().then(response => {
       }).toPromise().then(response => {
         this.unitList = response
         this.unitList = response

+ 33 - 0
src/components/imgPreview/ImgPreview.vue

@@ -0,0 +1,33 @@
+<template>
+  <el-dialog
+    :visible.sync="isShowImageDialog"
+    @closed="clearImg"
+  >
+    <el-carousel indicator-position="outside" height="600px" :autoplay='false'>
+      <el-carousel-item v-for="src in imgs">
+        <img :src="src" style="max-width: 100%;max-height: 100%;display: block; margin: 0 auto;"/>
+      </el-carousel-item>
+    </el-carousel>
+  </el-dialog>
+</template>
+ 
+<script>
+export default {
+  name: 'ImgPreview',
+  data() {
+    return {
+      imgs: '',
+      isShowImageDialog: false
+    }
+  },
+  methods: {
+    clearImg() {
+      this.imgs = null
+    }
+  }
+}
+</script>
+ 
+<style scoped>
+ 
+</style>

+ 24 - 0
src/components/imgPreview/index.js

@@ -0,0 +1,24 @@
+import ImgPreviewComponent from './ImgPreview'
+ 
+const ImgPreview = {}
+ 
+ImgPreview.install = Vue => {
+  const ImgConstructor = Vue.extend(ImgPreviewComponent)
+ 
+  const instance = new ImgConstructor()
+ 
+  instance.$mount(document.createElement('div'))
+ 
+  document.body.appendChild(instance.$el)
+ 
+  Vue.prototype.$imgPreview = (e) => {
+    instance.target = e.currentTarget
+    instance.imgs = instance.target.getAttribute('data-img').split(',')
+    for(let i = 0;i<instance.imgs.length;i++){
+        if(!instance.imgs[i]) instance.imgs.splice(i)
+    }
+    instance.isShowImageDialog = true
+  }
+}
+ 
+export default ImgPreview

文件差异内容过多而无法显示
+ 282 - 0
src/components/mapdrag/indexMap.vue


+ 455 - 279
src/components/mapdrag/mapdrag.vue

@@ -1,48 +1,84 @@
 <style lang='scss' scoped>
 <style lang='scss' scoped>
-.mapContent {
-  position: relative;
-  margin-top: 64px;
-}
-#mapContainer {
-  width: 300px;
-  height: 300px;
-}
-#tip {
-  position: absolute;
-  top: -60px;
-}
-#tip .el-input {
-  width: 179px;
-  margin-right: 0px;
-}
-#tip .el-select {
-  margin-right: 10px;
-}
-#tip .el-select {
-  width: 179px;
-}
-#tip .el-textarea {
-  width: 179px;
-  /deep/ .el-textarea__inner {
-    height: 40px;
-    resize: none;
+  .mapContent {
+    position: relative;
+    margin-top: 50px;
+
+    .center-add {
+      position: absolute;
+      top: 0;
+      bottom: 0;
+      left: 0;
+      right: 0;
+      margin: auto;
+      z-index: 999;
+      width: 30px;
+      height: 30px;
+    }
+  }
+
+  #mapContainer {
+    width: 100%;
+    height: 330px;
+  }
+
+  #tip {
+    position: absolute;
+    top: -45px;
+    display: flex;
+  }
+
+  #tip .el-input {
+    // width: 179px;
+    margin-right: 0px;
+  }
+
+  #tip .el-select {
+    margin-right: 10px;
+  }
+
+  #tip .el-select {
+    width: 179px;
+  }
+
+  #tip .el-textarea {
+    width: 179px;
+
+    /deep/ .el-textarea__inner {
+      height: 40px;
+      resize: none;
+    }
+  }
+
+  .el-button--primary {
+    background-color: #5878e8;
+    border-color: #5878e8;
+  }
+
+  .el-button--default {
+    color: #5878e8;
+    border-color: #5473e8;
+  }
+
+  .address {
+    display: flex;
+    align-items: center;
+    margin-right: 20px;
+
+    // position:absolute;
+    // top: -35px;
+    .address-input {
+      display: inline-block;
+      width: 480px;
+    }
   }
   }
-}
-.el-button--primary {
-  background-color: #5878e8;
-  border-color: #5878e8;
-}
-.el-button--default {
-  color: #5878e8;
-  border-color: #5473e8;
-}
 </style>
 </style>
 
 
 <template>
 <template>
   <div class="mapContent">
   <div class="mapContent">
+    <img class='center-add' src="../../../public/img/zuobiao.gif" alt="" />
     <div id="mapContainer"></div>
     <div id="mapContainer"></div>
     <div id="tip" v-show="showFlag === false ? false : true">
     <div id="tip" v-show="showFlag === false ? false : true">
-      <el-select v-model="province" @change="selectP" placeholder="省">
+      <!-- <el-select v-model="province" @change="selectP" placeholder="省">
         <el-option
         <el-option
           v-for="item in provinces"
           v-for="item in provinces"
           :key="item.adcode"
           :key="item.adcode"
@@ -68,267 +104,407 @@
           :value="item.adcode"
           :value="item.adcode"
         >
         >
         </el-option>
         </el-option>
-      </el-select>
-      <!-- <el-input
-        type="textarea"
-        id="searchValue"
-        placeholder="地址"
-        v-model="address"
-        clearable
-      ></el-input> -->
-      <el-button @click="positions" type="primary">确定定位</el-button>
-      <el-button @click="anewselect">重新选择</el-button>
+      </el-select> -->
+      <div class="address">
+        <el-input type="text" id="searchValue" placeholder="请输入关键字:" v-model="address" clearable class="address-input">
+        </el-input>
+      </div>
+      <el-button>经纬度:{{center}}</el-button>
+      <el-button @click="positions" type="primary" v-if='!isShowaddress'>确定定位</el-button>
+      <el-button @click="anewselect" v-if='!isShowaddress'>重新选择</el-button>
+      <el-button @click="submit" v-if='isShowaddress'>确定</el-button>
     </div>
     </div>
+
+
   </div>
   </div>
 </template>
 </template>
 
 
 <script>
 <script>
-import image from '../../../public/img/ic_locationmarker.jpg'
-export default {
-  data() {
-    return {
-      map: null,
-      provinces: [],
-      province: '',
-      districts: [],
-      district: '',
-      citys: [],
-      city: '',
-      polygons: [],
-      areacode: '',
-      address: '',
-      objPoint: [],
-      markers: [],
-      zoomEnable: true,
-      dragEnable: true,
-      status: true,
-    }
-  },
-  props: ['flagVisible', 'position'],
-  computed: {
-    showFlag() {
-      return this.flagVisible
+  import {
+    regionData,
+    CodeToText,
+    TextToCode
+  } from 'element-china-area-data'
+  import image from '../../../public/img/ic_locationmarker.jpg'
+  import AMapLoader from '@amap/amap-jsapi-loader';
+  export default {
+    data() {
+      return {
+        map: null,
+        provinces: [],
+        province: '',
+        districts: [],
+        district: '',
+        citys: [],
+        city: '',
+        polygons: [],
+        selectedOptions1: [],
+        areacode: '',
+        address: '',
+        objPoint: [],
+        markers: [],
+        zoomEnable: true,
+        dragEnable: true,
+        status: true,
+        center: '',
+      }
     },
     },
-  },
-  async created() {
-    // 已载入高德地图API,则直接初始化地图
-    if (window.AMap && window.AMapUI) {
-      this.initMap()
-      // 未载入高德地图API,则先载入API再初始化
-    } else {
-      await remoteLoad(`http://webapi.amap.com/maps?v=1.3&key=${MapKey}`)
-      await remoteLoad('http://webapi.amap.com/ui/1.0/main.js')
-      this.initMap()
-    }
-  },
-  mounted() {
-    setTimeout(() => {
-      var that = this
-      this.map = new AMap.Map('mapContainer', {
-        resizeEnable: true,
-        zoom: 10,
-        zoomEnable: this.zoomEnable,
-        dragEnable: this.dragEnable,
-      })
-      this.map.on('click', function (e) {
-        if (this.status) {
-          var marker = new AMap.Marker({
-            position: new AMap.LngLat(e.lnglat.getLng(), e.lnglat.getLat()), // 经纬度对象,也可以是经纬度构成的一维数组[116.39, 39.9]
-          })
-          that.map.remove(that.markers)
-          that.$emit('marker', e)
-          that.markers.push(marker)
-          // 将创建的点标记添加到已有的地图实例:
-          that.map.add(marker)
-        }
-      })
-      this.marker = new AMap.Marker({
-        icon: new AMap.Icon({
-          size: new AMap.Size(36, 44),
-          image: image,
-        }),
-        map: that.map,
-      })
-      AMap.plugin(
-        ['AMap.Autocomplete', 'AMap.PlaceSearch', 'AMap.Geocoder'],
-        function () {
-          var autocomplete = new AMap.Autocomplete({
-            input: 'searchValue',
-          })
-          var placeSearch = new AMap.PlaceSearch({
-            city: that.acode,
-            citylimit: true,
-            pageSize: 1,
-            pageIndex: 1,
-            map: that.map,
-          })
-          AMap.event.addListener(autocomplete, 'select', function (e) {
-            that.marker.setMap(that.map)
-            that.marker.setPosition(e.poi.location)
-            placeSearch.search() // 关键字查询查询
-            geocoder.getAddress(e.poi.location, function (status, result) {
-              if (status === 'complete') {
-                var obj = {}
-                that.province = result.regeocode.addressComponent.province
-                that.city = result.regeocode.addressComponent.city
-                that.district = result.regeocode.addressComponent.district
-                obj.formattedAddress = result.regeocode.formattedAddress
-                obj.areacode = result.regeocode.addressComponent.adcode
-                that.address = result.regeocode.formattedAddress
-                obj.lat = e.poi.location.lat
-                obj.lng = e.poi.location.lng
-                that.$emit('searchAddress', obj)
-              } else {
-                that.$emit('searchAddress', '')
-              }
+    props: ['flagVisible', 'position', 'selectedOptions', 'isShowaddress', 'type'],
+    computed: {
+      showFlag() {
+        return this.flagVisible
+      },
+    },
+    watch: {
+      selectedOptions: {
+        handler(newValue, oldValue) {
+          this.province = CodeToText[newValue[0]]
+          this.selectP(this.province)
+          this.city = CodeToText[newValue[1]]
+          this.selectC(CodeToText[newValue[1]])
+          this.district = newValue[2]
+          this.selectD(this.district)
+        },
+        deep: true
+      }
+    },
+    async created() {
+      
+    },
+    mounted() {
+      
+      // AMapLoader.reset();
+      // 已载入高德地图API,则直接初始化地图
+      if (window.AMap && window.AMapUI) {
+        // 未载入高德地图API,则先载入API再初始化
+      } else {
+        // await remoteLoad(`http://webapi.amap.com/maps?v=1.3&key=${MapKey}&plugin=AMap.AutoComplete`)
+        // await remoteLoad('http://webapi.amap.com/ui/1.0/main.js')
+        //  AMapLoader.reset();
+        AMapLoader.load({
+          "key": "211dd6f989e719022aaf47ddb0659c47", // 申请好的Web端开发者Key,首次调用 load 时必填
+          "version": "2.0", // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15
+          "plugins": ['plugin=AMap.Scale', 'AMap.ToolBar','AMap.AutoComplete', 'AMap.PlaceSearch', 'AMap.Geocoder', 'AMap.DistrictSearch','AMap.Geolocation', 'Geolocation'],
+          "Loca": { // 是否加载 Loca, 缺省不加载
+            "version": '2.0.0' // Loca 版本,缺省 1.3.2
+          },
+        }).then((AMap) => {
+      setTimeout(() => {
+        var that = this
+        this.map = new AMap.Map('mapContainer', {
+          resizeEnable: true,
+          zoom: 10,
+          zoomEnable: this.zoomEnable,
+          dragEnable: this.dragEnable,
+        })
+        this.map.on('click', function(e) {
+          if (this.status) {
+            var marker = new AMap.Marker({
+              position: new AMap.LngLat(e.lnglat.getLng(), e.lnglat
+                .getLat()), // 经纬度对象,也可以是经纬度构成的一维数组[116.39, 39.9]
             })
             })
-            that.map.setFitView()
-          })
-          // 经纬度
-          var geocoder = new AMap.Geocoder({
-            radius: 1000,
-          })
-          that.map.on('click', function (e) {
-            for (var i = 0, l = that.polygons.length; i < l; i++) {
-              that.polygons[i].setMap(null)
-            }
-            that.marker.setMap(that.map)
-            that.marker.setPosition(e.lnglat)
-            geocoder.getAddress(e.lnglat, function (status, result) {
-              if (status === 'complete') {
-                var obj = {}
-                that.province = result.regeocode.addressComponent.province
-                that.city = result.regeocode.addressComponent.city
-                that.district = result.regeocode.addressComponent.district
-                obj.formattedAddress = result.regeocode.formattedAddress
-                obj.areacode = result.regeocode.addressComponent.adcode
-                that.address = result.regeocode.formattedAddress
-                obj.lat = e.lnglat.lat
-                obj.lng = e.lnglat.lng
-                that.$emit('pickedAddress', obj)
+            that.map.remove(that.markers)
+            that.$emit('marker', e)
+            that.markers.push(marker)
+            // 将创建的点标记添加到已有的地图实例:
+            that.map.add(marker)
+          }
+        })
+        this.marker = new AMap.Marker({
+          icon: new AMap.Icon({
+            size: new AMap.Size(0, 0),
+            image: image,
+          }),
+          map: that.map,
+        })
+        AMap.plugin(
+          ['AMap.AutoComplete', 'AMap.PlaceSearch', 'AMap.Geocoder', 'AMap.DistrictSearch'],
+          function() {
+            var autocomplete = new AMap.AutoComplete({
+              input: 'searchValue',
+            })
+            var placeSearch = new AMap.PlaceSearch({
+              city: that.acode,
+              citylimit: true,
+              pageSize: 1,
+              pageIndex: 1,
+              map: that.map,
+            })
+            var districtSearch = new AMap.DistrictSearch({
+              subdistrict: 1,
+              level: 'city',
+              showbiz: false,
+            });
+            autocomplete.on( 'select', function(e) {
+              that.marker.setMap(that.map)
+              if (e.poi.location) {
+                placeSearch.search() // 关键字查询查询
+                that.marker.setPosition(e.poi.location)
+                geocoder.getAddress(e.poi.location, function(status, result) {
+                  console.log(e.poi.location, "klokolkjolk")
+                  if (status === 'complete') {
+                    var obj = {}
+                    that.province = result.regeocode.addressComponent.province
+                    that.city = result.regeocode.addressComponent.city
+                    that.district = result.regeocode.addressComponent.district
+                    obj.formattedAddress = result.regeocode.formattedAddress
+                    obj.areacode = result.regeocode.addressComponent.adcode
+                    that.address = result.regeocode.formattedAddress
+                    obj.lat = e.poi.location.lat
+                    obj.lng = e.poi.location.lng
+                    that.$emit('searchAddress', obj)
+                  } else {
+                    that.$emit('searchAddress', '')
+                  }
+                  that.map.setFitView()
+                })
               } else {
               } else {
-                that.$emit('pickedAddress', '')
+                districtSearch.search(e.poi.name, (status, result1) => {
+                  if (status == 'complete') {
+                    that.marker.setPosition(result1.districtList[0].center)
+                    geocoder.getAddress(result1.districtList[0].center, function(status, result) {
+                      if (status === 'complete') {
+                        var obj = {}
+
+                        that.province = result.regeocode.addressComponent.province
+                        that.city = result.regeocode.addressComponent.city
+                        that.district = result.regeocode.addressComponent.district
+                        obj.formattedAddress = result.regeocode.formattedAddress
+                        obj.areacode = result.regeocode.addressComponent.adcode
+                        that.address = result.regeocode.formattedAddress
+                        obj.lat = result1.districtList[0].center.lat
+                        obj.lng = result1.districtList[0].center.lng
+                        that.$emit('searchAddress', obj)
+                      } else {
+                        that.$emit('searchAddress', '')
+                      }
+                      that.map.setFitView()
+                    })
+
+
+                  }
+                })
               }
               }
             })
             })
-          })
-          // 根据坐标点定位,获取地址的详细信息
-          if (that.position) {
-            that.marker.setMap(that.map)
-            that.marker.setPosition(that.position)
-            geocoder.getAddress(that.position, function (status, result) {
-              if (status === 'complete') {
-                var obj = {}
-                obj.formattedAddress = result.regeocode.formattedAddress
-                obj.areacode = result.regeocode.addressComponent.adcode
-                that.address = result.regeocode.formattedAddress
-                that.$emit('positionAddress', obj)
-                that.province = result.regeocode.addressComponent.province
-                that.city = result.regeocode.addressComponent.city
-                that.district = result.regeocode.addressComponent.district
-              }
+            // 经纬度
+            var geocoder = new AMap.Geocoder({
+              radius: 1000,
             })
             })
-            that.map.setFitView()
-          } else {
-            return false
+            that.map.on('moveend', function(e) {
+              //地图变动之后需要重新赋值省市区,未完成
+              that.center = that.map.getCenter(); //获取当前地图中心位置
+              console.log(that.center)
+              that.center.lat = Number(that.center.lat.toFixed(3))
+              that.center.lng = Number(that.center.lng.toFixed(3))
+              for (var i = 0, l = that.polygons.length; i < l; i++) {
+                that.polygons[i].setMap(null)
+              }
+              that.marker.setMap(that.map)
+              that.marker.setPosition(that.center)
+              geocoder.getAddress(that.center, function(status, result) {
+                if (status === 'complete') {
+                  var obj = {}
+                  that.province = result.regeocode.addressComponent.province
+                  that.city = result.regeocode.addressComponent.city
+                  that.district = result.regeocode.addressComponent.district
+                  obj.formattedAddress = result.regeocode.formattedAddress
+                  obj.areacode = result.regeocode.addressComponent.adcode
+                  that.address = result.regeocode.formattedAddress
+                  obj.lat = that.center.lat
+                  obj.lng = that.center.lng
+                  that.$emit('pickedAddress', obj)
+                } else {
+                  that.$emit('pickedAddress', '')
+                }
+              })
+            });
+            that.map.on('zoomend', function() {
+              //地图变动之后需要重新赋值省市区,未完成
+              // this.zoom = map.getZoom(); //获取当前地图级别
+              that.center = that.map.getCenter(); //获取当前地图中心位置
+              console.log(that.center)
+              that.center.lat = Number(that.center.lat.toFixed(3))
+              that.center.lng = Number(that.center.lng.toFixed(3))
+              for (var i = 0, l = that.polygons.length; i < l; i++) {
+                that.polygons[i].setMap(null)
+              }
+              that.marker.setMap(that.map)
+              that.marker.setPosition(that.center)
+              geocoder.getAddress(that.center, function(status, result) {
+                if (status === 'complete') {
+                  var obj = {}
+                  that.province = result.regeocode.addressComponent.province
+                  that.city = result.regeocode.addressComponent.city
+                  that.district = result.regeocode.addressComponent.district
+                  obj.formattedAddress = result.regeocode.formattedAddress
+                  obj.areacode = result.regeocode.addressComponent.adcode
+                  that.address = result.regeocode.formattedAddress
+                  obj.lat = that.center.lat
+                  obj.lng = that.center.lng
+                  that.$emit('pickedAddress', obj)
+                } else {
+                  that.$emit('pickedAddress', '')
+                }
+              })
+            });
+            // 根据坐标点定位,获取地址的详细信息
+            if (that.position) {
+              that.marker.setMap(that.map)
+              that.marker.setPosition(that.position)
+              geocoder.getAddress(that.position, function(status, result) {
+                if (status === 'complete') {
+                  var obj = {}
+                  obj.formattedAddress = result.regeocode.formattedAddress
+                  obj.areacode = result.regeocode.addressComponent.adcode
+                  that.address = result.regeocode.formattedAddress
+                  that.$emit('positionAddress', obj)
+                  that.province = result.regeocode.addressComponent.province
+                  that.city = result.regeocode.addressComponent.city
+                  that.district = result.regeocode.addressComponent.district
+                }
+              })
+              that.map.setFitView()
+            } else {
+              return false
+            }
           }
           }
-        }
-      )
-    }, 500)
-    this.loadmap()
-  },
-  methods: {
-    positions() {
-      this.status = false
-      var status = {
-        zoomEnable: false,
-        dragEnable: false,
-      }
-      this.map.setStatus(status)
+        )
+      }, 500)
       this.loadmap()
       this.loadmap()
-    },
-    anewselect() {
-      this.status = true
-      var status = {
-        zoomEnable: true,
-        dragEnable: true,
+        // this.loadmap()
+        }).catch(e => {
+          console.log(e);
+        })
       }
       }
-      this.map.setStatus(status)
-      this.loadmap()
     },
     },
-    loadmap(val) {
-      let params = val
-      var that = this // 插件
-      for (var j = 0, k = that.polygons.length; j < k; j++) {
-        that.polygons[j].setMap(null)
-      }
-      AMap.plugin(['AMap.DistrictSearch', 'AMap.Polygon'], function () {
-        // 标注
-        var opts = {
-          subdistrict: 1,
-          extensions: 'all',
-          showbiz: false,
+    methods: {
+       clearVal () {
+       this.address = ''
+       this.center=''
+        var status = {
+          zoomEnable: true,
+          dragEnable: true,
         }
         }
-        var district = new AMap.DistrictSearch(opts) // 注意:需要使用插件同步下发功能才能这样直接使用
-        function getData(data) {
-          that.$emit('selectedAddress', data)
-          // 清除地图上的所有覆盖物
-          that.areacode = data.citycode
-          var bounds = data.boundaries
-          if (data.level === 'country') {
-            that.provinces = data.districtList
-            that.citys = []
-            that.districts = []
-          } else if (data.level === 'province') {
-            that.map.remove(that.marker)
-            that.citys = data.districtList
-            that.districts = []
-            that.address = ''
-          } else if (data.level === 'city') {
-            that.districts = data.districtList
+        this.map.setStatus(status)
+        this.loadmap()
+    },
+      positions() {
+        this.status = false
+        var status = {
+          zoomEnable: false,
+          dragEnable: false,
+        }
+        this.map.setStatus(status)
+        this.loadmap()
+        let _data = []
+        _data.push(this.province)
+        _data.push(this.city)
+        _data.push(this.district)
+        _data.push(this.address)
+        _data.push(this.type)
+        this.$emit('addressListen', _data)
+      },
+      anewselect() {
+        this.status = true
+        var status = {
+          zoomEnable: true,
+          dragEnable: true,
+        }
+
+        this.map.setStatus(status)
+        this.loadmap()
+      },
+      loadmap(val) {
+        let params = val
+        var that = this // 插件
+        for (var j = 0, k = that.polygons.length; j < k; j++) {
+          that.polygons[j].setMap(null)
+        }
+        AMap.plugin(['AMap.DistrictSearch', 'AMap.Polygon'], function() {
+          // 标注
+          var opts = {
+            subdistrict: 1,
+            extensions: 'all',
+            showbiz: false,
           }
           }
-          if (data.level === 'country' && bounds) {
-            return false
-          } else {
-            for (var i = 0, l = bounds.length; i < l; i++) {
-              var polygon = new AMap.Polygon({
-                map: that.map,
-                strokeWeight: 1,
-                strokeColor: '#CC66CC',
-                fillColor: '#CCF3FF',
-                fillOpacity: 0.5,
-                path: bounds[i],
-              })
-              that.polygons.push(polygon)
+          var district = new AMap.DistrictSearch(opts) // 注意:需要使用插件同步下发功能才能这样直接使用
+          function getData(data) {
+            console.log(data)
+            that.$emit('selectedAddress', data)
+            // 清除地图上的所有覆盖物
+            that.areacode = data.citycode
+            var bounds = data.boundaries
+            if (data.level === 'country') {
+              that.provinces = data.districtList
+              that.citys = []
+              that.districts = []
+            } else if (data.level === 'province') {
+              that.map.remove(that.marker)
+              that.citys = data.districtList
+              that.districts = []
+              that.address = ''
+            } else if (data.level === 'city') {
+              that.districts = data.districtList
+            }
+            if (data.level === 'country' && bounds) {
+              return false
+            } else {
+              for (var i = 0, l = bounds.length; i < l; i++) {
+                var polygon = new AMap.Polygon({
+                  map: that.map,
+                  strokeWeight: 1,
+                  strokeColor: '#CC66CC',
+                  fillColor: '#CCF3FF',
+                  fillOpacity: 0.5,
+                  path: bounds[i],
+                })
+                that.polygons.push(polygon)
+              }
+              that.map.setFitView()
             }
             }
-            that.map.setFitView()
-          }
-        }
-        let sear = val ? params : '中国'
-        district.search(sear, function (status, result) {
-          if (status === 'complete') {
-            getData(result.districtList[0])
           }
           }
+          let sear = val ? params : '中国'
+          district.search(sear, function(status, result) {
+            if (status === 'complete') {
+              getData(result.districtList[0])
+            }
+          })
         })
         })
-      })
-    },
-    selectP(val) {
-      if (this.status) {
-        this.loadmap(val)
-        this.city = ''
-        this.district = ''
-      }
-    },
-    selectC(val) {
-      if (this.status) {
-        this.loadmap(val)
-        this.district = ''
-      }
-    },
-    selectD(val) {
-      if (this.status) {
-        this.loadmap(val)
+      },
+      selectP(val) {
+        this.province = CodeToText[val]
+        if (this.status) {
+          this.$emit('provinceChange', val)
+          this.loadmap(val)
+          this.city = ''
+          this.district = ''
+        }
+      },
+      selectC(val) {
+        console.log(val)
+        if (this.status) {
+          this.loadmap(val)
+          this.district = ''
+        }
+      },
+      selectD(val) {
+        this.district = CodeToText[val]
+        if (this.status) {
+          this.loadmap(val)
+        }
+      },
+      submit() {
+        let _data = []
+        _data.push(this.province)
+        _data.push(this.city)
+        _data.push(this.district)
+        _data.push(this.address)
+        _data.push(this.type)
+        _data.push(this.center)
+        this.$emit('addressListen', _data)
+        this.$parent.blurMap()
+        console.log("submit")
       }
       }
     },
     },
-  },
-}
-</script>
+  }
+</script>

+ 183 - 0
src/components/mapdrag/warehouseReceiptMap.vue

@@ -0,0 +1,183 @@
+<style lang='scss' scoped>
+  .mapContent {
+    position: relative;
+    height: 95%;
+    transition: 0.5s;
+
+    .center-add {
+      position: absolute;
+      top: 0;
+      bottom: 0;
+      left: 0;
+      right: 0;
+      margin: auto;
+      z-index: 999;
+      width: 30px;
+      height: 30px;
+    }
+  }
+
+  #mapContainer {
+    width: 100%;
+    height: 100%;
+  }
+
+  .amap-info-close {
+    display: none !important;
+  }
+</style>
+
+<template>
+  <div class="mapContent">
+    <div id="mapContainer"></div>
+  </div>
+</template>
+
+<script>
+  import {
+    regionData,
+    CodeToText,
+    TextToCode
+  } from 'element-china-area-data'
+  import image from '../../../public/img/ic_locationmarker.jpg'
+    import AMapLoader from '@amap/amap-jsapi-loader';
+  export default {
+    data() {
+      return {
+        map: null,
+        marker: null,
+        markers: [],
+        zoomEnable: true,
+        dragEnable: true,
+        status: true,
+      }
+    },
+    props: [
+      'listData'
+    ],
+    computed: {},
+    watch: {
+      listData: function(val1, val2) {
+        this.listData = val1
+        var that = this
+        
+        this.map = new AMap.Map('mapContainer', {
+          resizeEnable: true,
+          zoom: 5,
+          center: [103.809074, 36.051121],
+          zoomEnable: this.zoomEnable,
+          dragEnable: this.dragEnable
+        })
+        this.loadmap()
+      }
+    },
+    async created() {
+      // AMapLoader.reset();
+      if (window.AMap && window.AMapUI) {
+        // 未载入高德地图API,则先载入API再初始化
+      } else {
+        // await remoteLoad(`http://webapi.amap.com/maps?v=1.3&key=${MapKey}&plugin=AMap.AutoComplete`)
+        // await remoteLoad('http://webapi.amap.com/ui/1.0/main.js')
+        //  AMapLoader.reset();
+        AMapLoader.load({
+          "key": "211dd6f989e719022aaf47ddb0659c47", // 申请好的Web端开发者Key,首次调用 load 时必填
+          "version": "2.0", // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15
+          "plugins": ['plugin=AMap.Scale', 'AMap.ToolBar','AMap.AutoComplete', 'AMap.PlaceSearch', 'AMap.Geocoder', 'AMap.DistrictSearch','AMap.Geolocation', 'Geolocation'],
+          "Loca": { // 是否加载 Loca, 缺省不加载
+            "version": '2.0.0' // Loca 版本,缺省 1.3.2
+          },
+        }).then((AMap) => {
+        })
+      }
+    },
+    mounted() {},
+    methods: {
+      makeMarkersList() {
+        let _list = this.listData
+        for (let i = 0; i < _list.length; i++) {
+          _list[i].marker = []
+          _list[i].marker.push(_list[i].warehousePositioning.split(',')[1])
+          _list[i].marker.push(_list[i].warehousePositioning.split(',')[0])
+        }
+      },
+      loadmap(val) {
+        let that = this
+        //构造markersList
+        AMap.plugin(['AMap.DistrictSearch', 'AMap.Polygon'], function() {
+          var geolocation = new AMap.Geolocation({
+            // 是否使用高精度定位,默认:true
+            enableHighAccuracy: true, // 设置定位超时时间,默认:无穷大
+            timeout: 10000, // 定位按钮的停靠位置的偏移量,默认:Pixel(10, 20)
+            buttonOffset: new AMap.Pixel(10, 20), // 定位成功后调整地图视野范围使定位位置及精度范围视野内可见,默认:false
+            zoomToAccuracy: true, // 定位按钮的排放位置, RB表示右下
+            buttonPosition: 'RB'
+          })
+          geolocation.getCurrentPosition()
+          geolocation.on( 'complete', e => {
+            console.log(e) // 定位成功之后做的事 // 定位成功之后再定位处添加一个marker
+            var infoWindow = new AMap.InfoWindow({
+              offset: new AMap.Pixel(0, -30)
+            })
+
+            function infoOpen(e) {
+              infoWindow.setContent(e.target.content)
+              infoWindow.open(that.map, e.target.getPosition())
+            }
+
+            function infoClose(e) {
+              infoWindow.close(that.map, e.target.getPosition())
+            }
+
+            function toGetList(e) {
+              // console.log(e.target.getExtData())
+
+              that.$parent.getList(e.target.getExtData().id, 1)
+            }
+            for (let i = 0; i < that.listData.length; i++) {
+              var marker = new AMap.Marker({
+                map: that.map,
+                position: that.listData[i]
+                  .marker, // marker最终显示在那个点上,
+                icon: new AMap.Icon({
+                  image: "https://taohaoliang.oss-cn-beijing.aliyuncs.com/pcfiles/home_pic.png",
+                  size: new AMap.Size(20, 20), //图标大小
+                  imageSize: new AMap.Size(20, 20),
+                }),
+              })
+
+              marker.setExtData({
+                'id': that.listData[i].warehouseName
+              })
+              let _cwList = '<div class="cw-wrap">'
+              for (let k = 0; k < that.listData[i].tradeWarehouseReceiptAppls.length; k++) {
+                let _k = that.listData[i].tradeWarehouseReceiptAppls[k]
+                _cwList += '<div style="display:flex">' +
+                  '<div style="margin:10px 20px">' + _k.warehouseNo + '仓位</div>' +
+                  '<div style="margin:10px 20px">' + _k.goodsName + '</div>' +
+                  '<div style="margin:10px 20px">' + _k.weight + '</div>' +
+                  '</div>'
+              }
+              _cwList = _cwList + '</div>'
+              console.log('地图仓位数据', _cwList)
+              marker.content = '<div style="display:flex;justify-content: center">' + that.listData[i]
+                .warehouseName + '</div>' + _cwList + '</div>'
+              marker.on('mouseover', infoOpen)
+              marker.on('mouseout', infoClose)
+              marker.on('click', toGetList)
+              // 设置label标签
+              // label默认蓝框白底左上角显示,样式className为:amap-marker-label
+              // marker.setLabel({
+              //     offset: new AMap.Pixel(20, 20),  //设置文本标注偏移量
+              //     content: "<div class='info'>我是 marker 的 label 标签</div>", //设置文本标注内容
+              //     direction: 'right' //设置文本标注方位
+              // });
+            }
+          })
+           geolocation.on( 'error', e => {
+            console.log(e) // 定位失败
+          })
+        })
+      }
+    }
+  }
+</script>

+ 1 - 1
src/components/purHistory/index.vue

@@ -144,7 +144,7 @@ export default {
       total: 10,
       total: 10,
       // 查询数据结构
       // 查询数据结构
       listQuery: {
       listQuery: {
-        compId: sessionStorage.getItem('ws-pf_compId'), // 公司ID
+        compId: localStorage.getItem('ws-pf_compId'), // 公司ID
         currentPage: 1, // 当前页码
         currentPage: 1, // 当前页码
         pageSize: 10 // 一页记录数
         pageSize: 10 // 一页记录数
       },
       },

+ 3 - 3
src/components/shipDrop/index.vue

@@ -49,14 +49,14 @@ export default {
     }
     }
   },
   },
   created () {
   created () {
-    this.shipGather = JSON.parse(sessionStorage.getItem('ws-pf_vessels'))
+    this.shipGather = JSON.parse(localStorage.getItem('ws-pf_vessels'))
     this.shipGather.unshift({ vesselId: '', vesselName: '全部船舶' })
     this.shipGather.unshift({ vesselId: '', vesselName: '全部船舶' })
     // this.selectOption.vesselName = this.shipGather[0].vesselName;
     // this.selectOption.vesselName = this.shipGather[0].vesselName;
     this.selectOption.vesselName = this.defaultShowOption
     this.selectOption.vesselName = this.defaultShowOption
-    if (sessionStorage.getItem('ws-pf_vesselBankFlag') === 'V') {
+    if (localStorage.getItem('ws-pf_vesselBankFlag') === 'V') {
       // 当为V时是船端,当为B时是岸端
       // 当为V时是船端,当为B时是岸端
       this.showType = false
       this.showType = false
-      this.defaultShipId = sessionStorage.getItem('ws-pf_vesselId')
+      this.defaultShipId = localStorage.getItem('ws-pf_vesselId')
       this.$emit('command', this.defaultShipId)
       this.$emit('command', this.defaultShipId)
       this.getOptions()
       this.getOptions()
     } else {
     } else {

+ 5 - 5
src/components/typeDropdown/index.vue

@@ -40,8 +40,8 @@ export default {
       },
       },
       showType: true,
       showType: true,
       model: '',
       model: '',
-      deptId: sessionStorage.getItem('ws-pf_deptId'),
-      deptName: sessionStorage.getItem('ws-pf_deptName')
+      deptId: localStorage.getItem('ws-pf_deptId'),
+      deptName: localStorage.getItem('ws-pf_deptName')
     };
     };
   },
   },
   computed: {
   computed: {
@@ -66,14 +66,14 @@ export default {
       this.$emit('command', id);
       this.$emit('command', id);
     },
     },
     getOptions () {
     getOptions () {
-      const compId = sessionStorage.getItem('ws-pf_compId');
+      const compId = localStorage.getItem('ws-pf_compId');
       if (this.typeKeyword === 'VESSEL_DEPT') {
       if (this.typeKeyword === 'VESSEL_DEPT') {
-        const roleName = sessionStorage.getItem('ws-pf_roleName');
+        const roleName = localStorage.getItem('ws-pf_roleName');
 
 
         if (
         if (
           roleName === '船长' ||
           roleName === '船长' ||
           roleName == 'CAPT' ||
           roleName == 'CAPT' ||
-          sessionStorage.getItem('ws-pf_vesselBankFlag') !== 'V'
+          localStorage.getItem('ws-pf_vesselBankFlag') !== 'V'
         ) {
         ) {
           let data = [];
           let data = [];
           let varL = [];
           let varL = [];

+ 1 - 1
src/config/page.js

@@ -10,7 +10,7 @@ const pages = {}
  */
  */
 export default function page (name, _comp) {
 export default function page (name, _comp) {
   if (pages[name]) {
   if (pages[name]) {
-    var compId = sessionStorage.getItem('ws-pf_compId');
+    var compId = localStorage.getItem('ws-pf_compId');
     return pages[name][compId] || pages[name]['default'];
     return pages[name][compId] || pages[name]['default'];
   }
   }
   return Promise.reject();
   return Promise.reject();

+ 70 - 0
src/global.js

@@ -0,0 +1,70 @@
+import Vue from 'vue'
+import store from '@/vendors/vuex'
+// import router from './router'
+// 2.新创建一个vue实例
+const v = new Vue()
+export default {
+  ws: {},
+  websocket: '',
+  setWs: function(newWs) {
+    this.ws = newWs
+  },
+  whetherWebSocket: function() {
+    var that =this
+      if ('WebSocket' in window) {
+        if (process.env.NODE_ENV === 'production') {
+          that.websocket = new WebSocket('wss://www.zthymaoyi.com/wss/websocket/?adminId=84f62127b7384dcdbaeaddfe460329fc' )
+        }
+        else {
+          that.websocket = new WebSocket('ws://localhost:3000/')
+        }
+        that.initWebSocket()
+      } else {
+        alert('当前浏览器不支持websocket')
+      }
+  },
+  initWebSocket: function() {
+    // 连接错误
+    this.websocket.onerror =evt => {
+      console.log('WebSocket连接发生错误   状态码:' + this.websocket.readyState)
+    }
+    // 连接成功
+    this.websocket.onopen = evt => {
+      console.log('WebSocket连接成功    状态码:' + this.websocket.readyState)
+    }
+    // 收到消息的回调
+    this.websocket.onmessage = event => {
+      // 根据服务器推送的消息做自己的业务处理
+      console.log('服务端返回:' + event.data)
+      var msg = event.data.split('$')
+      var that = this
+      // document.getElementsByClassName('app-container').reload()
+      v.$notify.warning({
+        title: '新消息提醒',
+        message: msg[0],
+        duration: 0,
+        onClick() {
+          this.$router.push({
+            path: msg[1] }) // 你要跳转的路由 还可以传参 当然也可以通过其他方式跳转
+        }
+      })
+      // console.log(router)
+      var currentPage = this.$router.history.current.path
+      console.log(currentPage, 'currentPage')
+      this.$router.push({ path: '/' })
+      console.log('执行成功1')
+      this.$router.push({ path: currentPage,
+        query: {
+          params: Date()
+        }})
+      console.log('执行成功')
+    }
+    // 连接关闭的回调
+    this.websocket.onclose = evt => {
+      console.log('WebSocket连接关闭    状态码:' + this.websocket.readyState)
+    }
+
+    // 监听窗口关闭事件,当窗口关闭时,主动去关闭websocket连接,防止连接还没断开就关闭窗口,server端会抛异常。
+    window.onbeforeunload = this.onbeforeunload
+  }
+}

+ 2 - 2
src/global/sys_prototypes_old.js

@@ -166,13 +166,13 @@ Vue.prototype.isRepeat = function (arr) {
   return false
   return false
 }
 }
 
 
-//监听sessionStorage变化
+//监听localStorage变化
 Vue.prototype.resetSetItem = function (key, newVal) {
 Vue.prototype.resetSetItem = function (key, newVal) {
   // 创建一个StorageEvent事件
   // 创建一个StorageEvent事件
   const newStorageEvent = document.createEvent('StorageEvent')
   const newStorageEvent = document.createEvent('StorageEvent')
   const storage = {
   const storage = {
     setItem: function (k, val) {
     setItem: function (k, val) {
-      sessionStorage.setItem(k, val)
+      localStorage.setItem(k, val)
       // 初始化创建的事件
       // 初始化创建的事件
       newStorageEvent.initStorageEvent(
       newStorageEvent.initStorageEvent(
         'setItem',
         'setItem',

部分文件因为文件数量过多而无法显示