浏览代码

修改图片上传

Tiroble 3 年之前
父节点
当前提交
5204798f03
共有 66 个文件被更改,包括 1795 次插入723 次删除
  1. 1 1
      build/utils.js
  2. 4 3
      config/index.js
  3. 3 1
      package.json
  4. 0 1
      src/components/DilCommonUI/packages/table/src/table.vue
  5. 5 0
      src/views/RMS/components/addCarrier.vue
  6. 3 5
      src/views/TMS/components/bmsport/handlingFee.vue
  7. 14 3
      src/views/TMS/components/bmsport/updateHandlingFee.vue
  8. 3 0
      src/views/TMS/components/bmsship/detailsOrder.vue
  9. 6 3
      src/views/TMS/components/bmsship/detailsStatement.vue
  10. 0 10
      src/views/TMS/components/bmsship/lossDetailsStatement.vue
  11. 16 17
      src/views/TMS/components/bmsship/toBeStatement.vue
  12. 11 14
      src/views/TMS/components/bmsship/uncomplateDetails.vue
  13. 13 14
      src/views/TMS/components/bmsship/uncomplateWater.vue
  14. 13 18
      src/views/TMS/components/bmstrain/addTrainDetails.vue
  15. 3 0
      src/views/TMS/components/bmstrain/detailsTrainOrder.vue
  16. 3 13
      src/views/TMS/components/bmstrain/uncomplateTrainDetails.vue
  17. 41 42
      src/views/TMS/components/domesticMine/approveWagonPleaseAdd.vue
  18. 4 3
      src/views/TMS/components/domesticMine/wagonLoadAdd.vue
  19. 2 0
      src/views/TMS/components/domesticMine/wagonLoadMine.vue
  20. 1 1
      src/views/TMS/components/domesticMine/wagonLoadbu.vue
  21. 94 27
      src/views/TMS/components/domesticMine/wagonPleaseAdd.vue
  22. 0 1
      src/views/TMS/components/domesticMine/wagonPleaseMine.vue
  23. 20 17
      src/views/TMS/components/domesticMine/wagonUnLoadAdd.vue
  24. 8 13
      src/views/TMS/components/importedEmergency/addWagonLoadEmergency.vue
  25. 2 8
      src/views/TMS/components/importedEmergency/addWagonUnLoadEmergency.vue
  26. 1 1
      src/views/TMS/components/importedEmergency/entrustEmergency.vue
  27. 3 2
      src/views/TMS/components/importedEmergency/wagonUnLoadEmergency.vue
  28. 0 6
      src/views/TMS/components/importedMine/addWagonPlease.vue
  29. 1 1
      src/views/TMS/components/importedMine/wagonApprove.vue
  30. 9 3
      src/views/TMS/components/importedShip/addLoadShip.vue
  31. 2 2
      src/views/TMS/components/importedShip/shipLocation.vue
  32. 2 2
      src/views/TMS/router/index.js
  33. 353 0
      src/views/WMS/components/billingOrder/updateBill.vue
  34. 2 1
      src/views/WMS/router/index.js
  35. 3 0
      src/views/appoint/app.js
  36. 25 13
      src/views/appoint/components/purchase/addTrainPrice.vue
  37. 3 0
      src/views/appoint/components/purchase/shipPrice.vue
  38. 4 12
      src/views/appoint/components/purchase/trainPrice.vue
  39. 28 18
      src/views/appoint/components/purchase/updateTrainPrice.vue
  40. 41 8
      src/views/appoint/components/saleContract/addSaleOrder.vue
  41. 61 46
      src/views/appoint/components/saleContract/addSaleOrderSteelSend.vue
  42. 7 24
      src/views/appoint/components/saleContract/addSaleOrderSteelSendCarrier.vue
  43. 33 33
      src/views/appoint/components/saleContract/saleOrderSteel.vue
  44. 57 21
      src/views/appoint/components/saleContract/saleOrderSteelEmpower.vue
  45. 29 9
      src/views/appoint/components/ship/addCargoResult.vue
  46. 18 9
      src/views/appoint/components/ship/addDeliveryAttorney.vue
  47. 12 9
      src/views/appoint/components/ship/addDeliveryNotice.vue
  48. 196 0
      src/views/appoint/components/ship/attorneytext.vue
  49. 2 1
      src/views/appoint/components/ship/cargoResult.vue
  50. 13 0
      src/views/appoint/components/ship/deliveryAttorney.vue
  51. 130 6
      src/views/appoint/components/ship/modifyCargoResult.vue
  52. 2 0
      src/views/appoint/router/index.js
  53. 4 0
      src/views/inward/app.js
  54. 82 9
      src/views/inward/components/inwardFactory/timeTaskResult.vue
  55. 55 2
      src/views/inward/components/truckAppoint/addRequirement2.vue
  56. 1 1
      src/views/inward/components/truckAppoint/requirementOther.vue
  57. 3 0
      src/views/sale/app.js
  58. 27 5
      src/views/sale/components/saleSelfMachine/printLading.vue
  59. 27 5
      src/views/sale/components/saleSelfMachine/printReceipt.vue
  60. 4 4
      src/views/sale/components/saleSelfMachine/printScan.vue
  61. 37 13
      src/views/sale/components/saleSelfMachine/printWarranty.vue
  62. 21 11
      src/views/sale/components/saleSelfMachine/saleSelfMachine.vue
  63. 111 105
      src/views/sale/components/transport_excute/tms-offsite/arrivalResult.vue
  64. 112 123
      src/views/sale/components/transport_excute/tms-offsite/receiptResult.vue
  65. 3 2
      src/views/statisticalReport/components/Ship_dynamic_table.vue
  66. 1 1
      src/views/statisticalReport/components/inwardReport/putInwardReport.vue

+ 1 - 1
build/utils.js

@@ -29,7 +29,7 @@ let devModules = ['index','sale','RMS']
 // let devModules = ['index','RMS'];
 
 
-if (pathSrc.indexOf('node_modules') > -1) {c
+if (pathSrc.indexOf('node_modules') > -1) {
     devModules = require('../../../cors.js').devModules;
 }
 // 获取入口集合

+ 4 - 3
config/index.js

@@ -64,8 +64,9 @@ let proxyTable = {
   },
   // 所有数据的请求域名地址
   "/api/v1": {
-    //target: "http://172.16.33.166:8080",
-     target: "http://localhost:8080",
+    // target: "http://192.168.1.106:8019",
+    target: "http://172.16.33.166:8080",
+    // target: "http://192.168.1.114:8019",
     ws: true,
     pathRewrite: {
       "^/api/v1": "/api/v1"
@@ -73,7 +74,7 @@ let proxyTable = {
   },
   "/views/api/v1": {
     target: "http://172.16.33.166:8080",
-    // target: "http://192.168.1.115:8080",
+    // target: "http://192.168.1.115:8019",
     ws: true,
     pathRewrite: {
       "^/views/api/v1": "/api/v1"

+ 3 - 1
package.json

@@ -36,6 +36,7 @@
     "icore-sdk": "1.0.1-alpha.65",
     "json-schema-editor-vue": "1.2.5",
     "json2xml": "^0.1.3",
+    "jspdf": "^2.5.1",
     "jssha": "^3.2.0",
     "object-assign": "^4.1.1",
     "qs": "^6.9.3",
@@ -54,6 +55,7 @@
     "vue-baidu-map": "^0.21.19",
     "vue-clipboard2": "^0.2.1",
     "vue-element-bigdata-table": "^1.3.1",
+    "vue-print-nb": "^1.7.5",
     "vue-property-decorator": "^8.2.1",
     "vue-quill-editor": "^3.0.5",
     "vue-router": "^3.0.1",
@@ -61,7 +63,7 @@
     "vue-splitpane": "^1.0.2",
     "vuescroll": "^4.17.3",
     "vuex": "^3.0.1",
-    "vxe-table": "^3.4.12",
+    "vxe-table": "^3.5.2",
     "x2js": "^3.3.0",
     "xe-utils": "^3.5.4",
     "xlsx": "^0.18.4",

+ 0 - 1
src/components/DilCommonUI/packages/table/src/table.vue

@@ -7,7 +7,6 @@
       row-key="ROW_ID"
       :stripe="stripe"
       :border="border"
-      :row-class-name="rowClassName"
       :cell-class-name="cellClassName"
       :height="height"
       :highlight-current-row="highlightCurrentRow"

+ 5 - 0
src/views/RMS/components/addCarrier.vue

@@ -234,6 +234,11 @@ export default {
       this.bidAreaId = selection.bidAreaId;
     },
     makeSure() {
+      console.log(this.input.length)
+      if(this.input.length > 14){
+        this.$message.error("账号长度不能大于十四个字")
+        return
+      }
       let status = false;
       this.form1.carrierContactNumber = parseInt(this.form1.carrierContactNumber);
       if (!this.input) {

+ 3 - 5
src/views/TMS/components/bmsport/handlingFee.vue

@@ -10,9 +10,9 @@
     <dilTable v-bind.sync="option">
       <el-table-column fixed="right" label="操作" align="center" width="100">
         <template slot-scope="scope">
-          <el-button @click="click(scope.row.feeId)" type="text" size="small"
+          <!-- <el-button @click="click(scope.row.feeId)" type="text" size="small"
             >编辑</el-button
-          >
+          > -->
           <el-button
             type="text"
             size="small"
@@ -88,10 +88,8 @@ export default {
 <style lang='scss' scoped>
 .homeworkPath {
   .top {
+    padding: 1.25rem 1.875rem;
     .el-input {
-      margin-left: 2.5rem;
-      margin-top: 2.5rem;
-      margin-bottom: 2.5rem;
       width: 250px;
     }
   }

+ 14 - 3
src/views/TMS/components/bmsport/updateHandlingFee.vue

@@ -4,9 +4,7 @@
     <page-title>编辑</page-title>
     <div class="contractTitle">
       <div class="form-box">
-        <div class="form-box">
           <dil-form :formId="223" v-model="form1"></dil-form>
-        </div>
       </div>
     </div>
     <div class="button-box">
@@ -86,5 +84,18 @@ export default {
 };
 </script>
 <style lang="scss" scoped>
-// @import "@/styles/appoint/contract/ContractInsert.scss";
+  .form-box {
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    .el-form-item {
+          display: flex;
+          .el-form-item__label {
+            width: 170px !important;
+          }
+          .el-input {
+            width: 210px !important;
+          }
+    }
+  }
 </style>

+ 3 - 0
src/views/TMS/components/bmsship/detailsOrder.vue

@@ -41,6 +41,9 @@ export default {
 .purchaseOrder {
   .top {
     padding: 1.25rem 1.875rem;
+    .el-input {
+      width: 250px;
+    }
   }
 }
 </style>

+ 6 - 3
src/views/TMS/components/bmsship/detailsStatement.vue

@@ -7,13 +7,13 @@
         <i class="el-icon-search"></i>查询
       </el-button>
       <el-button type="primary" @click="shipclick">
-        生成水运费账单
+        新增水运费账单
       </el-button>
       <el-button type="primary" @click="waterclick">
-        生成水分检测费账单
+        新增水分检测费账单
       </el-button>
       <el-button type="primary" @click="click()">
-        生成途损费账单
+        新增途损费账单
       </el-button>
     </div>
     <dilTable v-bind.sync="option" >
@@ -63,6 +63,9 @@ export default {
 .purchaseOrder {
   .top {
     padding: 1.25rem 1.875rem;
+    .el-input {
+      width: 250px;
+    }
   }
 }
 </style>

+ 0 - 10
src/views/TMS/components/bmsship/lossDetailsStatement.vue

@@ -6,18 +6,8 @@
       <el-button type="primary" class="btn" @click="onclick">
         <i class="el-icon-search"></i>查询
       </el-button>
-      <!-- <el-button type="primary" @click="click()">
-        生成途损费账单
-      </el-button> -->
     </div>
     <dilTable v-bind.sync="option">
-      <!-- <el-table-column fixed="right" label="操作" width="100">
-        <template slot-scope="scope">
-          <el-button @click="btnclick(scope.row)" type="text" size="small"
-            >详情</el-button
-          >
-        </template>
-      </el-table-column> -->
     </dilTable>
   </div>
 </template>

+ 16 - 17
src/views/TMS/components/bmsship/toBeStatement.vue

@@ -1,6 +1,7 @@
 <template>
   <!-- 船运计费详单页面 -->
   <div class="purchaseOrder">
+    <page-title>船运账单</page-title>
     <div class="top">
       <el-input placeholder="请输入内容" v-model="input" clearable> </el-input>
       <el-button type="primary" class="btn" @click="onclick">
@@ -11,35 +12,24 @@
       </el-button>
     </div>
     <dilTable v-bind.sync="option"  @radio-change="currentRadioChange">
-      <!-- <el-table-column fixed="right" label="操作" width="100"> -->
-        <!-- <template slot-scope="scope">
-          <el-button @click="click(scope.row.pathId)" type="text" size="small"
-            >编辑</el-button
-          >
-          <el-button
-            type="text"
-            size="small"
-            @click="deleteclick(scope.row.pathId)"
-            >删除</el-button
-          >
-        </template> -->
-      <!-- </el-table-column> -->
     </dilTable>
   </div>
 </template>
 
 <script>
+import PageTitle from "@/components/Page/Title";
 export default {
+  components: { PageTitle },
   name: "purchaseOrder",
   data() {
     return {
       input:"",
+      map:{},
       option: {
         // 表格请求数据的地址
         requestUrl: "/api/v1/bms/getBatch?apiId=115",
         // 控制显示当选列
         selectionType: "radio",
-        map:{},
       },
     };
   },
@@ -52,6 +42,11 @@ export default {
       this.option.requestUrl = "/api/v1/bms/getBatch?apiId=115&con="+this.input;
     },
     btnclick() {
+      console.log(JSON.stringify(this.map).length)
+      if(JSON.stringify(this.map).length == 2){
+        this.$message.error("请勾选品名!")
+        return
+      }
       this.$confirm("是否生成", "提示", {
         confirmButtonText: "确定",
         cancelButtonText: "取消",
@@ -59,23 +54,24 @@ export default {
         center: true,
       })
         .then(() => {
-         
       this.axios.post("/api/v1/bms/addLossStatement",this.map)
                   .then((res) => {
                     var  num = res.data.data;
                     console.log(num,"num");
+                    console.log(res)
                     if( num > 0){
                        this.$message({
                           type: "success",
                           message: "生成账单成功!",
                         });
+                        this.$router.go(-1);
                     }else{
                        this.$message({
                           type: "warning",
-                          message: "未产生途损费用!",
+                          message:res.data.data,
                         });
                     }
-              this.$router.go(-1);
+              
             });
         })
         .catch(() => {
@@ -93,6 +89,9 @@ export default {
 .purchaseOrder {
   .top {
     padding: 1.25rem 1.875rem;
+    .el-input {
+      width: 250px;
+    }
   }
 }
 </style>

+ 11 - 14
src/views/TMS/components/bmsship/uncomplateDetails.vue

@@ -1,6 +1,7 @@
 <template>
   <!-- 船运计费详单页面 -->
   <div class="purchaseOrder">
+    <page-title>船运账单</page-title>
     <div class="top">
       <el-input
         placeholder="请输入内容"
@@ -15,35 +16,24 @@
       </el-button>
     </div>
     <dilTable v-bind.sync="option" @selection-change="selectionChange">
-      <!-- <el-table-column fixed="right" label="操作" width="100"> -->
-        <!-- <template slot-scope="scope">
-          <el-button @click="click(scope.row.pathId)" type="text" size="small"
-            >编辑</el-button
-          >
-          <el-button
-            type="text"
-            size="small"
-            @click="deleteclick(scope.row.pathId)"
-            >删除</el-button
-          >
-        </template> -->
-      <!-- </el-table-column> -->
     </dilTable>
   </div>
 </template>
 
 <script>
+import PageTitle from "@/components/Page/Title";
 export default {
   name: "purchaseOrder",
+  components: { PageTitle },
   data() {
     return {
       input:"",
+      mapList:[],
       option: {
         // 表格请求数据的地址
         requestUrl: "/api/v1/bms/getUncomplateDetailsOrderList?apiId=93",
         // 控制显示多选列
         selectionType: "select",
-        mapList:[],
       },
     };
   },
@@ -55,6 +45,10 @@ export default {
       console.log(1);
     },
     btnclick() {
+      if(this.mapList.length == 0){
+        this.$message.error("请勾选详单!")
+        return
+      }
       this.$confirm("是否生成", "提示", {
         confirmButtonText: "确定",
         cancelButtonText: "取消",
@@ -86,6 +80,9 @@ export default {
 .purchaseOrder {
   .top {
     padding: 1.25rem 1.875rem;
+    .el-input {
+      width: 250px;
+    }
   }
 }
 </style>

+ 13 - 14
src/views/TMS/components/bmsship/uncomplateWater.vue

@@ -1,6 +1,7 @@
 <template>
   <!-- 船运计费详单页面 -->
   <div class="purchaseOrder">
+    <page-title>船运账单</page-title>
     <div class="top">
       <el-input
         placeholder="请输入内容"
@@ -15,35 +16,25 @@
       </el-button>
     </div>
     <dilTable v-bind.sync="option" @selection-change="selectionChange">
-      <!-- <el-table-column fixed="right" label="操作" width="100"> -->
-        <!-- <template slot-scope="scope">
-          <el-button @click="click(scope.row.pathId)" type="text" size="small"
-            >编辑</el-button
-          >
-          <el-button
-            type="text"
-            size="small"
-            @click="deleteclick(scope.row.pathId)"
-            >删除</el-button
-          >
-        </template> -->
-      <!-- </el-table-column> -->
     </dilTable>
   </div>
 </template>
 
 <script>
+import PageTitle from "@/components/Page/Title";
 export default {
   name: "purchaseOrder",
+  components: { PageTitle },
   data() {
+    
     return {
       input:"",
+      mapList:[],
       option: {
         // 表格请求数据的地址
         requestUrl: "/api/v1/bms/getWaterResult?apiId=114",
         // 控制显示多选列
         selectionType: "select",
-        mapList:[],
       },
     };
   },
@@ -55,6 +46,11 @@ export default {
       console.log(1);
     },
     btnclick() {
+      console.log(this.mapList.length)
+      if(this.mapList.length == 0 ){
+        this.$message.error("请选择需要生成账单的水分检测详单")
+        return
+      }
       this.$confirm("是否生成", "提示", {
         confirmButtonText: "确定",
         cancelButtonText: "取消",
@@ -86,6 +82,9 @@ export default {
 .purchaseOrder {
   .top {
     padding: 1.25rem 1.875rem;
+    .el-input {
+      width: 250px;
+    }
   }
 }
 </style>

+ 13 - 18
src/views/TMS/components/bmstrain/addTrainDetails.vue

@@ -1,6 +1,7 @@
 <template>
   <!-- 火运计费详单页面 -->
   <div class="purchaseOrder">
+    <page-title>火运详单</page-title>
     <div class="top">
       <el-input
         placeholder="请输入内容"
@@ -11,46 +12,32 @@
         <i class="el-icon-search"></i>查询
       </el-button>
       <el-button type="primary" @click="btnclick">
-        生成火运详单
+        新增
       </el-button>
     </div>
     <dilTable v-bind.sync="option" @radio-change="currentRadioChange">
-      <!-- <el-table-column fixed="right" label="操作" width="100"> -->
-        <!-- <template slot-scope="scope">
-          <el-button @click="click(scope.row.pathId)" type="text" size="small"
-            >编辑</el-button
-          >
-          <el-button
-            type="text"
-            size="small"
-            @click="deleteclick(scope.row.pathId)"
-            >删除</el-button
-          >
-        </template> -->
-      <!-- </el-table-column> -->
     </dilTable>
   </div>
 </template>
 
 <script>
+import PageTitle from "@/components/Page/Title";
 export default {
+  components: { PageTitle },
   name: "purchaseOrder",
   data() {
     return {
       input:"",
+      map:{},
       option: {
         // 表格请求数据的地址
         requestUrl: "/api/v1/bms/getTrainResultList?apiId=122",
         // 控制显示当选列
         selectionType: "radio",
-        map:{},
       },
     };
   },
   methods: {
-    // selectionChange(selection) { 
-    //   this.mapList=selection
-    // },
     currentRadioChange(row) {
       this.map=row
       console.log(row);
@@ -59,6 +46,11 @@ export default {
       console.log(1);
     },
     btnclick() {
+      console.log()
+      if(JSON.stringify(this.map).length == 2){
+        this.$message.error("未勾选火运实绩")
+        return
+      }
       this.$confirm("是否生成", "提示", {
         confirmButtonText: "确定",
         cancelButtonText: "取消",
@@ -90,6 +82,9 @@ export default {
 .purchaseOrder {
   .top {
     padding: 1.25rem 1.875rem;
+    .el-input {
+      width: 250px;
+    }
   }
 }
 </style>

+ 3 - 0
src/views/TMS/components/bmstrain/detailsTrainOrder.vue

@@ -45,6 +45,9 @@ export default {
 <style lang='scss' scoped>
 .purchaseOrder {
   .top {
+    .el-input {
+      width: 250px;
+    }
     padding: 1.25rem 1.875rem;
   }
 }

+ 3 - 13
src/views/TMS/components/bmstrain/uncomplateTrainDetails.vue

@@ -15,19 +15,6 @@
       </el-button>
     </div>
     <dilTable v-bind.sync="option" @selection-change="selectionChange">
-      <!-- <el-table-column fixed="right" label="操作" width="100"> -->
-        <!-- <template slot-scope="scope">
-          <el-button @click="click(scope.row.pathId)" type="text" size="small"
-            >编辑</el-button
-          >
-          <el-button
-            type="text"
-            size="small"
-            @click="deleteclick(scope.row.pathId)"
-            >删除</el-button
-          >
-        </template> -->
-      <!-- </el-table-column> -->
     </dilTable>
   </div>
 </template>
@@ -86,6 +73,9 @@ export default {
 .purchaseOrder {
   .top {
     padding: 1.25rem 1.875rem;
+    .el-input {
+      width: 250px;
+    }  
   }
 }
 </style>

+ 41 - 42
src/views/TMS/components/domesticMine/approveWagonPleaseAdd.vue

@@ -2,7 +2,7 @@
   <!-- 新增批车作业页面 -->
   <div id="contractDetails">
     <page-title>返回</page-title>
-  <div>
+    <div>
       <dilTable
         v-bind.sync="option"
         v-model="table1"
@@ -27,6 +27,9 @@
 </template>
 <script>
 import PageTitle from "@/components/Page/Title";
+import { sjTime, isNumber } from "@/utils/sharedJsFile";
+import { getCookie } from "@/utils/util.js";
+
 export default {
   components: { PageTitle },
   data() {
@@ -65,7 +68,7 @@ export default {
       let approveWagonPlease = {
         resultId: this.inf.resultId,
         resultApproveDate: sjTime(this.form1.resultApproveDate),
-        resultApproveNumber: this.form1.resultApproveNumber
+        resultApproveNumber: this.form1.resultApproveNumber,
       };
       function isNumber() {
         var value = approveWagonPlease.resultApproveNumber;
@@ -79,29 +82,29 @@ export default {
       }
       var val = this.value;
       if (
-        approveWagonPlease.resultId==null||
-        approveWagonPlease.resultApproveDate==null||
-        approveWagonPlease.resultApproveNumber==null
-      ) this.$message.error("存在空值!");
+        approveWagonPlease.resultId == null ||
+        approveWagonPlease.resultApproveDate == null ||
+        approveWagonPlease.resultApproveNumber == null
+      )
+        this.$message.error("存在空值!");
+      else if (!isNumber(val)) this.$message.error("请车数量必须是数字!");
       else
-      if (!isNumber(val)) this.$message.error("请车数量必须是数字!");
-      else
-      this.axios
-        .post("/api/v1/tms/addApproveWagonPlease", approveWagonPlease)
-        .then(() => {
-          this.$message({
-            type: "success",  
-            message: "新增成功!",
+        this.axios
+          .post("/api/v1/tms/addApproveWagonPlease", approveWagonPlease)
+          .then(() => {
+            this.$message({
+              type: "success",
+              message: "新增成功!",
+            });
+            this.$router.go(-1);
           });
-          this.$router.go(-1);
-        });
     },
   },
 };
 </script>
 <style lang="scss">
 // @import "@/styles/appoint/contract/ContractInsert.scss";
-#contractDetails{
+#contractDetails {
   .form {
     display: flex;
     .form_box {
@@ -109,35 +112,31 @@ export default {
       margin-left: 35%;
       margin-top: 30px;
       margin-right: 22px;
-      .el-form {
-        .preview-group {
-     }
+     
     }
-  }          .el-form-item {
-            .el-form-item__label {
-              display: inline-block;
-              width: 70px !important;    
-              padding-right: 200px;
-              margin-bottom: 0px;
-            }
-            .el-form-item__content {
-              .el-select {
-                width: 230px;
-              }
-              .el-input {
-                width: 160px;
-                margin-left: -300px;
-                padding-bottom: 0%;
-               
-              }
-            }
-          }
+    .el-form-item {
+      .el-form-item__label {
+        display: inline-block;
+        width: 70px !important;
+        padding-right: 200px;
+        margin-bottom: 0px;
+      }
+      .el-form-item__content {
+        .el-select {
+          width: 230px;
+        }
+        .el-input {
+          width: 160px;
+          margin-left: -300px;
+          padding-bottom: 0%;
         }
- 
-  .button-box{
+      }
+    }
+  }
+
+  .button-box {
     margin-top: 50px;
     margin-left: 550px;
-    
   }
 }
 </style>

+ 4 - 3
src/views/TMS/components/domesticMine/wagonLoadAdd.vue

@@ -106,7 +106,8 @@
 
 <script>
 import PageTitle from "@/components/Page/Title";
-
+import { sjTime, isNumber } from "@/utils/sharedJsFile";
+import { getCookie } from "@/utils/util.js";
 export default {
   components: { PageTitle },
   data() {
@@ -378,13 +379,13 @@ export default {
                 type: "success",
                 message: "新增成功",
               });
-              this.$router.push("/wagonLoad");
+              this.$router.push("/wagonLoadMine");
             }
           });
       }
     },
     cancel() {
-      this.$router.push("/wagonLoad");
+      this.$router.push("/wagonLoadMine");
     },
   },
 };

+ 2 - 0
src/views/TMS/components/domesticMine/wagonLoadMine.vue

@@ -57,6 +57,8 @@ export default {
       }
     },
     click(resultId) {
+      console.log("点击了")
+      console.log(resultId)
       this.$router.push("/wagonLoadEdit/" + resultId);
     },
     deleteclick(scope) {

+ 1 - 1
src/views/TMS/components/domesticMine/wagonLoadbu.vue

@@ -141,7 +141,7 @@ export default {
     },
     //取消
     cancel() {
-      this.$router.push("/wagonLoad");
+      this.$router.push("/wagonLoadMine");
     },
     //表格选中
     selectionChange(selection) {

+ 94 - 27
src/views/TMS/components/domesticMine/wagonPleaseAdd.vue

@@ -1,27 +1,59 @@
 <template>
   <!-- 新增请作业页面 -->
-  <div id="contractDetails">
+ <div class="contractDetails">
     <page-title>返回</page-title>
+
     <div class="form">
       <div class="form_box">
-        <dil-form :formId="122" v-model="form1"></dil-form>
+         <dil-form :formId="122" v-model="form1" ></dil-form>
       </div>
     </div>
-    <div class="button-box">
+
+     <div class="fromOther">
+          <el-form
+        :inline="true"
+        class="demo-form-inline"
+        label-width="80px"
+        >
+        <el-form-item label="发货单位">
+         <el-autocomplete
+          class="inline-input"
+          v-model="stateSupplier"
+          :fetch-suggestions="querySearchSupplier"
+          placeholder="请输入发货单位名称"
+          :trigger-on-focus="false"
+          @select="handleSelectSupplier"
+        >
+        <template slot-scope="{ item }">
+          <div class="name">{{ item.supplierName }}</div>
+        </template>
+        </el-autocomplete>
+        </el-form-item>
+        </el-form>
+    </div>
+  <div class="trainTransport">
+    <!-- 确定和取消 -->
+    <div class="button_box">
       <el-button @click="onClickCancel">返回</el-button>
       <el-button type="primary" @click="onClickConfirm">确认</el-button>
     </div>
   </div>
+ </div>
 </template>
+
 <script>
 import PageTitle from "@/components/Page/Title";
-
+import { sjTime, isNumber } from "@/utils/sharedJsFile";
+import { getCookie } from "@/utils/util.js";
 export default {
   components: { PageTitle },
   data() {
     return {
       // 表单
       form1: {},
+      supplierId: null,
+      supplierName: "",
+      stateSupplier: "",
     };
   },
   mounted() {
@@ -31,7 +63,37 @@ export default {
     handleCheckedCitiesChange(value) {
       console.log(value);
     },
-
+    //发货单位弹出层
+    handleSelectSupplier(item) {
+      this.supplierId = item.supplierId;
+      item.supplierName = this.supplierName;
+    },
+    //以下是发货单位边输边查搜索
+    querySearchSupplier(queryString, cb) {
+      this.axios
+        .post("/api/v1/uc/getSupplierMesByLike?index=" + this.stateSupplier)
+        .then((res) => {
+          if (res.data.code == "200") {
+            var restaurantsSupplier = res.data.data;
+            var results = queryString
+              ? restaurantsSupplier.filter(
+                  this.createFilterSupplier(queryString)
+                )
+              : restaurantsSupplier;
+            // 调用 callback 返回建议列表的数据
+            cb(results);
+          }
+        });
+    },
+    createFilterSupplier(queryString) {
+      return (restaurantsSupplier) => {
+        return (
+          restaurantsSupplier.value
+            .toLowerCase()
+            .indexOf(queryString.toLowerCase()) > -1
+        );
+      };
+    },
     // 返回
     onClickCancel() {
       this.$router.go(-1);
@@ -41,10 +103,11 @@ export default {
       let tmstrainPleaseApproveResult = {
         resultPlanDate: sjTime(this.form1.resultPlanDate),
         resultCategory: this.form1.resultCategory,
-        shipperId: this.form1.shipperId,
+        supplierId: this.supplierId,
         sendStationId: this.form1.sendStationId,
         toTheStationId: this.form1.toTheStationId,
         resultPleaseNumber: this.form1.resultPleaseNumber,
+        userId: getCookie("orgCode"),
         resultType: 3,
       };
       function isNumber() {
@@ -61,7 +124,7 @@ export default {
       if (
         tmstrainPleaseApproveResult.resultPlanDate == null ||
         tmstrainPleaseApproveResult.resultCategory == null ||
-        tmstrainPleaseApproveResult.shipperId == null ||
+        tmstrainPleaseApproveResult.supplierId == null ||
         tmstrainPleaseApproveResult.sendStationId == null ||
         tmstrainPleaseApproveResult.toTheStationId == null ||
         tmstrainPleaseApproveResult.resultPleaseNumber == null
@@ -82,44 +145,48 @@ export default {
   },
 };
 </script>
-<style lang="scss" scoped>
-#contractDetails{
+<style lang="scss">
+.contractDetails {
   .form {
     display: flex;
     .form_box {
-      width: 240px;
+      width: 340px;
       margin-left: 35%;
       margin-top: 30px;
-      margin-right: 22px;
+      margin-right: 20px;
       .el-form {
         .preview-group {
-     }
-    }
-  }          .el-form-item {
+          .el-form-item {
             .el-form-item__label {
               display: inline-block;
-              width: 70px !important;    
-              padding-right: 200px;
-              margin-bottom: 0px;
+              width: 70px !important;
             }
             .el-form-item__content {
               .el-select {
-                width: 230px;
+                width: 250px;
               }
               .el-input {
-                width: 160px;
-                margin-left: -300px;
-                padding-bottom: 0%;
-               
+                width: 250px;
+              }
+            }
+            .button_box {
+              margin-left: 42%;
+              margin-top: 55px;
+            }
+          }
+          .fromOther {
+            margin-left: 34.5%;
+            width: 50%;
+            .inline-input {
+              width: 300px;
+              .button_box {
+                margin-left: 45%;
               }
             }
           }
         }
- 
-  .button-box{
-    margin-top: 50px;
-    margin-left: 550px;
-    
+      }
+    }
   }
 }
 </style>

+ 0 - 1
src/views/TMS/components/domesticMine/wagonPleaseMine.vue

@@ -89,7 +89,6 @@ export default {
             type: "success",
             message: "删除成功!",
           });
-          // console.log(this.arr[0].text_prop);
           this.axios
             .post("/api/v1/tms/deleteApproveWagonPlease/" + resultId)
             .then(() => {

+ 20 - 17
src/views/TMS/components/domesticMine/wagonUnLoadAdd.vue

@@ -27,6 +27,9 @@
 </template>
 <script>
 import PageTitle from "@/components/Page/Title";
+
+import { sjTime, isNumber } from "@/utils/sharedJsFile";
+import { getCookie } from "@/utils/util.js";
 export default {
   components: { PageTitle },
   data() {
@@ -57,13 +60,10 @@ export default {
     },
     // 确定
     makeSure() {
-      console.log(this.list);
       let tmstrainWagonUnloadResult = {
         wagonNoList: this.list,
         resultArrivalDate: sjTime(this.form1.resultArrivalDate),
         resultUnloadTime: sjTime(this.form1.resultUnloadTime),
-        resultBigTicketWeight: this.form1.resultBigTicketWeight,
-        resultRailHorizontalWeight: this.form1.resultRailHorizontalWeight,
         resultRemark: this.form1.resultRemark,
         resultType: 3,
       };
@@ -71,23 +71,27 @@ export default {
       if (
         tmstrainWagonUnloadResult.wagonNoList == null ||
         tmstrainWagonUnloadResult.resultArrivalDate == null ||
-        tmstrainWagonUnloadResult.resultUnloadTime == null ||
-        tmstrainWagonUnloadResult.resultBigTicketWeight == null ||
-        tmstrainWagonUnloadResult.resultRailHorizontalWeight == null
+        tmstrainWagonUnloadResult.resultUnloadTime == null
       )
-        this.$message.error("存在空值!");
+       this.$message.error("存在空值!");
       else
         this.axios
           .post(
             "/api/v1/tms/insertTmstrainWagonUnLoadResult",
             tmstrainWagonUnloadResult
           )
-          .then(() => {
-            this.$message({
-              type: "success",
-              message: "新增成功!",
-            });
-            this.$router.go(-1);
+          .then((res) => {
+            if ((res.data.code = "200")) {
+              this.$message({
+                type: "success",
+                message: "新增成功!",
+              });
+              this.$router.go(-1);
+            }else{
+               ({ type: "failed", message: "新增失败!" });
+            }
+
+            
           });
     },
     // 取消
@@ -120,7 +124,7 @@ export default {
               .el-input {
                 width: 220px;
               }
-            .el-textarea{
+              .el-textarea {
                 .el-textarea__inner {
                   display: block;
                   resize: vertical;
@@ -130,16 +134,15 @@ export default {
                   border-radius: 4px;
                   margin-left: 56px;
                   margin-top: -25px;
-    
                 }
-             }  
+              }
             }
           }
         }
       }
     }
   }
-  .button-box{
+  .button-box {
     margin-top: 50px;
     margin-left: 600px;
   }

+ 8 - 13
src/views/TMS/components/importedEmergency/addWagonLoadEmergency.vue

@@ -2,7 +2,7 @@
   <!-- 添加车皮装车实绩 -->
   <div class="addWagonLoad">
     <page-title>新增</page-title>
-    <el-divider content-position="left">车皮装车实绩</el-divider>
+ 
     <div class="cp">
       <span>车皮号:</span>
       <el-input
@@ -35,7 +35,7 @@
     </div>
     <div class="remark from">
       <span class="text">船名:</span>
-      <el-input v-model="remark" @blur="onBlur"> </el-input>
+      <el-input class="el-input" v-model="remark" @blur="onBlur"> </el-input>
       <span class="span"></span>
     </div>
     <div class="forwardingUnit from">
@@ -92,7 +92,7 @@
 
 <script>
 import PageTitle from "@/components/Page/Title";
-
+import { sjTime,isNumber } from "@/utils/sharedJsFile";
 export default {
   components: { PageTitle },
   data() {
@@ -272,7 +272,6 @@ export default {
         this.supplierId &&
         this.unloadPointId &&
         this.purchaseOrderId &&
-        this.form1.resultClass &&
         this.form1.sendStationId &&
         this.form1.arrivalStationId &&
         this.form1.resultLoadingDate
@@ -290,7 +289,6 @@ export default {
             if (this.supplierId) {
               if (this.unloadPointId) {
                 if (this.purchaseOrderId) {
-                    if (this.form1.resultClass) {
                       if (this.form1.sendStationId) {
                         if (this.form1.arrivalStationId) {
                           if (this.form1.resultLoadingDate) {
@@ -313,12 +311,6 @@ export default {
                         });
                       }
                     } else {
-                      this.$message({
-                        type: "warning",
-                        message: "请选择班别!",
-                      });
-                    }
-                  } else {
                   this.$message({
                     type: "warning",
                     message: "该物资没有采购订单号!",
@@ -347,8 +339,11 @@ export default {
       if(state == 1){
         let map = {
           wagonNoList:this.list,
-          unloadPointId:this.unloadPointId,
+          unloadingPointId:this.unloadPointId,
           purchaseOrderRailPlanId:this.purchaseOrderId,
+          materialId:this.materialId,
+          sendUnitId:this.supplierId,
+          resultIsclear:this.form1.resultIsclear,
           resultClass: this.form1.resultClass,
           sendStationId: this.form1.sendStationId,
           arrivalStationId: this.form1.arrivalStationId,
@@ -363,7 +358,7 @@ export default {
               type: "success",
               message: "新增成功",
             });
-            this.$router.push("/wagonLoad");
+            this.$router.go(-1);
           }
         })
       }

+ 2 - 8
src/views/TMS/components/importedEmergency/addWagonUnLoadEmergency.vue

@@ -26,7 +26,7 @@
 
 <script>
 import PageTitle from "@/components/Page/Title";
-
+import { sjTime,isNumber } from "@/utils/sharedJsFile";
 export default {
   components: { PageTitle },
   data() {
@@ -59,9 +59,6 @@ export default {
         wagonNoList: this.list,
         resultArrivalDate: sjTime(this.form1.resultArrivalDate),
         resultUnloadTime: sjTime(this.form1.resultUnloadTime),
-        unloadingPointId: this.form1.unloadingPointId,
-        resultBigTicketWeight: this.form1.resultBigTicketWeight,
-        resultRailHorizontalWeight: this.form1.resultRailHorizontalWeight,
         resultRemark: this.form1.resultRemark,
         resultType: 2,
       };
@@ -69,10 +66,7 @@ export default {
       if (
         tmstrainWagonUnloadResult.wagonNoList == null ||
         tmstrainWagonUnloadResult.resultArrivalDate == null ||
-        tmstrainWagonUnloadResult.resultUnloadTime == null ||
-        tmstrainWagonUnloadResult.unloadingPointId == null ||
-        tmstrainWagonUnloadResult.resultBigTicketWeight == null ||
-        tmstrainWagonUnloadResult.resultRailHorizontalWeight == null
+        tmstrainWagonUnloadResult.resultUnloadTime == null
       )
         this.$message.error("存在空值!");
       else

+ 1 - 1
src/views/TMS/components/importedEmergency/entrustEmergency.vue

@@ -41,7 +41,7 @@ export default {
             type: "success",
             message: "发送成功",
           });
-          this.option.requestUrl = "/api/v1/tms/getLoadResultToSendMC?apiId=58&resultType=2";
+          this.option.requestUrl = "/api/v1/tms/getLoadResultToSendMC?apiId=58&resultType=2&i=" + new Date();
         }
       })
     },

+ 3 - 2
src/views/TMS/components/importedEmergency/wagonUnLoadEmergency.vue

@@ -47,12 +47,13 @@ export default {
   },
   methods: {
     btnclick(num,unloadingId) {
+      console.log(num,unloadingId)
       if ( num == 0 ) {
         this.option.requestUrl = '/api/v1/tms/getTmstrainWagonUnLoad?apiId=60&resultType=2&con='+this.input;
       } else if (num == 1 ) {
-        this.$router.push("/addWagonLoadEmergency")
+        this.$router.push("/addWagonUnLoadEmergency")
       }else if (num == 2) {
-        this.$router.push("/editWagonLoadEmergency/" + unloadingId);
+        this.$router.push("/editWagonUnLoadEmergency/" + unloadingId);
       }
     },
     deleteclick(scope) {

+ 0 - 6
src/views/TMS/components/importedMine/addWagonPlease.vue

@@ -32,12 +32,6 @@
         </el-form>
     </div>
   <div class="trainTransport">
-    <page-title>返回</page-title>
-    <div class="form">
-      <div class="form_box">
-          <dil-form :formId="122" v-model="form1" ref="from1"></dil-form>
-      </div>   
-    </div>
     <!-- 确定和取消 -->
     <div class="button_box">
       <el-button @click="onClickCancel">返回</el-button>

+ 1 - 1
src/views/TMS/components/importedMine/wagonApprove.vue

@@ -37,7 +37,7 @@ export default {
       option: {
         // 表格请求数据的地址
         requestUrl:
-          "/api/v1/tms/getApproveAllWagonPlease?apiId=70&resultType=1",
+          "/api/v1/tms/getApproveAllWagonPlease?apiId=70&resultType=1&status=2",
       },
     };
   },

+ 9 - 3
src/views/TMS/components/importedShip/addLoadShip.vue

@@ -26,6 +26,7 @@
 <script>
 import PageTitle from "@/components/Page/Title";
 import { sjTime } from "@/utils/sharedJsFile";
+import { getCookie } from "@/utils/util.js";
 export default {
   components: { PageTitle },
   data() {
@@ -49,7 +50,7 @@ export default {
     currentRadioChange(row) {
       this.rowMap=row
       
-      console.log(this.rowMap);
+      console.log("addd",this.rowMap);
     },
     // 新增
     makeSure() {
@@ -72,8 +73,10 @@ export default {
           this.form.resultOutWharyTime
         ),
         resultMemo: this.form.resultMemo,
+        userId:getCookie("userId")
       };
       console.log(mapVal);
+      console.log(this.rowMap)
       if (
       mapVal.resultActualInstallations==null||
      // mapVal.portId==null||
@@ -83,8 +86,7 @@ export default {
       mapVal.resultPortDeclarationName==null||
       mapVal.resultArrivalTime==null||
       mapVal.resultOutWharyName==null||
-      mapVal.resultOutWharyTime==null||
-      mapVal.resultMemo==null
+      mapVal.resultOutWharyTime==null
       ) this.$message.error("存在空值!");
       else
       this.axios
@@ -96,6 +98,8 @@ export default {
           }
         )
         .then((res) => {
+          console.log("返回成功了")
+          console.log(res)
           if (res.data.code == 200) {
             this.$message({
               type: "success",
@@ -103,6 +107,8 @@ export default {
             });
             // this.$refs.table.refreshData();
             this.$router.go(-1);
+          }else if(res.data.code == 201){
+            this.$message.warning(res.data.data);
           } else {
             this.$message.error("新增失败!");
           }

+ 2 - 2
src/views/TMS/components/importedShip/shipLocation.vue

@@ -101,8 +101,8 @@ export default {
           label:'已过闸船舶',
           value:'已过闸船舶'
         },{
-          label:'到港船舶',
-          value:'到港船舶'
+          label:'到港待卸船舶',
+          value:'到港待卸船舶'
         },
       ],
       value: null,

+ 2 - 2
src/views/TMS/router/index.js

@@ -257,7 +257,7 @@ const constantRouterMap = [
       {path: 'wagonLoadMine', name: 'wagonLoadMine', meta: {code: 'xtpzgl-yhgl'}, component: wagonLoadMine},
       {path: 'wagonLoadbu', name: 'wagonLoadbu', meta: {code: 'xtpzgl-yhgl'}, component: wagonLoadbu},
       {path: 'wagonLoadAdd', name: 'wagonLoadAdd', meta: {code: 'xtpzgl-yhgl'}, component: wagonLoadAdd},
-      {path: 'wagonLoadEdit', name: 'wagonLoadEdit', meta: {code: 'xtpzgl-yhgl'}, component: wagonLoadEdit},
+      {path: 'wagonLoadEdit/:resultId', name: 'wagonLoadEdit', meta: {code: 'xtpzgl-yhgl'}, component: wagonLoadEdit},
       {path: 'wagonPleaseMine', name: 'wagonPleaseMine', meta: {code: 'xtpzgl-yhgl'}, component: wagonPleaseMine},
       {path: 'wagonPleaseAdd', name: 'wagonPleaseAdd', meta: {code: 'xtpzgl-yhgl'}, component: wagonPleaseAdd},
       {path: 'wagonPleaseEdit/:resultId', name: 'wagonPleaseEdit', meta: {code: 'xtpzgl-yhgl'}, component: wagonPleaseEdit},
@@ -268,7 +268,7 @@ const constantRouterMap = [
 
       {path: 'addWagonLoadEmergency', name: 'addWagonLoadEmergency', meta: {code: 'xtpzgl-yhgl'}, component: addWagonLoadEmergency},
       {path: 'addWagonUnLoadEmergency', name: 'addWagonUnLoadEmergency', meta: {code: 'xtpzgl-yhgl'}, component: addWagonUnLoadEmergency},
-      {path: 'editWagonUnLoadEmergency', name: 'editWagonUnLoadEmergency', meta: {code: 'xtpzgl-yhgl'}, component: editWagonUnLoadEmergency},
+      {path: 'editWagonUnLoadEmergency/:unloadingId', name: 'editWagonUnLoadEmergency', meta: {code: 'xtpzgl-yhgl'}, component: editWagonUnLoadEmergency},
       {path: 'editWagonLoadEmergency/:unloadingId', name: 'editWagonLoadEmergency', meta: {code: 'xtpzgl-yhgl'}, component: editWagonLoadEmergency},
       {path: 'entrustEmergency', name: 'entrustEmergency', meta: {code: 'xtpzgl-yhgl'}, component: entrustEmergency},
       {path: 'trainDetails', name: 'trainDetails', meta: {code: 'xtpzgl-yhgl'}, component: trainDetails},

+ 353 - 0
src/views/WMS/components/billingOrder/updateBill.vue

@@ -0,0 +1,353 @@
+// 采购内转需求
+<template>
+  <div class="admin">
+    <template>
+      <div class="admin1">
+        <el-tabs v-model="activeName">
+          <el-tab-pane label="修改提货单" name="first">
+          <div class="admin2">
+            <div class="carrier from">
+                <el-form
+                    :inline="true"
+                    class="demo-form-inline"
+                    label-width="80px"
+                    >
+                    <el-form-item label="车牌号:">
+                    <el-autocomplete
+                    class="inline-input"
+                    v-model="capacityName"
+                    :fetch-suggestions="querySearchCapacity"
+                    placeholder="车牌号"
+                    :trigger-on-focus="false"
+                    @select="handleSelectCapacity"
+                    >
+                    <template slot-scope="{ item }">
+                    <div class="name">{{ item.capacityNumber }}</div>
+                    </template>
+                    </el-autocomplete>
+                    </el-form-item>
+                </el-form>
+            </div>
+            <div></div>
+            <div class="poundNo from">
+                <span class="text">运输订单号:</span>
+                <el-select v-model="orderId" placeholder="请选择" @change="changeOrderNo">
+                <el-option
+                    v-for="item in orderList"
+                    :key="item.orderId"
+                    :label="item.orderNumber" 
+                    :value="item.orderId"
+                >
+                </el-option>
+                </el-select>
+            </div>
+            <div class="material from">
+                <span class="text">物资:</span>
+                <el-select v-model="materialId" placeholder="请选择" @change="changeMaterial">
+                <el-option
+                    v-for="item in materialList"
+                    :key="item.materialId"
+                    :label="item.materialName" 
+                    :value="item.materialId"
+                >
+                </el-option>
+                </el-select>
+            </div>
+            <div class="material from"> 
+                <span class="text">物资件数:</span>
+                <el-input v-model="materialNum" ></el-input>
+            </div>
+            <div class="material from"> 
+                <span class="text">发货单位:</span>
+                <el-input v-model="shipperName" disabled></el-input>
+            </div>
+            <div class="material from"> 
+                <span class="text">收货单位:</span>
+                <el-input v-model="consigneeCompanyName" disabled></el-input>
+            </div>
+            <div class="material from"> 
+                <span class="text">收货地址:</span>
+                <el-input v-model="receiveAddressName" disabled></el-input>
+            </div>
+            <div class="material from"> 
+                <span class="text">截止日期:</span>
+                <el-input v-model="saleDateOfReceipt" disabled></el-input>
+            </div>
+        </div>
+          <div class="button_box">
+            <el-button type="primary" @click="onClickConfirm" :disabled = "disabled">确认</el-button>
+          </div>
+          </el-tab-pane>
+
+        </el-tabs>
+      </div>
+    </template>
+  </div>
+</template>
+<script>
+import { isNumber } from "@/utils/sharedJsFile";
+export default {
+  data() {
+    return {
+        orderNumber:null,
+        activeName:"first",
+        capacityName:null,    
+        stateCapacity:null,
+        materialList:[],
+        capacityId:null,
+        materialId:null,
+        disabled:false,
+        orderId:null,
+        orderList:[],
+        materialNum:null,
+        saleDateOfReceipt:null,
+        consigneeCompanyName:null,
+        receiveAddressName:null,
+        shipperName:null
+    };
+  },
+  methods: {    
+    //运力弹出层
+    handleSelectCapacity(item){
+      console.log(item)
+      this.capacityId = item.capacityId
+      this.capacityName = item.capacityNumber
+      this.axios.get("/api/v1/oms/getSteelOrderNum?capacityId=" + this.capacityId).then((res) =>{
+          if(res.data.code == "200"){
+              console.log(res.data.data)
+              this.orderList = res.data.data
+          }
+      })
+    },
+    changeOrderNo(){
+        console.log(this.orderNumber)
+        this.axios.get("/api/v1/oms/getMesToSteelDepartment?orderId=" + this.orderId).then((res) => {
+            this.materialList = res.data.data.materialMes
+            this.saleDateOfReceipt = res.data.data.saleDateOfReceipt
+            this.consigneeCompanyName = res.data.data.consigneeCompanyName
+            this.receiveAddressName = res.data.data.receiveAddressName
+            this.shipperName = res.data.data.shipperName
+        })
+    },
+    changeMaterial(){
+        console.log(this.materialId)
+        this.materialList.forEach((e) => {
+            if(e.materialId == this.materialId){
+                this.materialNum = e.materialNum
+                this.maxMaterialNum = e.materialNum
+            }
+        })
+    },
+    //以下是运力边输边查搜索
+    querySearchCapacity(queryString, cb) {
+        if(queryString.length < 3){
+            return
+        }
+        this.axios.get('/api/v1/uc/getCapacityNumber?index='+queryString).then((res)=>{
+        if(res.data.code == "200"){
+          var restaurantsCarrier = res.data.data
+          console.log(restaurantsCarrier,"restaurantsCarrier");
+          var results = queryString ? restaurantsCarrier.filter(this.createFilterCarrier(queryString)) :restaurantsCarrier;
+           // 调用 callback 返回建议列表的数据
+          cb(results);
+        }
+        })     
+      },
+    createFilterCarrier(queryString) {
+        return (restaurantsCarrier)  =>  {
+          return (restaurantsCarrier.capacityNumber.toLowerCase().indexOf(queryString.toLowerCase()) > -1);
+        };
+      },
+    //以上是承运商边输边查搜索
+    onClickConfirm(){
+        if(!isNumber(this.materialNum)){
+            this.$message.error("件数请输入数字")
+            return
+        }
+        if((parseInt(this.materialNum) > parseInt(this.maxMaterialNum))){
+            this.$message.error("修改后的数量不得大于提货单数量")
+            return
+        }
+        if(this.materialNum == 0){
+            this.$message.error("不能将物资数量修改为0")
+            return
+        }
+        let updateNumMap = {
+            orderId:this.orderId,
+            materialId:this.materialId,
+            materialNum:parseInt(this.materialNum)
+        }
+        this.axios.post("/api/v1/oms/updateMaterialMes",updateNumMap).then((res) => {
+            console.log(res)
+            if(res.data.code == '200'){
+                this.$message.success("修改物资数量成功")
+            }else{
+                this.$message.error("新增失败请联系管理员")
+            }
+        })
+
+    },
+  },
+};
+</script>
+<style lang="scss">
+.admin{
+  .admin1 {
+
+      margin-top: 40px;
+      margin-left: 40px;
+      .switch {
+          display: flex;
+          justify-content: center;
+          align-items: center;
+          margin-top: 20px;
+          color: aqua;
+      }
+      .button_box {
+            display: flex;
+            justify-content: center;
+            align-items: center;
+            width: 100%;
+            height: 100px;
+        }
+      .admin2 {    
+        margin-top: 40px; 
+        .from {
+        display: flex;
+        align-items: center;
+        justify-content: center;
+        margin-top: 20px;
+        margin-bottom: 20px;
+        }
+        .carrier{
+            display: flex;
+            justify-content: center;
+            align-items: center;
+            .el-form-item {
+                text-align: right;
+            }
+            .el-autocomplete{
+            width: 250px;
+            }
+        }
+        .material {
+        display: flex;
+        justify-content: center;
+        margin-top: 20px;
+        margin-right: 100px;
+        .text {
+            display: inline-block;
+            width: 170px;
+            text-align: right;
+        }
+        .el-input {
+            width: 250px;
+        }
+        }
+        .poundNo {
+            display: flex;
+            justify-content: center;
+            align-items: center;
+            margin-top: 20px;
+            margin-right: 100px;
+            .text {
+            display: inline-block;
+            width: 170px;
+            text-align: right;
+                  }
+            .el-input {
+            width: 250px;
+                    }
+        }  
+        .block {
+            display: flex;
+            justify-content: center;
+            align-items: center;
+            margin-top: 20px;
+            margin-right: 100px;
+            .el-input {
+                width: 250px;
+            }
+            .text {
+            display: inline-block;
+            width: 170px;
+            text-align: right;
+            }
+        }
+        .truckCalFirst {
+            display: flex;
+            justify-content: center;
+            margin-top: 20px;
+            margin-right: 100px;
+            .text {
+                display: inline-block;
+                width: 170px;
+                text-align: right;
+            }
+            .el-input {
+                width: 250px;
+            }
+        }
+        .truckCalSecond {
+            display: flex;
+            justify-content: center;
+            margin-top: 20px;
+            margin-right: 100px;
+            .text {
+                display: inline-block;
+                width: 170px;
+                text-align: right;
+            }
+            .el-input {
+                width: 250px;
+            }
+        }
+        .secondWeight {
+           display: flex;
+            justify-content: center;
+            align-items: center;
+            margin-top: 20px;
+            margin-right: 100px;
+            .text {
+            display: inline-block;
+            width: 170px;
+            text-align: right;
+                  }
+            .el-input {
+            width: 250px;
+                    } 
+        }
+        .firstWeight {
+            display: flex;
+            justify-content: center;
+            align-items: center;
+            margin-top: 20px;
+            margin-right: 100px;
+            .text {
+            display: inline-block;
+            width: 170px;
+            text-align: right;
+                  }
+            .el-input {
+            width: 250px;
+                    }
+        }
+        .netWeight {
+            display: flex;
+            justify-content: center;
+            align-items: center;
+            margin-top: 20px;
+            margin-right: 100px;
+            .text {
+            display: inline-block;
+            width: 170px;
+            text-align: right;
+                  }
+            .el-input {
+            width: 250px;
+                    }
+        }
+      }      
+  }
+  }
+</style>

+ 2 - 1
src/views/WMS/router/index.js

@@ -5,6 +5,7 @@ import routerBefore from '@/config/routerBefore.js'
 // 主要
 import main from '@/components/main.vue'
 // 系统配置管理
+import editBill from '../components/billingOrder/updateBill.vue'
 import intrainst_real from '../components/intrainst/intrainst_real.vue'
 import offsite_check from '../components/offsite/offsite_check.vue'
 import offsite_close from '../components/offsite/offsite_close.vue'
@@ -199,7 +200,7 @@ const constantRouterMap = [
 		{path: 'bar2_addSteelReserved', name: 'bar2_addSteelReserved', meta: {code: 'xtpzgl-yhgl'}, component: bar2_addSteelReserved},
 		{path: 'bar2_steel_inboundStatistics', name: 'bar2_steel_inboundStatistics', meta: {code: 'xtpzgl-yhgl'}, component: bar2_steel_inboundStatistics},
 		{path: 'bar2_steel_outboundStatistics', name: 'bar2_steel_outboundStatistics', meta: {code: 'xtpzgl-yhgl'}, component: bar2_steel_outboundStatistics},
-
+		{path: 'editBill', name: 'editBill', meta: {code: 'xtpzgl-yhgl'}, component: editBill},
 	  ]
 	}
   ];

+ 3 - 0
src/views/appoint/app.js

@@ -24,6 +24,9 @@ Vue.use(VueApollo)
 import DilCommonUI from "@/components/DilCommonUI";
 Vue.use(DilCommonUI);
 
+import htmlToPdf from '@/components/exportPdf/exportPdf'
+Vue.use(htmlToPdf)
+
 import vuescroll from "vuescroll";//引入vuescroll
 import "vuescroll/dist/vuescroll.css";//引入vuescroll样式
 Vue.use(vuescroll);//使用

+ 25 - 13
src/views/appoint/components/purchase/addTrainPrice.vue

@@ -1,27 +1,20 @@
 <template>
   <!-- 添加水运价格 -->
-  <div class="addShipPrice">
+  <div class="addTrainPrice">
     <page-title>新增</page-title>
-    <el-divider content-position="left">添加火运价格</el-divider>
-     <div class="form-box" style="margin-right: 10rem">
+     <div class="form-box" >
         <dil-form :formId="192" v-model="form1" ref="from1"></dil-form>
       </div>
     <div class="button-box">
       <el-button @click="cancel">取消</el-button>
       <el-button type="primary" @click="makeSure">确定</el-button>
     </div>
-    <!-- <div class="primarybtn">
-      <el-button class="btn" @click="goback">取消</el-button>
-      <el-button type="primary" class="btn" @click="submitclick"
-        >确定</el-button
-      >
-    </div> -->
   </div>
 </template>
 
 <script>
 import PageTitle from "@/components/Page/Title";
-
+import { sjTime, isNumber } from "@/utils/sharedJsFile";
 export default {
   components: { PageTitle },
   data() {
@@ -52,8 +45,6 @@ export default {
           amsContractTrainPrice
         )
         .then((res) => {
-        //   console.log(res);
-        //   console.log(this.form4);
           this.$router.go(-1);
         });
     },
@@ -65,5 +56,26 @@ export default {
 };
 </script>
 <style lang='scss' scoped>
-
+.addTrainPrice {
+  .form-box {
+    display: flex;
+    align-items: center;
+    justify-content: center;
+    text-align: center;
+    .el-form-item {
+      display: flex !important;
+      .el-form-item__label {
+        width: 170px !important;
+      }
+      .el-input {
+        width: 210px !important;
+      }
+    }
+  }
+  .button-box {
+    display: flex;
+    align-items: center;
+    justify-content: center;
+  }
+}
 </style>

+ 3 - 0
src/views/appoint/components/purchase/shipPrice.vue

@@ -103,6 +103,9 @@ export default {
 .homeworkPath {
   .top {
     padding: 1.25rem 1.875rem;
+    .el-input {
+      width: 250px;
+    }
   }
 }
 </style>

+ 4 - 12
src/views/appoint/components/purchase/trainPrice.vue

@@ -35,6 +35,7 @@ export default {
     return {
       restaurants: [],
       state: "",
+      input:"",
       option: {
         // 表格请求数据的地址
         requestUrl: "/api/v1/ams/getTrainPriceList?apiId=116",
@@ -57,18 +58,6 @@ export default {
     click(priceId) {
       this.$router.push("/updateTrainPrice/" + priceId);
     },
-    // deleteclick(scope) {
-    //   let pathId = scope;
-    //   this.axios
-    //     .post("/api/v1/tms/operationPath/operationPathDelete?pathId=" + pathId)
-    //     .then((res) => {
-    //       this.$message({
-    //         message: "删除成功",
-    //         type: "success",
-    //       });
-    //       this.$router.go(0);
-    //     });
-    // },
     deleteclick(scope) {
       let priceId = scope;
       this.$confirm("是否删除", "提示", {
@@ -104,6 +93,9 @@ export default {
 .homeworkPath {
   .top {
     padding: 1.25rem 1.875rem;
+    .el-input {
+      width: 250px;
+    }
   }
 }
 </style>

+ 28 - 18
src/views/appoint/components/purchase/updateTrainPrice.vue

@@ -1,19 +1,10 @@
 <template>
   <!-- 修改水运价格信息 -->
-  <div id="contractDetails">
+  <div class="addTrainPrice">
     <page-title>编辑</page-title>
-    <div class="main">
-      <span class="text">修改火运价格信息</span>
-      <span class="a"></span>
-    </div>
-    <div class="contractTitle">
       <div class="form-box">
-        <div class="form-one">
           <dil-form :formId="192" v-model="form1"></dil-form>
-        </div>
       </div>
-    </div>
-
     <div class="button-box">
       <el-button type="primary" @click="onClickConfirm">确认</el-button>
       <el-button @click="onClickCancel">返回</el-button>
@@ -23,7 +14,7 @@
 
 <script>
 import PageTitle from "@/components/Page/Title";
-
+import { sjTime, isNumber } from "@/utils/sharedJsFile";
 export default {
   components: { PageTitle },
  data(){
@@ -42,9 +33,7 @@ export default {
         .then((res) => {
           res.data.data.forEach((e) => {
             this.form1 = e;
-            // console.log(e);
-            // console.log(this.form1);
-            // console.log(this.$route.params.loadingId);
+          
           });
         });
     },
@@ -73,14 +62,35 @@ export default {
           amsContractTrainPrice
         )
         .then((res) => {
-          console.log(res);
-          console.log(this.form1);
-          this.$router.go(-1);
+          if(res.data.code == 200){
+            this.$router.go(-1);
+          }
         });
     },
   },
 };
 </script>
 <style lang="scss" scoped>
-
+  .addTrainPrice {
+  .form-box {
+    display: flex;
+    align-items: center;
+    justify-content: center;
+    text-align: center;
+    .el-form-item {
+      display: flex !important;
+      .el-form-item__label {
+        width: 170px !important;
+      }
+      .el-input {
+        width: 210px !important;
+      }
+    }
+  }
+  .button-box {
+    display: flex;
+    align-items: center;
+    justify-content: center;
+  }
+}
 </style>

+ 41 - 8
src/views/appoint/components/saleContract/addSaleOrder.vue

@@ -127,10 +127,10 @@
               </template>
               <!-- 米数 -->
               <template v-if="item.prop == 'meterNumber'">
-                <el-input
+                <el-input v-if="scope.row.haveMeter==1"
                   class="textinput111"
                   v-model.number="scope.row.meterNumber"
-                  placeholder="(必填)"
+                  placeholder="(必填)"
                 ></el-input>
               </template>
               <!-- 分装车数 -->
@@ -228,7 +228,7 @@
               </template>
               <!-- 米数 -->
               <template v-if="item.prop == 'meterNumber'">
-                <el-input
+                <el-input v-if="scope.row.haveMeter==1"
                   class="textinput"
                   v-model.number="scope.row.meterNumber"
                 ></el-input>
@@ -460,7 +460,7 @@
 </template>
 <script>
 import PageTitle from "@/components/Page/Title";
-import { sjTime } from "@/utils/sharedJsFile";
+import { sjTime,isIntegerNumber } from "@/utils/sharedJsFile";
 export default {
   components: { PageTitle },
   data() {
@@ -819,7 +819,9 @@ export default {
         }else{
           getisPound = 1;
         }
-        var addmap = {
+        //若物资为带有盘螺、盘圆、盘元,默认无米数
+        if(e.materialName.includes("盘螺")||e.materialName.includes("盘圆")||e.materialName.includes("盘元")){
+          var addmap = {
           materialName: e.materialName,
           Specification: e.materialSpecification+e.materialModel,
           materialCode: e.materialCode,
@@ -828,7 +830,23 @@ export default {
           isPound: getisPound,
           //物资Id
           materialId: e.materialId,
-        };
+          //无米数
+          haveMeter: 0
+          };
+        }else{
+          var addmap = {
+          materialName: e.materialName,
+          Specification: e.materialSpecification+e.materialModel,
+          materialCode: e.materialCode,
+          orderPlanWeight: null,
+          meterNumber: null,
+          isPound: getisPound,
+          //物资Id
+          materialId: e.materialId,
+          //有米数
+          haveMeter: 1
+          };
+        }
         this.materialList.push(addmap);
       });
       this.materialList1 = [];
@@ -878,11 +896,13 @@ export default {
     addMaterialToSaleOrder(){
       if(this.materialList.length==0){
         this.$message.warning("请至少为这一车添加一个物资!");
-      }else if(!this.saleShipperAddressName){
+      }else if(!this.saleShipperAddressName&&this.values=='no'){
         this.$message.warning("收货地址未填写!");
       }else if(this.materialList.length==1&&this.materialList[0].carNumber!=null){
+          if(this.materialList[0].orderPlanWeight/this.materialList[0].carNumber)
           var eachOrderPlanWeight = this.materialList[0].orderPlanWeight/this.materialList[0].carNumber;
-          var e = this.materialList[0];
+          if(isIntegerNumber(eachOrderPlanWeight)){
+            var e = this.materialList[0];
           for(var i=0;i<this.materialList[0].carNumber;i++){
             var addmap = {
             cxh: this.maxCxh,
@@ -898,6 +918,7 @@ export default {
             saleDateOfReceipt: this.saleDateOfReceipt,
             saleOrderConsigneeTel: this.saleOrderConsigneeTel,
             materialId: e.materialId,
+            haveMeter: e.haveMeter
           };
           this.selectionList.push(addmap);
           //最大车序号加1
@@ -907,6 +928,10 @@ export default {
           this.materialList = [];
           //调用记录每一行的合并数的方法
           this.getSpanArr(this.selectionList);
+          }else{
+            this.$message.warning("分配件数不是整数!");
+          }
+          
       }else{
           this.materialList.forEach((e) => {
             var addmap = {
@@ -923,6 +948,7 @@ export default {
               saleDateOfReceipt: this.saleDateOfReceipt,
               saleOrderConsigneeTel: this.saleOrderConsigneeTel,
               materialId: e.materialId,
+              haveMeter: e.haveMeter
             };
             this.selectionList.push(addmap);
           });
@@ -979,6 +1005,13 @@ export default {
         this.selectionList[this.indexChangeMaterial].Specification=this.selectedMaterialSpecification+this.selectedMaterialModel;
         this.selectionList[this.indexChangeMaterial].materialCode=this.selectedMaterialModel;
         this.selectionList[this.indexChangeMaterial].isPound=getisPound;
+        //确定更改的物资有无米数
+        if(this.selectedMaterialName.includes("盘螺")||this.selectedMaterialName.includes("盘圆")||this.selectedMaterialName.includes("盘元")){
+          this.selectionList[this.indexChangeMaterial].haveMeter = 0;
+          this.selectionList[this.indexChangeMaterial].meterNumber = null;
+        }else{
+          this.selectionList[this.indexChangeMaterial].haveMeter = 1;
+        }
         //重新初始化
         this.indexChangeMaterial = null;
         this.selectedMaterialId = null;

+ 61 - 46
src/views/appoint/components/saleContract/addSaleOrderSteelSend.vue

@@ -62,15 +62,21 @@
 
               <!-- 承运商 -->
               <template v-if="item.prop == 'carrierName'">
-                 <el-select v-model="scope.row.carrierName" placeholder="请选择"  
-                 @change="batchUpdateValue(scope.row,scope.$index)">
-                  <el-option
-                    v-for="item in carrierNameOptions[scope.$index]"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value">
-                  </el-option>
-                </el-select>
+                <el-autocomplete
+                    class="inline-input"
+                    v-model="scope.row.carrierName"
+                    :fetch-suggestions="querySearch1"
+                    placeholder="请输入承运商名称"
+                    :trigger-on-focus="false"
+                    @change="batchUpdateValue(scope.row,scope.$index)"
+                    @select="handleSelect1"
+                  >
+                    <template slot-scope="{ item }">
+                      <div class="name" v-if="item.carrierName">
+                        {{ item.carrierName }}
+                      </div>
+                    </template>
+                  </el-autocomplete>
               </template>
 
               <!-- 物资件数 -->
@@ -163,6 +169,8 @@ export default {
       pos:0,
       //加载
       selectLineLoading:false,
+      //所有选中承运商Id和承运商名称暂存
+      carrierIdAndName: [],
       //承运商下拉框中的值
       carrierNameOptions:[],
       //当前车序号物资
@@ -299,12 +307,8 @@ export default {
                 saleDateOfReceipt: e.receiptDate,
                 saleOrderConsignee: e.saleOrderConsignee,
                 saleOrderConsigneeTel: e.saleOrderConsigneeTel,
-                priceValue: null,
-                priceId: null,
             };
             this.selectionList.push(addmap);
-            //填充承运商下拉框
-            this.carrierNameOptions.push(e.carrierAndPriceList);
             //调用记录每一行的合并数的方法
             this.getSpanArr(this.selectionList);
             //初始化每个车的线路
@@ -312,6 +316,40 @@ export default {
         });
       });
     },
+
+    //承运商弹出层
+    handleSelect1(item) {
+      let carrierIdAndNameItem = {
+        carrierId : item.carrierId,
+        carrierName : item.carrierName
+      }
+      this.carrierIdAndName.push(carrierIdAndNameItem);
+    },
+    //以下是承运商边输边查搜索
+    querySearch1(queryString, cb) {
+      this.axios
+        .post("/api/v1/uc/getCarrierMesByLike?index=" + queryString)
+        .then((res) => {
+          if (res.data.code == "200") {
+            var restaurants = res.data.data;
+            var results = queryString
+              ? restaurants.filter(this.createFilter1(queryString))
+              : restaurants;
+            // 调用 callback 返回建议列表的数据
+            cb(results);
+          }
+        });
+    },
+    createFilter1(queryString) {
+      return (restaurants) => {
+        return (
+          restaurants.value.toLowerCase().indexOf(queryString.toLowerCase()) >
+          -1
+        );
+      };
+    },
+    //以上是承运商边输边查搜索
+
     onInput(val){
       if(!isNumber(val)){
         this.$message.warning('重量/电话号码请输入数字')
@@ -359,7 +397,7 @@ export default {
         })
         .catch(() => {this.$message({ type: "info", message: "已取消删除",});});
     },
-    //失焦事件后确定车牌号与承运商是否有绑定关系
+    //确定车牌号与承运商是否有绑定关系
     checkRelationship(index){
       if(this.selectionList[index].carrierId!=null){
         //暂存车牌号
@@ -388,19 +426,7 @@ export default {
     },
     //车牌号弹出层
     handleSelect(item) {
-      console.log("item")
-        // let mapValue = {
-        //   capacityNumber:item.capacityNumber,
-        //   carrierId:this.receiveCarrierId,
-        //   carrierName:this.receiveCarrierName
-        // }
-        // this.axios
-        // .post("/api/v1/uc/isInCapacityCarrier", mapValue)
-        // .then((res)=>{
-        //   if(res.data.code=="201"){
-        //     this.bindRelationship(mapValue);
-        //   }
-        // });
+      console.log("获取下拉值!")
     },
 
     //以下是车牌号边输边查搜索
@@ -453,7 +479,13 @@ export default {
             .then(() => {
               var mapList = [];
               for(var i=0;i<this.spanArr.length;i++){
-                if(this.spanArr[i]>0){
+                  if(this.spanArr[i]>0){
+                  //从所有选中承运商Id和承运商名称暂存中取出当前行的承运商Id
+                  this.carrierIdAndName.forEach((item) => {
+                    if(this.selectionList[i].carrierName==item.carrierName){
+                      this.selectionList[i].carrierId = item.carrierId;
+                    }
+                  })
                   var mapItem = {
                   //车牌号
                   capacityNumber : null,
@@ -463,14 +495,11 @@ export default {
                   carrierId : 0,
                   //线路Id
                   lineId : 0,
-                  //运输单价Id
-                  priceId : 0
                 }
                 mapItem.capacityNumber = this.selectionList[i].capacityNumber,
                 mapItem.saleOrderMaterialId = this.selectionList[i].saleOrderMaterialId,
                 mapItem.carrierId = this.selectionList[i].carrierId,
                 mapItem.lineId = this.selectionList[i].lineId,
-                mapItem.priceId = this.selectionList[i].priceId
                 mapList.push(mapItem);
                 }
               }
@@ -494,23 +523,9 @@ export default {
 
     //批量修改内层值
     batchUpdateValue(row,index){
-      //单价以及单价Id
-        var priceValue = null;
-        var priceId = null;
-        var carrierName = null;
-        this.carrierNameOptions[index].forEach((e) => {
-          if (row.carrierName == e.value) {
-            priceValue = e.priceValue;
-            priceId = e.priceId;
-            carrierName = e.label;
-          }
-        });
         for(var i=index;i<this.spanArr[index]+index;i++){
           this.selectionList[i].capacityNumber=row.capacityNumber;
-          this.selectionList[i].carrierId=row.carrierName;
-          this.selectionList[i].carrierName=carrierName;
-          this.selectionList[i].priceValue=priceValue;
-          this.selectionList[i].priceId=priceId;
+          this.selectionList[i].carrierName=row.carrierName;
         }
     },
     //初始化线路

+ 7 - 24
src/views/appoint/components/saleContract/addSaleOrderSteelSendCarrier.vue

@@ -272,6 +272,7 @@ export default {
               this.$message({ type: "info", message: "取消!",});
             });
         }
+        console.log("res.data.data",res.data.data)
         //赋值派车表格
         res.data.data.forEach((e,i) => {
           if(e.saleOrderConsignee=="null"){
@@ -280,20 +281,12 @@ export default {
           if(e.saleOrderConsigneeTel=="null"){
             e.saleOrderConsigneeTel = null
           }
-          var priceValueFirst = 0;
-          var priceIdFirst = 0;
-          e.carrierAndPriceList.forEach((a)=>{
-              if(a.id == e.carrierId){
-                  priceValueFirst = a.priceValue;
-                  priceIdFirst = a.priceId;
-              }
-          })
             //带承运商初始化派车表格
             var addmap = {
                 truckNo: e.truckNo,
                 saleOrderMaterialId: e.saleOrderMaterialId,
                 capacityNumber: null,
-                carrierName: e.carrierId,
+                carrierName: e.carrierName,
                 carrierId: e.carrierId,
                 materialId: e.materialId,
                 materialName: e.materialName,
@@ -307,13 +300,9 @@ export default {
                 saleShipperAddressName:e.place,
                 saleDateOfReceipt: e.receiptDate,
                 saleOrderConsignee: e.saleOrderConsignee,
-                saleOrderConsigneeTel: e.saleOrderConsigneeTel,
-                priceValue: priceValueFirst,
-                priceId: priceIdFirst
+                saleOrderConsigneeTel: e.saleOrderConsigneeTel
             };
             this.selectionList.push(addmap);
-            //填充承运商下拉框
-            this.carrierNameOptions.push(e.carrierAndPriceList);
             //调用记录每一行的合并数的方法
             this.getSpanArr(this.selectionList);
             //初始化每个车的线路
@@ -442,16 +431,13 @@ export default {
       //是否可发送请求
       var canSend = 1;
       this.selectionList.forEach((e)=>{
-          if(e.carrierName==null){
+          if(e.capacityNumber==null){
               canSend = 0;
           }
-          if(isIntegerNumber(e.carrierName)){
-              e.carrierId = e.carrierName;
-          }
-        });
+      });
       if(canSend==0){
-          //还有车序号未授权承运商
-          this.$message.warning('还有车序号未授权承运商!')
+          //还有车牌号未填写
+          this.$message.warning('还有车牌号未填写!')
       }else{
           this.$confirm("是否确定进行钢材派单!", "提示", {
               confirmButtonText: "确定",
@@ -472,14 +458,11 @@ export default {
                   carrierId : 0,
                   //线路Id
                   lineId : 0,
-                  //运输单价Id
-                  priceId : 0
                 }
                 mapItem.capacityNumber = this.selectionList[i].capacityNumber,
                 mapItem.saleOrderMaterialId = this.selectionList[i].saleOrderMaterialId,
                 mapItem.carrierId = this.selectionList[i].carrierId,
                 mapItem.lineId = this.selectionList[i].lineId,
-                mapItem.priceId = this.selectionList[i].priceId
                 mapList.push(mapItem);
                 }
               }

+ 33 - 33
src/views/appoint/components/saleContract/saleOrderSteel.vue

@@ -14,26 +14,44 @@
       </el-button>
     </div>
     <el-tabs v-model="activeName" @tab-click="handleClick">
-      <!-- 已审批 -->
-       <el-tab-pane label="已审批" name="four">
-        <dilTable v-bind.sync="option4" ref="table">
-          <el-table-column fixed="right" label="操作" width="80">
+      <!-- 未上报 -->
+      <el-tab-pane label="未上报" name="first">
+        <dilTable v-bind.sync="option" ref="table3">
+          <el-table-column fixed="right" label="操作" align="center" width="200">
             <template slot-scope="scope">
               <el-button
-                @click="detailclick(scope.row)"
+                @click="uploadclick(scope.row.saleOrderId)"
+                type="text"
+                size="small"
+                >上传</el-button
+              >
+              <!-- <el-button
+                @click="click(scope.row.saleOrderId)"
+                type="text"
+                size="small"
+                >修改</el-button
+              > -->
+              <el-button
+                type="text"
+                size="small"
+                @click="deleteclick(scope.row.saleOrderId)"
+                >删除</el-button
+              >
+              <el-button
+                @click="detailclick3(scope.row)"
                 type="text"
                 size="small"
                 >物资详情</el-button
               >
             </template>
           </el-table-column>
-          <!-- 物资详情抽屉 -->
+        <!-- 物资详情抽屉 -->
         <el-table-column type="expand" width="1">
           <template slot-scope="props">
             <el-form label-position="center" inline class="demo-table-expand">
               <div v-if="false">{{ props }}</div>
               <div>
-                <el-table :data="tableData" border >
+                <el-table :data="tableData3" border >
                   <el-table-column
                     v-for="(item, i) in tableHead"
                     :key="i"
@@ -49,44 +67,26 @@
 
         </dilTable>
       </el-tab-pane>
-      <!-- 未上报 -->
-      <el-tab-pane label="未上报" name="first">
-        <dilTable v-bind.sync="option" ref="table3">
-          <el-table-column fixed="right" label="操作" align="center" width="200">
+      <!-- 已审批 -->
+       <el-tab-pane label="已审批" name="four">
+        <dilTable v-bind.sync="option4" ref="table">
+          <el-table-column fixed="right" label="操作" width="80">
             <template slot-scope="scope">
               <el-button
-                @click="uploadclick(scope.row.saleOrderId)"
-                type="text"
-                size="small"
-                >上传</el-button
-              >
-              <!-- <el-button
-                @click="click(scope.row.saleOrderId)"
-                type="text"
-                size="small"
-                >修改</el-button
-              > -->
-              <el-button
-                type="text"
-                size="small"
-                @click="deleteclick(scope.row.saleOrderId)"
-                >删除</el-button
-              >
-              <el-button
-                @click="detailclick3(scope.row)"
+                @click="detailclick(scope.row)"
                 type="text"
                 size="small"
                 >物资详情</el-button
               >
             </template>
           </el-table-column>
-        <!-- 物资详情抽屉 -->
+          <!-- 物资详情抽屉 -->
         <el-table-column type="expand" width="1">
           <template slot-scope="props">
             <el-form label-position="center" inline class="demo-table-expand">
               <div v-if="false">{{ props }}</div>
               <div>
-                <el-table :data="tableData3" border >
+                <el-table :data="tableData" border >
                   <el-table-column
                     v-for="(item, i) in tableHead"
                     :key="i"
@@ -146,7 +146,7 @@ export default {
   name: "saleOrder",
   data() {
     return {
-      activeName: "four",
+      activeName: "first",
       drawer: false,
       input: "",
       index: "",

+ 57 - 21
src/views/appoint/components/saleContract/saleOrderSteelEmpower.vue

@@ -49,15 +49,21 @@
 
               <!-- 承运商 -->
               <template v-if="item.prop == 'carrierName'">
-                 <el-select v-model="scope.row.carrierName" placeholder="请选择" 
-                  @change="batchUpdateValue(scope.row,scope.$index)">
-                  <el-option
-                    v-for="item in carrierNameOptions[scope.$index]"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value">
-                  </el-option>
-                </el-select>
+                  <el-autocomplete
+                    class="inline-input"
+                    v-model="scope.row.carrierName"
+                    :fetch-suggestions="querySearch"
+                    placeholder="请输入承运商名称"
+                    :trigger-on-focus="false"
+                    @change="batchUpdateValue(scope.row,scope.$index)"
+                    @select="handleSelect"
+                  >
+                    <template slot-scope="{ item }">
+                      <div class="name" v-if="item.carrierName">
+                        {{ item.carrierName }}
+                      </div>
+                    </template>
+                  </el-autocomplete>
               </template>
 
               <!-- 物资件数 -->
@@ -140,6 +146,8 @@ export default {
       spanArr: [],
       //pos是spanArr的索引
       pos:0,
+      //所有选中承运商Id和承运商名称暂存
+      carrierIdAndName: [],
       //承运商下拉框中的值
       carrierNameOptions:[],
       //当前车序号物资
@@ -260,24 +268,46 @@ export default {
                 saleOrderConsigneeTel: e.saleOrderConsigneeTel,
             };
             this.selectionList.push(addmap);
-            //填充承运商下拉框
-            this.carrierNameOptions.push(e.carrierAndPriceList);
             //调用记录每一行的合并数的方法
             this.getSpanArr(this.selectionList);
           }
         });
-        //若没有承运商可选
-        if(this.carrierNameOptions[0].length==0){
-          //初始化
-          this.carrierNameOptions = [];
-          this.axios
-          .get("/api/v1/uc/getNoListCarrier")
-          .then((res)=>{
-              this.carrierNameOptions.push(res.data.data)
-          });
-        }
       });
     },
+
+    //承运商弹出层
+    handleSelect(item) {
+      let carrierIdAndNameItem = {
+        carrierId : item.carrierId,
+        carrierName : item.carrierName
+      }
+      this.carrierIdAndName.push(carrierIdAndNameItem);
+    },
+    //以下是承运商边输边查搜索
+    querySearch(queryString, cb) {
+      this.axios
+        .post("/api/v1/uc/getCarrierMesByLike?index=" + queryString)
+        .then((res) => {
+          if (res.data.code == "200") {
+            var restaurants = res.data.data;
+            var results = queryString
+              ? restaurants.filter(this.createFilter(queryString))
+              : restaurants;
+            // 调用 callback 返回建议列表的数据
+            cb(results);
+          }
+        });
+    },
+    createFilter(queryString) {
+      return (restaurants) => {
+        return (
+          restaurants.value.toLowerCase().indexOf(queryString.toLowerCase()) >
+          -1
+        );
+      };
+    },
+    //以上是承运商边输边查搜索
+
     onInput(val){
       if(!isNumber(val)){
         this.$message.warning('重量/电话号码请输入数字')
@@ -317,6 +347,12 @@ export default {
               //取得要发送的车序号和它的承运商
               for(var i=0;i<this.spanArr.length;i++){
                   if(this.spanArr[i]>0){
+                      //从所有选中承运商Id和承运商名称暂存中取出当前行的承运商Id
+                      this.carrierIdAndName.forEach((item) => {
+                        if(this.selectionList[i].carrierName==item.carrierName){
+                          this.selectionList[i].carrierId = item.carrierId;
+                        }
+                      })
                       var oneCarAndCarrier = {
                           //车序号Id
                           saleOrderMaterialId : 0,

+ 29 - 9
src/views/appoint/components/ship/addCargoResult.vue

@@ -74,6 +74,7 @@
 </template>
 <script>
 import PageTitle from "@/components/Page/Title";
+import { getCookie } from "@/utils/util.js";
 export default {
   components: { PageTitle },
   data() {
@@ -112,33 +113,50 @@ export default {
     ondrawer(num) {
       this.drawer = true;
       this.a = num;
+      // 清空当前输入框中的数据
+      this.input = "";
     },
     currentRadioChange1(selection) {
-      (this.mapList1 = selection),
-        (this.materialName = this.mapList1.materialName);
+      (this.second.mapList1 = selection),
+        (this.materialName = selection.materialName);
     },
     currentRadioChange2(selection) {
-      (this.mapList2 = selection), (this.cargo = this.mapList2.portName);
+      (this.second1.mapList2 = selection), (this.cargo = selection.portName);
     },
     currentRadioChange3(selection) {
-      (this.mapList3 = selection), (this.receiver = this.mapList3.pierName);
+      (this.second2.mapList3 = selection), (this.receiver = selection.pierName);
     },
 
     // 确定git
     makeSure() {
+      if(this.second.mapList1.length == 0){
+        this.$message.warning("请选择物资")
+        return
+      }
+      if(this.second1.mapList2.length == 0){
+        this.$message.warning("请选择送达单位")
+        return
+      }
+      if(this.second2.mapList3.length == 0){
+        this.$message.warning("请选择收货人")
+        return
+      }
       let AmsshipCargoTransferResult = {
         resultContactPerson: this.form1.resultContactPerson,
         resultTelephoneFax: this.form1.resultTelephoneFax,
         resultFreightForwardingInfo: this.form1.resultFreightForwardingInfo,
         resultMemo: this.form1.resultMemo,
         resultNumberOfLoans: this.form1.resultNumberOfLoans,
-        resultNumber: this.form1.resultNumber,
-        carrierId: this.mapList2.portId,
-        groupId: this.mapList3.pierId,
+        carrierId: this.second1.mapList2.portId,
+        groupId: this.second2.mapList3.id,
         foreignShipName: this.form1.foreignShipName,
-        materialId: this.mapList1.materialId,
+        materialId: this.second.mapList1.materialId,
+        userId:getCookie("userId")
       };
+      console.log(AmsshipCargoTransferResult)
       if (
+        AmsshipCargoTransferResult.foreignShipName == null ||
+        AmsshipCargoTransferResult.resultNumberOfLoans == null ||
         AmsshipCargoTransferResult.resultContactPerson == null ||
         AmsshipCargoTransferResult.resultTelephoneFax == null
       )
@@ -157,6 +175,7 @@ export default {
                 message: "新增成功",
               });
             }
+            this.$router.go(-2);
           });
     },
     onclick(a) {
@@ -169,8 +188,9 @@ export default {
           "/api/v1/tms/selectShippeByName?apiId=215&con=" + this.input;
       } else {
         this.second2.requestUrl =
-          "/api/v1/tms/getGroupList?apiId=21&con=" + this.input;
+          "/api/v1/tms/getGroupList?apiId=217&con=" + this.input;
       }
+      
     },
     // 取消
     cancel() {

+ 18 - 9
src/views/appoint/components/ship/addDeliveryAttorney.vue

@@ -47,6 +47,7 @@
 <script>
 import PageTitle from "@/components/Page/Title";
 import { sjTime,isNumber } from "@/utils/sharedJsFile";
+import { getCookie } from "@/utils/util.js";
 export default {
   components: { PageTitle },
   data() {
@@ -59,6 +60,7 @@ export default {
         selectionType: "radio",
         maplist: [],
       },
+      batchIds:"",
       form1: {},
       value: undefined,
     };
@@ -75,32 +77,39 @@ export default {
     handleClose(done) {
       done();
     },
-    currentRadioChange1(selection) {
-      this.maplist = selection;
+    currentRadioChange1(radio) {
       this.form1 = {
-        batchId: selection.resultForeignShipName + selection.materialName,
+        batchId: radio.resultForeignShipName + radio.materialName,
       };
+      this.batchIds = radio.batchId
     },
     // 确定
     makeSure() {
+      console.log("批次号"+this.batchIds)
+      // 判断用户是否输入了批次号
+      if(this.batchIds==""||this.batchIds==undefined){
+        this.$message.warning("请选择批次号")
+        return
+      }
       let AmsshipDeliveryAttorney = {
-        // downSwimPortId: this.form1.downSwimPortId,
+        downSwimPortId: this.form1.downSwimPortId,
         attorenyPickupIdcard: this.form1.attorenyPickupIdcard,
         attorneyContactTelephone: this.form1.attorneyContactTelephone,
-        batchId: this.maplist.batchId,
+        batchId: this.batchIds,
         attorneyTime: sjTime(this.form1.attorneyTime),
         attorneyPdffile: this.form1.attorneyPdffile,
         noticeId: this.form1.noticeId,
         portId: this.form1.portId,
         attorneyPickupContactPerson: this.form1.attorneyPickupContactPerson,
+        userId:getCookie("userId"),
         // resultMemo: this.form1.resultMemo,
       };
+      console.log(AmsshipDeliveryAttorney)
       if (
         // AmsshipDeliveryAttorney.attorneyId==null||
-        AmsshipDeliveryAttorney.downSwimPortId == null ||
-        AmsshipDeliveryAttorney.attorenyPickupIdcard == null ||
-        AmsshipDeliveryAttorney.attorneyContactTelephone == null ||
-        AmsshipDeliveryAttorney.noticeId == null ||
+        // AmsshipDeliveryAttorney.downSwimPortId == null ||
+        // AmsshipDeliveryAttorney.attorenyPickupIdcard == null ||
+        // AmsshipDeliveryAttorney.attorneyContactTelephone == null ||
         AmsshipDeliveryAttorney.attorneyPickupContactPerson == null
       )
         this.$message.error("存在空值,请核实以后再提交");

+ 12 - 9
src/views/appoint/components/ship/addDeliveryNotice.vue

@@ -34,6 +34,7 @@
 <script>
 import PageTitle from "@/components/Page/Title";
 import { sjTime,isNumber } from "@/utils/sharedJsFile";
+import { getCookie } from "@/utils/util.js";
 export default {
   components: { PageTitle },
   data() {
@@ -41,7 +42,7 @@ export default {
       input:'',
       drawer:false,
       direction:"rtl",
-      batchId:0,
+      batchId:"",
       form1: {},
       options:{
         requestUrl:"/api/v1/tms/getBatchListForAttorney?apiId=375",
@@ -71,11 +72,12 @@ export default {
         done();
     },
      makeSure() {
-      //  purchaseId:this.form1.purchaseId,
-      //  noticeId:this.form1.noticeId,
-      //  cargoId:this.form1.cargoId,
-      //  cargoTransferResultId:this.form1.cargoTransferResultId,
-      let AmsshipDeliveryNotice = {
+      // 判断批次号选择是否为空
+      if(this.batchId==""||this.batchId==undefined){
+        this.$message.warning("请选择批次号")
+        return
+      }
+      let map = {
        carrierId:this.form1.carrierId,
        requesterGroupId:this.form1.requesterGroupId,
        noticeCommerceMethod:this.form1.noticeCommerceMethod,
@@ -84,7 +86,6 @@ export default {
        noticePortConstructionFee:this.form1.noticePortConstructionFee,
        noticeDeliveryTime:sjTime(this.form1.noticeDeliveryTime),
        noticePileFreeDays:this.form1.noticePileFreeDays,
-       noticeDistructionStatus:this.form1.noticeDistructionStatus,
        batchId:this.batchId,
        purchaseContractUnitPrice:this.form1.purchaseContractUnitPrice,
        purchaseContractMoisture:this.form1.purchaseContractMoisture,
@@ -95,8 +96,10 @@ export default {
        aluminaContent:this.form1.aluminaContent,
        phosphorusContent:this.form1.phosphorusContent,
        manganeseContent:this.form1.manganeseContent,
+       userId:getCookie("userId")
        
       };
+      console.log(map)
       if (
         // AmsshipDeliveryAttorney.attorneyId==null||
         // AmsshipDeliveryAttorney.downSwimPortId==null||
@@ -104,13 +107,13 @@ export default {
         // AmsshipDeliveryAttorney.attorneyContactTelephone==null||
         // AmsshipDeliveryAttorney.attorneyTime==null||
         // AmsshipDeliveryAttorney.attorneyPdffile==null
-        AmsshipDeliveryNotice.noticeHandoverMethod==null
+        map.noticeHandoverMethod==null
       ) this.$message.error("存在空值!");
       else
       this.axios
         .post(
           "/api/v1/tms/insertDeliveryNotice",
-           AmsshipDeliveryNotice
+           map
         )
         .then((res) => {
           this.$router.go(-1);

+ 196 - 0
src/views/appoint/components/ship/attorneytext.vue

@@ -0,0 +1,196 @@
+<template>
+  <div class="tableAllDate">
+      <page-title>返回</page-title>
+      <div id="pdfDom">
+      <div class="blank">
+      </div>
+      <!-- 循环遍历传过来的数组中的所有的对象,生成多张提货委托书 -->
+      <div >
+          <div class="title">
+          <i class="titleText" align="center">委托书</i>
+        </div>
+        <div>
+        <!-- tablePart0 -->
+          <table border="0" cellpadding="10" cellspacing="0" style="margin: auto;font-size:20px;" width="1000px" class="tablePart0">
+          <tr>
+            <td style="width :100%">江苏{{attorneyMap.carrierName}}港口集团股份有限公司:</td>
+          </tr>
+          </table>
+        </div>
+        <div class="tableBody">
+          <!-- tablePart1 -->
+          <table border="0" cellpadding="10" cellspacing="0" style="margin-top: 5px;" width="1000px" class="tablePart1">
+          <tr>
+            <td style="width :100%" padding-right="20px">兹委任重庆市万州区万港船务有限公司
+                前来贵港办理我公司的货权提货和水路运输事宜,品种:{{attorneyMap.materialName}};外轮船名:{{attorneyMap.resultForeignShipName}};
+                数量:{{attorneyMap.purchaseOrderMaterialNum}}
+                湿吨(如遇最后一批提货,须清场);物流流向:万州港。望贵公司予以支持为盼。
+            </td>
+          </tr>
+          </table>
+          <!-- tablePart2 -->
+          <table border="0" cellpadding="10" cellspacing="0" style="
+          border-top: 0px" width="1000px" class="tablePart2">
+          <tr>
+            <th style="width :16.5%">提货联系人:</th>
+            <td style="width :10.5%">{{attorneyMap.attorneyPickupContactPerson}}</td>
+            <th style="width :14%">身份证号:</th>
+            <td style="width :59%">{{attorneyMap.attorneyPickupIdcard}}</td>
+          </tr>
+          </table>
+          <!-- tablePart3 -->
+          <table border="0" cellpadding="10" cellspacing="0" style="
+          border-top: 0px" width="1000px" class="tablePart3">
+          <tr>
+            <th style="width :16.5%">联系电话:</th>
+            <td style="width :83.5%">{{attorneyMap.attorneyContactTelephone}}</td>
+          </tr>
+          </table>
+          <!-- tablePart4 -->
+          <table border="1" cellpadding="10" cellspacing="0" style="
+          border-top: 0px" width="1000px" class="tablePart4">
+          <tr>
+            <th style="width :10.5%">顺颂商祺!</th>
+          </tr>
+          </table>
+          <!-- tablePart5 -->
+          <table border="1" cellpadding="10" cellspacing="0" style="
+          border-top: 0px" width="1000px" class="tablePart5">
+          <tr>
+            <th style="width :10.5%">(传真件/扫描件有效)</th>
+          </tr>
+          </table>
+        </div>
+        <div>
+          <!-- tablePart6 -->
+          <table border="0" cellpadding="10" cellspacing="0" style="margin: auto;margin-top: 5px;font-size:20px;" width="1000px" class="tablePart6">
+          <tr>
+            <td style="width :48.5%">{{attorneyMap.shipperName}}</td>
+          </tr>
+          </table>
+        </div>
+        <div>
+        <!-- tablePart7 -->
+        <table border="0" cellpadding="10" cellspacing="0" style="margin: auto;margin-top: 5px;font-size:20px;" width="1000px" class="tablePart7">
+        <tr>
+          <td style="width :63%"></td>
+          <td style="width :5%">{{year}}</td>
+          <th style="width :8%">年</th>
+          <td style="width :3%">{{month}}</td>
+          <th style="width :8%">月</th>
+          <td style="width :3%">{{date}}</td>
+          <th style="width :5%">日</th>
+        </tr>
+        </table>
+      </div>
+      </div>
+      </div>
+      <div class="buttns">
+        <el-button class="buttn"  type="primary" @click="getPdf()">
+            <i class="el-icon-download">{{"\xa0\xa0"}}</i>导出(pdf)
+        </el-button>
+        <el-button class="buttn"  type="primary" v-print="'#pdfDom'" @click="backScan()">
+            <i class="el-icon-printer">{{"\xa0\xa0"}}</i>打印
+        </el-button>
+      </div>
+  </div>
+</template>
+
+<script>
+import table from '@/components/DilCommonUI/packages/table/src/table.vue';
+import PageTitle from "@/components/Page/Title";
+export default {
+  components: { table },
+  components: { PageTitle },
+  name: "Login",
+  data() {
+    return {
+      amsShipDeliveryNameLists:[],
+      attorneyMap:{
+        carrierName:"",
+        materialName: "",
+        resultForeignShipName: "",
+        purchaseOrderMaterialNumber:"",
+        attorneyPickupContactPerson:"",
+        attorneyPickupIdcard:"",
+        attorneyContactTelephone:"",
+        shipperName:"",
+        attorneyTime:"",
+        year:"",
+        month:"",
+        date:"",
+      },
+      htmlTitle: '委托书'
+    };
+  },
+  created(){
+      this.getwts();
+  },
+  methods: {
+      backScan(){
+        this.$router.go(-2);
+      },
+      getwts(){
+        // console.log(this.$route.params.test)
+        this.amsShipDeliveryNameLists=JSON.parse(this.$route.params.test).amsShipDeliveryNameList
+        // this.amsShipDeliveryNameLists = this.$route.params.test;
+        console.log(this.amsShipDeliveryNameLists)
+        for(let i =0;i<this.amsShipDeliveryNameLists.length;i++){
+            this.attorneyMap = this.amsShipDeliveryNameLists[i];
+            this.year=this.attorneyMap.attorneyTime.split('-')[0]
+            this.month=this.attorneyMap.attorneyTime.split('-')[1]
+            this.date=this.attorneyMap.attorneyTime.split('-')[2].split(" ")[0]
+        }
+      }
+      
+  },
+  
+};
+</script>
+
+<style lang="scss" scoped>
+.title{
+    text-align: center;
+    margin-bottom: 30px;
+    .titleText{
+    font-size: 30px;
+    }   
+}
+.buttns{
+    display: flex;
+    flex-wrap: nowrap;
+    margin-top: 20px;
+    margin-left: 900px;
+    .buttn{
+        margin-left: 10px;
+        width: 130px;
+    }
+}
+.tableBody{
+  table, th, td
+  {
+      border: 0px solid black;
+      font-size:20px;
+      margin: auto;
+  }
+  .tablePart1 th{
+      border-top: 1px solid black;
+  }
+  .tablePart2 td,th{
+    border-top: 0px
+  }
+  .tablePart3 td,th{
+    border-top: 0px
+  }
+  .tablePart4 td,th{
+    border-top: 0px
+  }
+  .tablePart5 td,th{
+    border-top: 0px
+  }
+}
+.blank{
+  width: 100%;
+  height: 50px;
+}
+</style>

+ 2 - 1
src/views/appoint/components/ship/cargoResult.vue

@@ -44,7 +44,8 @@ export default {
 
   methods: {
     onclick() {
-      // this.option.requestUrl = "/api/v1/tms/getAmsshipCargoTranferResultList?apiId=66&con=" + this.input;
+      console.log(this.input)
+      this.option.requestUrl = "/api/v1/tms/getAmsshipCargoTranferResultList?apiId=66&con=" + this.input;
     },
     addClick() {
       this.$router.push("/addCargoResult/");

+ 13 - 0
src/views/appoint/components/ship/deliveryAttorney.vue

@@ -137,6 +137,19 @@ export default {
     addClick() {
       this.$router.push("/addDeliveryAttorney/");
     },
+    // 生成提货委托书
+    addPick(){
+      // console.log("enter")
+      // console.log(this.amsShipDeliveryList);
+      let amsShipDeliveryNameList={
+        amsShipDeliveryNameList:this.amsShipDeliveryList
+        
+      }
+      // console.log(amsShipDeliveryNameList)
+      let test = encodeURIComponent(JSON.stringify(amsShipDeliveryNameList))
+      console.log("test   "+test)
+      this.$router.push("/attorneytext/"+test);
+    },
     modifyClick(attorneyId) {
       this.$router.push("/modifyDeliveryAttroney/" + attorneyId);
     },

+ 130 - 6
src/views/appoint/components/ship/modifyCargoResult.vue

@@ -2,11 +2,62 @@
   <!-- 添加货权转移实绩 -->
   <div class="shipTransport">
     <page-title>返回</page-title>
+    <!-- 物资 -->
+      <div class="mofrom">
+        <span class="motext">物资</span>
+        <el-input class="moinput" v-model="materialName" disabled> </el-input>
+        <el-button class="mobutton" type="primary" @click="ondrawer(1)">浏览</el-button>
+      </div>
+      <div class="mofrom">
+        <span class="motext">收货人</span>
+        <el-input class="moinput" v-model="receiver" disabled> </el-input>
+        <el-button class="mobutton" type="primary" @click="ondrawer(3)">浏览</el-button>
+    </div>
     <div class="form">
       <div class="form_box">
           <dil-form :formId="137" v-model="form1"></dil-form>
       </div>        
     </div>
+     <!-- 模态框 -->
+    <el-drawer
+      :visible.sync="drawer"
+      :direction="direction"
+      size="50%"
+    >
+      <el-input
+        placeholder="请输入内容"
+        v-model="input"
+        style="margin-top: 10px; margin-left: 20px; width:250px"
+        clearable
+      >
+      </el-input>
+      <el-button
+        type="primary"
+        class="btn"
+        @click="onclick(a)"
+        style="margin-bottom: 15px"
+      >
+        <i class="el-icon-search"></i>查询
+      </el-button>
+      <div v-show="a == 1">
+        <dilTable
+          v-bind.sync="second"
+          @radio-change="currentRadioChange1"
+        ></dilTable>
+      </div>
+      <div v-show="a == 2">
+        <dilTable
+          v-bind.sync="second1"
+          @radio-change="currentRadioChange2"
+        ></dilTable>
+      </div>
+      <div v-show="a == 3">
+        <dilTable
+          v-bind.sync="second2"
+          @radio-change="currentRadioChange3"
+        ></dilTable>
+      </div>
+    </el-drawer>
     <!-- 确定和取消 -->
     <div class="button_box">
       <el-button @click="onClickCancel">返回</el-button>
@@ -22,23 +73,80 @@ export default {
     data(){
           return {
           form1: {},
+          materialName:"",
+          receiver:"",
+          drawer: false,
+          direction: "rtl",
+          input: "",
+          second: {
+            requestUrl: "/api/v1/uc/queryMaterialByLike?apiId=244",
+            selectionType: "radio",
+            mapList1: [],
+          },
+          second1: {
+            requestUrl: "/api/v1/tms/selectShippeByName?apiId=215",
+            selectionType: "radio",
+            mapList2: [],
+          },
+          second2: {
+            requestUrl: "/api/v1/tms/getGroupList?apiId=217",
+            selectionType: "radio",
+            mapList3: [],
+          },
         }
     },
   mounted() {
     this.information();
   },
   methods: {
+    onclick(a) {
+      console.log(a);
+      if (a == 1) {
+        this.second.requestUrl =
+          "/api/v1/uc/queryMaterialByLike?apiId=244&index=" + this.input;
+      } else if (a == 2) {
+        this.second1.requestUrl =
+          "/api/v1/tms/selectShippeByName?apiId=215&con=" + this.input;
+      } else {
+        this.second2.requestUrl =
+          "/api/v1/tms/getGroupList?apiId=217&con=" + this.input;
+      }
+      
+    },
+    ondrawer(num) {
+      this.drawer = true;
+      this.a = num;
+      // 清空当前输入框中的数据
+      this.input = "";
+    },
+    currentRadioChange1(selection) {
+      (this.second.mapList1 = selection),
+        (this.materialName = selection.materialName);
+    },
+    currentRadioChange2(selection) {
+      (this.second1.mapList2 = selection), (this.cargo = selection.portName);
+    },
+    currentRadioChange3(selection) {
+      (this.second2.mapList3 = selection), (this.receiver = selection.pierName);
+    },
     information() {
       //编辑请车作业
       this.axios
         .post("/api/v1/tms/selectByCargoTranferResultId/" + this.$route.params.cargoTransferResultId)
         .then((res) => {
-          res.data.data.forEach((e) => {
-            this.form1 = e;
-            console.log(e);
-            console.log(this.form1);
-            console.log(this.$route.params.pathId);
-          });
+          console.log("res",res)
+          this.form1 = res.data.data
+          this.materialName = res.data.data.materialName;
+          this.receiver = res.data.data.receiver;
+          // res.data.data.forEach((e) => {
+          //   console.log(e)
+          //   this.form1 = e;
+            // this.materialName = e.materialName;
+            // this.receiver = e.receiver;
+          //   console.log(e);
+          //   console.log(this.form1);
+          //   console.log(this.$route.params.pathId);
+          // });
         });
     },
     // 确认
@@ -76,6 +184,22 @@ export default {
 </script>
 <style lang="scss">
 .shipTransport{
+  .mofrom {
+    display: flex;
+    align-items: center;
+    justify-content: center;
+    margin-top: 5px;
+    margin-bottom: 20px;
+    .motext{
+      width: 70px;
+    }
+    .moinput{
+      width: 250px;
+    }
+    .mobutton{
+      margin-left: 5px;
+    }
+  }
   .form{
     display: flex;
     .form_box{

+ 2 - 0
src/views/appoint/router/index.js

@@ -7,6 +7,7 @@ import main from '@/components/main.vue'
 import addCargoResult from '../components/ship/addCargoResult.vue'
 import addDeliveryAttorney from '../components/ship/addDeliveryAttorney.vue'
 import addDeliveryNotice from '../components/ship/addDeliveryNotice.vue'
+import attorneytext from '../components/ship/attorneytext.vue'
 import cargoResult from '../components/ship/cargoResult.vue'
 import deliveryAttorney from '../components/ship/deliveryAttorney.vue'
 import deliveryNotice from '../components/ship/deliveryNotice.vue'
@@ -78,6 +79,7 @@ const constantRouterMap = [
       {path: 'addCargoResult', name: 'addCargoResult', meta: {code: 'xtpzgl-jggl'}, component: addCargoResult},
       {path: 'addDeliveryAttorney', name: 'addDeliveryAttorney', meta: {code: 'xtpzgl-yhgl'}, component: addDeliveryAttorney},
       {path: 'addDeliveryNotice', name: 'addDeliveryNotice', meta: {code: 'xtpzgl-yhgl'}, component: addDeliveryNotice},
+      {path: 'attorneytext/:test', name: 'attorneytext', meta: {code: 'xtpzgl-yhgl'}, component: attorneytext},
       {path: 'cargoResult', name: 'cargoResult', meta: {code: 'xtpzgl-yhgl'}, component: cargoResult},
       {path: 'deliveryAttorney', name: 'deliveryAttorney', meta: {code: 'xtpzgl-yhgl'}, component: deliveryAttorney},
       {path: 'deliveryNotice', name: 'deliveryNotice', meta: {code: 'xtpzgl-yhgl'}, component: deliveryNotice},

+ 4 - 0
src/views/inward/app.js

@@ -19,6 +19,10 @@ import apollo from '@/config/apolloConfig.js'
 import DilCommonUI from "@/components/DilCommonUI";
 Vue.use(DilCommonUI);
 
+// 导出Excel全局组件
+import tableToExcel from '@/components/exportExcel/exportExcel'
+Vue.use(tableToExcel)
+
 import 'xe-utils' 
 import VXETable from 'vxe-table'
 import 'vxe-table/lib/style.css'

+ 82 - 9
src/views/inward/components/inwardFactory/timeTaskResult.vue

@@ -12,14 +12,18 @@
             <el-button type="primary" class="btn" @click="onclick">
                 <i class="el-icon-search"></i>查询
             </el-button>
+            <!-- excel导出 -->
+            <el-button type="primary" @click="exportData()">
+                <i class="el-icon-download"></i>导出(Excel)
+            </el-button>
         </div>
         <div class="tab">
-            <dilTable v-bind.sync="option" ref="table1">
+            <dilTable v-bind.sync="option"  ref="excelDom">
                 <el-table-column fixed="right" label="操作" width="180">
                 <template slot-scope="scope">
                     <div class="step">
                         <el-button
-                        @click="getStepsList(scope.row)"
+                        @click="detailclick1(scope.row)"
                         type="text"
                         size="small"
                         >运输详情</el-button>
@@ -29,14 +33,34 @@
                   </el-button> -->
                 </template>
                 </el-table-column>
+                <!-- 运输进程详情 -->
+                <el-table-column type="expand" width="1">
+                    <template slot-scope="props">
+                        <el-form label-position="center" inline class="demo-table-expand">
+                        <div v-if="false">{{ props }}</div>
+                        <div>
+                            <el-table :data="tableData1" border>
+                            <el-table-column
+                                v-for="(item, i) in tableHead"
+                                :key="i"
+                                :prop="item.prop"
+                                :label="item.label"
+                                :width="item.width"
+                            ></el-table-column>
+                            </el-table>
+                        </div>
+                        </el-form>
+                    </template>
+                </el-table-column>
             </dilTable>
         </div>
+        
         <!-- 运输进程详情 -->
-        <el-drawer
+        <!-- <el-drawer
             :visible.sync="drawer"
-            :direction="direction">
+            :direction="direction"> -->
             <!-- 步骤条显示 -->
-            <div style="height: 200px;content-align:center" >
+            <!-- <div style="height: 200px;content-align:center" >
                 <el-table
                 :data="stepList"
                 style="width: 100%">
@@ -52,7 +76,7 @@
                 </el-table-column>
                 </el-table>
             </div>
-        </el-drawer>
+        </el-drawer> -->
     </div>
 </template>
 <script>
@@ -66,6 +90,19 @@ export default {
                 // 表格请求数据的地址
                 requestUrl: "",
             },
+            tableHead: [
+                {
+                prop: "linkName",
+                label: "计时状态",
+                width: 150,
+                },
+                {
+                prop: "pointDate",
+                label: "时间",
+                width: 150,
+                }
+            ],
+            tableData1: [],
             tableData: [],
             startTime: null,
             endTime: null,
@@ -74,7 +111,8 @@ export default {
             drawer: false,
             direction: 'rtl',
             orderId: 0,
-            stepList:[]
+            stepList:[],
+            tableTitle:'计时统计'
         }
     },
     created(){
@@ -86,6 +124,41 @@ export default {
         }
     },
     methods:{
+        // -------查看物资详情(已拒绝)
+        detailclick1(row) {
+        // 记录重复点击次数
+        if (this.oldRow1 === row) {
+            this.oldRowCount1 += 1;
+        }
+        this.orderId = row.orderId
+        let map = {
+            orderId : this.orderId
+        }
+        // 切换当前详情表
+        this.$refs.excelDom.toggleRowExpansion(row);
+        // 打开前关闭上一个详情表
+        if (this.oldRow1 != "") {
+            if (this.oldRow1 != row) {
+            if (this.oldRowCount1 % 2 === 1) {
+                this.$refs.excelDom.toggleRowExpansion(this.oldRow1);
+            } else {
+                this.oldRowCount1 = 1;
+            }
+            } else {
+            this.oldRow1 = null;
+            return;
+            }
+        }
+        // 重置上一个点击对象
+        this.oldRow1 = row;
+        // 根据销售订单物资中间表id查询物资信息
+        this.axios
+            .post("/api/v1/oms/getOrderResult?orderId=",map)
+            .then((res) => {
+            console.log("res",res)
+            this.tableData1 = res.data;
+            });
+        },
         getStepsList(row){
             console.log(row.orderId)
             this.orderId = row.orderId
@@ -110,12 +183,12 @@ export default {
             this.oldRowCount1 += 1;
         }
         // 切换当前详情表
-        this.$refs.table1.toggleRowExpansion(row);
+        this.$refs.excelDom.toggleRowExpansion(row);
         // 打开前关闭上一个详情表
         if (this.oldRow1 != "") {
             if (this.oldRow1 != row) {
             if (this.oldRowCount1 % 2 === 1) {
-                this.$refs.table1.toggleRowExpansion(this.oldRow1);
+                this.$refs.excelDom.toggleRowExpansion(this.oldRow1);
             } else {
                 this.oldRowCount1 = 1;
             }

+ 55 - 2
src/views/inward/components/truckAppoint/addRequirement2.vue

@@ -29,7 +29,18 @@
       <div class="form-box">
         <dil-form :formId="377" v-model="form"></dil-form>
       </div>
-
+      <!-- 设置装机备注 -->
+      <div class="form-box">
+        <label>装机备注&nbsp;&nbsp;&nbsp;&nbsp;</label>
+        <el-select v-model="installremark" placeholder="装机必填">
+          <el-option
+            v-for="item in options6"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value">
+          </el-option>
+        </el-select>
+      </div>
       <div class="DueTime">
         <el-form :inline="true" style="margin-top: 0.5rem;">
           <el-form-item>
@@ -298,6 +309,32 @@ export default {
     return {
       aaadrawer:false,
       disabled:false,
+      options6: [{
+          value: '焦化',
+          label: '焦化'
+        }, {
+          value: '污粉',
+          label: '污粉'
+        }, {
+          value: '喷煤',
+          label: '喷煤'
+        }, {
+          value: '溶剂',
+          label: '溶剂'
+        }, {
+          value: '配料',
+          label: '配料'
+        }, {
+          value: '二次',
+          label: '二次'
+        }, {
+          value: '原料',
+          label: '原料'
+        }, {
+          value: '烧结矿',
+          label: '烧结矿'
+        }],
+        installremark: '',
       options: [],
       value: '',
       isOpenDueTime : true,
@@ -359,6 +396,7 @@ export default {
       form: {},
       capacityTypeId: "",
       capacityTypeName:"",
+      whether:"",
       materialTable: {
         requestUrl: "",
         selectionType: "select",
@@ -560,7 +598,8 @@ export default {
     selectionChange1(radio){
       console.log(radio)
       this.capacityTypeName  = radio.capacityTypeName,
-      this.capacityTypeId = radio.capacityTypeId
+      this.capacityTypeId = radio.capacityTypeId,
+      this.whether = radio.whether
     },
     currentRadioChange2(selection) {
       console.log(selection);
@@ -582,6 +621,15 @@ export default {
     // 新增
     makeSure() {
       console.log(this.form.isMineral)
+      // 判断当前装机是否选择了装机必填
+      console.log("进来了")
+      console.log(this.whether)
+      console.log(this.installremark)
+      if(this.whether == 2&&this.installremark==""){
+        console.log("确实进来了")
+        this.$message.warning("请选择装机必填")
+        return
+      }
       this.disabled = true
       if(this.shipperId == null){
         this.$message.error("请选择用车单位")
@@ -665,6 +713,8 @@ export default {
         requirementWorkType: this.form.requirementWorkType,
         requirementShipperId: this.shipperId,
         rangeId:this.form.transRange,
+        // 装机备注
+        installremark:this.installremark,
         // 用车截日期
         DueTime:DueTime,
         // 用车类型Id
@@ -754,6 +804,9 @@ export default {
     width: 320px;
   }
 }
+.preview-group {
+    width: 700px;
+}
 .swtichTop{
   display: flex;
   height: 40px;

+ 1 - 1
src/views/inward/components/truckAppoint/requirementOther.vue

@@ -204,7 +204,7 @@ export default {
           this.$message.warning("请选择联系炼铁厂相关负责人完成计时作业下发")
           return
         }
-      }                              
+      }
       this.$confirm("是否下发", "提示", {
         confirmButtonText: "确定",
         cancelButtonText: "取消",

+ 3 - 0
src/views/sale/app.js

@@ -15,6 +15,9 @@ import VueApollo from 'vue-apollo'
 
 import apollo from '@/config/apolloConfig.js'
 
+import Print from 'vue-print-nb';
+Vue.use(Print);
+
 
 import 'xe-utils' 
 import VXETable from 'vxe-table'

+ 27 - 5
src/views/sale/components/saleSelfMachine/printLading.vue

@@ -70,12 +70,17 @@
         </table>
       </div>
       </div>
-      <el-button style="margin-left: 45%;" type="primary" @click="getPdf()">
+      <!-- <el-button style="margin-left: 45%;" type="primary" @click="getPdf()">
         <i class="el-icon-download"></i>导出(pdf)
-      </el-button>
-      <el-button style="margin-left: 45%;margin-top: 0.2%;" type="primary" v-print="'#pdfDom'" @click="backScan()">
-        <i class="el-icon-printer"></i>打印
-      </el-button>
+      </el-button> -->
+      <div class="button-box">
+        <el-button type="primary" v-print="'#pdfDom'" @click="backScan()">
+          <i class="el-icon-printer"></i>打印
+        </el-button>
+        <el-button type="primary" @click="backScan()">
+          <i class="el-icon-back"></i>返回
+        </el-button>
+      </div>
   </div>
 </template>
 
@@ -107,6 +112,15 @@ export default {
   created(){
       this.getBillOrder();
   },
+  mounted() {
+    //三十秒不操作,自动返回扫码页面
+    const timer = setInterval(()=>{
+        this.backScan();
+    },30000)
+    this.$once('hook:beforeDestroy', ()=>{
+        clearInterval(timer)
+    })
+  },
   methods: {
       getBillOrder(){
         let orderNumber = this.$route.query.orderNumber;
@@ -157,4 +171,12 @@ export default {
   width: 100%;
   height: 50px;
 }
+.button-box{
+  display: flex;
+  text-align: center;
+  align-items: center;
+  justify-content: center;
+  margin-top: 0.3125rem;
+  margin-bottom: 1.25rem;
+}
 </style>

+ 27 - 5
src/views/sale/components/saleSelfMachine/printReceipt.vue

@@ -86,12 +86,17 @@
         </table>
       </div>
       </div>
-      <el-button style="margin-left: 45%;" type="primary" @click="getPdf()">
+      <!-- <el-button style="margin-left: 45%;" type="primary" @click="getPdf()">
         <i class="el-icon-download"></i>导出(pdf)
-      </el-button>
-      <el-button style="margin-left: 45%;margin-top: 0.2%;" type="primary" v-print="'#pdfDom'" @click="backScan()">
-        <i class="el-icon-printer"></i>打印
-      </el-button>
+      </el-button> -->
+      <div class="button-box">
+        <el-button type="primary" v-print="'#pdfDom'" @click="backScan()">
+          <i class="el-icon-printer"></i>打印
+        </el-button>
+        <el-button type="primary" @click="backScan()">
+          <i class="el-icon-back"></i>返回
+        </el-button>
+      </div>
   </div>
 </template>
 
@@ -136,6 +141,15 @@ export default {
   created(){
       this.getDeliveryOrder();
   },
+  mounted() {
+    //三十秒不操作,自动返回扫码页面
+    const timer = setInterval(()=>{
+        this.backScan();
+    },30000)
+    this.$once('hook:beforeDestroy', ()=>{
+        clearInterval(timer)
+    })
+  },
   methods: {
       getDeliveryOrder(){
         let orderNumber = this.$route.query.orderNumber;
@@ -192,4 +206,12 @@ export default {
   width: 100%;
   height: 50px;
 }
+.button-box{
+  display: flex;
+  text-align: center;
+  align-items: center;
+  justify-content: center;
+  margin-top: 0.3125rem;
+  margin-bottom: 1.25rem;
+}
 </style>

+ 4 - 4
src/views/sale/components/saleSelfMachine/printScan.vue

@@ -50,12 +50,13 @@ export default {
         //}
          if(this.orderNumber!=null&&this.orderNumber.length==21){
             if(this.orderNumber.startsWith('WYSDD')==true||this.orderNumber.startsWith('wysdd')==true){
+          
             this.$router.push({
                 path:"/saleSelfMachine?orderNumber="+this.orderNumber,
             })
-        
+            }
             }   
-        }
+        
     },3000)
     this.$once('hook:beforeDestroy', ()=>{
         clearInterval(timer)
@@ -75,13 +76,12 @@ export default {
             overflow: hidden;
         }
         .orderNumberData{
-            width: 20%;height: 30%;
+            width: 100%;
             color: #fff;
             position: absolute;
             display: flex;
             justify-content: center;
             align-items: center;
-            margin-left: 27rem;
         }
     }
 </style>

+ 37 - 13
src/views/sale/components/saleSelfMachine/printWarranty.vue

@@ -6,10 +6,14 @@
        style="width: 100%">
       </el-table>
      </div>  -->
-     <div class="loading"  v-if="urls.length==0"></div>
+     <div class="loading"  v-if="urls.length==0&&status==0"></div>
+     <div v-if="status==-2">
+       <h1>该车还未装货!</h1>
+     </div>
+     <div v-if="status==-1">
+       <h1>质保书正在紧张制作中,请耐心等待!</h1>
+     </div>
       <div id="pdfDom">
-      <div class="blank">
-      </div>
     <div class="demo-image__lazy" v-for="(img,index) in urls" :key="index">
        <!-- <el-image v-for="(img,index) in urls" :key="index" :src="img" lazy></el-image> -->
        <el-image   style='width: 100%; height: 100%; justify-content: center;
@@ -19,9 +23,14 @@
       <!-- <el-button style="margin-left: 45%;" type="primary" @click="getPdf()">
         <i class="el-icon-download"></i>导出(pdf)
       </el-button> -->
-      <el-button style="margin-left: 45%;margin-top: 0.2%;" type="primary" v-print="'#pdfDom'" @click="backScan()">
-        <i class="el-icon-printer"></i>打印
-      </el-button>
+      <div class="button-box">
+        <el-button v-if="urls.length>0&&status==0" type="primary" v-print="'#pdfDom'" @click="backScan()">
+          <i class="el-icon-printer"></i>打印
+        </el-button>
+        <el-button type="primary" @click="backScan()">
+          <i class="el-icon-back"></i>返回
+        </el-button>
+      </div>
   </div>
 </template>
 
@@ -33,11 +42,20 @@ export default {
   data() {
     return {
       urls:[],
+      //定义质保书正在紧张制作中、未装货和打印中的状态
+      status:0,
       name: 'Loading'
     };
   }, 
   mounted() {
     this.information();
+    //三十秒不操作,自动返回扫码页面
+    const timer = setInterval(()=>{
+        this.backScan();
+    },30000)
+    this.$once('hook:beforeDestroy', ()=>{
+        clearInterval(timer)
+    })
   },
   methods: {
      information() {
@@ -48,15 +66,17 @@ export default {
           "/api/v1/uc/getWarranty?orderNumber="+this.$route.query.orderNumber 
         )
         .then((res) => {
-          console.log("res.data.data",res.data.data)
-          console.log("res.data.code",res.data.code)  
+          // console.log("res.data.data",res.data.data)
+          // console.log("res.data.code",res.data.code)  
           if(res.data.data==-1){
             this.$message("质保书正在紧张制作中,请耐心等待!")
+            this.status = -1;
           }else if(res.data.data==-2) {
             this.$message("该车还未装货")
+            this.status = -2;
           }else{
             res.data.data.forEach((e) => {
-              console.log(e)
+              // console.log(e)
               this.urls.push(e)
           
             })
@@ -103,10 +123,6 @@ export default {
     border-top: 0px
   }
 }
-.blank{
-  width: 100%;
-  height: 50px;
-}
 .loading {
   position: fixed;
   left: 0;
@@ -116,4 +132,12 @@ export default {
   height: 100vh;
   z-index: 1000;
 }
+.button-box{
+  display: flex;
+  text-align: center;
+  align-items: center;
+  justify-content: center;
+  margin-top: 0.3125rem;
+  margin-bottom: 1.25rem;
+}
 </style>

+ 21 - 11
src/views/sale/components/saleSelfMachine/saleSelfMachine.vue

@@ -3,9 +3,9 @@
         <div class="background">
             <img :src="backgroundImgURL" width="100%" height="100%"/>
         </div>
-        <div class="time">
+        <!-- <div class="time">
             <span>{{nowTime}}</span>
-        </div>
+        </div> -->
         <div class="loginForm">
             <div class="menu" v-for="(item,index) in menuList" :key="index" @click="onClick(item.url)">
                 <img :src="item.img" width="100%" height="100%"/>
@@ -40,20 +40,30 @@ export default {
             this.$router.push({
                 path:url+"?orderNumber="+this.orderNumber,
             })
-        }
+        },
+        backScan(){
+        this.$router.go(-1);
+    }
     },
     mounted() {
         this.orderNumber=this.$route.query.orderNumber;
         let _this = this; // 声明一个变量指向Vue实例this,保证作用域一致
-        this.timer = setInterval(() => {
-        _this.nowTime = renderTime(new Date()); // 修改数据date
-        }, 1000)
+        //三十秒不操作,自动返回扫码页面
+        const timer = setInterval(()=>{
+            this.backScan();
+        },30000)
+        this.$once('hook:beforeDestroy', ()=>{
+            clearInterval(timer)
+        })
+        // this.timer = setInterval(() => {
+        // _this.nowTime = renderTime(new Date()); // 修改数据date
+        // }, 1000)
     },
-    beforeDestroy() {
-        if (this.timer) {
-        clearInterval(this.timer); // 在Vue实例销毁前,清除我们的定时器
-        }
-    }
+    // beforeDestroy() {
+    //     if (this.timer) {
+    //     clearInterval(this.timer); // 在Vue实例销毁前,清除我们的定时器
+    //     }
+    // }
 }
 </script>
 <style lang="scss">

+ 111 - 105
src/views/sale/components/transport_excute/tms-offsite/arrivalResult.vue

@@ -1,129 +1,135 @@
 <template>
-  <!-- 抵达实绩信息页面 -->
-  <div class="arrivalResult">
-    <div class="top">
-      <el-form :inline="true" style="margin-top: 0.5rem;">
-        <el-form-item>
-          <label class="el-form-item__label" style="width: auto;">时间段</label>
-         <el-date-picker
-      v-model="dateValue"
-      type="daterange"
-      range-separator="至"
-      start-placeholder="开始日期"
-      end-placeholder="结束日期">
-    </el-date-picker>
-        </el-form-item>
-
-        <el-form-item>
-      <label class="el-form-item__label" style="width: auto;">产品分类</label>
-      <el-autocomplete
-        popper-class="my-autocomplete"
-        v-model="inputValue"
-        :fetch-suggestions="querySearch"
-        placeholder="请输入内容" 
+  <!-- 抵达页面 -->
+   <div class="purchasFuelNewMonitor">
+    <div class="frameCalculation">
+      <span>抵达时间:</span>
+      <el-date-picker
+        v-model="startTime"
+        type="datetime"
+        placeholder="选择日期"
       >
-        <i class="el-icon-edit el-input__icon" slot="suffix"> </i>
-      </el-autocomplete>
-        </el-form-item>
-        <el-form-item>
-      <label class="el-form-item__label" style="width: auto;margin-top: 0.4rem;">车牌号</label>
-      </el-form-item>
-      <el-form-item>
-          <el-input class="el-form-item__content" v-model="capacityNumber1" placeholder="请输入内容"></el-input>
-      </el-form-item>
-      <el-form-item>
-          <label class="el-form-item__label" style="width: auto;margin-top: 0.4rem;">收货单位</label>
-      </el-form-item>
-      <el-form-item>
-          <el-input v-model="consigneeCompanyName1" placeholder="请输入内容"></el-input>
-      </el-form-item>
-        <el-form-item>
-          <el-button type="primary" @click="onSearch"><i class="el-icon-search"></i>查询</el-button>
-        </el-form-item>
-      </el-form>
-
+      </el-date-picker>
+      <span>至</span>
+      <el-date-picker
+        v-model="endTime"
+        type="datetime"
+        placeholder="选择日期"
+      >
+      </el-date-picker>
+        <el-input
+        placeholder="请输入内容"
+        v-model="input"
+        clearable>
+      </el-input>
+      <el-button type="primary" class="btn" @click="onclick">
+        <i class="el-icon-search"></i>查询
+      </el-button>
+      <el-button type="primary" @click="exportData()"><i class="el-icon-download"></i>导出(Excel)</el-button>
+      <el-button type="primary" @click="refresh">
+        <i class="el-icon-refresh"></i>刷新
+      </el-button>
     </div>
-
-    <dilTable ref="tab" v-bind.sync="option">
-      <el-table-column fixed="right" label="操作" width="110">
-        <template slot-scope="scope">
-          <el-button @click="toPhotoClick(scope.row.resultFullContainerPhoto)" type="text" size="small" style="font-size: 17px"
-            >浏览图片</el-button
-          >
-        </template>
-      </el-table-column>
-    </dilTable>
+    <div class="table">
+      <dilTable ref="excelDom" v-bind.sync="option" @func="func">
+          <el-table-column fixed="right" label="照片游览" width="120">
+          <template slot-scope="scope">
+            <el-button @click="toPhotoClick(scope.row.orderNumber)" type="text" size="small" style="font-size: 6px">
+                抵达满货照片</el-button>
+          </template>
+      </el-table-column>
+      </dilTable>
+    </div>
+     <vxe-modal width="549px" height="731px" v-model="isShow" show-footer>
+        <div class="demo-image__preview">
+          <el-image 
+            style=" height:731px;text-align:center"
+            :src="src" 
+            :preview-src-list="srcList">
+          </el-image>
+        </div>
+      </vxe-modal>
   </div>
 </template>
 
-
 <script>
-
+import { sjTime } from '@/utils/sharedJsFile';
 export default {
-  name: "arrivalResult",
+  name: "homeworkPath",
   data() {
     return {
-      dateValue:[new Date(), new Date()],
-      inputValue:"",
-      capacityNumber1:"",
-      consigneeCompanyName1:"",
-      status: "",
-      state: "",
-      option: {       
+      restaurants: [],
+       tsrcList:[],
+       src:"",
+       isShow:false,
+      input: "",
+      startTime: null,
+      endTime: null,
+      option: {
         // 表格请求数据的地址
-        requestUrl: "/api/v1/tms/getArrivalResultInfo?apiId=136",
+        requestUrl: "/api/v1/tms/getReceiptResult?apiId=470",
       },
     };
   },
-  mounted() {
-    this.restaurants = this.loadAll();
+  created(){
+   
   },
   methods: {
-    querySearch(queryString, cb) {
-      var restaurants = this.restaurants;
-      var results = queryString
-        ? restaurants.filter(this.createFilter(queryString))
-        : restaurants;
-      cb(results);
-    },
-    createFilter(queryString) {
-      return (restaurant) => {
-        return (
-          restaurant.value.toLowerCase().indexOf(queryString.toLowerCase()) ===
-          0
-        );
-      };
+     toPhotoClick(orderNumber){
+    
+      this.axios
+       .post("/api/v1/tms/getReceiptPhoto?orderNumber="+orderNumber)
+       .then((res)=>{
+          this.srcList=[];
+          this.src=res.data.data;
+          this.isShow=true;
+          this.srcList.push(res.data.data);
+       });
+       
+    },
+    photo(scope){
+      console.log(scope.row.orderNumber)
+    
     },
-    loadAll() {
-      return [
-        { value: "带钢"},
-        { value: "微粉"},
-        { value: "螺纹钢"},
-        { value: "钢坯"},
-        { value: "其他"},
-      ];
-    },
-
-    onSearch(){
-      //改变查询条件
-      this.$refs.tab.setDataRequestQuery({"startTime":sjTime(this.dateValue[0]),
-                      "endTime": sjTime(this.dateValue[1]),
-                      "productClassification": this.inputValue,
-                      "capacityNumber1": this.capacityNumber1,
-                      "consigneeCompanyName1": this.consigneeCompanyName1});                         
-    },
-
-    toPhotoClick(resultFullContainerPhoto){
-      this.$router.push("/arrivalPhoto?resultFullContainerPhoto="+resultFullContainerPhoto);
-      
-    }
+    onclick() {
+      let startTime = null;
+      let endTime = null;
+      if(this.startTime){
+        startTime = sjTime(this.startTime);
+      }
+      if(this.endTime){
+        endTime = sjTime(this.endTime);
+      }
+      if(startTime && endTime){
+        if(startTime < endTime){
+          this.option.requestUrl = '/api/v1/tms/getReceiptResult?apiId=470' + "&startTime=" + startTime + "&endTime=" + endTime + "&i=" +new Date()+"&con="+this.input; 
+        }else{
+          this.startTime = null;
+          this.endTime = null;
+          this.$message.warning('开始时间要比结束时间早')
+        }
+      }else{
+        console.log(startTime && endTime)
+         this.option.requestUrl = '/api/v1/tms/getReceiptResult?apiId=470' + "&startTime=" + startTime + "&endTime=" + endTime + "&i=" +new Date()+"&con="+this.input; 
+      }
     },
+   }
 };
 </script>
 <style lang='scss' scoped>
-.homeworkPath {
-  .top {
-    padding: 20px 30px;
+.purchasFuelNewMonitor {
+  .frameCalculation {
+    width: 100%;
+    height: 100px;
+    display: flex;
+    align-items: center;
+    padding-left: 50px;
+    .el-date-editor{
+      margin: 20px;
+    }
+    .el-input {
+      width: 20%;
+      margin-right: 1.25rem;
+    }
   }
 }
 </style>

+ 112 - 123
src/views/sale/components/transport_excute/tms-offsite/receiptResult.vue

@@ -1,145 +1,134 @@
 <template>
-  <!-- 收货实绩信息页面 -->
-  <div class="receiptResult">
-  <div class="top">
-    <el-form :inline="true" style="margin-top: 0.5rem;">
-        <el-form-item>
-          <label class="el-form-item__label" style="width: auto;">时间段</label>
-         <el-date-picker
-      v-model="dateValue"
-      type="daterange"
-      range-separator="至"
-      start-placeholder="开始日期"
-      end-placeholder="结束日期">
-    </el-date-picker>
-        </el-form-item>
-        <el-form-item>
-      <label class="el-form-item__label" style="width: auto;">产品分类</label>
-      <el-autocomplete
-        popper-class="my-autocomplete"
-        v-model="inputValue"
-        :fetch-suggestions="querySearch"
-        placeholder="请输入内容" 
+  <!-- 收货页面 -->
+   <div class="purchasFuelNewMonitor">
+    <div class="frameCalculation">
+      <span>收货时间:</span>
+      <el-date-picker
+        v-model="startTime"
+        type="datetime"
+        placeholder="选择日期"
       >
-        <i class="el-icon-edit el-input__icon" slot="suffix"> </i>
-      </el-autocomplete>
-        </el-form-item>
-        <el-form-item>
-      <label class="el-form-item__label" style="width: auto;margin-top: 0.4rem;">车牌号</label>
-      </el-form-item>
-      <el-form-item>
-          <el-input class="el-form-item__content" v-model="capacityNumber1" placeholder="请输入内容"></el-input>
-      </el-form-item>
-      <el-form-item>
-          <label class="el-form-item__label" style="width: auto;margin-top: 0.4rem;">收货单位</label>
-      </el-form-item>
-      <el-form-item>
-          <el-input v-model="consigneeCompanyName1" placeholder="请输入内容"></el-input>
-      </el-form-item>
-        <el-form-item>
-          <el-button type="primary" @click="onSearch"><i class="el-icon-search"></i>查询</el-button>
-        </el-form-item>
-      </el-form>
-  </div>
-
-    <dilTable ref="tab" v-bind.sync="option">
-      <el-table-column fixed="right" label="照片浏览" width="400">
-        <template slot-scope="scope">
-          <el-button @click="toPhotoClick1(scope.row.resultEmptyContainerPhoto)" type="text" size="small" style="font-size: 17px"
-            >空货箱</el-button
-          >
-          <el-button @click="toPhotoClick2(scope.row.resultSignedNotePhoto)" type="text" size="small" style="font-size: 17px"
-            >签字送货单</el-button
-          >
-          <el-button @click="toPhotoClick3(scope.row.resultReceiveNotePhoto)" type="text" size="small" style="font-size: 17px"
-            >客户签收单</el-button
-          >
-          <el-button @click="toPhotoClick4(scope.row)" type="text" size="small" style="font-size: 17px"
-            >其他</el-button
-          >
-        </template>
-      </el-table-column>
-    </dilTable>
+      </el-date-picker>
+      <span>至</span>
+      <el-date-picker
+        v-model="endTime"
+        type="datetime"
+        placeholder="选择日期"
+      >
+      </el-date-picker>
+        <el-input
+        placeholder="请输入内容"
+        v-model="input"
+        clearable>
+      </el-input>
+      <el-button type="primary" class="btn" @click="onclick">
+        <i class="el-icon-search"></i>查询
+      </el-button>
+      <el-button type="primary" @click="exportData()"><i class="el-icon-download"></i>导出(Excel)</el-button>
+      <el-button type="primary" @click="refresh">
+        <i class="el-icon-refresh"></i>刷新
+      </el-button>
+    </div>
+    <div class="table">
+      <dilTable ref="excelDom" v-bind.sync="option" @func="func">
+       <el-table-column fixed="right" label="照片游览" width="120">
+          <template slot-scope="scope">
+            <el-button @click="toPhotoClick(scope.row.orderNumber)" type="text" size="small" style="font-size: 6px">
+                抵达满货照片</el-button>
+          </template>
+      </el-table-column>
+      </dilTable>
+    </div>
+    <vxe-modal width="549px" height="731px" v-model="isShow" show-footer>
+        <div class="demo-image__preview">
+          <el-image 
+            style=" height:731px;text-align:center"
+            :src="src" 
+            :preview-src-list="srcList">
+          </el-image>
+        </div>
+      </vxe-modal>
   </div>
 </template>
 
-
 <script>
-
+import { sjTime } from '@/utils/sharedJsFile';
 export default {
-  name: "receiptResult",
+  name: "homeworkPath",
   data() {
     return {
-      dateValue:[new Date(), new Date()],
-      inputValue:"",
-      capacityNumber1:"",
-      consigneeCompanyName1:"",
-      status: "",
-      state: "",
-      option: {       
+      restaurants: [],
+      input: "",
+      srcList:[],
+       src:"",
+       isShow:false,
+      startTime: null,
+      endTime: null,
+      option: {
         // 表格请求数据的地址
-        requestUrl: "/api/v1/tms/getReceiptResult?apiId=137",
+        requestUrl: "/api/v1/tms/getReceiptResult?apiId=470",
       },
     };
   },
-  mounted() {
-    this.restaurants = this.loadAll();
+  created(){
+   
   },
   methods: {
-    querySearch(queryString, cb) {
-      var restaurants = this.restaurants;
-      var results = queryString
-        ? restaurants.filter(this.createFilter(queryString))
-        : restaurants;
-      cb(results);
-    },
-    createFilter(queryString) {
-      return (restaurant) => {
-        return (
-          restaurant.value.toLowerCase().indexOf(queryString.toLowerCase()) ===
-          0
-        );
-      };
-    },
-    loadAll() {
-      return [
-        { value: "带钢"},
-        { value: "微粉"},
-        { value: "螺纹钢"},
-        { value: "钢坯"},
-        { value: "其他"},
-      ];
-    },
-
-
-    onSearch(){
-      //改变查询条件
-      this.$refs.tab.setDataRequestQuery({"startTime":sjTime(this.dateValue[0]),
-                      "endTime": sjTime(this.dateValue[1]),
-                      "productClassification": this.inputValue,
-                      "capacityNumber1": this.capacityNumber1,
-                      "consigneeCompanyName1": this.consigneeCompanyName1});                         
-    },
-
-    toPhotoClick1(resultEmptyContainerPhoto){
-      this.$router.push("/receiptPhoto?photo="+resultEmptyContainerPhoto);
-    },
-    toPhotoClick2(resultSignedNotePhoto){
-      this.$router.push("/receiptPhoto?photo="+resultSignedNotePhoto);
-    },
-    toPhotoClick3(resultReceiveNotePhoto){
-      this.$router.push("/receiptPhoto?photo="+resultReceiveNotePhoto);
-    },
-    toPhotoClick4(row){
-      this.$router.push("/receiptChildPhoto?photo1="+row.otherPhoto1+"&photo2="+row.otherPhoto2+"&photo3="+row.otherPhoto3);
-    }
+     toPhotoClick(orderNumber){
+      console.log(orderNumber)
+      this.axios
+       .post("/api/v1/tms/getReceivingPhoto?orderNumber="+orderNumber)
+       .then((res)=>{
+         console.log(res)
+          this.srcList=[];
+          this.src=res.data.data.resultSignedNotePhoto;
+          this.isShow=true;
+          this.srcList.push(res.data.data.resultSignedNotePhoto);
+          this.srcList.push(res.data.data.resultEmptyContainerPhoto);
+          
+       });
+       
+    },
+    onclick() {
+      let startTime = null;
+      let endTime = null;
+      if(this.startTime){
+        startTime = sjTime(this.startTime);
+      }
+      if(this.endTime){
+        endTime = sjTime(this.endTime);
+      }
+      if(startTime && endTime){
+        if(startTime < endTime){
+          this.option.requestUrl = '/api/v1/tms/getReceiptResult?apiId=471' + "&startTime=" + startTime + "&endTime=" + endTime + "&i=" +new Date()+"&con="+this.input; 
+        }else{
+          this.startTime = null;
+          this.endTime = null;
+          this.$message.warning('开始时间要比结束时间早')
+        }
+      }else{
+        console.log(startTime && endTime)
+         this.option.requestUrl = '/api/v1/tms/getReceivingResult?apiId=471' + "&startTime=" + startTime + "&endTime=" + endTime + "&i=" +new Date()+"&con="+this.input; 
+      }
     },
+   }
 };
 </script>
 <style lang='scss' scoped>
-.homeworkPath {
-  .top {
-    padding: 20px 30px;
+.purchasFuelNewMonitor {
+  .frameCalculation {
+    width: 100%;
+    height: 100px;
+    display: flex;
+    align-items: center;
+    padding-left: 50px;
+    .el-date-editor{
+      margin: 20px;
+    }
+    .el-input {
+      width: 20%;
+      margin-right: 1.25rem;
+    }
   }
 }
 </style>

+ 3 - 2
src/views/statisticalReport/components/Ship_dynamic_table.vue

@@ -124,8 +124,9 @@ export default {
   },
   methods: {
     initialization() {
-      this.$axios.post("/api/v1/tms/selectAll").then((res) => {
-        console.log(res.data.data)
+      this.axios.post("/api/v1/tms/selectAllShipDynamaics")
+      .then((res) => {
+        console.log(res)
         this.tableData = res.data.data;
       });
     },

+ 1 - 1
src/views/statisticalReport/components/inwardReport/putInwardReport.vue

@@ -44,7 +44,7 @@ export default {
       },
       startTime: null,
       endTime: null,
-      tableTitle:'零星出厂统计报表'
+      tableTitle:'采购内转统计报表'
     };
   }, 
   created(){